Skip to content
iolivergithubPublic

JANE - Attestation Engine

This is the source for the Jane Attestation Engine, a fork and major rewrite of the former A10 Nokia Attestation Engine.

Jane is the remote attestation engine of a trusted or confidential computing environment: it holds the known-good values for devices and other elements, asks their trust agents for evidence (TPM 2.0 quotes, measured-boot and IMA logs, UEFI variables, ...), and verifies it with rules. It explores mechanisms for remote attestation and implements ideas from the IETF RATS architecture.

Directory Contents
janeserver/ the attestation engine: Web UI, REST API and x3270 terminal interface
tarzan/ tarzan, the reference trust agent
provisioner/ jp, which registers an element with Jane, provisions its TPM and attests it
extractor/ jp_extract, which copies an element and everything belonging to it out of Jane's database into a JSON file and, optionally, deletes it from Jane
lib/ small Go library modules shared by the programs, so they cannot drift apart: janeapi (element and profile types, API key and profile name formats; janeserver, jp), uefi (UEFI rule variables and measured state; janeserver, jp), machineid and tpmopen (jp, tarzan), localnames (.local names by multicast DNS; janeserver, jp)
etc/ packaging (etc/debbuild), standard intents, addjaneuser, scripts
docs/ the documentation

Start with the Quick start, then read Hardening: out of the box Jane runs without TLS or logins, and it is research software, provided as-is. All documentation: contents. Changes by release: changelog.