Keplr - Secret Network Integration Update

Hello Secret community!

First of all, I’d like to extend our gratitude for your participation and overwhelming support of Proposal #19. Being funded by a blockchain community pool is an insanely exhilarating feeling. Whereas the ‘traditional way’ of looking at blockchains was as an inorganic entity that is passive and neutral, this makes blockchains feel like an active organism that’s alive and kicking.

That being said, I’d like to give a quick update on where we are at this time.

In order to deliver the features as soon as possible, we have actually begun working on Ledger integration while the on-chain proposal was in voting period.

While there are various implementations of Ledger hardware wallet on webpages, there no pre-existing implementations for Ledger support on a browser extension within the Cosmos ecosystem. One of the major hurdles we faced was finding a reliable method of connecting the Ledger device to the wallet, which works for the browser extension. That being said, we decided to use the WebUSB transport method, rather than the U2F/HID alternative as we found it was the best solution to move forward. You can read more about the design decisions on this GitHub issue.

As for the BIP44 HD derivation path, we have completed the initial development for this feature. This is extremely important as it appears that the CLI uses the same derivation path as Cosmos Hub, but this may be subject to change in the future. Should the derivation path change, the same mnemonic can result in different addresses and create confusion for users. While this isn’t an immediate concern as of now, we want to ensure that the possibility is thought through in advance.

This also gives Secret users the ability to manage multiple HD derivation accounts from the same ledger device. Something which isn’t possible outside of the CLI at this time.

We’re currently undergoing testing and UI development, and aiming to release the feature by the end of the week to next week(although this is subject to change as Chrome extension store reviews can take longer than expected).

The team is looking forward to releasing more features as outlined in the governance proposal, and continuing to support the growth of the Secret Network.

Onwards :vulcan_salute::rocket:

8 Likes

@josh-chainapsis This is super exciting! I’m so pumped to test all this out :slight_smile: Congratulations again on the proposal passing - we’re proud to have you in the Secret ecosystem.

3 Likes

I echo Tor’s sentiment! Going forward it would be great to have a weekly (or every other week) development update. Also if you need UI testing, would be happy to give feedback anytime :slight_smile:

3 Likes

Hello Secret community!

Some of you may have already heard the news, but we finally have SCRT Ledger support for Keplr! If you don’t have Keplr installed, please check out this link. If you already have Keplr installed, the Chrome will automatically update your wallet.

If you’d like a short guide on how to import your Ledger wallet, please check out the short guide I’ve put together here.

We have also enabled custom derivation paths for accounts so if you’re one of the more ‘advanced’ users that have multiple accounts associated with the same seed, you’re able to manage those accounts from Keplr as well. We did receive some great feedback on UX improvements for this process, and hoping to iterate the UX for this feature in the upcoming updates.

Also, I’ve heard the secret that Secret contracts will soon be enabled on mainnet! This is extremely exciting news, and we’re hoping to work on the second part of the deliverables 1 milestone of integrating SecretJS signing and allowing users to sign Secret’s WASM contracts.

We’ll keep you guys updated on this front, so stay tuned!

Onwards :vulcan_salute::rocket:

3 Likes

Hi Josh,
just a side request. In the Keplr wallet I can’t see anywhere that actually shows you your total holdings, just the amounts staked. Is there anyway you can include a wallet total in the DApp interface please :slight_smile: If i have missed it somehow then sorry :wink:

Hello Secret community!

If you haven’t noticed, we have finally rolled out the Ledger integration for Secret Network as promised! We’ve received a lot of good feedback on UX that we hope to iterate on future releases:

  • Simplify custom account derivation path UI by showing account addresses in advance
  • Showing total staked amount in the within the extension wallet (as @uShadow mentioned above)
  • Better error message handling

We have identified a few bugs, which we will release a fix for:

  1. Ledger Nano X + Windows 10 appears to have issues with the browser not being able to recognize the device. We have identified that this is an issue with the WebUSB transport system we are using for handling device connections. We will roll out a patch which will allow Windows users that own Ledger Nano X to connect via WebHID, and keep you updated on the status.
  2. A minor issue, but we’ve also identified some issues with long response time for Keplr wallet transaction processing when multiple accounts are simultaneously requesting a transaction. We believe this is an issue with our proxy server which transports the signed transaction from the wallet to the blockchain node endpoint, and will provide an update which should allow transactions to be processed faster.

Other than that, we are preparing for the upcoming network upgrade which enables Secret smart contracts on Secret Network. This week is going to be all about integrating WASM contract signing to Keplr (which would complete the deliverables for milestone 1), and have begun development on this front. While we do not have an ETA on release, we are working closely with various parties to make sure this feature is provided ASAP.

This means that soon, you will be able to interact with all Secret contracts that are deployed on Secret Network using Keplr!

Beyond that, We’ve been communicating with @tor on collaborating on a giveaway raffle for users that create Secret accounts using Keplr. So make sure you keep an eye out for this exciting event.

We are one day away from activating Secret contracts, which I think is the most significant milestone for Secret Network so far–which essentially allows developers of start deploying WASM smart contracts to develop privacy preserving dApps. Happpy that we can be a part of this exciting time, and are looking forward to the next steps.

Onwards :vulcan_salute::rocket:

6 Likes

Hello Secret Community! :shushing_face:

It’s been a while since our last weekly update. Last week was a major local holiday. The team took time off to recharge and now we’re ready to get back to business!

Our emphasis for this week has been to integrate transaction signing and interactions with Secret contracts. The first progress we made was with making sure Wasm smart contract with CosmWasm was integrated into Keplr. On that front, we’ve completed development and have tested out Wasm execution on Confio’s Coralnet testnet to great success.

We are now in the second stages where we are developing features which allow Secret contract execution, and dealing with encryption/decryption of smart contract messages within Keplr and creating a user flow which is specific to Secret Network.


(Just FYI, click the image above to see both images. Looks like I’m only able to embed one image per post :grimacing:)

We’ve been able to successfully integrate the feature into Keplr. As you can see in the first image under msgs.msg the content of the smart contract is encrypted. In the second image (where the content has been decrypted), you are able to see that the user is able to see that the message is actually a contract execution which transfers a token to a specified address. Testing is underway on this front, but we remain optimistic that there are no blockers on this front.

One thing are we are internally discussing is creating a sign-encryption, query-decryption flow by which user has control of the content of the messages. As web apps are able to request user signing, it is crucial that the user has full control of data encryption/decryption to ensure that no unintended data is exposed to the website without user permission.

Once this area has been finalized, we will move towards integrating Secret contract tokens into Keplr wallet interface and exposing Secret contract-specific messages on transaction approval page.

Things are picking up quickly, and we can’t wait to share more details as they come.

Onwards :vulcan_salute::rocket:

4 Likes

Great work! Thanks for the update!

1 Like