Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
Исходники алгоритма rsa,и помощь по c++ |

15.05.2010, 10:28
|
|
Познающий
Регистрация: 08.08.2009
Сообщений: 31
Провел на форуме: 229092
Репутация:
7
|
|
Исходники алгоритма rsa,и помощь по c++
У меня есть некий страх,что меня пошлют или в гугл или куданить еще,но...
Дело такое,С++ я не знаю и выучить наврятли успею,хотя щас этим и занимаюсь,а мне нужно срочно разобраться с куском кода,если не сложно кто-нибудь может оставить более-мение подробные комметнарии в коде,с обьяснением что это,что это и что в итоге получается,как в школе учителя обьясняли??ПЛЗ)))ну или не очень подробные,но коментарии после которых станет понятно как все это работает(не сам алгоритм а код)мне это ооочень поможет и в коде разобраться и к срр привыкнуть.
вот сам код и файлы которые он инклудит:
http://slil.ru/29136281
и еще...Если не сложно,то могли бы вы сказать зачем ему такое кол-во фалов и как от этого избавиться??(мне нужен чистый алгоритм rsa без цифровых подписей и т.д.,а некоторые файли с ними как-то связаны)
Заранее ОГРОООМНОЕ спасибо))))
|
|
|

15.05.2010, 13:41
|
|
студент
Регистрация: 30.07.2007
Сообщений: 800
Провел на форуме: 4275992
Репутация:
1188
|
|
вот тебе моя лаба по RSA, написана на C#
PHP код:
...........//бла бла бла....
public class Cryptography
{
public static RSACryptoServiceProvider rsa;
public static void AssignParameter()
{
const int PROVIDER_RSA_FULL = 1;
const string CONTAINER_NAME = "SpiderContainer";
CspParameters cspParams;
cspParams = new CspParameters(PROVIDER_RSA_FULL);
cspParams.KeyContainerName = CONTAINER_NAME;
cspParams.Flags = CspProviderFlags.UseMachineKeyStore;
cspParams.ProviderName = "Microsoft Strong Cryptographic Provider";
rsa = new RSACryptoServiceProvider(cspParams);
}
public static string EncryptData(string data2Encrypt)
{
AssignParameter();
StreamReader reader = new StreamReader("group.xml");
string publicOnlyKeyXML = reader.ReadToEnd();
rsa.FromXmlString(publicOnlyKeyXML);
reader.Close();
byte[] plainbytes = System.Text.Encoding.UTF8.GetBytes(data2Encrypt);
byte[] cipherbytes = rsa.Encrypt(plainbytes, false);
return Convert.ToBase64String(cipherbytes);
}
public static void AssignNewKey()
{
AssignParameter();
StreamWriter writer = new StreamWriter(@"personal.xml");
string publicPrivateKeyXML = rsa.ToXmlString(true);
writer.Write(publicPrivateKeyXML);
writer.Close();
writer = new StreamWriter(@"group.xml");
string publicOnlyKeyXML = rsa.ToXmlString(false);
writer.Write(publicOnlyKeyXML);
writer.Close();
}
public static string DecryptData(string data2Decrypt)
{
AssignParameter();
byte[] getpassword = Convert.FromBase64String(data2Decrypt);
StreamReader reader = new StreamReader(@"personal.xml");
string publicPrivateKeyXML = reader.ReadToEnd();
rsa.FromXmlString(publicPrivateKeyXML);
reader.Close();
byte[] plain = rsa.Decrypt(getpassword, false);
return System.Text.Encoding.UTF8.GetString(plain);
}
}
}
это основная часть.
весь же проект щя залью.
================
Скачать файл WindowsFormsApplication1.rar
пасс antichat
Последний раз редактировалось NetSter; 15.05.2010 в 13:48..
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|