diff --git a/lib/minisign/public_key.rb b/lib/minisign/public_key.rb index 3572b4c..effccbb 100644 --- a/lib/minisign/public_key.rb +++ b/lib/minisign/public_key.rb @@ -14,11 +14,10 @@ def initialize(str) @decoded = Base64.strict_decode64(parts.last) @public_key = @decoded[10..] @verify_key = Ed25519::VerifyKey.new(@public_key) - if parts.length == 1 - data = Base64.strict_encode64("Ed#{@decoded[2..9]}#{@public_key}") - @untrusted_comment = "minisign public key #{key_id}\n#{data}\n" + @untrusted_comment = if parts.length == 1 + "minisign public key #{key_id}\n#{key_data}\n" else - @untrusted_comment = parts.first.split("untrusted comment: ").last + parts.first.split("untrusted comment: ").last end end @@ -48,9 +47,12 @@ def verify(sig, message) "Signature and comment signature verified\nTrusted comment: #{sig.trusted_comment}" end + def key_data + Base64.strict_encode64("Ed#{@decoded[2..9]}#{@public_key}") + end + def to_s - data = Base64.strict_encode64("Ed#{@decoded[2..9]}#{@public_key}") - "untrusted comment: #{@untrusted_comment}\n#{data}\n" + "untrusted comment: #{@untrusted_comment}\n#{key_data}\n" end private