[SIZE=2][COLOR=#008080][FONT=Courier New]HashAlgorithm[/FONT][/COLOR][/SIZE][FONT=Courier New][SIZE=2] algorithm = [/SIZE][SIZE=2][COLOR=#008080]HashAlgorithm[/COLOR][/SIZE][SIZE=2].Create([/SIZE][SIZE=2][COLOR=#800000]"MD5"[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]);[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]byte[/COLOR][/SIZE][SIZE=2][] message = [/SIZE][SIZE=2][COLOR=#008080]Encoding[/COLOR][/SIZE][SIZE=2].Unicode.GetBytes([/SIZE][SIZE=2][COLOR=#800000]"Hello, world!"[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]);[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]byte[/COLOR][/SIZE][SIZE=2][] hash = algorithm.ComputeHash(message);
[/SIZE][/FONT]
Шифрование строковых данных
Вроде есть такие методы - RSA, MD5, AES, BlowFish, RC2, RC5, RC6
Дайте примеры. у кого есть.
Благодарю.
Кому интересно - вроде как нормально подходит
Там есть очень многое, что надо для практ. криптографии:).
Цитата: EuGenius
Вроде есть такие методы - RSA, MD5, AES, BlowFish, RC2, RC5, RC6
Фигасе ты собрал в одну кучу ))
Это конечно все к криптографии относится но для совершенно разных задач )
Код:
Для хэширования коротких сообщений не рекомендуется использовать MD5, SHA1, SHA2. Но это хэши, с их помощью не шифруют сообщение.
Теперь как именно зашифровать:
Код:
[SIZE=2][COLOR=#0000ff][FONT=Courier New]byte[/FONT][/COLOR][/SIZE][FONT=Courier New][SIZE=2][] message = [/SIZE][SIZE=2][COLOR=#008080]Encoding[/COLOR][/SIZE][SIZE=2].Unicode.GetBytes([/SIZE][SIZE=2][COLOR=#800000]"Hello, world!"[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]);[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#008080]RSACryptoServiceProvider[/COLOR][/SIZE][SIZE=2] rsa = [/SIZE][SIZE=2][COLOR=#0000ff]new [/COLOR][/SIZE][SIZE=2][COLOR=#008080]RSACryptoServiceProvider[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]();[/FONT]
[FONT=Courier New]rsa.Clear();[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#008080]RSAParameters[/COLOR][/SIZE][SIZE=2] rsaParams = rsa.ExportParameters([/SIZE][SIZE=2][COLOR=#0000ff]false[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]);[/FONT]
[FONT=Courier New]rsa.ImportParameters(rsaParams);[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]byte[/COLOR][/SIZE][SIZE=2][] result = rsa.Encrypt(message, [/SIZE][SIZE=2][COLOR=#0000ff]false[/COLOR][/SIZE][SIZE=2]);
[/SIZE][/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#008080]RSACryptoServiceProvider[/COLOR][/SIZE][SIZE=2] rsa = [/SIZE][SIZE=2][COLOR=#0000ff]new [/COLOR][/SIZE][SIZE=2][COLOR=#008080]RSACryptoServiceProvider[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]();[/FONT]
[FONT=Courier New]rsa.Clear();[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#008080]RSAParameters[/COLOR][/SIZE][SIZE=2] rsaParams = rsa.ExportParameters([/SIZE][SIZE=2][COLOR=#0000ff]false[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]);[/FONT]
[FONT=Courier New]rsa.ImportParameters(rsaParams);[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]byte[/COLOR][/SIZE][SIZE=2][] result = rsa.Encrypt(message, [/SIZE][SIZE=2][COLOR=#0000ff]false[/COLOR][/SIZE][SIZE=2]);
[/SIZE][/FONT]
Хотя, например, RSA лучше реализовать вручную, так понятнее и проще и без всяких наворотов.