SteemPublicKey.fromString constructor
SteemPublicKey.fromString(
- String keyStr
Construct public key from string
Implementation
factory SteemPublicKey.fromString(String keyStr) {
var publicRegex = RegExp(r'^PUB_([A-Za-z0-9]+)_([A-Za-z0-9]+)',
caseSensitive: true, multiLine: false);
Iterable<Match> match = publicRegex.allMatches(keyStr);
if (match.isEmpty) {
var Regex = RegExp(r'^', caseSensitive: true, multiLine: false);
if (!Regex.hasMatch(keyStr)) {
throw InvalidKey('No leading ');
}
var publicKeyStr = keyStr.substring(3);
var buffer = SteemKey.decodeKey(publicKeyStr);
return SteemPublicKey.fromBuffer(buffer);
} else if (match.length == 1) {
var m = match.first;
var keyType = m.group(1);
var buffer = SteemKey.decodeKey(m.group(2)!, keyType);
return SteemPublicKey.fromBuffer(buffer);
} else {
throw InvalidKey('Invalid public key format');
}
}