[PEPM'23] Fast Cryptographic Code via Partial Evaluation
[PEPM'23] Fast Cryptographic Code via Partial Evaluation
Adam Chlipala
This presentation is an overview of and update on our project Fiat Cryptography, which uses the Coq proof assistant to generate fast cryptographic code, with proof of correctness. Code produced with this tool is now included by all major web browsers for TLS (secure browsing), and PEPM techniques are at front and center.
The heart of the project is our original verified compiler, which specializes functional programs into C-like code. It is proved in Coq and extracted to a command-line tool. Inside, it is a combination of a partial-evaluation engine, abstract interpreter, and other fairly innocuous compiler phases. A canonical use specializes a general modular-arithmetic algorithm to parameters like the large prime modulus. The resulting code has generally been the fastest pure C code for different algorithms.
We’ve been up to some improvements lately, aiming toward a complete cryptographic library generated from nice functional code but ending up as performance-competitive C code with a Coq proof of correctness. To expand the scope of functional programs that we can specialize, we developed Rupicola, an alternative to Coq extraction that targets C-like code, generates proofs, and supports extension with proved user hints. To push formal guarantees to lower levels, we have also been developing tooling to bottom out in x86 assembly code, relying on a new verified translation validator, so that we can bring arbitrary compilers into the picture. For instance, a random-search tool created by our collaborators is able to find new world-champion implementations for the second-most-recent generation of Intel processors – with Coq proofs connecting the assembly code back to whiteboard-level functional programs.
Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «[PEPM'23] Fast Cryptographic Code via Partial Evaluation», вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.
Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.
Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!
Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.