Bezpośrednie zaświadczenie anonimowe
Direct Anonymous Attestation ( DAA ) to prymityw kryptograficzny , który umożliwia zdalne uwierzytelnienie zaufanego komputera z zachowaniem prywatności użytkownika platformy. Protokół został przyjęty przez Trusted Computing Group (TCG) w najnowszej wersji specyfikacji Trusted Platform Module (TPM) w celu rozwiązania problemów związanych z prywatnością (patrz także Utrata anonimowości w Internecie ). ISO/IEC 20008 określa również DAA, a implementacja Intel Enhanced Privacy ID (EPID) 2.0 dla mikroprocesorów jest dostępna do licencjonowania RAND-Z wraz z pakietem SDK typu open source.
Perspektywa historyczna
Zasadniczo problem prywatności można rozwiązać za pomocą dowolnego standardowego schematu podpisu (lub szyfrowania klucza publicznego ) i pojedynczej pary kluczy. Producenci osadzaliby klucz prywatny w każdym wyprodukowanym TPM, a klucz publiczny byłby publikowany jako certyfikat. Ze względu na technologię podpisy generowane przez moduł TPM muszą pochodzić z klucza prywatnego, a ponieważ wszystkie moduły TPM używają tego samego klucza prywatnego, są one nie do odróżnienia, co zapewnia prywatność użytkownika. To dość naiwne rozwiązanie opiera się na założeniu, że istnieje globalna tajemnica . Wystarczy spojrzeć na precedens Content Scramble System (CSS), systemu szyfrowania płyt DVD , aby zobaczyć, że to założenie jest zasadniczo błędne. Co więcej, takie podejście nie realizuje drugorzędnego celu: możliwości wykrywania nieuczciwych modułów TPM. Nieuczciwy moduł TPM to moduł TPM, który został naruszony i którego tajemnice zostały wydobyte.
Rozwiązanie przyjęte po raz pierwszy przez TCG (specyfikacja TPM v1.1) wymagało zaufanej strony trzeciej, a mianowicie urzędu certyfikacji prywatności (privacy CA). Każdy moduł TPM ma wbudowaną RSA zwaną kluczem poręczenia (EK), którą prawdopodobnie zna urząd ds. prywatności. W celu poświadczenia moduł TPM generuje drugą parę kluczy RSA zwaną kluczem tożsamości zaświadczenia (AIK). Wysyła publiczny AIK podpisany przez EK do urzędu ds. prywatności, który sprawdza jego ważność i wystawia certyfikat dla AIK. (Aby to zadziałało, albo a) urząd ds. prywatności musi znać publiczny EK modułu TPM a priori , albo b) producent modułu TPM musi dostarczyć certyfikat potwierdzenia .) Host/moduł TPM może teraz uwierzytelnić się w odniesieniu do certyfikatu . Takie podejście pozwala na dwie możliwości wykrywania nieuczciwych modułów TPM: po pierwsze, urząd ds. prywatności powinien prowadzić listę modułów TPM zidentyfikowanych przez ich EK, o których wiadomo, że są nieuczciwe i odrzucać od nich żądania, po drugie, jeśli urząd ds. prywatności otrzyma zbyt wiele żądań od określonego modułu TPM, może odrzucić je i zablokuj moduły TPM EK. Liczba dozwolonych wniosków powinna podlegać zarządzaniu ryzykiem. To rozwiązanie jest problematyczne, ponieważ urząd ds. prywatności musi brać udział w każdej transakcji, a tym samym musi zapewniać wysoką dostępność przy jednoczesnym zachowaniu bezpieczeństwa. Ponadto wymagania dotyczące prywatności mogą zostać naruszone, jeśli urząd certyfikacji ds. prywatności i weryfikator są w zmowie. Chociaż ten ostatni problem można prawdopodobnie rozwiązać za pomocą ślepych podpisów, pierwszy pozostaje.
Rozwiązanie EPID 2.0 osadza klucz prywatny w mikroprocesorze podczas jego produkcji, nieodłącznie dystrybuuje klucz wraz z dostawą urządzenia fizycznego oraz udostępnia klucz i jest gotowy do użycia po pierwszym włączeniu zasilania.
Przegląd
Protokół DAA opiera się na trzech jednostkach i dwóch różnych krokach. Podmioty te to członek DAA (platforma TPM lub mikroprocesor obsługujący EPID), wystawca DAA i weryfikator DAA. Wystawca jest obciążany opłatą za zweryfikowanie platformy TPM podczas kroku Dołącz i za wystawienie poświadczeń DAA dla platformy. Platforma (członek) używa poświadczeń DAA z weryfikatorem podczas kroku podpisywania. Poprzez dowód wiedzy zerowej weryfikator może zweryfikować dane uwierzytelniające bez próby naruszenia prywatności platformy. Protokół obsługuje również funkcję blokowania, dzięki czemu weryfikatorzy mogą identyfikować zaświadczenia z modułów TPM, które zostały naruszone.
Właściwości prywatności
Protokół pozwala na różne stopnie prywatności. Interakcje są zawsze anonimowe, ale Członek/Weryfikator może negocjować, czy Weryfikator może łączyć transakcje. Umożliwiłoby to profilowanie użytkowników i/lub odrzucanie żądań pochodzących od hosta, który wysłał zbyt wiele żądań. Członek i weryfikator mogą również zdecydować się na ujawnienie dodatkowych informacji w celu przeprowadzenia nieanonimowych interakcji (tak samo jak możesz podać nieznajomemu swoje pełne imię i nazwisko lub nie). W ten sposób znana tożsamość może zostać zbudowana na podstawie anonimowego początku. (Porównaj to z: jeśli zaczniesz od znanej tożsamości, nigdy nie możesz udowodnić, że nie znasz tej tożsamości, aby cofnąć się do anonimowości).
Implementacje i ataki
Pierwszy schemat bezpośredniego anonimowego poświadczenia powstał dzięki Brickellowi, Camenischowi i Chenowi; ten schemat okazał się niepewny i wymagał poprawki. Brickell, Chen i Li poprawili wydajność tego pierwszego schematu, używając symetrycznych par zamiast RSA. A Chen, Morrissey i Smart próbowali jeszcze bardziej poprawić wydajność, przechodząc z ustawienia symetrycznego na asymetryczne; niestety schemat asymetryczny był również niepewny. Chen, Page i Smart zaproponowali nowy kryptografii krzywych eliptycznych z wykorzystaniem krzywych Barreto – Naehriga. Ten schemat jest realizowany zarówno przez standard EPID 2.0, jak i TPM 2.0. Jest to zalecane ogólnie dla modułów TPM i wymagane dla modułów TPM zgodnych z profilem klienta komputera PC. Ponadto członkowie i weryfikatorzy mogą używać implementacji Intel EPID 2.0 DAA ISO/IEC 20008 oraz dostępnego pakietu SDK open source, aby członkowie i weryfikatorzy przeprowadzali atesty. Ponieważ jedna z metod poświadczania DAA w TPM 2.0 jest identyczna z EPID 2.0, trwają prace nad spójnym odczytywaniem poświadczeń DAA ISO/IEC 20008 i TPM 2.0 DAA na poziomie specyfikacji. [ potrzebne źródło ]
Zobacz też
- Protokół kryptograficzny
- Poświadczenie cyfrowe
- Moduł zaufanej platformy
- Ulepszony identyfikator prywatności
- Technologie zwiększające prywatność
- ^ Specyfikacja modułu TPM
- Bibliografia _ Camenisch; Chena (2004). „Bezpośrednie zaświadczenie anonimowe” (PDF) . Konferencja ACM na temat bezpieczeństwa komputerów i komunikacji : 132–145.
- Bibliografia _ Ryana; Chena (2015). „Formalna analiza prywatności w schematach bezpośredniego anonimowego poświadczania” (PDF) . Nauka o programowaniu komputerowym . 111 (2): 300–317. doi : 10.1016/j.scico.2015.04.004 .
- Bibliografia _ Chen; Li (2009). „Uproszczone pojęcia bezpieczeństwa bezpośredniego anonimowego zaświadczenia i konkretny schemat parowania” (PDF) . Międzynarodowy Dziennik Bezpieczeństwa Informacji . 8 (5): 315–330. doi : 10.1007/s10207-009-0076-3 . S2CID 16688581 .
- Bibliografia _ Morrisseya; Inteligentny (2008). „O dowodach bezpieczeństwa dla schematów DAA” . Trzecia Międzynarodowa Konferencja na temat Zaufania i Godnych Zaufania Informatyki . 5324 : 156-175.
- Bibliografia _ Morrisseya; Inteligentny (2008). „Parowania w zaufanych komputerach” . 2. Międzynarodowa Konferencja na temat Kryptografii opartej na parowaniu . 5209 : 1–17.
- Bibliografia _ Li (2010). „Uwaga na temat schematu Chen-Morrissey-Smart DAA” . Listy dotyczące przetwarzania informacji . 110 (12-13): 485-488. doi : 10.1016/j.ipl.2010.04.017 .
- Bibliografia _ Strona; Inteligentny (2010). „O projektowaniu i wdrażaniu wydajnego programu DAA” (PDF) . 9th International Conference on Smart Card Research and Advanced Applications . 6035 : 223–237.
- ^ https://www.trustedcomputinggroup.org/wp-content/uploads/TPM-Rev-2.0-Part-1-Architecture-01.16.pdf [ bez adresu URL PDF ]
- ^ https://www.trustedcomputinggroup.org/wp-content/uploads/PC-Client-Specific-Platform-TPM-Profile-for-TPM-2-0-v43-150126.pdf [ bez adresu URL PDF ]
- ^ EPID SDK
Linki zewnętrzne
- E. Brickell, J. Camenisch i L. Chen: Bezpośrednie anonimowe zaświadczenie . W Proceedings of 11th ACM Conference on Computer and Communications Security, ACM Press, 2004. ( PDF )
- E. Brickell, J. Camenisch i L. Chen: Bezpośrednie anonimowe zaświadczenie . ( [1] )
- Uwierzytelnianie użytkowników między domenami i prywatność autorstwa Andreasa Pashalidisa — sekcja 6