Az Intel mérnökei egy új HTTPA (HTTPS Attestable) protokollt javasoltak, amely a HTTPS-t további biztonsági garanciákkal bővíti a végrehajtott számításokhoz. Az HTTPA garantálja a felhasználói kérés feldolgozásának integritását a szerveren, és biztosítja, hogy a webszolgáltatás megbízható, és a TEE (Trusted Execution Environment) környezetében futó kódot nem módosították hack vagy adminisztrátori manipuláció következtében.
A HTTPS védi az adatátvitelt a hálózaton, de nem tudja kiküszöbölni az integritásuk megsértésének lehetőségét a szerverre irányuló támadások révén. Az olyan technológiák, mint az Intel SGX (Software Guard Extension), ARM TrustZone és az AMD PSP (Platform Security Processor) által létrehozott izolált enklávék lehetővé teszik a kritikus számítások védelmét, és csökkentik a bizalmas információk végső ponton történő kiszivárgásának vagy megváltoztatásának kockázatát.
Az HTTPA a továbbított információ hitelességének garantálására az Intel SGX által biztosított hitelesítési eszközöket veszi igénybe, amelyek megerősítik a számításokat végző enkláv hitelességét. Gyakorlatilag az HTTPA kiterjeszti a HTTPS-t az enkláv távoli hitelesítésének lehetőségével, és lehetővé teszi annak ellenőrzését, hogy az valódi Intel SGX környezetben fut, és a webszolgáltatás megbízható. A protokoll eredetileg egy univerzális megoldásként fejlődik, és nemcsak az Intel SGX-re, hanem más TEE rendszerekre is megvalósítható.

A HTTPS védett kapcsolatok létrehozásának szokásos folyamata mellett az HTTPA további követelményként egy megbízható szessziókulcs egyeztetését is megköveteli. A protokoll bevezeti az új HTTP "ATTEST" módszert, amely lehetővé teszi háromféle kérés és válasz feldolgozását:
- „preflight” az ellenőrzéshez, hogy a távoli fél támogatja-e az enklávok hitelesítését;
- „attest” a hitelesítési paraméterek egyeztetésére (kriptoalgoritmus kiválasztás, egyedi munkamenet-jelsorozatok cseréje, munkamenet-azonosító generálása és az enkláv nyilvános kulcsának átadása a kliensnek);
- „trusted session” – megbízható információcseréhez szükséges munkamenet kulcs formálása. A munkamenet kulcs az előzőleg egyeztetett előzetes titkos jelsorozatra (pre-session secret) épül, amelyet a kliens a kapott adatok felhasználásával alakít ki. a szerver TEE nyilvános kulcsáról és a felek által generált véletlenszerű sorozatokról.

A HTTPA azt jelenti, hogy a kliens megbízható, míg a szerver nem, azaz a kliens felhasználhatja ezt a protokollt a TEE környezetében végzett számítások ellenőrzésére. Ugyanakkor a HTTPA nem garantálja, hogy a folyamat során végzett egyéb számítások webszerverek nem kompromittálódtak, ami különböző megközelítést igényel a webszolgáltatások fejlesztésekor. Így alapvetően a HTTPA célja, hogy kifejezetten olyan szolgáltatásokkal használják, amelyek magasabb integritási követelményekkel rendelkeznek, mint például pénzügyi és orvosi rendszerek.
Olyan helyzetekben, amikor a TEE-ben végzett számításokat a szerver és a kliens számára is ellenőrizni kell, a mHTTPA (Mutual HTTPA) protokoll lehetőségét kínálja, amely kétirányú ellenőrzést végez. Ez a változat bonyolultabb a szerver és a kliens számára szükséges kétirányú munkamenet kulcsok létrehozásának követelménye miatt.
Forrás: opennet.ru
