Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 8
На сайте нет зарегистрированных пользователей

Пользователей: 13,358
новичок: gafoci
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Создание последовательности окон и передвижение окон по экрану на Turbo ...
Файл записей с выводом обратного заголовка на Turbo Pascal
моделирование процесса поступления заявок в ЭВМ на GPSS + Пояснительная ...

Алгоритм RC6
В качестве одного из кандидатов фирмой RSA Data Security, Inc. был представлен алгоритм RC6 прошедший второй тур отбора. В нем предусматривается использование четырех рабочих регистров, а так-же введена операция целочисленного умножения, позволяющая существенно увеличить возмущения, вносимые каждым циклом шифрования, что приводит к увеличению стойкости и/или возможности сократить число циклов.
RC6 является полностью параметризованным алгоритмом шиф-рования. Конкретная версия RC6 обозначается как RC6-w/r/b, где w обозначает длину слова в битах, r - ненулевое количество итерационных циклов шифрования, а b - длину ключа в байтах. Во всех вариантах RC6-w/r/b работает с четырьмя w-битовыми словами, используя шесть базовых операций, обозначаемых следующим образом:
а + b- целочисленное сложение по модулю 2W;
а - b- целочисленное вычитание по модулю 2W;
а b - побитовое "исключающее ИЛИ" w-битовых слов;
а x b - целочисленное умножение по модулю 2W;
a « b - циклический сдвиг w-битового слова влево на величину, заданную log2w младшими битами b;
a » b — циклический сдвиг w-битового слова вправо на величину, заданную log2W младшими битами b;
Шифрование при помощи RC6-w/r/b описывается следующим об-разом:
Вход: Исходный текст, записанный в 4 w-битовых входных регистрах А, В, С, D; Число циклов шифрования r; Ключевая таблица S[0; ... 2r + 3] w-битовых слов.
Выход: Шифрованный текст в регистрах А, В, С, D.
Алгоритм RC6

Расшифрование в этих обозначениях выглядит очень похоже:
Вход: Шифрованный текст, записанный в 4 w-битовых вход-ных регистрах А, В, С, D; Число циклов шифрования r; Ключевая таблица S[0; ... 2r + 3] w-битовых слов.
Выход: Исходный текст в регистрах А, В, С, D.

Алгоритм вычисления ключей для RC6-w/r/b выглядит следующим образом:
Пользователь задает ключ длиной b байтов. Достаточное число ненулевых байтов дописываются в конец, чтобы получилось целое число слов. Затем эти байты записываются начиная с младшего в массив из с слов, т.е. первый байт ключа записывается в L[0], и т.д., a L[c - 1] при необходимости дополняется со стороны старших разрядов нулевыми байтами. В результате работы алгоритма генерации ключей будет вычислено 2r + 4 слов, которые будут записаны в мас-сиве S[0; ...; 2r + 3].
Константы Р32 = B7E15163h and Q32 = 9E3779B9h - это константы, получаемые из двоичного представления е -2, где е -основание натуральных логарифмов, и ф - 1, где ф - золотое сечение, соответственно. Подобные же константы могут быть аналогичным образом получены и для RC6 с другим размером слова. Выбор констант является в некотором роде произвольным, и поэтому можно использовать и другие константы, получая при этом "частные" версии алгоритма.
Вход: Определенный пользователем b-байтовый ключ, предварительно загруженный в массив L[0;.. .с - 1]; Число циклов шифрования r.
Выход: Ключевая таблица S[0;...2r +4] из w-битовых слов.

Структура шифра RC6 является обобщением сети Фейштеля. Блок текста разбивается не на 2, а на 4 подблока, и на каждой итерации изменяются 2 подблока из четырех. При этом в конце итерации шифрования производится циклический сдвиг подблоков влево (при расшифровании, соответственно, вправо). Однако, такое обобщение привело к тому, что было утеряно свойство инвариантности блоков шифрования и расшифрования, хотя это и не является определяющим в оценке данного алгоритма.
Опубликовал Kest January 04 2012 18:04:37 · 0 Комментариев · 10415 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Flash MP3 Player ...
ScreenSaver [Исхо...
iChat v.7.0 Final...
База данных фильм...
RSS Feeds
Halcyon
TMS
PolyFlow
Delphi Russian Kn...
PHP глазами хакера
AddPage [Исходник...
Encrypt Decrypt
Размещение элемен...
PHP 5. Полное рук...
GamesBase 3.0
Delphi 2005 для .NET
Abc_component
ZipForge
Система баннеро-о...
IMtale

Топ загрузок
Приложение Клие... 100770
Delphi 7 Enterp... 97743
Converter AMR<-... 20258
GPSS World Stud... 17013
Borland C++Buil... 14181
Borland Delphi ... 10255
Turbo Pascal fo... 7370
Калькулятор [Ис... 5967
Visual Studio 2... 5205
Microsoft SQL S... 3661
Случайные статьи
Абстрактные типы д...
Для простого разве...
Политика безопасно...
Procedure or funct...
Как обратиться к с...
Определение функци...
Применение метода ...
Можно поместитьпри...
3.1. Структурирова...
Предоставление кон...
Унифицированный ло...
сообщения
РЕШЕНИЕ: УПРОЩЕНИЕ...
Файлы устройств и ...
Получите удовольст...
В случае схемы с о...
Запуск закачки
27 способов продви...
Всё о работе с фай...
Вычислить последов...
настраиваемых в MSDSS
8 веских причин сд...
Играть в зале игро...
Windows 2000 подде...
Взаимодействие кли...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?