encryptWithRsa method

String encryptWithRsa(
  1. String publicKey,
  2. String challenge
)

Implementation

String encryptWithRsa(String publicKey, String challenge) {
  try {
    final key = Uint8List.fromList(base64Decode(publicKey));
    final dataToEncrypt = Uint8List.fromList(base64Decode(challenge));
    final rsaPublicKey = CryptoUtils.rsaPublicKeyFromDERBytes(key);
    final encryptor = OAEPEncoding(RSAEngine())
      ..init(
        true,
        PublicKeyParameter<RSAPublicKey>(rsaPublicKey),
      );

    final result = base64Encode(encryptor.process(dataToEncrypt));
    return result;
  } catch (e) {
    return "Error encrypting data: $e";
  }
}