Physical Bitcoins: Our Hands-On, End-to-End Review of Opendime
Opendime
is a tiny USB flash drive that can be loaded with bitcoin by the first
user and given to another user, who is, in turn, able to pass it along
to a third user and so forth.
The
private key attached to each Opendime is generated by the device at the
time of setup by the user: It is not known by anyone, not even by the
first owner or by the Opendime company itself. Opendimes can be passed
along multiple times to other users and verified. An Opendime stick can
only be redeemed by the last user, who must break the device to access
the private key and import it into a bitcoin wallet.
A
pack of three Opendimes can be ordered for $37.50. Though perhaps too
technically demanding for casual Bitcoin users and arguably too
expensive for transferring small values (the device is useless after
getting the funds out), Opendimes are certainly usable as physical bitcoins.
“Opendime transactions are a little different from blockchain transactions,” notes the Opendime FAQ.
“Whenever two people meet and trade goods or services for an Opendime,
you could say a transaction has occurred, and yet there is nothing
recorded on the blockchain. This is different from a normal bitcoin
wallet which makes blockchain records continuously and can create a
complex web of connections, which can later be explored by anyone.”
In
other words, Opendimes can be used as totally anonymous, untraceable
bitcoin cash. It is possible to do something similar with a paper wallet
by printing a bitcoin address and its private key and then passing the
paper wallet to another user, with no trace of the transaction recorded
on the blockchain. “It is much more private because there is no
subsequent blockchain transactions to track,” confirmed Opendime
developer Rodolfo Novak in conversation with Bitcoin Magazine.
But
the problem with using paper wallets in this way is that, somewhere
along the transaction trail, someone could copy the private key and take
the funds at any point after passing the paper wallet to the next user.
Opendime solves this problem by hiding the private key, only revealing
it to the last user who must break the device to take funds out.
Users
of Opendime sticks can choose to pass their stick along to different
owners only a few times before being emptied and destroyed, or they can
treat their stick like physical cash, allowing it to change hands many
times over years or decades. Novak confirmed that, according to user
feedback, both scenarios are well used.
With bitcoin exchanges under increasing regulatory pressure, it seems likely that face-to-face exchanges like LocalBitcoins
could become more popular, which could boost the adoption of Opendime.
Novak confirmed that, indeed, users are pre-loading Opendimes and using
them to sell bitcoin via LocalBitcoins.
According
to Novak, Opendime is not vulnerable to regulatory actions because “the
devices are ‘point solutions’ without any central service to be
regulatory ‘captured.’”
Legally, Opendime is a trademark/product of Coinkite Inc.,
a company founded by Novak and Peter Gray and based in Toronto, Canada.
Novak is skeptical of the possibility that Canadian regulators could
order Coinkite to stop producing and selling Opendimes. “We and our
lawyers don't believe that’s a possible scenario,” he said.
Opendime
documentation claims the sticks will last for decades under normal
usage conditions; however, Opendime hasn't been around for decades, so
there's no way to know for sure. But, as Novak explained, the microchip
used in each Opendime is rated for 25-100 years, as per the data sheet (page 816) linked in the FAQ.
“A few users have put it through a lot of abuse, washing machines, freezing, water, etc. and it survived,” said Novak
Novak also stated that it’s not practically possible to make a counterfeit because the device has a high security chip with a factory key just for that reason.
“They
would have to break our private key, which is practically impossible,”
said Novak. “Not even with a few tens of millions of dollars could they
peel the chip and try to use an electron microscope to get our key
because our chip choice also protects against peeling. So maybe a
hundred million dollars could make that happen. If that happens the next
batch would have a new key and they would have to spend the money
again.”
The
possibility remains, however, that malicious parties could make fake
Opendimes, with an identical look and user interface, which claim a fake
balance confirmed by a fake verification process. Therefore, it’s
important to check the provenance of the device. Novak explained that
there are a few ways for users to check an Opendime signature to verify
it's not counterfeit, including a Chrome extension, the Samourai Wallet, which supports Opendime natively, Electrum (coming soon) and an open-source script.
Gray
added that each Opendime ships with Python code for verification. “You
can use a known-good Opendime to verify an unknown one,” he said. “No
internet is required, and self-contained python code is used — just one
command to be typed, which takes just seconds.”
How It Works
Anytime
the stick is plugged into a computer, flickering green and red lights
indicate its status. Only green means that the device is active; red
indicates either that the device hasn’t been activated or that it has
already been unsealed (broken) and can’t be used anymore. The lights
work correctly even without a computer, with the stick connected to a
USB charger or power pack. A file named index.htm on the stick provides
all status information.
Bitcoin Magazine
tested an Opendime stick end-to-end. When we plugged the Opendime stick
into a computer for the first time, the red light flickered. The index
file warned, “Your Opendime is new and unused. Follow these steps to
pick a private key,” and gave us detailed instructions.
Following
the instructions, we copied a few small files onto the device to seed a
random number generator, which gets random bits from random.org. Once the private key was generated, the index file showed the stick’s Bitcoin address and a corresponding QR code.
Besides
the index file and two folders with programs and utilities, there are
four files on the stick: Address.txt, Private-key.txt, Qrcode.jpg and
README.txt. The address and Qrcode files show the stick’s bitcoin
address in both formats. The private-key file reads: “SEALED — See
README.txt for details.” The README gives detailed instructions on how
to use the Opendime stick, including how to verify that the device is
authentic and how to get funds out.
The
index file shows two status check buttons: “Check Balance” and
“Verify.” Pressing the Verify button resulted in the status message
“VERIFIED: Your Opendime does have control over the secret private key
corresponding to Bitcoin payment address.” The balance was zero, of
course, because we hadn’t yet sent funds to the stick.
We
sent funds to the stick in multiple transactions from different users,
physical locations and bitcoin wallets. After all the transactions were
confirmed, the correct balance and previous transactions were displayed
in the index file.
Now
our Opendime stick was active, loaded and ready to be passed along to
other owners. If the stick has been loaded with, say, 10,000 bits (0.01
BTC, about $120 at the current exchange rate), the stick could be used
as a physical coin carrying that value.
At this point in the process, anyone in the ownership chain could
decide to empty the stick and transfer the funds to their bitcoin
wallet. To do that, the user must unseal the device by pushing a pin
through a little circle marked on the back of the device. When this is
done, the red light flickers and the index file displays a warning:
“UNSEALED ⚠ DO NOT send more funds to this address or accept this
hardware as payment.” Clicking both status check buttons results in a
further warning: “Bitcoin was spent from this address. If this is an
Opendime address, this means it has been UNSEALED.” The private key is
now shown in the index file.
The Opendime team recommends using the Samourai wallet. However, we decided to experiment and create a new wallet on blockchain.info.
We imported our Opendime private key (Settings - Addresses) and
transfered the funds to the blockchain.info wallet, and then to an
exchange.
In
summary, the Opendime stick passed our end-to-end test with flying
colors. One caveat: At $13 a piece, Opendime sticks struck us as rather
expensive for storing/transferring small amounts and may be better
suited to large amounts of over $1,000 or so.
“But
$13 is actually very cheap as it's amortized by multiple exchanges of
the same unit,” Novak suggested. “Also, Bitcoin transactions are very
often more than that.”
This
is a fair point, since the chain ownership transfer could go on for a
very long time, with the stick potentially changing hands many times,
just like physical cash. Novak also added that improvements and new
features are in the works.