The first time I heard about crypto currencies, specifically Bitcoin, was probably around 2011, and later in May 2012, I noticed a “micro-payments with Bitcoin digital currency” talk at a Barcamp. I did not think much of it at the time, but with hindsights, I should definitely have started to mine some Bitcoins considering the price was $5. Nevertheless, cryptocurrencies appear to be here to stay, and while most transactions occurs over the Internet, Opendime project has made a hardware USB dongle to store Bitcoins, and earlier this year, announced version 2 of their “Verified Bitcoin Credit Stick”.
Hardware specifications of OpenDime v2.0 / v2.1 USB stick:
- MCU – Microchip / Atmel SAMD21 Cortex M0 MCU
- Security Chip – Microchip / Atmel ATECC508A Crypto chip with support for SHA-256, TRNG, and public key signing (ECDSA)
- USB 2.0 interface to connect to a computer
- Bitcoin seal
The USB stick works like a piggy bank, you can add Bitcoins to it changing the status from new to sealed, but you can not use them until you “break the seal”, that is pushing through the Bitcoin hole that will remove a resistor and change the status to un-sealed.
Once connected to a computer, you can copy some of your files in order to create a randomly generated private-key. The drive won’t save your files, and become read-only. Once this is done, you should see an index.htm file in the stick that you can use to verify the stick, and add Bitcoins from your own wallet. You can then give your OpenDime to somebody to make a payment. More info can be found in the github repo, full instructions are also located inside the OpenDime, and the video below gives an overview of OpenDime, and shows how to use it.
I’m not sure I get the advantages of using such hardware key for Bitcoin payments, but the company explains it could be used for the following use cases in the FAQ:
- Gift someone a Bitcoin. Put it on an Opendime and mail it to them. Simple!
- Deliver the payment for a car when you go to pick it up. Just put your payment on an Opendime and hand it over when you get the keys. Private key for car keys!
- Load a number of Opendimes with various denominations of Bitcoin. Keep them in your pocket to pay for things through-out your day.
- Sell Opendimes, preloaded with value, in exchange for gold or other precious metals.
- Use this instead of a paper wallet. Just as “compatible” but takes care of generating the private key safely.
If you are interesting you can purchase OpenDime keys starting at $37.50 for one pack of 3 boards, and to up to 8 packs of 3 boards for $300 plus shipping. That’s over $12 per board, so while it acts like “Bitcoin cash”, the hardware price only makes it suitable for larger amounts.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Nice projet but i think the target people is unrealist. What is the use of usb key in the street without a computer?
If you have a computer, you already have a bitcoin wallet…
I prefer an protected by password paper bitcoin and give the password to receiver and change the password each time i want
(long time blog follower .. first time poster and CTO at Opendime)
Opendime differs from a paper wallets in a critical way: the giver does not know the private key, and cannot snatch back the funds after giving it to you. Since the private key is generated inside the Opendime, and doesn’t leave it (until end of life), as the receiver of an amount on an Opendime, you know that physical possession of the device means you have the Bitcoin.
Since I don’t know about Paper Wallets here’s a video: https://www.youtube.com/watch?v=a47rrYBWjWQ
Two advantages I see from for paper wallets. Cheaper, and you can write the amount on it.
Maybe eventually it will be possible to make some sort of ultra-cheap hardware with some e-paper display.
It would be good if future OpenDime design would be reusable after the payment has been transfered to the recipient.
Meaning the stick is based to the “new” state. So the hardware price would not matter too much. The sticks would just be passed around like cash.
You can buy a encrypted flash drive for less, and if they designed one that has a one time key. You could make a reusable encrypted drive.
Then you have precharge cards which you can load with money.
Also would you really want to store £200 or 200 dollars on your keys or key chain?
I am not sold on the idea. I case any wondering, yes I have mined coins, yes I have had bitcoin.
To the best of my knowledge, ATECC508A cannot be configured to use secp256k1 elliptic curve (flavor used by blockchains). Do you use a man in the middle (like described in http://blog.enuma.io/update/2016/11/01/a-tale-of-two-curves-hardware-signing-for-ethereum.html) implemented in SAMD21?
The ATECC508A is not involved in the Bitcoin keys, so it doesn’t need to do the secp256k1 curve. It is used to authenticate the product (that it’s a real Opendime from our factory) and also the bitcoin payment address. There’s lots more about how we use it in a this technical white paper.