Dilithium Signature Different Verification Outcome for different Language Implementations

  Kiến thức lập trình

I am wondering if anyone have tested the Dilithium Signature Verification result, from the different language implementation, following these steps:

  1. Dilithium2:
    a. In C# implementation of bouncy castle, a key pair and signature are generated.
    b. In the official implementation in C, I got invalid signature.

  2. Dilithium2:
    a. In the Java implementation, a key pair and signature are generated.
    b. In C# implementation of bouncy castle, I got invalid signature.

  3. Dilithium3:
    a. In Rust implementation, a key pair and signature are generated.
    b. In C# implementation of bouncy castle, I got invalid signature.

While if I did the verification where the signature and key pair are generated, I got valid signature.

The implementations I tried out:
https://pq-crystals.org/dilithium/software.shtml

I tried the official implementations mentioned in the dilithium website, expecting that verification should happen no matter what developing language is used.

New contributor

user571916 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.

LEAVE A COMMENT