Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Алгоритмы шифрования Хеллмана или MD5


Автор: ДобренькийПапаша 19.6.2009, 10:16
Реализовал шифрование паролей алгоритмом Хеллмана. Это класс ECDiffieHellmanCng. Применяется для обеспечения безопасного обмена секретными ключами по открытому каналу. Я шифрую пароли и отправляю в базу. Делаю запрос по логину, дешифрую...

Короче запускаю а мне пишет что данный алгоритм шифрования не поддерживается данной платформой. Я посмотрел в MSDN там написано, что мол смотрите требования для платформы .NET 3.5... ну я посмотрел, Windows XP SP2, поддерживается естесственно... у меня стоит оный...

Правда сборка сторонняя, неизвестного человека... 
Это может быть только по этому? И можно ли решить это каким-то образом, исключая перестановку системы? Какие предложения?

з.ы. кстати MD5 тоже не работает по той же причине...

Автор: nikitao 20.6.2009, 01:23
запусти у кого нибудь другого ( с нормальной системой) , а там видно будет.

Автор: ДобренькийПапаша 20.6.2009, 12:26
Всё ясно стало. Этот класс Cng (Cryptography Next Generation) в котором алгоритм Хеллмана можно использовать только в системах Windows Vista и Windows Server 2008.

Придётся менять... можно на RSA, но я знаю, что реализация RSA кривая сильно в .NET
Поэтому я в замешательстве, что-то не знаю что и делать...

Что посоветуете? Может кодом шифровки\дешифровки на C#.NET поделитесь?

p.s. Примеры уже нашёл...

Автор: nikitao 20.6.2009, 14:04
http://msdn.microsoft.com/ru-ru/library/system.security.cryptography.symmetricalgorithm.aspx

Вот это в свое время использовал. Вобщем все устраивает. Хотя конечно я в криптографии не силен )

Автор: altarvic 20.6.2009, 20:44
Цитата(ДобренькийПапаша @  20.6.2009,  12:26 Найти цитируемый пост)
но я знаю, что реализация RSA кривая сильно в .NET

Можно узнать в чем кривизна?

Автор: ДобренькийПапаша 21.6.2009, 08:25
http://www.rsdn.ru/article/crypto/cryptoapi.xml#EILAC

Автор: altarvic 21.6.2009, 08:46
Ну не знаю, судить вам конечно, но насчет кривизны я считаю, что там преувеличено. Вообще RSA не применяют для шифрования данных, из-за ограничений на размер данных и низкой скорости. Его, как правило, применяют для зашифровки сеансовых ключей (симметричных алгоритмов) и для цифровых подписей. А с этим никаких проблем в .NET у меня не было

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)