signBcHTransaction method
Signs a given transaction digest using the ECDSA deterministic signature scheme. The signature is adjusted for low-S encoding and verified against the public key.
Implementation
List<int> signBcHTransaction(List<int> digest) {
ECDSASignature ecdsaSign = signingKey.signDigestDeterminstic(
digest: digest, hashFunc: () => SHA256());
if (ecdsaSign.s > ETHSignerConst.orderHalf) {
ecdsaSign =
ECDSASignature(ecdsaSign.r, ETHSignerConst.curveOrder - ecdsaSign.s);
}
final List<int> signature = BigintUtils.toDer([ecdsaSign.r, ecdsaSign.s]);
return signature;
}