Firma Intel opracowuje protokół HTTPA, który będzie uzupełnieniem protokołu HTTPS

Inżynierowie z Intela zaproponowali nowy protokół HTTPA (HTTPS Attestable), rozszerzający HTTPS o dodatkowe gwarancje bezpieczeństwa wykonywanych obliczeń. HTTPA pozwala zagwarantować integralność przetwarzania żądania użytkownika na serwerze oraz mieć pewność, że serwis WWW jest godny zaufania, a kod działający w środowisku TEE (Trusted Execution Environment) na serwerze nie został zmieniony w wyniku włamania lub sabotaż ze strony administratora.

HTTPS chroni przesyłane dane podczas transmisji w sieci, ale nie może zapobiec naruszeniu ich integralności w wyniku ataków na serwer. Izolowane enklawy, tworzone przy użyciu technologii takich jak Intel SGX (Software Guard Extension), ARM TrustZone i AMD PSP (Platform Security Processor), umożliwiają ochronę wrażliwych komputerów i zmniejszają ryzyko wycieku lub modyfikacji wrażliwych informacji na węźle końcowym.

Aby zagwarantować wiarygodność przesyłanych informacji, protokół HTTPA umożliwia korzystanie z narzędzi atestacyjnych udostępnianych w Intel SGX, które potwierdzają autentyczność enklawy, w której wykonano obliczenia. Zasadniczo protokół HTTPA rozszerza protokół HTTPS o możliwość zdalnego potwierdzania enklawy i umożliwia sprawdzenie, czy działa ona w oryginalnym środowisku Intel SGX i czy można zaufać usłudze internetowej. Protokół jest początkowo rozwijany jako uniwersalny i oprócz Intel SGX może być zaimplementowany dla innych systemów TEE.

Firma Intel opracowuje protokół HTTPA, który będzie uzupełnieniem protokołu HTTPS

Oprócz normalnego procesu ustanawiania bezpiecznego połączenia dla protokołu HTTPS, protokół HTTPA wymaga dodatkowo negocjacji wiarygodnego klucza sesji. Protokół wprowadza nową metodę HTTP „ATTEST”, która umożliwia przetwarzanie trzech typów żądań i odpowiedzi:

  • „preflight”, aby sprawdzić, czy strona zdalna obsługuje zaświadczenie enklawy;
  • „atest” polegający na uzgodnieniu parametrów atestacji (wybór algorytmu kryptograficznego, wymiana losowych sekwencji unikalnych dla sesji, wygenerowanie identyfikatora sesji i przekazanie klientowi klucza publicznego enklawy);
  • „sesja zaufana” – wygenerowanie klucza sesyjnego umożliwiającego wymianę zaufanych informacji. Klucz sesyjny tworzony jest na podstawie wcześniej uzgodnionego przed sesją sekretu wygenerowanego przez Klienta przy użyciu klucza publicznego TEE otrzymanego z serwera oraz losowych sekwencji wygenerowanych przez każdą ze stron.

Firma Intel opracowuje protokół HTTPA, który będzie uzupełnieniem protokołu HTTPS

HTTPA oznacza, że ​​klient jest godny zaufania, a serwer nie, tj. klient może wykorzystać ten protokół do weryfikacji obliczeń w środowisku TEE. Jednocześnie HTTPA nie gwarantuje, że inne obliczenia wykonywane podczas pracy serwera WWW, które nie są wykonywane w TEE, nie zostaną naruszone, co wymaga zastosowania odrębnego podejścia do rozwoju usług sieciowych. Dlatego protokół HTTPA jest przeznaczony głównie do stosowania w przypadku wyspecjalizowanych usług, które mają zwiększone wymagania dotyczące integralności informacji, takich jak systemy finansowe i medyczne.

W sytuacjach, gdy obliczenia w TEE muszą być potwierdzone zarówno dla serwera, jak i klienta, udostępniony jest wariant protokołu mHTTPA (Mutual HTTPA), który realizuje weryfikację dwukierunkową. Opcja ta jest bardziej skomplikowana ze względu na konieczność dwukierunkowego generowania kluczy sesyjnych dla serwera i klienta.

Źródło: opennet.ru

Dodaj komentarz