I am wondering if anyone have tested the Dilithium Signature Verification result, from the different language implementation, following these steps:
-
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. -
Dilithium2:
a. In the Java implementation, a key pair and signature are generated.
b. In C# implementation of bouncy castle, I got invalid signature. -
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.