Gdy klienci zdecydują się używać w tym trybie Bezpiecznego przeglądania Google w wersji 5, ich działanie będzie podobne do działania interfejsu Update API w wersji 4, z tym że będą korzystać z ulepszonego interfejsu API w wersji 5. Klienci będą przechowywać w lokalnej bazie danych zestaw list zagrożeń sformatowanych jako prefiksy skrótów SHA256 wyrażeń URL z sufiksem hosta i prefiksem ścieżki. Gdy klient chce sprawdzić konkretny adres URL, jest on sprawdzany na podstawie lokalnej listy zagrożeń. Jeśli wystąpi dopasowanie, klient łączy się z serwerem, aby kontynuować sprawdzanie.
Podobnie jak w przypadku powyższego, klient będzie też utrzymywać lokalną pamięć podręczną, która nie musi być przechowywana w pamięci trwałej.
Procedura sprawdzania adresu URL na lokalnej liście zagrożeń
Ta procedura jest też wykonywana, gdy klient korzysta z procedury trybu czasu rzeczywistego i zwraca ona wartość UNSURE.
Ta procedura przyjmuje jeden adres URL u i zwraca SAFE lub UNSAFE.
- Niech
expressionsbędzie listą wyrażeń przyrostków/przedrostków wygenerowanych przez adres URLu. - Niech
expressionHashesbędzie listą, której elementami są skróty SHA256 poszczególnych wyrażeń wexpressions. - Niech
expressionHashPrefixesbędzie listą, której elementami są pierwsze 4 bajty każdego hasza wexpressionHashes. - Za każde
expressionHashPrefixzexpressionHashPrefixes:- Wyszukaj
expressionHashPrefixw pamięci podręcznej. - Jeśli wpis z pamięci podręcznej zostanie znaleziony:
- Sprawdza, czy bieżący czas jest późniejszy niż czas wygaśnięcia.
- Jeśli jest większa:
- Usuń znaleziony wpis z pamięci podręcznej.
- Kontynuuj pętlę.
- Jeśli nie jest większa:
- Usuń to urządzenie
expressionHashPrefixz kontaexpressionHashPrefixes. - Sprawdź, czy odpowiedni pełny skrót w
expressionHashesznajduje się w pozycji w pamięci podręcznej. - Jeśli zostanie znaleziony, zwróć
UNSAFE. - Jeśli nie znajdziesz, kontynuuj pętlę.
- Usuń to urządzenie
- Jeśli nie znajdziesz wpisu w pamięci podręcznej, kontynuuj pętlę.
- Wyszukaj
- Za każde
expressionHashPrefixzexpressionHashPrefixes:- Wyszukaj
expressionHashPrefixw bazie danych lokalnej listy zagrożeń. - Jeśli
expressionHashPrefixnie można znaleźć w lokalnej bazie danych listy zagrożeń, usuń ją zexpressionHashPrefixes.
- Wyszukaj
- Wyślij
expressionHashPrefixesna serwer Bezpiecznego przeglądania Google w wersji 5 za pomocą RPC SearchHashes lub metody REST hashes.search. Jeśli wystąpił błąd (w tym błędy sieci, błędy HTTP itp.), zwróć wartośćSAFE. W przeciwnym razie niech odpowiedzią będzieresponseotrzymana z serwera SB, czyli lista pełnych skrótów wraz z informacjami pomocniczymi określającymi charakter zagrożenia (inżynieria społeczna, złośliwe oprogramowanie itp.) oraz czas wygaśnięcia pamięci podręcznejexpiration. - Za każde
fullHashzresponse:- Wstaw
fullHashdo pamięci podręcznej lokalnej wraz zexpiration.
- Wstaw
- Za każde
fullHashzresponse:- Niech
isFoundbędzie wynikiem wyszukaniafullHashwexpressionHashes. - Jeśli
isFoundma wartość False, kontynuuj pętlę. - Jeśli
isFoundma wartość PRAWDA, zwracaUNSAFE.
- Niech
- Powrót:
SAFE.