toBytes method

List<int> toBytes()

Implementation

List<int> toBytes() {
  final int flag = switch (publicKey.curve) {
    EllipticCurveTypes.ed25519 => SuiAddrConst.ed25519AddressFlag,
    EllipticCurveTypes.secp256k1 => SuiAddrConst.secp256k1AddressFlag,
    _ => SuiAddrConst.secp256r1AddressFlag,
  };
  List<int> publicKeyBytes = publicKey.compressed;
  if (publicKey.curve == EllipticCurveTypes.ed25519) {
    publicKeyBytes = publicKeyBytes.sublist(1);
  }
  return [flag, ...publicKeyBytes, weight];
}