createServerSignature static method
String
createServerSignature({
- required Uint8List serverKey,
- required String authMessage,
- AuthenticationStringEncoding stringEncoding = AuthenticationStringEncoding.utf8,
Implementation
static String createServerSignature({
required Uint8List serverKey,
required String authMessage,
AuthenticationStringEncoding stringEncoding =
AuthenticationStringEncoding.utf8,
}) {
final authMessageBytes = Uint8List.fromList(
CraAuthentication.encodeString(
authMessage,
stringEncoding: stringEncoding,
),
);
Uint8List? signature;
try {
signature = CraAuthentication.encodeByteHmac(
serverKey,
defaultKeyLength,
authMessageBytes,
);
return base64.encode(signature);
} finally {
_clear(authMessageBytes);
if (signature != null) _clear(signature);
}
}