![]() |
|
Модераторы: diadiavova, gambit |
![]()
|
|
| YoD |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 29.11.2004 Репутация: нет Всего: нет |
Подскажите пожалуйста, как можно зашифровать (синхронным шифрование) и потом расшифровать:
а). Содержимое тестовой переменной б). Файла |
|||
|
||||
| [Last]Wizard |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 20.7.2004 Где: Минск, Беларусь Репутация: 2 Всего: 10 |
В пространстве имен System.Security.Cryptography реализована масса алгоритмов шифрования/дешифрования данных, такие как DES, RSA, алгоритмы электронно-цифровой подписи DSA, SHA-1, SHA-256, SHA-384, SHA-512, MD5, а также еще много интересного.
|
|||
|
||||
| YoD |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 29.11.2004 Репутация: нет Всего: нет |
Это я нашёл. Но разобраться с многообразием не смог.
Всё что я освоил это: dim Enc as system.security.cryptography.simmetricalgorithm enc.createencriptor() А что дальше делать - незнаю... если кто разобрался - киньте плиз какой-нибудь рабочий исходник. Всё равно спасибо за информацию |
|||
|
||||
| [Last]Wizard |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 20.7.2004 Где: Минск, Беларусь Репутация: 2 Всего: 10 |
В общем картина такова:
1. Класс System.Security.Cryptography.SymmetricAlgorithm - это абстрактный класс, базовый для симметричных алгоритмов шифрования, таких как DES и другие. Есть еще класс System.Security.Cryptography.AsymmetricAlgorithm - базовый для асимметричных алгоритмов (RSA, DSA, и др.) Класс абстрактный (MustInherit) - следовательно создать его экземпляр напрямую нельзя. * Симметричные алгоритмы - те, которые шифруются и дешифруются одним и тем же ключом, Асимметричные алгоритмы - системы с открытым (public) и секретным (private) ключами. 2. Доступ к реализациям конкретных алгоритмов производится с помощью классов-наследников, которые называются System.Security.Cryptography.XXXCryptoServiceProvider, где XXX - название алгоритма. Например System.Security.Cryptography.DESCryptoServiceProvider. 3. Шифрование файлов и любых других потоков производится с помощью класса System.Security.Cryptography.CryptoStream. Это класс - наследник от System.IO.Stream - предоставляет интерфейс для записи и чтения данных из этого потока. Для того, чтобы создать объект этого класса, необходимо указать реальный поток, куда будут записываться данные или откуда они будут считываться (например файл), шифратор/дешифратор, который будет непосредственно шифровать/дешифровать данные, а также режим использования потока (чтение или запись). 4. Для того, чтобы получить шифратор/дешифратор необходимо вызвать метод CreateEncryptor() или CreateDecryptor() класса System.Security.Cryptography.XXXCryptoServiceProvider. Эти методы возвращают ссылку на интерфейс System.Security.Cryptography.ICryptoTransform, реализация которого зависит от выбраного алгоритма шифрования. 5. Для шифрования статических данных (не файлов) можно использовать реализацию методов TransformBlock() и TransformFinalBlock() интерфейса System.Security.Cryptography.ICryptoTransform. 6. Рабочий исходник:
|
|||
|
||||
![]()
|
| Правила форума VB .NET | |
|
|
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |