generateP256PublicKeyFromJWK static method
String
generateP256PublicKeyFromJWK(
- JWK jwk
)
Implementation
static String generateP256PublicKeyFromJWK(JWK jwk) {
final xBytes = base64Url.decode(_normalizeBase64(jwk.publicKey.x));
final yBytes = base64Url.decode(_normalizeBase64(jwk.publicKey.y));
final ecDomain = ECDomainParameters('prime256v1');
final x = BigInt.parse(hex.encode(xBytes), radix: 16);
final y = BigInt.parse(hex.encode(yBytes), radix: 16);
final q = ecDomain.curve.createPoint(x, y);
final pubKeyParams = ECPublicKey(q, ecDomain);
final encoded = pubKeyParams.Q!.getEncoded(false); // Uncompressed point
return hex.encode(encoded);
}