Inginerii de la Intel au propus un nou protocol HTTPA (HTTPS Attestable), care extinde HTTPS cu garanții suplimentare de securitate pentru calculele efectuate. HTTPA garantează integritatea procesării solicitărilor utilizatorilor pe server și asigură că serviciul web este de încredere și că codul care rulează în mediu TEE (Trusted Execution Environment) pe server nu a fost modificat în urma unei breșe de securitate sau a unei intervenții malitioase din partea administratorului.
HTTPS protejează datele transmise în timpul transferului pe rețea, dar nu poate preveni compromiterea integrității acestora ca urmare a atacurilor asupra serverului. Enclavele izolate, create cu ajutorul tehnologiilor precum Intel SGX (Software Guard Extension), ARM TrustZone și AMD PSP (Platform Security Processor), permit protejarea calculelor importante și reduc riscul de scurgeri sau modificări ale informațiilor confidențiale pe nodul final.
HTTPA, pentru a garanta autenticitatea informațiilor transmise, permite utilizarea mecanismelor de atestare furnizate de Intel SGX, care confirmă autenticitatea enclavei în care au fost efectuate calculele. Practic, HTTPA extinde HTTPS cu posibilitatea de atestare de la distanță a enclavei și permite verificarea faptului că aceasta se desfășoară într-un mediu autentic Intel SGX și că serviciul web este de încredere. Protocolul este dezvoltat inițial ca fiind universal și, pe lângă Intel SGX, poate fi implementat și pentru alte sisteme TEE.

Pe lângă procesul standard de stabilire a unei conexiuni securizate pentru HTTPS, HTTPA necesită suplimentar negocierea unei chei de sesiune de încredere. Protocolul introduce un nou metod HTTP, "ATTEST", care permite procesarea a trei tipuri de solicitări și răspunsuri:
- "preflight" pentru a verifica dacă partea de la distanță suportă atestarea enclavei;
- "attest" pentru a negocia parametrii atestării (alegerea algoritmului criptografic, schimbul de secvențe aleatorii unice pentru sesiune, generarea unui identificator de sesiune și transmiterea către client a cheii publice a enclavei);
- "trusted session" — generarea unei chei de sesiune pentru un schimb de informații de încredere. Cheia de sesiune este generată pe baza unei secvențe secrete preliminare (pre-session secret) anterior convenite, creată de client cu ajutorul celui obținut de server cheia deschisă TEE, și secvențele aleatoare generate de fiecare parte.

HTTPA presupune că clientul este de încredere, iar serverul nu, adică clientul poate folosi acest protocol pentru a verifica calculele din mediul TEE. Totuși, HTTPA nu garantează că celelalte calcule efectuate în afara TEE nu au fost compromise, ceea ce necesită o abordare separată în dezvoltarea web-serviciilor. Astfel, în principal, HTTPA este destinat utilizării cu servicii specializate care au cerințe ridicate de integritate a informațiilor, cum ar fi sistemele financiare și medicale. servere web pentru situațiile în care calculele din TEE trebuie confirmate atât pentru server, cât și pentru client, este prevăzută o variantă a protocolului mHTTPA (Mutual HTTPA), care efectuează o verificare bidirecțională. Această variantă este mai complexă din cauza necesității de a genera chei de sesiune în ambele sensuri pentru server și client.
Lansarea crabz 0.7, un utilitar pentru compresia și decompresia multi-thread, scris în Rust.
Sursa: opennet.ro
