1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| import 'dart:io';
import 'package:encrypt/encrypt.dart'; import 'package:pointycastle/asymmetric/api.dart';
Future<T> parseKeyFromFile<T extends RSAAsymmetricKey>(String filename) async { final file = File(filename); final key = await file.readAsString(); final parser = RSAKeyParser(); return parser.parse(key) as T; }
Future<Encrypted> encodeString(String publicKeySrc, String content) async { final publicKey = await parseKeyFromFile<RSAPublicKey>(publicKeySrc); final encrypter = Encrypter(RSA(publicKey: publicKey)); return encrypter.encrypt(content); }
|