Skip to content

SigningKey#sign(message) makes undocumented assumptions about message encoding #221

@wmlele

Description

@wmlele

SigningKey#sign(message) is using String#[] to truncate the output from sign_attached(message) which yields unpredictable results according to the message encoding.

[43] pry(main)> data.encoding
=> #<Encoding:UTF-8>
[44] pry(main)> signing_key.sign(data).length
=> 64
[45] pry(main)> signing_key.sign(data).bytesize
=> 77
[53] pry(main)> signing_key.sign(data.force_encoding('ASCII-8BIT')).bytesize
=> 64

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions