entropyToMnemonic function
Implementation
List<String> entropyToMnemonic(Uint8List entropy) {
if (entropy.length < 16) {
throw ArgumentError(_invalidEntropy);
}
if (entropy.length > 32) {
throw ArgumentError(_invalidEntropy);
}
if (entropy.length % 4 != 0) {
throw ArgumentError(_invalidEntropy);
}
final entropyBits = _bytesToBinary(entropy);
final checksumBits = _deriveChecksumBits(entropy);
final bits = entropyBits + checksumBits;
final regex = RegExp(r'.{1,11}', caseSensitive: false, multiLine: false);
final chunks = regex
.allMatches(bits)
.map((match) => match.group(0)!)
.toList(growable: false);
final wordlist = english;
final words = chunks
.map((binary) => wordlist[_binaryToByte(binary)])
.toList(growable: false);
return words;
}