Подключите нашего Telegram-бота для уведомлений о новых проектах

Кодирование / декодирование на php (по аналогии с C#)

Разместить заказ
i
Заказчик
Отзывы фрилансеров: + 56 - 0
Зарегистрирован на сайте 15 лет и 6 месяцев
Бюджет: по договоренности
Исполнитель определен: Дмитрий Малиновкин  
Есть 2 функции на для кодирования и декодирования текста с открытым и закрытым ключами. Нужно сделать 2 аналогичные функции на php (то есть при передаче им тех же ключей и текста должен получаться аналогичный результат кодирования/декодирования)

string encrypt(string text)
{
try
{
string code = "";

string publicxmlLocal = "<RSAKeyValue><Modulus>0YD2lrFHFJO2M1LEw/X4qamrFQM0wqwWM2n7Md//XOHqlUTW+naOvO1WkVt0 Z/TwW8yXQIJfh5L3NVo9yddbTGlq2WvK1EY+uwsHMjCgspp6BqCFYy27RsyzzskMYRWz7pG+k0TYRwGcp1RTWsFD75qxyp4vxA/D SNF5KS5rh5U=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>";

byte[] data = new byte[1024];
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();

rsa.FromXmlString(publicxmlLocal);

data = Encoding.UTF8.GetBytes(text);
byte[] EncryptedDataLocal = rsa.Encrypt(data, false);

code = Convert.ToBase64String(EncryptedDataLocal);

return code;
}
catch(Exception exp)
{
return exp.Message;
}
}

string decrypt(string textToDecrypt)
{
try
{
string code = "";

string privatexmlLocal = "<RSAKeyValue><Modulus>0YD2lrFHFJO2M1LEw/X4qamrFQM0wqwWM2n7Md//XOHqlUTW+naOvO1WkVt0 Z/TwW8yXQIJfh5L3NVo9yddbTGlq2WvK1EY+uwsHMjCgspp6BqCFYy27RsyzzskMYRWz7pG+k0TYRwGcp1RTWsFD75qxyp4vxA/D SNF5KS5rh5U=</Modulus><Exponent>AQAB</Exponent><P>722Q4L4wPbpmJ8PFMyL4Mpdd4n k0FC51VQtnd4ppKCtyFJQBWI36OSt/pVxiE9JMTABiOz4d6Sl2jf6fkjIA0w==</P><Q>4AErMDFMK9+nn3IudqX ZWL2k84TtnKObPxgHPV/SQodfEE4JHwvTjPA1i25To1rvxSO6npzc8gauWHhMC8rU9w==</Q><DP>ysvNCO9OwRo e6NODNnsKKx/Wn7r1h5qKO0x7iN8tjp6t9Awgz7cCGGZlqdSEJjHb+gvhKDjG8PTzu/XNhvDfjQ==</DP><DQ>zF BElDBiyaG1wjjjKFUdaVOQoI0eLUEM2P+RmulLXmMa0kRbDXY7/tEaBZMbtmO7TpTIIuPwotB1NTyEID1hAQ==</DQ>< InverseQ>egpMNk3Dp/2zVtigPQuR+UbK6gEE5iPBMaGoezKEU1TgdbT39tLnskF5HcbNiWZn6oLBjgK0kO4Xnut3AJ4IAg= =</InverseQ><D>ecDwDd2TCJNblPIqJhRh4gAXzAtj8yrdcB3MfUzHdGxaz0sFgOO7ynJIGAvFV9ESitcYo8Xgz MKNZnU+aXn9tRpOWaT+yk4Rahx6k1L8TPBnO4/NETMNuZQf26Z3vdpmuHoWpG5bO0togdBCzl9RmB99thneiFxEkuA2Gh9BJZU=< /D></RSAKeyValue>";

byte[] data = new byte[1024];
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();

rsa.FromXmlString(privatexmlLocal);
data = Convert.FromBase64String(textToDecrypt);

byte[] DecryptedDataLocal = rsa.Decrypt(data, false);

code = Encoding.UTF8.GetString(DecryptedDataLocal);

return code;
}
catch (Exception exp)
{
return exp.Message;
}
}
Разделы:
Опубликован:
17.04.2013 | 16:10

Теги: нужен программист, резюме программиста, требуется программист, резюме веб программиста

Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».