Google Online Security Blog: Real-time, privacy-preserving URL safety


For greater than 15 years, Google Safe Browsing has been defending customers from phishing, malware, undesirable software program and extra, by figuring out and warning customers about doubtlessly abusive websites on greater than 5 billion units world wide. As attackers develop extra refined, we have seen the necessity for protections that may adapt as shortly because the threats they defend in opposition to. That’s why we’re excited to announce a brand new model of Safe Browsing that can present real-time, privacy-preserving URL safety for folks utilizing the Standard safety mode of Safe Browsing in Chrome.

Current panorama

Chrome routinely protects you by flagging doubtlessly harmful websites and information, hand in hand with Safe Browsing which discovers hundreds of unsafe websites on daily basis and provides them to its lists of dangerous websites and information.

So far, for privateness and efficiency causes, Chrome has first checked websites you go to in opposition to a locally-stored listing of recognized unsafe websites which is up to date each 30 to 60 minutes – that is achieved utilizing hash-based checks.

Hash-based examine overview

But unsafe websites have tailored — immediately, the vast majority of them exist for lower than 10 minutes, that means that by the point the locally-stored listing of recognized unsafe websites is up to date, many have slipped via and had the possibility to do harm if customers occurred to go to them throughout this window of alternative. Further, Safe Browsing’s listing of dangerous web sites continues to develop at a fast tempo. Not all units have the sources crucial to keep up this rising listing, nor are they all the time in a position to obtain and apply updates to the listing on the frequency crucial to learn from full safety.

Safe Browsing’s Enhanced safety mode already stays forward of such threats with applied sciences akin to real-time listing checks and AI-based classification of malicious URLs and net pages. We constructed this mode as an opt-in to provide customers the selection of sharing extra security-related knowledge with a purpose to get stronger safety. This mode has proven that checking lists in actual time brings vital worth, so we determined to deliver that to the default Standard safety mode via a brand new API – one that does not share the URLs of websites you go to with Google.

Introducing real-time, privacy-preserving Safe Browsing

How it really works

In order to transition to real-time safety, checks now must be carried out in opposition to a listing that’s maintained on the Safe Browsing server. The server-side listing can embrace unsafe websites as quickly as they’re found, so it is ready to seize websites that change shortly. It also can develop as massive as wanted as a result of the Safe Browsing server shouldn’t be constrained in the identical manner that person units are.

Behind the scenes, here is what is going on in Chrome:

  1. When you go to a website, Chrome first checks its cache to see if the handle (URL) of the location is already recognized to be protected (see the “Staying speedy and reliable” part for particulars).
  2. If the visited URL shouldn’t be within the cache, it might be unsafe, so a real-time examine is critical.
  3. Chrome obfuscates the URL by following the URL hashing steering to transform the URL into 32-byte full hashes.
  4. Chrome truncates the complete hashes into 4-byte lengthy hash prefixes.
  5. Chrome encrypts the hash prefixes and sends them to a privateness server (see the “Keeping your data private” part for particulars).
  6. The privateness server removes potential person identifiers and forwards the encrypted hash prefixes to the Safe Browsing server by way of a TLS connection that mixes requests with many different Chrome customers.
  7. The Safe Browsing server decrypts the hash prefixes and matches them in opposition to the server-side database, returning full hashes of all unsafe URLs that match one of many hash prefixes despatched by Chrome.
  8. After receiving the unsafe full hashes, Chrome checks them in opposition to the complete hashes of the visited URL.
  9. If any match is discovered, Chrome will present a warning.

Keeping your knowledge non-public

In order to protect person privateness, we’ve partnered with Fastly, an edge cloud platform that gives content material supply, edge compute, safety, and observability providers, to function an Oblivious HTTP (OHTTP) privateness server between Chrome and Safe Browsing – you may be taught extra about Fastly’s dedication to person privateness on their Customer Trust web page. With OHTTP, Safe Browsing doesn’t see your IP handle, and your Safe Browsing checks are blended amongst these despatched by different Chrome customers. This means Safe Browsing can not correlate the URL checks you ship as you browse the net.

