signRevocation static method

Future<Authorization> signRevocation({
  1. required Authorization revocation,
  2. required Signer signer,
})

Signs a revocation authorization.

Implementation

static Future<Authorization> signRevocation({
  required Authorization revocation,
  required Signer signer,
}) async {
  if (!revocation.isRevocation) {
    throw ArgumentError('Authorization is not a revocation');
  }

  final signature = await signer.signAuthorization(revocation);

  // Extract signature components
  final r = signature.sublist(0, 32);
  final s = signature.sublist(32, 64);
  final yParity = signature[64];

  return revocation.withSignature(
    yParity: yParity,
    r: _bytesToBigInt(r),
    s: _bytesToBigInt(s),
  );
}