Izolatorul criptografic ITB cu dovadă formală a fiabilității

Proiectul ITB a fost prezentat, dezvoltând un izolator criptografic simetric, destinat învelirii funcțiilor standard pseudocasuale (PRF) și a primitivelor de hash (AES, BLAKE2/3, Areion și altele) într-o barieră combinatorie și topologică interconectată. Spre deosebire de modurile de criptare clasice pe blocuri și fluxuri, arhitectura ITB vizează izolarea structurală a primitivului intern, împiedicând propagarea caracteristicilor diferențiale și liniare, linearizarea algebrică, precum și codificările directe pentru soluționatori SAT/SMT și MILP prin granițele barierei. Codul este scris în limbajul Go, cu optimizări la nivel de bază în assembler pentru arhitecturile x86_64 și ARM64 (Aarch64) și este distribuit sub licența Apache 2.0.

Transformarea datelor în ITB este împărțită în două niveluri interconectate (Interlocked Barrier), gestionate de opt chei izolate (izolare 8-seed) cu evoluție locală a cheii printr-un lanț cu legătură directă (ChainHash). La primul nivel, bariera de rang (Rank Barrier) execută o permutare combinatorie cheie pentru fiecare bloc de 48 de biți (sau bloc de 168 de biți pentru primitive de 512 biți), distribuind biții textului deschis în trei regiuni independente pe baza unei combinații în două etape conform numărului său (spațiul de partiții echilibrate C(48, 16) * C(32, 16) este de aproximativ 2^70.20, iar în modul de 168 de biți C(168, 56) * C(112, 56) este de aproximativ 2^258.60). La al doilea nivel, bariera pixel (Pixel Barrier) mapează datele pe o rețea de elemente de 8 biți (8 canale cu 7 biți de date și 1 bit de zgomot pseudocasual în fiecare byte) cu o deplasare ciclică pe 7 biți a cheii pe pixel, mascare a canalelor de 7 biți și selecție a poziției bitului de zgomot.

Caracteristicile principale ale proiectului:

  • Verificarea experimentală a proprietăților de izolare pe funcții comerciale (test de stres cu primitive slabe). Repertoriul include un stand de laborator care introduce în barieră o funcție hash obișnuită FNV-1a. Datorită combinațiilor non-lineare, fragmetării baitelor pe granițele canalelor de 7 biți (CMMD(7, 8) = 1) și injecției de biți de zgomot în fiecare byte, utilizarea practică sau construcția unui model SAT/SMT rezolvabil pe textul deschis și criptat este blocată deja în etapa de formulare a sistemului de ecuații.
  • Verificare formală automată a modelului în limbajul Lean 4. Toate cele 12 teoreme de bază matematice, combinatorice și de vectori biți ale construcției (inclusiv schema aplicată de consens hibrid al cheilor 3-to-8 din trei canale KEM independente în APPS.md), descrise în documentul PROOFS.md, sunt complet dovedite în Lean 4 fără utilizarea axiomelor și fără omisiuni ale dovezilor.
  • Instrument hardware încorporat pentru testarea criptoanalitică, care include verificări automate: baterii statistice de teste, evaluarea gradului algebric și a non-linearității, verificarea izolării semințelor la filtrarea pozițiilor de zgomot prin intermediul unui oracle CCA și căutarea vulnerabilităților cu ajutorul resolverelor externe.
  • Două moduri de operare: modul standard de autentificare (AEAD conform schemei MAC-Inside-Encrypt, unde inserția de autentificare este calculată și criptată în interiorul containerului) și modul de negare plauzibilă (Plausible Deniability) bazat pe codarea necondiționată COBS, unde decriptarea cu o cheie greșită și arbitrară produce date sintactic corecte fără indicator de eroare.
  • Împreună cu PRF moderne rapide (AES, BLAKE2/3, Areion), construcția este potrivită pentru schimburi sigure de mesaje, stocarea fișierelor și tuneluri de rețea. VPN-tunele (în cazul unei cozi de pachete de grup, cheltuielile de format sunt de aproximativ 15%). Pentru a proteja împotriva atacurilor prin canale externe, nucleele sunt executate la timp constant (constant-time) cu o curățare completă forțată a cadrelor de stivă și a registrelor procesorului (GPR, XMM/YMM/ZMM, NEON) după apeluri.
  • Pentru arhitectura x86_64 sunt implementate kerneluri de asamblare folosind instrucțiuni BMI2 (PEXT/PDEP), AES-NI, VAES, AVX2 și AVX-512, iar pentru ARM64 (Aarch64) – bazat pe extensii NEON, Crypto Extensions și SVE2 (cu un regresie portabilă pe Go curat). Peste un ABI C comun (libitb3) sunt pregătite legături pentru 33 de limbaje de programare.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster