Winternitz One Time Signature (WOTS) is a quantum resistant digital signature scheme that uses relatively small key and signature sizes. As it is a one-time signature scheme, it can only be used to securely sign one message.
Suppose Alice wants to digitally sign her message to Bob, the process can be explained in 3 steps: Key Generation, Signature Generation and Signature Verification.
Key Generation :
- Alice needs to create a key pair – private and public key.
- To create the private key, a random number generator is used to generate 32 256-bit random numbers. The private key is known only to Alice.
- To create the public key, each of the 32 numbers is hashed 256 times to obtain another set of 32 256-bit numbers. The public key is shared with everyone.
Signature Generation :
- Alice hashes the message using SHA 256 which produces a 256-bit digest. This digest is split up into 32 8-bit values (N1, N2, …, N32).
- Alice hashes each of the 8-bit value 256-N times, where N is the value of the 8-bit value. For example, if N1 is the 8-bit value is 10001000 = 136, then N1 would be hashed 256-136 = 120 times. After doing this for each of the 8-bit values, the digital signature is generated.
Signature Verification :
- Bob hashes the message using SHA-256 to produce the digest of 32 8-bit values (N1, N2, …, N32).
- Bob then hash the signature value by the number of times given by the message hash value (N1, N2, …, N32).
- Bob compares the result with Alice’s public key. If they are a match, the signature is valid.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Lamport One Time Signature Scheme
- Digital Signature Standard (DSS)
- Schnorr Digital Signature
- Types of Digital Signature Attacks
- Difference between Direct and Arbitrated Digital Signature
- What is RTT(Round Trip Time)?
- What is RTS(Real Time Streaming)?
- One Time Password (OTP) algorithm in Cryptography
- Soft Real-time Communication in LAN
- Real Time Transport Protocol (RTP)
- Time based Access-List
- Program to calculate the Round Trip Time (RTT)
- Algorithm for Dynamic Time out timer Calculation
- Real-time Transport Control Protocol (RTCP)
- Virtual Time Carrier Sensed Multiple Access (VT-CSMA)
- Frequency Division and Time division multiplexing
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.