question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Meta issue for keeping track of work needed to integrate trezor. I’ll try to do some of the required work on separate PRs without directly referencing trezor so that we can start integrating in stages, instead of doing only a single very large PR at the end. Even so, it’s likely that some of the PRs will be pretty big.

Still subject to a lot of change at the moment. Order of execution is not fixed.

Proof of concept stage (code)

  • Generate address
  • Sign Tx
  • Obtain trezor masterpubkey
  • Pin operations (enable/disable/enter) 5b4887b
  • Support use passphrase to encrypt trezor wallet 8c09c07
  • Sign and Verify messages 7f95884
  • Mnemonic operations (clear/recover) 42fd1ca
  • Full demo support 0eb6c4c
  • Mainnet tests

Basic decrediton integration

  • Upstream mainnet coin info to trezor firmwares
  • Detect and react to trezor events (trezor connected/disconnected)
  • Import wallet from trezor screen (wallet creation)
  • Change instances of passphrase modal to use trezor confirmation
  • Change or disable unsupported features (message signing/verification, tickets, etc)
  • Correctly support stealing the device connection for stuck devices

Advanced decrediton integration (not everything will be feasible at this moment)

  • Support signing tickets (requires ability to import scripts on watch only wallets)
  • Support multiple accounts (requires ability to import root xpub instead of account xpub)
  • Support trezor passphrase input
  • Support reset and reseed trezor directly
  • Support importing trezor native seed as decred seed (might require separate tooling done here)
  • Implement trezor-core changes to support decred in the model T firmware

Issue Analytics

  • State:open
  • Created 5 years ago
  • Reactions:13
  • Comments:30 (10 by maintainers)

github_iconTop GitHub Comments

5reactions
matheusdcommented, Feb 15, 2020

Ticket purchasing Proof of Concept:

Firmware changes: https://github.com/trezor/trezor-mcu/compare/master...matheusd:ticket-poc Wallet changes: https://github.com/decred/dcrwallet/compare/master...matheusd:trezor-tickets-poc Client changes: https://github.com/matheusd/trezor-decred-poc/compare/ticket-poc

Rough outline:

  • Trezor firmware needs to be updated to recognize and process decred ticket outputs
  • Trezor.js needs to accept decred_tree input metadata
  • Dcrwallet grpc needs to allow import of scripts
  • Dcrwallet grpc needs new endpoint that generates unsigned split/ticket txs (dcrwallet issue and tentative PR)
  • Decrediton needs to be updated to tie both ends
2reactions
manoelpqueirozcommented, Oct 4, 2020

I do not follow the project closely to comment on the impact of priority development from the team, but I will follow others here and reiterate how crucial it is to enable staking with hardware devices, and in my opinion this integration should be top priority of the team.

In order to drive adoption, you have to facilitate every aspect of currency usage for the adopters. For a crypto which sells itself on the topic of proof-of-stake, that means the ability to actually stake must be integrated with devices that the majority of people will use for simplicity: no one who has a hardware device will be interested to deal with Decred if that involves not using the hardware to obtain the currency’s greatest benefits.

Ledger has staking support on 15 currencies, and for 4 of them you don’t even need a third-party wallet to stake, you can do that directly within Ledger Live. Immediately all of these coins will be perceived by Ledger users as more interesting to deal with than Decred despite it also being supported on this device.

Staking support with hardware devices, whether Ledger of Trezor, should have been implemented ages ago (this discussion is already two years old and the developers still have not addressed it). And so long the team remains frozen in place with this issue, other more agile, nimble and consumer-oriented teams will drive adopters to their coins with actual features that make people invest in their projects.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Support | Trezor Knowledge Base
Search, find, and solve common issues with Trezor hardware wallets, Trezor Suite, using crypto, and more.
Read more >
How to Contact Trezor Support
The only official and secure way to receive personal support for ...
Read more >
Trezor Hardware Wallet (Official)
Hi there, our team is happy and ready to answer your question.
Read more >
Supported Coins & Assets | Trezor Hardware Wallets
Trezor cold wallets support Bitcoin and the most resilient and proven crypto worldwide. Check supported coins now.
Read more >
FAQs - Trezor
The Trezor Help Center is our official troubleshooter, where you can also submit questions for help with technical, payment or logistics issues. Before...
Read more >

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found