class Prototok::Ciphers::V1::Sign

Public Class Methods

key(private_key = nil) click to toggle source
# File lib/prototok/ciphers/V1/sign.rb, line 24
def self.key(private_key = nil)
  if private_key.nil?
    cipher_class::SigningKey.generate.to_bytes
  else
    cipher_class::SigningKey.new(private_key).verify_key.to_bytes
  end
end
new(private_or_public_key) click to toggle source
# File lib/prototok/ciphers/V1/sign.rb, line 9
def initialize(private_or_public_key)
  @key = private_or_public_key
end

Public Instance Methods

decode(decoded_auth, decoded_blob) click to toggle source
# File lib/prototok/ciphers/V1/sign.rb, line 18
def decode(decoded_auth, decoded_blob)
  cipher = cipher_class::VerifyKey.new(@key)
  cipher.verify(decoded_auth, decoded_blob)
  decoded_blob
end
encode(blob) click to toggle source
# File lib/prototok/ciphers/V1/sign.rb, line 13
def encode(blob)
  cipher = cipher_class::SigningKey.new(@key)
  [cipher.sign(blob), blob]
end