Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Перспективы развития современной криптографии
Наиболее перспективным направлением развития криптографии с открытым ключом является использование эллиптических кривых (ECC, Elliptic Curves Cryptography).
Как сообщает Computerra (www.computerra.ru), в
2003 году Агентство национальной безопасности США купило лицензию на
коммерческую криптотехнологию ECC у канадской фирмы Certicom (
Стойкость шифрования системы ECC базируется на сложности задачи дискретного логарифмирования, при этом высокая стойкость криптосистемы достигается при значительно меньших длинах ключей, нежели в RSA. Согласно рекомендациям Национального института стандартов и технологий (НИСТ) США, эквивалентом 1024-битного ключа RSA, к примеру, является ECC-ключ длиной всего 163 бита (соотношение 6:1). Причем зависимость эта нелинейна, так что для 512-битного ключа ECC размер аналога в системе RSA составляет уже 15360 бит (соотношение 30:1). Столь выдающиеся характеристики делают ECC особенно привлекательной для применения в тех аппаратных условиях, где предъявляются строгие ограничения на размер памяти и объем допустимых вычислительных ресурсов (устройства типа смарт-карт).
Широкому внедрению ECC долго мешала слабая изученность математического фундамента криптосистемы, но поскольку двадцать лет серьезнейших исследований не выявили в технологии слабостей, сегодня, по мнению многих криптографов, ее можно считать вполне зрелой. Очевидным подтверждением тому стал и нынешний выбор АНБ, за 25 млн. долларов купившего у Certicom неэксклюзивную лицензию на эллиптические кривые и, если верить сообщениям, намеренного использовать в своих шифрсредствах 512-битные ключи ECC. По условиям контракта АНБ получило права на сублицензирование технологии своим собственным клиентам, имеющим дело с национальной безопасностью.
В разное время лицензии на ECC приобрели более трехсот фирм, включая Cisco Systems, Motorola, Oracle, Palm и Texas Instruments.
Еще одно перспективное направление современной
криптографии – квантовая криптография. Это направление позволяет обеспечить
безопасную передачу ключевых данных по волоконно-оптическому кабелю. Суть
заключается в следующем: информация о ключе кодируется в одном-единственном
фотоне света, который затем передается получателю. Согласно законам квантовой
физики, невозможно измерить один параметр фотона, не исказив при этом другой.
Поэтому попытка перехвата ключа неминуемо спровоцирует нарушения в квантовой
системе и приведет к искажению передаваемой информации. Таким образом, факт
проникновения в систему можно достаточно легко установить, а обменивающимся
сторонам придется только повторить сеанс связи с другим ключом (
Алгоритм TEA
Алгоритм TEA (Tiny Encryption Algorithm) относится к классу симметричных алгоритмов. Этот алгоритм был разработан в Кембриджском университете как классическая сеть Фейштеля с оптимизацией под 32-разрядные микропроцессоры. Размер блока – 64 бит, длина ключа – 128 бит.
В алгоритме использована сеть Фейштеля с двумя ветвями в 32 бита каждая. Образующая функция F обратима. Сеть Фейштеля несимметрична из-за использования в качестве операции наложения не исключающего «ИЛИ», а арифметического сложения.
Сеть Фейштеля является модификацией метода смешивания текущей части шифруемого блока с результатом некоторой функции. Данная функция вычисляется от другой независимой части блока. Этот метод часто используется, потому что обеспечивает многократное использовании ключа и материала исходного блока информации.
Рисунок 1. Схема работы алгоритма TEA
Недостатком алгоритма является некоторая медлительность, вызванная необходимостью повторять цикл Фейштеля 32 раза (это необходимо для тщательного «перемешивания данных» из-за отсутствия табличных подстановок).
Рассмотрим примеры реализации данного алгоритма на языках Паскаль и ассемблере.
Рассмотрим листинг на языке Паскаль (tea.pas):
const Delta=$9E3779B9;
procedure EnCrypt(var y,z:longword; k0,k1,k2,k3:longword);
var a,sum:longword;
begin
sum:=0;
for a:=0 to 31 do