mirror of
https://git.kescher.at/CatCatNya/catstodon.git
synced 2024-11-22 23:28:08 +01:00
11 lines
372 B
Ruby
11 lines
372 B
Ruby
# frozen_string_literal: true
|
|
|
|
class WebPushKeyValidator < ActiveModel::Validator
|
|
def validate(subscription)
|
|
begin
|
|
Webpush::Encryption.encrypt('validation_test', subscription.key_p256dh, subscription.key_auth)
|
|
rescue ArgumentError, OpenSSL::PKey::EC::Point::Error
|
|
subscription.errors.add(:base, I18n.t('crypto.errors.invalid_key'))
|
|
end
|
|
end
|
|
end
|