Рубріки: Новини

Дослідники винайшли спосіб автоматичного перетворення коду C на безпечний Rust

Дмитро Сімагін

Дослідник Еймерік Фромгерц з компанії Inria та науковий співробітник Джонатан Проценко з Azure Research (Microsoft) винайшли спосіб автоматичного перетворення коду C на безпечний код Rust. Він полягає у створенні підмножини C під назвою Mini-C, яка уникає типових шаблонів C і таких функцій, як арифметика вказівників і неявна змінність. Саме через них код С не можна було перекласти на Rust з дотриманням усіх вимог до безпеки, пише The Register.

У статті під назвою «Compiling C to Safe Rust, Formalized» Фромгерц і Проценко пропонують альтернативу автоматичним схемам перетворення C-to-Rust, які створюють небезпечний Rust. 

«Замість того, щоб автоматично перекладати C у його повній загальності на небезпечну версію Rust і намагатися зробити отриманий код безпечнішим, ми націлюємося на дані, аплікативну підмножину C. Тому наш процес перекладу є напівактивним: користувачам, можливо, доведеться виконати мінімальні коригування вихідної програми на C, щоб відповідати підмножині підтримуваних мов. Але наш підхід автоматично створює справді безпечний код Rust», — пояснюють вчені.

Використання Mini-C за допомогою фреймворку компілятора KaRaMeL створює безпечний код Rust із застереженням, що після цього може знадобитися деякий рефакторинг.

Свій метод вчені перевірили на криптографічній бібліотеці HACL* (High-Assurance Crypto Library), яка складається з 80 000 рядків коду C, і на EverParse, перевіреній бібліотеці засобів форматування та серіалізації, яка складається з 1400 рядків C. В обох випадках код Rust продемонстрував такий самий профіль продуктивності, як і оригінальний код C, незважаючи на додавання Pointer metadata і перевірок меж виконання.

Останні статті

Стартапи в США переходять на 6-денний графік через конкуренцію з Китаєм

У Сан-Франциско знову стає популярною культура «grind» — позанормовий графік роботи заради успіху стартапу. Молоді…

27.10.2025

Manual QA в Україні: кандидатів стає менше, вакансій побільшало

За останні три роки кандидатів за фахом Manual QA в Україні стало вдвічі менше, число…

27.10.2025

У LLM-моделей з’явився «інстинкт самозбереження». Вчені вважають це небезпечним

Компанія Palisade Research, яка займається дослідженнями в галузі безпеки штучного інтелекту, заявила про появу у…

27.10.2025

Представлено «найефективнішу» українську LLM-модель Lapa v0.1.2

Дослідники з Українського католицького університету (Львів), AGH University of Krakow, Львівської політехніки та КПІ ім.…

27.10.2025

Розробники тепер можуть створювати Android-програми на мові Swift

Опубліковано перший preview-реліз Swift SDK для Android, який дозволяє розробникам створювати Android-додатки на мові програмування…

27.10.2025

FAVBET Tech сплатили ₴650 млн податків у 2025-му. Це 20 тис. дронів або 40 тис. антидронових рушниць

За дев’ять місяців 2025 року українська ІТ-компанія FAVBET Tech перерахувала до державного бюджету понад 650…

24.10.2025