Исследователи из Лаборатории искусственного интеллекта МТИ подготовили доклад о разработанной ими системе, которая автоматически создает оптимизированный код реализации криптографических алгоритмов. Обычно криптоалгоритмы оптимизируются для каждой аппаратной платформы вручную с учетом характеристик процессора и других, а такие адаптации чреваты не только ошибками, но и недостаточной производительностью.
Система, получившая название Fiat Cryptography, в испытаниях продемонстрировала способность создавать алгоритмы, не уступающие по производительности лучшим образцам кода, написанного вручную, но гораздо быстрее. Для каждой архитектуры она автоматически выбирает алгоритм с оптимальными характеристиками, а затем применяет специализированный компилятор со встроенной системой контроля корректности кода Coq. По словам разработчиков, любой созданный таким компилятором код уже является верифицированным.
Алгоритмы, сгенерированные системой, вошли, в частности, в библиотеку функций шифрования BoringSSL, которую компания Google использует в браузере Chrome для настольных компьютеров, Android и других платформ.