Before hash prefixes depart your gadget, Chrome encrypts them utilizing a public key from Safe Browsing. These encrypted hash prefixes are then despatched to the privateness server. Since the privateness server doesn’t know the non-public key, it can not decrypt the hash prefixes, which presents privateness from the privateness server itself.

The privateness server then removes potential person identifiers akin to your IP handle and forwards the encrypted hash prefixes to the Safe Browsing server. The privateness server is operated independently by Fastly, that means that Google doesn’t have entry to potential person identifiers (together with IP handle and User Agent) from the unique request. Once the Safe Browsing server receives the encrypted hash prefixes from the privateness server, it decrypts the hash prefixes with its non-public key after which continues to examine the server-side listing.

Ultimately, Safe Browsing sees the hash prefixes of your URL however not your IP handle, and the privateness server sees your IP handle however not the hash prefixes. No single occasion has entry to each your identification and the hash prefixes. As such, your searching exercise stays non-public.

Real-time examine overview

Staying speedy and dependable

Compared with the hash-based examine, the real-time examine requires sending a request to a server, which provides further latency. We have employed a couple of strategies to ensure your searching expertise continues to be clean and responsive.

First, earlier than performing the real-time examine, Chrome checks in opposition to a worldwide and native cache in your gadget to keep away from pointless delay.

  • The international cache is a listing of hashes of known-safe URLs that’s served by Safe Browsing. Chrome fetches it within the background. If any full hash of the URL is discovered within the international cache, Chrome will think about it much less dangerous and carry out a hash-based examine as a substitute.
  • The native cache, alternatively, is a listing of full hashes which might be saved from earlier Safe Browsing checks. If there’s a match within the native cache, and the cache has not but expired, Chrome is not going to ship a real-time request to the Safe Browsing server.

Both caches are saved in reminiscence, so it’s a lot sooner to examine them than sending a real-time request over the community.

In addition, Chrome follows a fallback mechanism in case of unsuccessful or gradual requests. If the real-time request fails consecutively, Chrome will enter a back-off mode and downgrade the checks to hash-based checks for a sure interval.

We are additionally within the strategy of introducing an asynchronous mechanism, which can enable the location to load whereas the real-time examine is in progress. This will enhance the person expertise, because the real-time examine gained’t block web page load.

What real-time, privacy-preserving URL safety means for you

Chrome customers

With the newest launch of Chrome for desktop, Android, and iOS, we’re upgrading the Standard safety mode of Safe Browsing so it can now examine websites utilizing Safe Browsing’s real-time safety protocol, with out sharing your searching historical past with Google. You needn’t take any motion to learn from this improved performance.

If you need extra safety, we nonetheless encourage you to activate the Enhanced safety mode of Safe Browsing. You may marvel why you want enhanced safety if you’ll be getting real-time URL safety in Standard safety – it is because in Standard safety mode, the real-time characteristic can solely defend you from websites that Safe Browsing has already confirmed to be unsafe. On the opposite hand, Enhanced safety mode is ready to use further info along with superior machine studying fashions to guard you from websites that Safe Browsing might not but have confirmed to be unsafe, for instance as a result of the location was solely very just lately created or is cloaking its true habits to Safe Browsing’s detection methods.

Enhanced safety additionally continues to supply safety past real-time URL checks, for instance by offering deep scans for suspicious information and additional safety from suspicious Chrome extensions.


The real-time characteristic of the Standard safety mode of Safe Browsing is on by default for Chrome. If wanted, it might be configured utilizing the coverage SafeBrowsingProxiedRealTimeChecksAllowed. It can also be value noting that to ensure that this characteristic to work in Chrome, enterprises might have to explicitly enable visitors to the Fastly privateness server. If the server shouldn’t be reachable, Chrome will downgrade the checks to hash-based checks.


While Chrome is the primary floor the place these protections can be found, we plan to make them obtainable to eligible builders for non-commercial use circumstances by way of the Safe Browsing API. Using the API, builders and privateness server operators can accomplice to raised defend their merchandise’ customers from fast-moving malicious actors in a privacy-preserving method. To be taught extra, maintain an eye fixed out for our upcoming developer documentation to be printed on the Google for Developers website.


Please enter your comment!
Please enter your name here