You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Andrew Kozlik a08b66ee6c
storage: gitignore hypothesis and libtrezor-storage.so.
5 years ago
ci ci/tests: use new Monero tests binary 5 years ago
common common, core: Add wipe_code_protection to the Features message. 5 years ago
core common, core: Add wipe_code_protection to the Features message. 5 years ago
crypto all: let's use -Wno-missing-braces because clang does not respect 5 years ago
docs docs: improve docs, add random.md 5 years ago
legacy legacy: Implement ChangeWipeCode message for Trezor One. 5 years ago
python common, core: Add wipe_code_protection to the Features message. 5 years ago
storage storage: gitignore hypothesis and libtrezor-storage.so. 5 years ago
tests all: disallow most RecoveryDevice fields in dry-run (fixes #666) 5 years ago
tools tools/issues: style 5 years ago
vendor core/tests: adapt device_emu_fido2/u2f to reordered usb endpoints 5 years ago
.clang-format style: fix weirdness in modtrezorio-fatfs.h 5 years ago
.gitignore ci: improve pipenv caching 5 years ago
.gitlab-ci.yml gitlab-ci: checking if pipenv exists 5 years ago
.gitmodules vendor: change fido2-tests to our fork 5 years ago
.travis.yml build: update protobuf dependency to 3.6.1 5 years ago
Makefile build: add help to make style/style_check 5 years ago
Pipfile pip: cleanup Pipfile, run pipenv lock, update vendor/fido2-tests 5 years ago
Pipfile.lock pipenv: update packages, add missing dependencies 5 years ago
README-monorepo.md fix link in readme 5 years ago
README.md readme: add link to GitLab CI 5 years ago
SECURITY.md docs: use monospace for fingerprints 5 years ago
build-docker.sh all: replace /bin/bash with /usr/bin/env bash 5 years ago
create_monorepo.py all: replace /bin/bash with /usr/bin/env bash 5 years ago
setup.cfg mypy: add show_error_codes to setup.cfg 5 years ago
shell.nix pip: cleanup Pipfile, run pipenv lock, update vendor/fido2-tests 5 years ago

README.md

Trezor Firmware

img

Repository Structure

  • ci: Gitlab CI configuration files
  • common/defs: JSON coin definitions and support tables
  • common/protob: Common protobuf definitions for the Trezor protocol
  • common/tools: Tools for managing coin definitions and related data
  • core: Trezor Core, firmware implementation for Trezor T
  • crypto: Stand-alone cryptography library used by both Trezor Core and the Trezor One firmware
  • docs: Assorted documentation
  • legacy: Trezor One firmware implementation
  • python: Python client library and the trezorctl command
  • storage: NORCOW storage implementation used by both Trezor Core and the Trezor One firmware
  • tests: Firmware unit test suite
  • tools: Miscellaneous build and helper scripts
  • vendor: Submodules for external dependencies

Contribute

Inspired by GitLab Contributing Guide

Make sure to check out general contribution guidelines on the Trezor Wiki. If you are contributing to Trezor Core (the Trezor T firmware), make sure to check out Trezor Core contribution guidelines as well.

Some useful assorted knowledge can be found in the docs subdirectory.

Security vulnerability disclosure

Please report suspected security vulnerabilities in private to security@satoshilabs.com, also see the disclosure section on the Trezor.io website. Please do NOT create publicly viewable issues for suspected security vulnerabilities.

Issue Labels

Priority

Label Meaning (SLA)
P1 Urgent The current release + potentially immediate hotfix (30 days)
P2 High The next release (60 days)
P3 Medium Within the next 3 releases (90 days)
P4 Low Anything outside the next 3 releases (120 days)

Severity

Label Impact
S1 Blocker Outage, broken feature with no workaround
S2 Critical Broken feature, workaround too complex & unacceptable
S3 Major Broken feature, workaround acceptable
S4 Low Functionality inconvenience or cosmetic issue

CI

The complete test suite is running on a public GitLab CI. If you are an external contributor, we also have a Travis instance where a small subset of tests is running as well - mostly style and easy fast checks, which are quite common to fail for new contributors.