generateKeyPair method
Generates a new key pair.
Implementation
@override
Future<DpopKeyPair> generateKeyPair() async {
try {
final pair = await wc.EcdsaPrivateKey.generateKey(_curve);
final pkcs8 = await pair.privateKey.exportPkcs8Key();
final jwkJson = await pair.publicKey.exportJsonWebKey();
final jwk =
DpopJwk(x: jwkJson['x']! as String, y: jwkJson['y']! as String);
return DpopKeyPair(
privateKeyPkcs8: Uint8List.fromList(pkcs8), publicJwk: jwk);
} on DpopException {
rethrow;
} catch (_) {
throw const DpopCryptoException('P-256 key pair generation failed.');
}
}