Память ключа и память состояния 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Память ключа и память состояния



Память ключа и память состояния модуля AES - две области памяти с организацией 16 x 8 бит, доступ к которым возможен через регистр ключа (KEY) и регистр состояния (STATE), соответственно.

Для чтения и записи у каждой области памяти имеется два 4-битных указателя адреса. Исходное значение указателей нулевое. После выполнения операции чтения или записи регистра состояния или регистра ключа, происходит автоматическое инкрементирование соответствующего указателя. В результате выполнения доступа (чтение или запись) к регистру управления (CTRL) происходит обнуление всех указателей. К обнулению указателя также приводит его переполнение, когда число выполненных операций чтения или записи превышает 16. Указатели адреса для программы недоступны. При выполнении операции записи в режиме XOR происходит инкрементирование обоих указателей чтения и записи.

Доступ к регистру ключа и регистру состояния возможен только, когда процесс шифрации/дешифрации не выполняется.

Рисунок 23.2. Память состояния с указателями и регистром

В памяти состояния отражается состояние модуля AES в процессе шифрации/дешифрации. Исходным значением для состояния являются исходные данные (т.е. PLAINTEXT в режиме шифрации и CIPHERTEXT в режиме дешифрации). Последним значением состояния являются зашифрованные/дешифрованные данные.

Рисунок 23.3. Память ключа с указателями и регистром

Модулем AES используются следующие определения ключа:

· В режиме шифрации, ключ - это ключ, оговоренный стандартом AES.

· В режиме дешифрации, ключ - это последний подключ расширенного ключа, оговоренный стандартом AES.

В режиме дешифрации, перед выполнением операции модулем AES должна быть программно выполнена процедура расширения ключа. Она необходима для генерации последнего подключа, который в дальнейшем загружается через регистр ключа. Альтернативно, эту процедуру можно выполнить аппаратно в модуле AES. Для этого, нужно обработать фиктивный блок данных в режиме шифрации с использованием того же ключа. По окончании процедуры шифрации, последний подключ может быть считан из памяти ключа, что собственно и требуется от процедуры расширения ключа. В таблице 23.1 демонстрируются результаты чтения ключа в различных режимах (шифрация или дешифрация) и состояниях модуля AES.

Таблица 23.1. Результат чтения памяти ключа на различных этапах

Шифрация Дешифрация
перед обработкой данных после обработки данных перед обработкой данных после обработки данных
Тот же ключ, что и был загружен Последний подключ, синтезированный из загруженного ключа Тот же ключ, что и был загружен Исходный ключ, синтезированный из последнего загруженного подключа

Поддержка DMA

Модуль AES поддерживает возможность запуска DMA-передачи по завершении процедуры шифрации/дешифрации. Более подробно о запуске DMA-передачи см. в 5.4 "Запуск передачи".

Обзор регистров модуля AES



Поделиться:


Последнее изменение этой страницы: 2016-12-30; просмотров: 262; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.220.154.41 (0.004 с.)