getEncryptionKey static method

Future<List<int>> getEncryptionKey()

Retrieve or generate a new encryption key

Implementation

static Future<List<int>> getEncryptionKey() async {
  String? key = await _secureStorage.read(key: _encryptionKeyKey);
  if (key == null) {
    // Generate a 32-byte key
    final newKey = List<int>.generate(32, (_) => Random().nextInt(256));
    await _secureStorage.write(key: _encryptionKeyKey, value: base64UrlEncode(newKey));
    return newKey;
  }
  return base64Url.decode(key);
}