checkStandardBase32 function
Check base32 address, such as bitcoincash.
Implementation
bool checkStandardBase32(String address) {
try {
String addressData = address;
if (address.startsWith('bitcoincash:'))
addressData = address.substring(address.indexOf(':') + 1);
// Basic validation: CashAddr addresses should be at least 14 characters
if (addressData.length < 14) {
return false;
}
final decoded = Base32.decode(addressData).toUint8List();
final addressEncode = Base32.encode(decoded);
return addressEncode == addressData;
} catch (error) {
return false;
}
}