Vipul Ghadg Ответов: 2

Программа шифрования написана на C# , а расшифровка - на java


привет,

У меня есть эта проблема , и я борюсь с ней много дней

Ниже приведен код, который у меня есть для шифрования в c# из файла public .cer

string encrytedText;
      SKey1 = aem.Key;
      string CERTFPATH = ConfigurationManager.AppSettings["UIDAIPublicCertificate"].ToString();
      X509Certificate2 uidCert = new X509Certificate2(CERTFPATH, "public", X509KeyStorageFlags.DefaultKeySet);

      RSACryptoServiceProvider RSA = (RSACryptoServiceProvider)uidCert.PublicKey.Key;
      {
          RSAParameters RSAKeyInfo = RSA.ExportParameters(false);
          encrytedText = Convert.ToBase64String(RSA.Encrypt(SKey1, false));

      }
      return encrytedText;


я передаю выше сгенерированный зашифрованный текст в java api, созданный третьей стороной , он не расшифровывается должным образом в конце java api

кто-нибудь может нам помочь ?

Что я уже пробовал:

из поиска я получил ссылки, как вы можете использовать надувной замок , но у меня нет кода, где я могу использовать открытый сертификат, который имеет длину ключа 2058 для его шифрования

2 Ответов

Рейтинг:
5

Vipul Ghadg

У меня есть польза

RijndaelManaged managed = new RijndaelManaged();
класс для шифрования тогда мой этот вопрос решен ,
если кому-то нужен образец кода, напишите мне, я предоставлю его лично vipul.ghadge@gmail.com


Рейтинг:
2

OriginalGriff

Первое, что вам нужно сделать, это выяснить, в чем проблема.
Поэтому зашифруйте его на C#, а затем напишите код для его расшифровки на C#.
Если результат совпадает с вводом, переходите к следующей проверке: он переносится нормально? Регистрация данных в Java-код будет расшифровать против выхода на C#. Это идентично? Если да, то следующая проверка: что делает Java? Напишите Java-код для шифрования исходного материала. Напишите код для его расшифровки. Является ли выход таким же, как и вход? Если это так, сравните зашифрованный вывод из Java с выводом из шифрования C#. Это одно и то же?
В какой-то момент вы обнаружите разницу. Тогда вы сможете сосредоточиться на том, почему. Но пока вы не знаете, где начинается проблема, вы просто свистите в темноте.


Vipul Ghadg

Спасибо за вашу заботу