Board designs, FPGA verilog, firmware for TKey, the flexible and open USB security key
Go to file
Marcello Sylvester Bauer 650fb8a10f doc/toolchain_setup: Add missing apt dependency
libhidapi-dev is required to build icestorm:
```
pi_pico_interface.c:5:10: fatal error: hidapi/hidapi.h: No such file
or directory
```

Tested with podman.

Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
2022-09-20 12:31:42 +02:00
contrib Clone correct branch in Dockerfile example 2022-09-20 07:43:28 +02:00
doc doc/toolchain_setup: Add missing apt dependency 2022-09-20 12:31:42 +02:00
hw Remove debug output of arguments 2022-09-19 12:37:27 +02:00
LICENSES Make initial public release 2022-09-19 08:51:11 +02:00
.gitattributes Make initial public release 2022-09-19 08:51:11 +02:00
.gitignore Make initial public release 2022-09-19 08:51:11 +02:00
README.md Add release notes 2022-09-19 10:02:58 +02:00

Tillitis Key 1

Introduction

Tillitis Key 1 is a new kind of USB security token. All of its software, FPGA logic, schematics, and PCB layout are open source, as all security software and hardware should be. This in itself makes it different, as other security tokens utilize closed source hardware for its security-critical operations.

What makes the Tillitis Key 1 security token unique is that it doesnt verify applications, it measures them, before running them on its open hardware security processor.

Each security token contains a Unique Device Secret (UDS), which together with an application measurement, and an optional user-provided seed, is used to derive key material unique to each application. This allows users to build and load their own apps, while ensuring that each app loaded will have its own cryptographic identity. The design is similar to TCG DICE. The Tillitis Key 1 platform allows for applications up to 64 KB.

The first implementation is the Tillitis Key 1: The Tillitis Key 1 PCB

Documentation

About this repository

This repository contains hardware, software and utilities written as part of the Tillitis Key 1 project. It is structured as monolithic repository, or "monorepo", where all components live in one repository.

The repository follows the OpenTitan layout.

Licensing

See LICENSES for more information about the projects' licenses.