fromPublicKey static method

HDNode fromPublicKey(
  1. Uint8List pub,
  2. Uint8List chainCode
)

Implementation

static HDNode fromPublicKey(Uint8List pub, Uint8List chainCode) {
  var base58 = BaseXCodec(
      '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz');
  var compressed = compressPublicKey(pub);

  Uint8List pubPrefix = hexToBytes('0488b21e000000000000000000');
  Uint8List key =
      Uint8List.fromList([...pubPrefix, ...chainCode, ...compressed]);
  Uint8List checksum =
      SHA256Digest().process(SHA256Digest().process(key)).sublist(0, 4);
  var bip32 =
      BIP32.fromBase58(base58.encode(Uint8List.fromList(key + checksum)));
  return HDNode(bip32);
}