Summary: Open Stellar hardware wallet
Category: Applications, Tools & Infrastructure
Goals: Bringing cheap and full featured hardware wallets to everyone through easy to use software that can be installed on cheap, readily available devices
Description: I realized there is a big gap in the Stellar wallet experience. Users have the choice between expensive and hard to find hardware wallets, or cheaper NFC cards that don't allow users to externally validate transactions before signing them. I searched high and low, experimenting with many devices before settling on the ESP32 microprocessor.
There are many cheap devices available such as the TTGO and M5Stack products (many of which are available with screens for US$10 - US$30), and the processor has built-in Bluetooth LE as well as flash encryption, secure boot and a hardware random number generator that is perfect for Stellar key generation. All that was missing is the software, and that is what I have been building.
I have already spent a significant amount of time on the project and made a great deal of progress, as you can see in the demo video showcasing the UI and communication capabilities. I decided to make the software open source so everyone can use it, and it is designed to adapt to other architectures than ESP32 so that it can scale out to even more devices in the future. My ultimate dream is for a manufacturer to use the software to build physical wallets so that consumers could walk into a retailer and buy a cheap wallet off the shelf for under US$20, perhaps even starting off with a built-in airdrop of US$20 worth of XLM to essentially make it free. I feel the ability to buy a truly secure hardware wallet for such a low price will be a huge benefit to Stellar over other crypto assets, as well as for making it accessible to the public in general.
The project includes building the actual wallet software (in C++), as well as a companion wallet app for iOS/Android (in C# with Xamarin) and I have created a demo website that shows how you can even interact with the wallet from your PC over Bluetooth LE. The basic framework is there, I just need to finish building out the signing and security featureset. I'm hoping to get support from SCF to allow me to spend more time working on the project and accelerate getting it into the world. With the solid software base I have built so far, I will be able to add support for smartwatches/smartbands built on the ESP32 platform (see the xlet.io site for some example pictures) and I have plans to eventually support screenless hardware security keys for use with servers.
Links: https://xlet.io GitHub YouTube trailer
Tags: hardware, wallet, secure, bluetooth
If you would like to get in contact with me on Keybase, my username on there is mattpearce.