This is a mirror of official site: http://jasper-net.blogspot.com/

Шифрование данных по алгоритму DES в Android

| Sunday, May 8, 2011
DES (Data Encryption Standard) — симметричный алгоритм шифрования, разработанный фирмой IBM и утвержденный правительством США в 1977 году как официальный стандарт (FIPS 46-3). Он используется во многих криптографических системах. Это блочный алгоритм шифрования с симметричным ключом. Ключ состоит из 64 битов, но лишь 56 из них применяются непосредственно при шифровании. Оставшиеся 8 предназначены для контроля четности: они устанавливаются так, чтобы каждый из 8 байтов ключа имел нечетное значение. Шифруемая информация обрабатывается блоками по 64 бита, причем каждый блок модифицируется с помощью ключа в интерационной процедуре, включающей 16 циклов.
Более подробная информация об алгоритме - http://ru.wikipedia.org/wiki/DES

Для шифрования данных в Android используются классы пакета javax.crypto, входящего в состав Android SDK. Класс javax.crypto.Cipher реализует базовые функции популярных криптографических алгоритмов шифрования – DES, AES, RSA и других. Для создания экземпляра такого класса используется статистический метод Cipher.getInstance , который в качестве параметра получает имя криптографического алгоритма шифрования:

Cipher chr = Cipher.getInstance("DES");

Далее необходимо настроить экземпляр класса javax.crypto.Cipher и указать в каком режиме он будет работать: в режиме шифрования chr.init(Cipher.ENCRYPT_MODE, key); - , или дешифрования
chr.init(Cipher.DECRYPT_MODE, key); . Параметр key здесь – это ключ шифрования для алгоритма DES. Данный параметр имеет тип javax.crypto.SecretKey и может быть создан так:

javax.crypto.KeyGenerator.SecretKey key = KeyGenerator.getInstance("DES").generateKey();

Read more: Plaincodesource

Posted via email from Jasper-net

0 comments: