ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ изолятор ITB с Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎΠΌ надёТности

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ITB, Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ симмСтричный криптографичСский изолятор, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для обёртывания стандартных псСвдослучайных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (PRF) ΠΈ Ρ…ΡΡˆ-ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ² (AES, BLAKE2/3, Areion ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ…) Π² сцСплСнный ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½Ρ‹ΠΉ ΠΈ топологичСский Π±Π°Ρ€ΡŒΠ΅Ρ€. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ классичСских Π±Π»ΠΎΡ‡Π½Ρ‹Ρ… ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹Ρ… Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ, Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ITB Π½Π°Ρ†Π΅Π»Π΅Π½Π° Π½Π° ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΡƒΡŽ ΠΈΠ·ΠΎΠ»ΡΡ†ΠΈΡŽ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π°, прСпятствуя Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½ΠΈΡŽ Π΄ΠΈΡ„Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… характСристик, алгСбраичСской Π»ΠΈΠ½Π΅Π°Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ прямых ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΎΠΊ для Ρ€Π΅ΡˆΠ°Ρ‚Π΅Π»Π΅ΠΉ SAT/SMT ΠΈ MILP Ρ‡Π΅Ρ€Π΅Π· Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ Π±Π°Ρ€ΡŒΠ΅Ρ€Π°. Код написан Π½Π° языкС Go с Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌΠΈ оптимизациями Π½Π° ассСмблСрС для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ x86_64 ΠΈ ARM64 (Aarch64) ΠΈ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0.

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² ITB Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΎ Π½Π° Π΄Π²Π° сцСплСнных уровня (Interlocked Barrier), управляСмых восСмью ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ сидами (8-seed isolation) с локальной ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠ΅ΠΉ ΠΊΠ»ΡŽΡ‡Π° Ρ‡Π΅Ρ€Π΅Π· каскад с прямой связью (ChainHash). На ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ Π±Π°Ρ€ΡŒΠ΅Ρ€ ранТирования (Rank Barrier) выполняСт ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΡƒΡŽ пСрСстановку ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ 48-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° (ΠΈΠ»ΠΈ 168-Π±ΠΈΡ‚Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° для 512-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ²), распрСдСляя Π±ΠΈΡ‚Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ тСкста ΠΏΠΎ Ρ‚Ρ€Ρ‘ΠΌ нСзависимым Ρ€Π΅Π³ΠΈΠΎΠ½Π°ΠΌ Π½Π° основС Π΄Π²ΡƒΡˆΠ°Π³ΠΎΠ²ΠΎΠ³ΠΎ нахоТдСния сочСтания ΠΏΠΎ Π΅Π³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Ρƒ (пространство сбалансированных Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΉ C(48, 16) * C(32, 16) составляСт ΠΎΠΊΠΎΠ»ΠΎ 2^70.20, Π° Π² 168-Π±ΠΈΡ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ C(168, 56) * C(112, 56) β€” ΠΎΠΊΠΎΠ»ΠΎ 2^258.60). На Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΠΈΠΊΡΠ΅Π»ΡŒΠ½Ρ‹ΠΉ Π±Π°Ρ€ΡŒΠ΅Ρ€ (Pixel Barrier) ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° сСтку 8-Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… элСмСнтов (8 ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΏΠΎ 7 Π±ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ 1 Π±ΠΈΡ‚ псСвдослучайного ΡˆΡƒΠΌΠ° Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π±Π°ΠΉΡ‚Π΅) с ΠΏΠΎΠΏΠΈΠΊΡΠ΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ 7-Π±ΠΈΡ‚Π½Ρ‹ΠΌ цикличСским сдвигом, маскированиСм 7-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΡˆΡƒΠΌΠΎΠ²ΠΎΠ³ΠΎ Π±ΠΈΡ‚Π°.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ особСнности ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

  • Π­ΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΈΠ·ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… свойств Π½Π° Π·Π°Π²Π΅Π΄ΠΎΠΌΠΎ нСкриптографичСских функциях (стрСсс-тСст со слабыми ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π°ΠΌΠΈ). Π’ состав рСпозитория Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Π»Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½Ρ‹ΠΉ стСнд, ΠΏΠΎΠ΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ Π²Π½ΡƒΡ‚Ρ€ΡŒ Π±Π°Ρ€ΡŒΠ΅Ρ€Π° ΠΎΠ±Ρ‹Ρ‡Π½ΡƒΡŽ Ρ…ΡΡˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ FNV-1a. Π—Π° счёт Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ³ΠΎ комбинадичСского разранТирования, расщСплСния Π±Π°ΠΉΡ‚ΠΎΠ² ΠΏΠΎ Π³Ρ€Π°Π½ΠΈΡ†Π°ΠΌ 7-Π±ΠΈΡ‚Π½Ρ‹Ρ… ΠΊΠ°Π½Π°Π»ΠΎΠ² (ΠΠžΠ”(7, 8) = 1) ΠΈ ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΠΈ ΡˆΡƒΠΌΠΎΠ²Ρ‹Ρ… Π±ΠΈΡ‚ΠΎΠ² Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±Π°ΠΉΡ‚ практичСскоС ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ построСниС Ρ€Π΅ΡˆΠ°Π΅ΠΌΠΎΠΉ SAT/SMT-ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌΡƒ ΠΈ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ тСксту блокируСтся ΡƒΠΆΠ΅ Π½Π° этапС формулирования систСмы ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ.
  • Машинно-провСрСнная Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Π°Ρ вСрификация Π½Π° языкС Lean 4. ВсС 12 Π±Π°Π·ΠΎΠ²Ρ‹Ρ… матСматичСских, ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½Ρ‹Ρ… ΠΈ Π±ΠΈΡ‚-Π²Π΅ΠΊΡ‚ΠΎΡ€Π½Ρ‹Ρ… Ρ‚Π΅ΠΎΡ€Π΅ΠΌ конструкции (Π° Ρ‚Π°ΠΊΠΆΠ΅ прикладная схСма Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΎΠ³ΠΎ согласования ΠΊΠ»ΡŽΡ‡Π΅ΠΉ 3-to-8 ΠΈΠ· Ρ‚Ρ€Ρ‘Ρ… нСзависимых KEM-ΠΊΠ°Π½Π°Π»ΠΎΠ² Π² APPS.md), описанныС Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ PROOFS.md, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π΄ΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π² Lean 4 Π±Π΅Π· использования аксиом ΠΈ пропусков Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π².
  • ВстроСнный инструмСнтарий криптоаналитичСского тСстирования, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ: статистичСскиС Π±Π°Ρ‚Π°Ρ€Π΅ΠΈ тСстов, ΠΎΡ†Π΅Π½ΠΊΡƒ алгСбраичСской стСпСни ΠΈ нСлинСйности, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ изоляции сидов ΠΏΡ€ΠΈ отсСивании ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ ΡˆΡƒΠΌΠ° Ρ‡Π΅Ρ€Π΅Π· CCA-ΠΎΡ€Π°ΠΊΡƒΠ» ΠΈ поиск уязвимостСй ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π²Π½Π΅ΡˆΠ½ΠΈΡ… Ρ€Π΅ΡˆΠ°Ρ‚Π΅Π»Π΅ΠΉ.
  • Π”Π²Π° Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹: стандартный Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ (AEAD ΠΏΠΎ схСмС MAC-Inside-Encrypt, Π³Π΄Π΅ имитовставка вычисляСтся ΠΈ ΡˆΠΈΡ„Ρ€ΡƒΠ΅Ρ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°) ΠΈ Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€Π°Π²Π΄ΠΎΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ отрицания (Plausible Deniability) Π½Π° Π±Π°Π·Π΅ бСзусловного кодирования COBS, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ Π²Ρ‹Π΄Π°Ρ‘Ρ‚ синтаксичСски ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π±Π΅Π· ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° ошибки.
  • Π’ ΠΏΠ°Ρ€Π΅ с быстрыми соврСмСнными PRF (AES, BLAKE2/3, Areion) конструкция ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Π° для Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΠΌΠ΅Π½Π° сообщСниями, хранСния Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ сСтСвых VPN-Ρ‚ΡƒΠ½Π½Π΅Π»Π΅ΠΉ (ΠΏΡ€ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΎΠ²ΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΎΠΊΠΎΠ»ΠΎ 15%). Для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ ΠΏΠΎ сторонним ΠΊΠ°Π½Π°Π»Π°ΠΌ ядра Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π·Π° постоянноС врСмя (constant-time) с ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ очисткой стСковых Ρ„Ρ€Π΅ΠΉΠΌΠΎΠ² ΠΈ процСссорных рСгистров (GPR, XMM/YMM/ZMM, NEON) послС Π²Ρ‹Π·ΠΎΠ²ΠΎΠ².
  • Для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ x86_64 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ассСмблСрныС ядра с использованиСм инструкций BMI2 (PEXT/PDEP), AES-NI, VAES, AVX2 ΠΈ AVX-512, Π° для ARM64 (Aarch64) β€” Π½Π° Π±Π°Π·Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ NEON, Crypto Extensions ΠΈ SVE2 (с пСрСносимым ΠΎΡ‚ΠΊΠ°Ρ‚ΠΎΠΌ Π½Π° чистый Go). ΠŸΠΎΠ²Π΅Ρ€Ρ… Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ C ABI (libitb3) ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Ρ‹ обвязки для 33 языков программирования.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠΈΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ хостинг для сайтов с Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ ΠΎΡ‚ DDoS, VPS VDS сСрвСры πŸ”₯ ΠšΡƒΠΏΠΈΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ хостинг для сайтов с Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ ΠΎΡ‚ DDoS, VPS VDS сСрвСры | ProHoster