class Sha256Seal::Builder
Main class for the Sha256Seal
library.
Attributes
field[R]
secret[R]
value[R]
Public Class Methods
new(value, secret, field)
click to toggle source
# File lib/sha256_seal.rb, line 11 def initialize(value, secret, field) @value = value.to_s @secret = secret.to_s @field = field.to_s i = @value.scan(@field).length return if i.equal?(1) raise ::ArgumentError, "#{i} #{@field.inspect} occurrences instead of 1." end
Public Instance Methods
signed_value()
click to toggle source
# File lib/sha256_seal.rb, line 23 def signed_value value.gsub(field, signature) end
signed_value?()
click to toggle source
# File lib/sha256_seal.rb, line 27 def signed_value? signature.eql?(field) end
Private Instance Methods
salt_value()
click to toggle source
# File lib/sha256_seal.rb, line 37 def salt_value value.gsub(field, secret) end
signature()
click to toggle source
# File lib/sha256_seal.rb, line 33 def signature ::Digest::SHA256.hexdigest(salt_value) end