Skip to main content

[WiP][opensource]: Аппаратный криптодвижок ГОСТ P34.12-2015 aka «Кузнечик»

Что такое аппаратный Кузнечик (ГОСТ P34.12-2015)?

Реализация на верилоге свежего российского крипто-стандарта, который (почему-то?) получил второе имя «Кузнечик». О чём стандарт: симметричное шифрование, 256-битный ключ, 128-битный блок данных, 10 раундов.

 

Текущий статус

Написана и проверена поведенческая верилог-модель стадий S и R.

Особенности

  • Verilog HDL для RTL и тестовых стимулов
  • Реализация шифровщика/дешифровщика как единого блока
  • Поддержка режима EBC

Планируемые доработки

  • Поддержка следующих режимов поточного шифрования: CBC, CFB, OFB (возможно CTR)
  • Добавление AXI4-Stream для потокового шифрования
  • Добавление параллельной шины для конфигурации/статуса (АМВА АРВ-like?) в составе СнК
  • Возможность предзагрузки рассчитанного для всех раундов ключа
  • Параллельная сверка работы с моделью на Си (механизм DPI)
  • Различные реализации: критерии «минимальная площадь» и «максимальная производительность»

(далее…)

читать...

Установка Lattice Diamond на линукс на примере CentOS 7

Дано

  • HW: 16GB RAM + 256GB SSD
  • CentOS 7
  • Lattice Diamond 3.8

 

Установка

Попытка номер 1:

Не тут-то было. Ок, устанавливаем зависимости:

(далее…)

читать...

Установка Lattice ICEcube на линукс на примере CentOS 7

ICEcube 2

Установка зависимостей

Установка

Ставим в

Файл настройки окружения (лицензия лежит в /soft/Lattice/license.dat):

Дополнительно могут потребоваться следующие шаги:

(далее…)

читать...

Установка Xilinx ISE на линукс на примере CentOS 7

Дано

  • HW: 16GB RAM + 256GB SSD
  • CentOS 7
  • ISE 14.7

Установка

  1. Отключаем SElinux
  2. Распаковываем:  tar -xf xxx.tar
  3. Ставим в /soft/Xilinx, запуская  ./xsetup

Драйвера

Настройка

(далее…)

читать...

ГОСТ 34.12-2015 «Кузнечик». Производительность в железе.

Входные данные

  • 9 [честных] раундов
  • 128 бит [16 байт] блок данных
  • 100 МГц частота ПЛИС [при реализации криптоалгоритма]

 

Оценки

В некоторых докладах [ Рудской В. Российские криптографические стандарты: функции хэширования, блочные шифры и режимы их работы ] слышны цифры что на Си под 64битный линукс удаётся достичь скорости шифрования до 130 МБайт/с. (далее…)

читать...

Установка Xilinx Vivado на линукс на примере CentOS 7

Xilinx Vivado

Революционный продукт Xilinx (вышел летом 2012г), обеспечивает поддержку следующих промышленных стандартов:

  • Шина AMBA AXI4
  • Метаданые согласно IP-XACT IEEE1685
  • Полноценный скриптинг на TCL
  • Поддержка формата SDC (Synopsys Design Constraints)

Дано

  • HW: 16GB RAM + 256GB SSD
  • CentOS 7
  • Vivado 2015.3

Установка

Ставим по традиции в /soft/Xilinx

Лицензия

Установка лицензии для конкретного юзера:

файл может иметь произвольное название, но расширение lic

Настройка

Там же, как видно, объявляем полезные алиасы:

  • vivado-cli
  • vivado-gui

Проброс Иксов с сервера

  Если Х11 по какой-то причине не работают по SSH (но включены в конфиге SSHD), то прописываем следующее на сервере:и на локальной машине-клиенте:

(далее…)

читать...