Skip to content

Current code organization

wdxg edited this page Aug 26, 2024 · 5 revisions

Chromium code

Crypto

The code that interfaces directly with the TPM lives in crypto/. There is code for Win HW TPM, Win VBS and Mac secure enclave.

Unexportable keys

There is a component components/unexportable_keys for handling the keys. The goal here is to prioritize multiple users of the TPM, and to make it easier to work with the slow functions using async callbacks.

Net code

The part of the code interfacing with the network code can be found in net/device_bound_sessions. Currently there is code to parse the headers of incoming network requests, and to check cookie for potential needed cookies. Soon it will send out of band registration requests.

Google prototype

There is a currently a Google prototype to prove the concept and see how well it works on a large scale. This is currently fully deployed to all Chrome users, and the code lives in chrome/browser/signin.

Server prototype

To test that the code is working there is a server prototype at https://dbsc-prototype-server.glitch.me. The code can be found at https://glitch.com/edit/#!/dbsc-prototype-server, it is public and can be remixed. Currently it can be used to register a new session with the right headers.

Clone this wiki locally