Skip to main content

[opensource]: Аппаратный криптодвижок ГОСТ 28147-89

Что такое движок по ГОСТ 28147-89?

Реализация на верилоге советсткого стандарта симметричного шифрования, который был рассекречен в 1989г. В стандарте применяется шифрование с 256-битным ключом над 64-битным блоком данных за 32 раунда.

Текущая реализация являет собой некий компромисс между используемыми ресурсами и производительностью с целью демонстрации возможности размещения криптодвижка в низкобюджетных ПЛИС (оставаясь при этом относительно быстрым), как видно из отчета по использованию ресурсов — цель была достигнута.

Возможности

  • RTL и тесты написаны на верилоге
  • Реализация шифровщика/дешифровщика как единого блока
  • Поддержка режима EBC
  • Реализация алгоритма ГОСТ 28147-89 оптимизированная по использованию минимума ресурсов
  • Реализация криптования/декриптования 1 блока за 32 такта
  • Поддержка следующих типов S-box (имена даны в соответствии с RFC4357):
    • id-GostR3411-94-TestParamSet
    • id-Gost28147-89-CryptoPro-A-ParamSet
    • id-Gost28147-89-CryptoPro-B-ParamSet
    • id-Gost28147-89-CryptoPro-C-ParamSet
    • id-Gost28147-89-CryptoPro-D-ParamSet
    • id-tc26-gost-28147-param-Z
    • также поддерживается S-box из ГОСТ Р34.11-94 из CryptoPro

(далее…)

Читать далее

[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), то прописываем следующее на сервере:и на локальной машине-клиенте:

(далее…)

Читать далее