scrobble.life
#hive

Hive Keychain Proposal 3 (DHF)

A lot has happened on Hive these past 6 months and I you followed the @keychain account weekly posts, you know that we've never stop building feature after feature, mostly on our mobile App (available on Android and iOS) but also on our extension (available on Chrome, Firefox, Opera and Brave).

The current proposal is coming to an end soon but there's still so much we want to do to help the Hive ecosystem thrive, hence this new proposal.

Hive Keychain DHF 3

We envision Keychain at the center of the Hive ecosystem, enabling both web and mobile dApps to interact with the Hive blockchain in a secure manner. To reach this goal, we need your support once again to keep building towards this goal.

This new proposal will start on May 15th, date at which the current one will expire, there will be no overlap between the two proposals.

This proposal will mainly focus on two different axis :

  • Maintain, improve and refactor the existing browser extensions
  • Continue developing the Keychain mobile Apps

The past and upcoming work regarding these two projects will be discussed on the paragraphs below.

Hive Keychain Mobile

There is a ton of features we want to provide to make Keychain a great mobile App that would help the whole Hive mobile ecosystem thrive. As such, our focus was mostly turned towards mobile development these past 6 months.

Thanks to that we made some good progress on the wallet side:

  • Apps size optimization
  • Stores pages creation
  • Iterated on Alpha tests until having a wallet stable enough to be released on both Android and iOS as Open Beta
  • Implemented the drawer menu
  • Implemented the keys management screen
  • Created issues templates for better reporting on Github
  • Various UI fixes for the wallet part of the App
  • Fixed voting power and vote value calculation
  • Fixed several navigation glitches
  • Improved error handling
  • Added Hive Engine transfer confirmation (the transaction will show as pending until confirmed by HE)
  • Disable transfer (and other transactions necessitating active authority) and show a message when the active key is missing
  • Confirmation screen for transfers
  • Phishing protection during transfers
  • Exchange transfer detection. It will show if the memo is missing
  • Added HBD conversion modal, as well as a list of current conversions
  • Implementation of a bridge to access the decodeMemo,  encodeMemo,  signTx  and  signBuffer despite crypto core module being unavailable on React Native.
  • Automatically iterate fetching the transaction list. The list will also expand when scrolling to the end.
  • Transfers memo encryption
  • Transition from dhive to hive-tx-js for broadcasts
  • Inputs sanitizing

Once all that work was out of the way on the wallet side, it was time to work on our in-App browser:

  • Single tab, full page browser
  • Hive Keychain Js code is injected to the WebView via a bridge
  • Requests integrity validation
  • Requests authority validation
  • A dialog displays request summaries on which users can accept or not the request
  • Almost all Hive Keychain requests are already implemented (a few minor ones still need to be added)
  • Bottom bar allows to go to previous / next page, reload or search for an url
  • On the url search page, an autocomplete help users find a link through their history

Here are some screenshots that I hope will make you excited about the Apps:

Although we made a lot of progress, there is still much we want to do in the coming months:

  • Transform the current simple browser tab into a full-fledged browser experience : making the browser multi-tab, handling tabs management and favorites.
  • Create a homepage with a list of Hive dApps by categories. This homepage will be served on new tabs.
  • Add features missing features to the wallet (i.e. buying HIVE/HBD)
  • Governance tab (witness votes, proxy, proposals)
  • Adding Hive Engine features (staking etc.)
  • Implement App to App communication, allowing other mobile Apps to request transactions directly to Keychain without ever seeing the keys.
  • Write the SDKs that will allow other mobile Apps to make those requests to Hive Keychain.
  • Add deep linking to enable users to open links from external apps (i.e. Discord) directly in Keychain browser

Hive Keychain Extension

Although, most of the energy was focused on the mobile Apps during the last 6 months, we still managed to push some work on the extension side:

  • requestSignBuffer, an authentication method for dApps, can now be used without specifying an account in advance. The account to login with can now be selected directly on Keychain. These operations can now receive a custom title as well to let users know what the signature will be used for.
  • requestSignBuffer operations can now be whitelisted if they dont necessitate active key.
  • Include settings to the export files, to really make it seamless to import keychain to a new device using a .kc file (thanks to @quochuy)
  • Fixed Keychain UI on second screen (it was lagging on MacOS)
  • Documentation updates
  • Updated our APIs to v2 (price APIs for instance)
  • Several UI adjustments
  • Pull requests review
  • Code refactoring
  • Users and dApp developers support

