Title:
Shielded Support for Ledger Hadware Wallets (NanoS+, NanoX)
Applicant name:
hann
Pitch: A one-liner elevator pitch version of your proposal
Zcash Sapling and Orchard support in Ledger
Total Request (USD):
$300100.00 USD
Have you previously received a grant from Zcash Community Grants (formerly called ZOMG) or ZF?
Yes
Please provide details:
Cold Wallet
BTCPayServer Integration
YWallet
Are you seeking or have you received funding from other sources for this proposed project?
No
Applicant background:
I am the author of YWallet and the creator of Warp Sync. Previously I worked as a Senior Software Engineer at Microsoft and was the CTO of a Hedge Fund in Asia.
Description of Problem or Opportunity:
Shielded pools are not usable in hardware wallets. There is an ongoing effort to make Trezor work (Orchard only) and Ledger (Sapling only). But not both.
This proposal would bring shielded pools (Sapling & Orchard) to Ledger popular series of Hardware Wallets (NanoS+ and above). These wallets are popular, affordable and have a secure element chip making them a highly secure solution for storing zcash.
Proposed Solution: Describe the solution at a high level.
-
Integrate Zondax zcash-ledger into YWallet
-
Extend zcash-ledger with Orchard & UA
-
Integrate with YWallet
Solution Format: What is the exact form of the final deliverable you’re creating?
YWallet will have a new type of account backed by a Ledger. During account creation, the user will have the option to connect to a Ledger. Then Ywallet will take care of synchronization and note maintenance. As such the account behaves as a watch-only wallet.
Signing will require plugging in the device and user authorization.
Technical Approach: Dive into the how of your project. Describe your approaches, components, workflows, methodology, etc. Bullet points and diagrams are appreciated!
Working with Zondax, we’ll complete the work on the Ledger app for Sapling.
Then, we will need to do:
-
Orchard curves for Pedersen Hash and Signatures,
-
UA
-
Transaction V5
Dependencies: What external entities is your project dependent on? What involvement is required from ZF, ECC, and/or other external organizations? Who would have to incorporate your work in order for it to be usable?
This project requires close cooperation with the Zondax team. They have shown keen interest in delivering their solution and were blocked by the lack of wallet support.
Execution risks: What obstacles do you expect? What is most likely to go wrong? Which unknown factors could jeopardize success? Who would have to incorporate your work in order for it to be usable?
The highest risk probably comes from Ledger certification process. Apps need to be tested, validated and signed off by them.
Unintended Consequences: What are the negative ramifications if your project is successful? Consider usability, stability, privacy, integrity, availability, decentralization, interoperability, maintainability, technical debt, requisite education, etc.
None
Evaluation plan: What metrics for success will you share with the community once you’re done? In addition to quantitative metrics, what qualitative metrics will you commit to report?
At each phase, there is a clear deliverable
-
YWallet + Ledger z-addr
-
Ledger app with Orchard/UA PR
-
YWallet + Ledger UA
Hardware/Software total budget:
$100.00 USD
Please provide justification for the total hardware/software budget:
A dedicated Ledger S+ device
Services total budget (cloud, hosting, etc.):
$0.00 USD
Please provide justification for the total services budget:
N/A
Compensation total budget:
$300100.00 USD
Please provide justification for the total compensation budget:
Based on the duration, complexity and value of the project.
Do you require startup funding?
No
Milestone 1 - estimated completion date:
05/01/2023
Milestone 1 - USD value of payout upon completion of deliverables:
$100000.00
Deliverable 1.1
YWallet + taddr/zaddr in Ledger
Milestone 2 - estimated completion date:
08/01/2023
Milestone 2 - USD value of payout upon completion of deliverables:
$100000.00
Deliverable 2.1
Ledger app with Orchard & UA support
Milestone 3 - USD value of payout upon completion of deliverables:
$100000.00
Milestone 3 - estimated completion date:
10/01/2023
Deliverable 3.1
YWallet + Ledger UA (Transparent + Sapling + Orchard)
Total proposed USD value of grant:
$300100.00 USD
How was the project timeline determined?
Based on the history of development ledger app and shielded wallets
Application submission date:
02/28/2023