Inženýři společnosti Intel navrhli nový protokol HTTPA (HTTPS Attestable), který rozšiřuje HTTPS o dodatečné záruky bezpečnosti prováděných výpočtů. HTTPA zaručuje integritu zpracování uživatelského požadavku na serveru a umožňuje ověřit, že webová služba je důvěryhodná a že kód běžící v prostředí TEE (Trusted Execution Environment) na serveru nebyl změněn v důsledku hacku nebo diverze administrátora.
HTTPS chrání přenášená data během přenosu po síti, ale nemůže vyloučit narušení jejich integrity v důsledku útoků na server. Izolované enclave, vytvářené pomocí technologií, jako jsou Intel SGX (Software Guard Extension), ARM TrustZone a AMD PSP (Platform Security Processor), umožňují chránit důležité výpočty a snižují riziko úniku či změny důvěrných informací na koncovém uzlu.
HTTPA pro zaručení pravdivosti předaných informací umožňuje využívat prostředky attestace poskytované v Intel SGX, které potvrzují autenticitu enclave, ve kterém byly výpočty provedeny. V podstatě HTTPA rozšiřuje HTTPS o možnost vzdálené attestace enclave a umožňuje zkontrolovat, že běží v autentickém prostředí Intel SGX a webové službě lze důvěřovat. Protokol se od samého začátku vyvíjí jako univerzální a kromě Intel SGX může být implementován také pro další TEE systémy.

Kromě standardního procesu HTTPS pro nastavení zabezpečeného spojení požaduje HTTPA navíc dohodu o důvěryhodném sezení klíče. Protokol zavádí nový HTTP metod „ATTEST“, který umožňuje zpracovávat tři typy požadavků a odpovědí:
- „preflight“ pro ověření, zda vzdálená strana podporuje attestaci enclave;
- „attest“ pro dohodu o parametrech attestace (výběr kryptografického algoritmu, výměna unikátních pro sezení náhodných sekvencí, generace identifikátoru sezení a předání veřejného klíče enclave klientovi);
- „trusted session“ — vytvoření sezení klíče pro důvěryhodnou výměnu informací. Sezení klíč se vytváří na základě předem dohodnuté tajné sekvence (pre-session secret), kterou vygeneroval klient za použití obdrženého od serveru otevřeného klíče TEE a náhodných sekvencí vygenerovaných každou stranou.

HTTPA předpokládá, že klient je důvěryhodný, zatímco server nikoli, tj. klient může tento protokol použít k ověření výpočtů v TEE prostředí. HTTPA však nezaručuje, že další výpočty prováděné mimo TEE nebyly kompromitovány, což vyžaduje samostatný přístup k vývoji webových služeb. HTTPA se proto primárně zaměřuje na použití se specializovanými službami, které mají zvýšené požadavky na integritu informací, jako jsou finanční a zdravotnické systémy. webového serveru V situacích, kdy musí být výpočty v TEE potvrzeny jak serverem, tak klientem, je navržen protokol mHTTPA (Mutual HTTPA), který provádí oboustranné ověřování. Tento variant je složitější kvůli nutnosti oboustranného vytváření sezónních klíčů pro server a klienta.
Inženýři společnosti Intel navrhli nový protokol HTTPA (HTTPS Attestable), který rozšiřuje HTTPS o další záruky bezpečnosti provedených výpočtů.
Zdroj: opennet.ru
