base58CheckDecode function
Decodes given input
with check of 4 bytes of Sha256 checksum
Implementation
Uint8List base58CheckDecode(String input) {
final data = base58Bitcoin.decode(input);
final payload = data.sublist(0, data.length - 4);
final checksum = data.sublist(data.length - 4);
final newChecksum = _doubleSha256(payload);
if (checksum[0] != newChecksum[0] ||
checksum[1] != newChecksum[1] ||
checksum[2] != newChecksum[2] ||
checksum[3] != newChecksum[3]) {
throw ArgumentError("Invalid checksum");
}
return payload;
}