signEd25519 function

Uint8List signEd25519({
  1. required Uint8List message,
  2. required Uint8List privateKey,
})

Cryptographic signature methods.

Sign a message with a ed25519 private key and return signature

Implementation

///Sign a message with a ed25519 private key and return signature
Uint8List signEd25519(
    {required Uint8List message, required Uint8List privateKey}) {
  final signingKey = SigningKey(seed: privateKey);
  final verifyKey = signingKey.verifyKey;
  final signed = signingKey.sign(message);
  if (signed.isEmpty) {
    throw Exception('Signing the massage is failed');
  }
  if (!verifyKey.verify(signature: signed.signature, message: message)) {
    throw Exception('verify massage failed');
  }
  // print("signed: ${signed.length}");
  return signed.prefix.asTypedList;
}