# Tillitis TKey Provisioning Tool

## Introduction

TKey Provisioning Tool (tpt) is a program for generating the 32 byte
Unique Device Secret (UDS). The tool will also generate the 8 byte
Unique Device Identity. Both the UDS and the UDI are injected into the
FPGA bitstream file during build.

The UDS is generated using HKDF (RFC 5869), and the user is expected
to supply a secret as part of the input to the HKDF Extract operation.
The Input Keying Material is generated by extracting 256 bytes using
the Python secrets module.

The tool uses [python-hkdf](https://github.com/casebeer/python-hkdf).
