Function crypto::signatures::ternary::wots::normalize[][src]

pub fn normalize(message: &Trits<T1B1>) -> Result<TritBuf<T1B1Buf>, Error>
👎 Deprecated
This is supported on crate features ternary_signatures and wots_deprecated_do_not_use only.

Since the Winternitz One-Time Signature Scheme is based on hash chains, producing a signatures for a message - by definition - also reveals all the signatures for messages that are element-wise larger than the original message. As such, it is a crucial requirement for every W-OTS scheme to prevent this. While the original paper, mentioned above, uses an additional checksum for exactly that purpose, this scheme normalizes the message (i.e. assures that the sum over all it’s elements is zero). Since no normalized messages can be element-wise larger than another normalized messages, this attack vector is prevented.