이 코드와 ECDSA 서명을 확인하려면 :UWP ECDSP는 서명
이AsymmetricKeyAlgorithmProvider objAsymmAlgProv = AsymmetricKeyAlgorithmProvider.OpenAlgorithm(AsymmetricAlgorithmNames.EcdsaSha256);
CryptographicKey keypair = objAsymmAlgProv.CreateKeyPairWithCurveName(EccCurveNames.SecP256r1);
BinaryStringEncoding encoding = BinaryStringEncoding.Utf8;
buffMsg = CryptographicBuffer.ConvertStringToBinary("Test Message", encoding);
IBuffer buffSIG = CryptographicEngine.Sign(keypair, buffMsg);
byte [] SignByteArray = buffSIG.ToArray();
bool res = CryptographicEngine.VerifySignature(keypair, buffMsg, buffSIG);
VerifySignature
항상 true를 반환하고이 괜찮습니다.
하지만 서명에 문제가 있습니다.
왜 서명 길이 (SignByteArray
)가 고정되어 있습니까? (0x40 바이트).
SignByteArray [0]
과 SignByteArray [2]
값이 올바르지 않은 이유는 무엇입니까? (나는 그들이 0x30에해야한다고 생각하고는 0x02)
나는 ECDSA 사양 쌍 (r
, s
)이 서명 것을 결정과 결론 https://kjur.github.io/jsrsasign/sample-ecdsa.html
이것이 내가 원하는 것입니다! 고마워요! –