There is much more that we would like to do on the extension side and this new proposal with a new developer joining the team would allow us to do just that :

  • Implementation of 2FA (will be an optional setting).
  • Go further with onboarding by letting users create accounts directly from Keychain using one of the onboarding services
  • No-key extension. We want to make it possible to use the extension without any key if you are on an unsafe computer. This will be implemented when the mobile App is mature enough and will allow to link the extension to the mobile phone via QR code and send the requests to that phone, on which they can be confirmed
  • Ledger integration as soon as the Hive application is approved by Ledger (it's taking a while, if anyone has information about this I'd be glad to hear from this)
  • HE tokens operations integration (only transfers are supported so far)
  • Information about proposals
  • Reorganization of the settings
  • Preparation of new features integration ahead of time when introduced via a HF
  • Maintaining extension across all supported browsers through future HFs
  • Refactor the entire extension popup and dialogs using React.js
  • Users / Devs support

Additional work

Administration

Because Hive Keychain is a cryptocurrency wallet, Apple required us to publish it as a company and not as an individual account. We made our utmost to incorporate and migrate the Apple account in a timely manner, in order to minimize the impact on the iOS App updates.

Landing page

Another requirement from Apple was to setup a landing page. Since we had no time to waste, @nateaguila sent me a design in record time and we were done within a few days. We will improve this page when we have a bit more time to put into it. Here it is : https://hive-keychain.com

Backend

We are maintaining and occasionally adding some features to our backend. It is mostly used to perform HiveSQL requests, provide some global configuration (RPC nodes) and assets price (from Bittrex).

Support

We are always thriving to give a timely response to issues reported on our Discord (newly created) or Github.

HiveFest

It was my privilege to present Hive Keychain at the first HiveFest. Big thanks to @roelandp for organizing the event!

Budget

For this new proposal, we are applying for a daily budget of 300 HBD for a period of 12 months. This increase in daily budget will be used to hire part-time a talented developer (@cedricguillas) who used to work with me on SteemPlus a few years ago. You can see his new introduction post here. As I mentioned previously, developing the mobile Apps and handling the administrative work for Keychain leave me with very little time to work on the extensions side. Although, the extensions are mature, there is still much more they can offer, and adding a developer to the team will allow us to do just that.

Commitments

  • We commit to keep all the code produced through this funding open-source. You can find Hive Keychain and Keychain mobile on their respective Github repositories.
  • We commit to post weekly on the progress made during the previous week. We have held this promise all along the first DHF and we hope you enjoyed following our development updates.
  • Shall this proposal be accepted and HBD still be overvalued, we commit to ask the community (stake weighted) on dPoll whether we should use extra funds to finance extra dev hours and get work done faster, or return the extra funds to the DAO. If you think this is a useful procedure, put up a motion and have someone second it, and we will follow up with this poll.

Downloads and Contact

You can find download information for the Apps and extensions, as well as links to Github and Discord on our landing page.

Team

@stoodkev : CEO - Witness @nateaguila : UI/UX @yabapmatt : Advisor - Witness @aggroed : Advisor - Witness


Support Hive Keychain development by voting for this proposal on PeakD, or with HiveSigner.

You can also help us by reblogging this proposal.

100% of the rewards of this post are going to the Decentralized Hive Fund

