Skip to content

Latest commit

 

History

History
63 lines (41 loc) · 1.95 KB

README.md

File metadata and controls

63 lines (41 loc) · 1.95 KB

Trezor hardware wallet support

This module adds Trezor hardware support to Monero.

Basic information

Trezor integration is based on the following original proposal: https://github.com/ph4r05/monero-trezor-doc

A custom high-level transaction signing protocol uses Trezor in a similar way a cold wallet is used. Transaction is build incrementally on the device.

Trezor implements the signing protocol in trezor-firmware repository, in the monero application. Please, refer to monero readme for more information.

Dependencies

Trezor uses Protobuf library.

Monero is now compiled with C++17 by default. If you are getting Trezor compilation errors, it may be caused by abseil (protobuf dependency) not being compiled with C++17. To fix this try installing protobuf from sources:

git clone --recursive git@github.com:protocolbuffers/protobuf.git
cd protobuf
cmake -DABSL_PROPAGATE_CXX_STD=TRUE -DCMAKE_CXX_STANDARD=17 -Dprotobuf_BUILD_SHARED_LIBS=ON -Dprotobuf_BUILD_TESTS=OFF .
cmake --build .
sudo make install

macOS

brew update && brew bundle --file=contrib/brew/Brewfile

MSYS32

pacman -S mingw-w64-x86_64-protobuf

Other systems

  • install Protobuf
  • point CMAKE_PREFIX_PATH environment variable to Protobuf installation.

Troubleshooting

To disable Trezor support, set USE_DEVICE_TREZOR=OFF, e.g.:

USE_DEVICE_TREZOR=OFF make release

Resources: