UWP [Plataforma universal de Windows] RSA AsymmetricKeyAlgorithmProvider importar clave pública

Cuando estoy tratando de usarWindows.Security.Cryptography.Core en UWP, siempre recibo un error al importar la clave pública deAsymmetricKeyAlgorithmProvider. Probé todas las combinaciones sin éxito. Siempre revisé la cadena de entrada para estar en modo UTF8.

try {
  var bytes = Encoding.UTF8.GetBytes(publicKeyString);
  publicKeyString = Encoding.UTF8.GetString(bytes);

  Debug.WriteLine(publicKeyString);
  IBuffer keyBuffer = CryptographicBuffer.DecodeFromBase64String(publicKeyString);

  byte[] bytes = Convert.FromBase64String(publicKeyString);
  string hex = "2D2D2D2D2D424547494E205055424C4943204B45592D2D2D2D2D0A4D494942496A414E42676B71686B6947397730424151454641414F43415138414D49494243674B434151454172336767514744726E5645562B786A4F484F2B390A4B72595541547166756935666F364D65736E53466C6B797937482F4775327135667273724B305246383933507A584F664371414A6753534D58673330793463720A594E3742617838467979314C58744E2B5A35576B43436D644F597438704F636D7A75494D6A636E4E733063486B767859576B336658516D513255535A685063700A51595761382F4469392B344462745464587A643263346F717A4E4A4A4A4B66437A647731796E72776F4A755A4245563547747363396F48782F6D7231725434420A386F377635473553706D543368687661396762617034436C4231745677434B584F41636A2F71782F49416A505A35566E4B7A363669325534706A6F43764A79590A564E53497A3557346276726A6E622B76775848626B506D62316E6655503864526D33683767644F314D7330766B72715A4567714746416953343475686974576B0A65514944415141420A2D2D2D2D2D454E44205055424C4943204B45592D2D2D2D2D0A";

  Debug.WriteLine(hex);
  AsymmetricKeyAlgorithmProvider provider = AsymmetricKeyAlgorithmProvider.OpenAlgorithm(AsymmetricAlgorithmNames.RsaPkcs1);
  CryptographicKey publicKey = provider.ImportPublicKey(CryptographicBuffer.DecodeFromHexString(hex), CryptographicPublicKeyBlobType.BCryptPublicKey);
  IBuffer dataBuffer = CryptographicBuffer.CreateFromByteArray(Encoding.UTF8.GetBytes(plainText));
  var encryptedData = CryptographicEngine.Encrypt(publicKey, dataBuffer, null);

  return CryptographicBuffer.EncodeToBase64String(encryptedData);
}
catch (Exception e)
{
  throw;
  return "Error in Encryption:With RSA ";        
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta