PublicKey.fromHex constructor
fromHex will auto detect the hex type, which means hex can be compressed or not
Implementation
PublicKey.fromHex(this.curve, String hex) {
if (hex.length <= 2) {
throw ErrInvalidPublicKeyHexLength;
}
late PublicKey pub;
var prefix = hex.substring(0, 2);
switch (prefix) {
case '02':
pub = curve.compressedHexToPublicKey(hex);
break;
case '03':
pub = curve.compressedHexToPublicKey(hex);
break;
case '04':
pub = curve.hexToPublicKey(hex);
break;
default:
throw ErrInvalidPublicKeyHexPrefix;
}
X = pub.X;
Y = pub.Y;
}