Comments · 28

  • @dynamicrypto(73)· 1680d

    busy guy, hope you login and have time to communicate, need a quote or possible referral sir. Keychain is amazing and you have my vote

  • @chrysanthemum(71)· 1681d

    Been using @keychain from the very beginning of my journey here. It's a great experience using and love it’s user-friendly interface.

    Great job folks!

    Always best wishes!

  • @muneeb487(58)· 1727d

    I think this project helps many problems like interacting with your wallets and posts through a mobile phone and a security purpose Good luck to You.

  • @thatgermandude(67)· 1757d

    I understand you want supporters for your software, but it would be nice if I could still read the buttons on the app.

    image.png

  • @juggalizzle(25)· 1765d

    I would really be happy if my HiveSigner used my Hive engine wallet for representing funds.

  • @chickboss(25)· 1786d

    i forget to put memo code on withdraw transection can you hepl me?

  • @oblak(25)· 1787d

    Anyone? Who can help me? I had an accident to convert my hive to hbd then I don't know how to return it so I converted the hbd then I don't know where hays, I hope you can help me I can't see in history the incident I would still use it to buy dec yung hive ko

  • @craigahamilton(59)· 1855d

    I miss the dApps the most from Steemit. When's something like @steepshot coming back to the network?

    Inspiring work, devs! 👍


    Thank you @keychain for posting this!

    SOCIAL

    LABEL

    Creative Commons License

  • @ecoinstant(78)· 1864d

    Is there any active dev worked planned on this??? How about the long awaited mobile version? Seems like a money suck, hive keychain is as good as it was when it was cloned from steem.

  • @oople(42)· 1922d

    😄

  • @robvector(51)· 1935d

    Great work guys! Just curious if there has been any talk about adding support for NFTs within the Hive Keychain?

  • @bccsx(25)· 1939d

    Why does everybody keep creating chains that are no different and extremely hard to use.? js #accountcreation

  • @nathanmars(75)· 1965d

    Keychain at the center of the Hive ecosystem, enabling both web and mobile dApps to interact with the Hive blockchain in a secure manner.

    Voted :)

  • @dmilliz(73)· 1971d

    I love everything about this app except how it looks. Check out the klever wallet for ideas. Supported the proposal because I know the aesthetics can be worked on and devs are more concerned with usability first.

  • @libertycrypto27(82)· 1975d

    Hive keychain is my favourite way of accessing Hive and Hive dapps and I use it all the time. I gladly voted for the proposal. Thank you for this tool and for the continuous development to make it even better!

  • @florian-glechner(78)· 1975d

    Voted for the proposal, great to have you. Keychain works great for me and this is worth my support.

  • @risingstargame(73)· 1978d

    Great to see so much development going on!

    I left a message in Discord some time ago about a double post bug that seems to happen intermittently. I left examples of two transactions that were identical and were posted within the same second and the funds were deducted twice. It has happened to a few of our players and myself. Was this something you have been able to identify and fix at all?

    Thanks for the great work!

    Jux.

    The NFT based music career game built on HIVE - Musicians: mint NFTs of your music and sell to players!

  • @mima2606(72)· 1979d

    Many thanks ...

  • @rishi556(72)· 1979d

    Can we get some better tech support for keychain? The discord with it(on the engine server) has become abandoned and people are posting complaints: https://hivel.ink/hive-139531/@julianhorack/keychain-broke-on-me-so-i-simply-removed-it-altogether-but-tech-support-was-impossible-to-find.

    Self voted for visibility.

  • @leoplaw(72)· 1979d

    Voted. Keep up the good work!

  • @vermithrax(58)· 1979d

    For a while I found the multitude of key chain extensions annoying. Then I found WhaleVault which can handle 15 different Steem like chains including hive.

    image.png

    I don't understand why every Steem like chain insists on creating their own keychain extension. For me this sounds like a pure vanity project as a universal keychain solution exists. It would be much more efficient to join the WhaleVault effort instead of wasting developer time on creating yet-another-keychain-extension without added value to the end user.

    Quite the opposite: If you have accounts at multiple chains having to install a keychain-extension for all of them is just annoying.

  • @cranium(76)· 1979d

    Great job. Of course I will vote, and I will also reblog in my blog. Thank you for continuing to work on #HIVE development.



    Link to vote for @cranium as a witness
  • @ackza(74)· 1979d

    Add @aggroed s tribaldex.com swaps so u can auto swap any of those hive engine tokens or place sell orders . We should be able to convert swap.btc swap.doge etc to swap.hive

    Posted using Dapplr

  • @marc5(55)· 1980d

    You should focus on improving the design and aesthetics. Uniswap became popular thanks to having a great design. As well as metamask, etc..

  • @khushikhan(6)· 1980d

    Reblog your posting dear

  • @enjar(79)· 1980d

    QR codes could enable a lot of things beyond just safety on an unsafe computer.

    Some PC based games on other blockchains use QR codes to link the game to the user’s wallet or to accept thing such as transfer of NFTs.

    Payment on the go in the real world.

  • @repayme4568(70)· 1980d

    Hive blockchain is not just a blog but a chains comprises of many blockchain which some are yet to be harness, I must say this platform is all I was looking for, you know what I spent 85% of my time on hive and none is a waste because each day by day I'm learning more and more and also growing on the platform. Therefore, I say the world much hear of this amazing platform. Hive blockchain the hive of our hives 🤗

  • @fredrikaa(74)· 1980d

    It's great to have a tool like this at the center of the ecosystem and to help make it easier to use apps. Voted for the proposal.

    I like the idea of using Keychain also to introduce users to other dApps. This way, if one Hive dApp onboards 1000 new users to themselves and recommends using keychain for logins etc, there'll be a likely spillover of users to other dApps as well, helping improve engagement, activity and retention.

    I would love to also see the full web version look like a more customizable and investor-friendly wallet. All of the current well functioning browser wallets are very centred around the blogging aspects of Hive, with links to author and curation rewards and stats relevant to them. I would like seeing a wallet that shows more info relevant to the growth of Hive, the opportunities to delegate to projects, communities etc, news on upcoming and changing proposals, changing witness statuses or key announcements. Things that any good stakeholder should want to be up to date on while also seeing demonstrations of interesting progress being made. I think that would be good both for confidence in the chain, as well as more active participating in both governance voting and supporting the best projects.