Introduction
These pages explain the core features of Ledger OS and how Ledger OS applications and end users can use them. They cover how Ledger OS manages the master device seed and device private key, including their use in attestation. They also describe the hardware architecture shared by all Ledger OS devices.
Ledger OS is the operating system behind all Ledger signers. It provides a lightweight, open-source framework for developers to build portable applications that run in a secure environment. For more context about their role, see the introduction to signers.
Ledger OS allows users to review and install applications that use their cryptographic secrets. At the same time, it protects the device and other applications from malicious code. Its application isolation technology supports open-source applications while limiting their access to users’ cryptographic secrets.
Ledger OS is organized into the following modules:
- An input/output module that allows applications in a secure environment to communicate with the outside world and third-party peripherals
- A cryptography module that implements low-level cryptographic primitives and provides access to hardware acceleration where available
- A persistent storage module that lets applications store data securely on the device
- A personalization module for interfacing with the device master seed
- An endorsement and application attestation module that allows Ledger OS applications to provide proof of execution
- A user interface module for rendering the GUI and handling user input, such as input from buttons on the device
The dashboard
All Ledger OS devices include a special application with elevated privileges called the Dashboard application, or the PSD Content Manager. The Dashboard provides the main GUI when no other application is open. Users enter their master seed and launch other applications through it. The host computer also communicates with the Dashboard when it loads applications onto the device or deletes them.