signWithIntent method
Signs bytes under intent, returning the base64 passkey signature
(flag(0x06) || BCS(PasskeyAuthenticator)) and the base64 message bytes.
Implementation
Future<SignatureWithBytes> signWithIntent(
Uint8List bytes, IntentScope intent) async {
final intentMessage = messageWithIntent(intent, bytes);
final digest = blake2b(intentMessage);
final signature = await sign(digest);
final serialized = Uint8List(1 + signature.length);
serialized[0] = SIGNATURE_SCHEME_TO_FLAG.Passkey;
serialized.setAll(1, signature);
return SignatureWithBytes(base64Encode(serialized), base64Encode(bytes));
}