Signature Verification
Closed this issue · 1 comments
cxs-mahendra commented
Angular code is able to verify the signature....While .Net Core code is not able to verify the ignature Why?
Angular Code
const signature = "k5OIxj7kvfoKYXPrZEmTMUELtGyZjMDJCZg98tEapYNijRqtDJJhRIZ7QRGaBhdtL146Nxklva+gyJJjMeEYCg==";
const signing_string = `(created): 1687173574
(expires): 1687773574
digest: BLAKE-512=69FTz6dbFwnzIvYlIitgEzLnXzuZKhbWLLHW4LfiCs2mbpWeSz5iN2FnbEZFXs3OBdv9pInixn3o8g/Ao3+OwQ==`;
const public_key = 'Fhjwaka1Za+ld+7Nms7S0C675r24mZoyWVn8JbYTjSs=';
await _sodium.ready;
const sodium = _sodium;
const isSignatureVerified = sodium.crypto_sign_verify_detached(
sodium.from_base64(signature, base64_variants.ORIGINAL),
signing_string,
sodium.from_base64(public_key, base64_variants.ORIGINAL));
console.log(isSignatureVerified); //This returns true
.Net Core Code
string Signature = "k5OIxj7kvfoKYXPrZEmTMUELtGyZjMDJCZg98tEapYNijRqtDJJhRIZ7QRGaBhdtL146Nxklva+gyJJjMeEYCg";
string SigningString = @"(created): 1687173574
(expires): 1687773574
digest: BLAKE-512=69FTz6dbFwnzIvYlIitgEzLnXzuZKhbWLLHW4LfiCs2mbpWeSz5iN2FnbEZFXs3OBdv9pInixn3o8g/Ao3+OwQ==";
string PublicKey = "Fhjwaka1Za+ld+7Nms7S0C675r24mZoyWVn8JbYTjSs=";
bool IsSignatureVerified = PublicKeyAuth.VerifyDetached(Convert.FromBase64String(Signature),
Encoding.ASCII.GetBytes(SigningString),
Convert.FromBase64String(PublicKey));
Console.WriteLine(IsSignatureVerified); //This prints false
ektrah commented
Thank you for reporting this. I've looked into it, but unfortunately, I'm unable to offer a solution at this time.