serialize method
Implementation
String serialize(){
var versionBytes = getVersionBytes();
var depth = this._nodeDepth;
var fingerprint = this._parentFingerprint;
var chainCode = this._chainCode;
var pubkeyHex = this._keyHex;
List<int> serializedKey = List<int>.filled(78, 0);
serializedKey.setRange(0, 4, versionBytes);
serializedKey.setRange(4, 5, [this._nodeDepth!]);
serializedKey.setRange(5, 9, this._parentFingerprint);
serializedKey.setRange(9, 13,this._childNumber);
serializedKey.setRange(13, 45,this._chainCode);
serializedKey.setRange(45, 78,this._keyHex);
//checksum calculation... doubleSha
var doubleShaAddr = utils.sha256Twice(serializedKey);
var checksum = doubleShaAddr.sublist(0, 4).map((elem) => elem.toSigned(8)).toList();
List<int> encoded = bs58check.encode(serializedKey + checksum);
return utf8.decode(encoded);
}