Keystone Hardware Wallet Support Grant Application

I am 100% sure about the status of Ledger supporting shielded address. So I can’t promise this but we will do our best.

Thanks so much for your support!

TBH if we didn’t make it of shipping shielded address support before Ledger, I still suggest you can give Keystone a try. I don’t want to be heard so biased but the most common feedback we got from Ledger user is that “after using Keystone, you will never go back to Ledger” LOL.

6 Likes

This is a great question!

Usually a co-branded version takes about 4-6 weeks for manufacturing and shipping. And we want to start pre-order when we are 100% sure about when we can finish the work we promised in the grant.

We set some deadlines for each milestone of the grant but TBH now we are not 100% sure we can deliver them on time as there are many dependencies. We will do our best.

3 Likes

We are thinking about run a contest among those amazing designers in the Zcash community.

We will share the template of the Keystone backplate design (https://www.figma.com/design/07JDnGzaIvmAUVluYiFVle/Keystone-3-Pro-Back-Template?node-id=0-1&t=fcjgj4KtzP5qA1P6-1) and let the designers to do a Zcash-theme design freely. Then the community will pick the winner through a Twitter poll and we will produce that version to sell it.

And maybe x% of the revenue can go to the Zcash foundation treasury and y% of the revenue can be shared with the designer.

What do you think about this contest?

13 Likes

love the idea of opening it to the community! zechub and free2z communities will be all over the promotional aspect of getting designs im sire. The x% to the foundation is my vote also, their mission has the most wide spread benefits.

5 Likes

Awesome idea :+1:

3 Likes

Hey Zcash Fams,

Sorry I was OOO last friday.

Here comes our weekly report of last week -

  1. Continuing from the previous week’s work, we have verified the feasibility of the address-generation algorithm on Keystone. Keystone can generate the same addresses as the CLI wallet shared by the Zashi team. We are using this CLI wallet to build a demo for the integration with the Zashi Wallet. With that being said, the POC of Milestone 2 (Keystone hardware wallet can generate both transparent and Orchard Shielded addresses) has been done (not tested nor audited yet).
  2. We have read part of the source code related to sending transactions in the CLI Wallet. Currently, we are verifying the feasibility of signing transaction (Milestone 3) on Keystone. We have already extracted transaction information from the CLI Wallet. The next step is to modify or extract part of the signing library’s code to make it workable on the Keystone 3 Pro. This will allow us to sign transactions on the Keystone device and then transfer them back to the CLI Wallet for on-chain transactions.

Please kindly note that after some discussion with the Zashi team, the deliverable of Milestone 1 has been changed from “Review and finalize PCZT (similar to PSBT for Bitcoin) with Zashi/Zcash team.” to "POC of PCZT (similar to PSBT for Bitcoin) with Zashi/Zcash team."We are having this change because the discussion of PCZT will be through the whole process of our integration and we are modifying that with the Zashi team from time to time. So it’s inappropriate to “finalize” it in Milestone 1.And for Milestone 1 we are having 1-ish week delay. But the good news is that Milestone 1 is not blocking the following work and we are working on other deliverables and we are 100% on time.

16 Likes

Feel so honored for this haha!

9 Likes

Hey Zcash community,

Last week was quite a productive one!

We successfully completed the POC for signing a transaction with Keystone. We extracted the message hash and other necessary data from the Orchard bundle of a transaction and provided it to Keystone. After Keystone signed it, the transaction was successfully accepted by the Zcash blockchain:
https://mainnet.zcashexplorer.app/transactions/134ccfcea3e7e5cf122d25c56e2fb3b4bf3ee77e525e8483bd01cc7576df8fb5

Moving forward, we will:

  1. Continue researching which data Keystone needs to obtain to display and verify for user asset security.
  2. Modify the dependency libraries used during the POC process to support subsequent formal development.
18 Likes

Hey Lixin I´m Mine, designer from Zcash Brasil and I loved the idea! I´d really like to participate!

4 Likes

Cool!!! Will contact you later!

1 Like

Hey Zcash fams,

This week, we mainly completed the initial extraction and modification of the Zcash dependency libraries (though it was a simple implementation in our repository and not an ideal approach). Currently, it can support the subsequent development of functions.

Next week, we will summarize a modification list based on the current changes to the dependency libraries and work with the Zcash Team to modify the librustzcash and orchard libraries, while also advancing the subsequent function development.

We also had a meeting with @Liz315 from LeastAuthority and we have confirmed the auditing scope:

  1. modified Zcash library by us which will be used on our firmware
  2. the Zcash rust app in our firmware
  3. the rust sdk for the other third party to use

Thanks everyone!

15 Likes

I really appreciate all the updates, thankyou.

I really look forward to purchasing one of these devices when you have completed the app

6 Likes

Excelente ideia!
Estou ansiosa para participar desse concurso!

2 Likes

Thanks @doloresampaio

I will do another post in the forum when we start doing this!

2 Likes

Hey Zcash community,

Here is the weekly report for the last week -

We focused on writing this documentation - Zcash Integration Summary which summarizes -

  1. The dependency libraries used for the integration so far and the corresponding modifications.
  2. The minimal data required by Keystone for displaying, verifying, and signing transactions.

This documentation has been shared with Zashi team asking for feedbacks.

Last week we have also started the formal development of Keystone’s support for Zcash (previously we were mostly working on POCs).

11 Likes

This week, the Zcash support entered the formal development phase.

The main achievements include:

  1. Drafted the Zcash-related QR code data protocol.
  2. Developed the Zcash receiving address and wallet connection features on Keystone.

More details: GitHub Pull Request #1366

13 Likes

We were having an offsite last week. So there is little progress.

This week we will resume to our full speed of building for $Zcash.

6 Likes

Last week, we proposed a draft data structure for PCZT (Partially Created Zcash Transaction).

A side note: this is one of the most important part of the grant as with this PCZT, any hardware wallet can follow this standard to be compatible with Zashi or any other software wallet. Or even any software wallet can be turned into a hardware wallet by turning the mobile phone into airplane mode and communicate with another online device through QR.

The idea comes from PSBT in Bitcoin. Reference - bitcoin/doc/psbt.md at master · bitcoin/bitcoin · GitHub

The Zashi team is also putting forward their ideas about the PCZT structure. We will discuss these two proposals this week.

7 Likes

FYI, it’s been done by ywallet, but we’ll gladly consider your proposal.

3 Likes