DEV Community

Cover image for Do Not Purchase CoinKite Hardware Products (Part 1)
librehash
librehash

Posted on

Do Not Purchase CoinKite Hardware Products (Part 1)

originally published on the Librehash blog (flagship) here - https://librehash.org/do-not-purchase-coinkite-hardware-products-part-1/

Their products are vaporware from top to bottom and their premise makes absolutely zero fucking sense (tantamount to pure security theater at times).

Starting With 'OpenDime'

There are numerous different product offerings under the 'CoinKite' flagship, so we're going to one by one here in our series, starting with 'OpenDime'.

Their main site = https://opendime.com

Upon visiting the site, visitors are presented with a huge, ugly orange "Buy Now" button which one would presumably click if they wished to order the "OpenDime 4.0" USB device (at the time of writing).

But let's hold our horses a sec. We need to dig into what this protocol is really about before we make any affirmative decisions.

Quick Note/Observation: Whenever 'open' prefixes any product in the tech space, the implication is that the product being provided is "open" as in "open source". Unfortunately, that's far from the case here (seems they just labeled it 'open' for the sake of instilling that association in customers)

"The Bitcoin Credit Stick"

Confused on what that means? You aren't the only one.

On the site, underneath those words, there are various phrases, written in bold, that unravel themselves in succession that describe the alleged characteristics of this device.

If you don't have the time to sit through all of the animations (you probably don't), no problem - that's what Librehash is for.

Below is a complete list of all of the unraveled phrases on the site underneath 'The Bitcoin Credit Stick' title (which, itself, is located in the panel beneath the top one, which contains the ugly 'buy now' button we were mentioning prior.

Next to each one of these phrases, there will be some comment provided.

  1. "Internal Private Key" = Not sure what's meant by this. Assumption here is that the device stores the private key...internally (where else would it be stored?); guess this is good reassurance though for those that were questioning this..

  2. "USB Flash Drive" = Not the words you want to read. Yes, it may look like a USB device at the end of the day, but it should not literally be a garden-variety USB device. You want to use a device that has some sort of secure, well-developed cryptographic module attached to the chip responsible for the light device's operation. There are some open source options available out there for this (we've already covered a couple of those in the @librechain channel already); it appears that these guys never consulted those sources though

  3. "Verify Offline" = Its impossible to "verify offline", if we're talking about transactions. Crafting a transaction is a stateless process, which means it can be done entirely offline without running a full node or polling any information from any full node. Thus, the process is independent and mutually exclusive of the functionality of the underpinning blockchain network. This is why new transactions submitted to the chain or the wallet balances of other peers / users that one interacts with claiming to have $BTC must have their balances validated on the internet...

  4. "Off-chain & 100% Private" = Bitcoin is not private, therefore this solution isn't either. Period. Also, all transactions confirmed on the Bitcoin blockchain are "on-chain", full stop. So, not sure what is meant or implied with the "off-chain" promo

  5. "First Bitcoin Bearer Instrument" = Have no clue what the fuck this means; looking deeper into this site, next to this same title (Bitcoin Bearer Instrument), is the following excerpt: "Opendime is a small USB stick that allows you to spend Bitcoin like a dollar bill. Pass it along multiple times. Connect to any USB to check balance. Unseal anytime to spend online. Trust no one." [so many problems here; (a) what is meant by, 'allows you to spend BItcoin like a dollar bill'? (b) "Pass it along multiple times"? so much for '100% privacy', right? ( c ) "connect to any USB to check balance" so much for 'Verify Offline', right? "Unseal anytime to spend online" (unseal what?) (d) "Trust no one" [Bitcoin is already trustless by design, so how could any Bitcoin-based product claim to provide such a benefit as if its not already being enjoyed by users of the protocol?]

  6. "Pass it Along Multiple Times" = At first glance, no clue what's meant here by this phrase; pass 'what' along?

  7. "Trust No One!" = Repeat after me, "Bitcoin is trustless"; 'decentralization' + the concept of architecting the protocol so that the nodes would (or were supposed to be) distributed was a means to an end (that 'end' = trustlessness)

You've been lied to and told that 'decentralization' is the innovation of BItcoin. This could not be further from the truth. The internet itself, architecturally and by design, is decentralized.

Evaluating OpenDime's Features

On the same site where we found all of these bold claims about this USB stick are a host of purported features afforded to users that elect to waaste their money on this crap (if you visited the site, you just need to scroll down a bit to run into said features).

Specifically, the features (as listed above), are:

A) USB Drive - "Acts like a read-only USB flash drive. Works with any computer, laptop, or phone. A QR Image and Text files inside contain Bitcoin address and helpful information."

B) Ultra Secure - "The private key is generated inside the device, and is never known to any human, not even you!"

C) No Trust - "Given an OpenDime to anyone and they don't need to worry that you can take back the funds later. The private key is strictly in the device itself."

D) Free to Use - "This is physical Bitcoin as it was meant to be: just hand it to someone and they've got it! Pass it on multiple times! As simple as a handshake. No miner fees, no confirmation delays."

E) Open Standards - "Uses Bitcoin message signing, normal (non HD) bitcoin payment addresses and payment keys in WIF format."

F) Compatibility - "The Bitcoin world changes fast but OpenDime is built on the fundamental Bitcoin features that haven't changed in five years."

Premature Assessment of These 'Features' = Fucking Terrible

There are a ton of fucking issues with each and every single purported 'feature' of this project from: (a) the listing of some of these items as 'features' or 'benefits' at all (b) Multiple contradictions in the description of these benefits, from one to another (c) Inaccurate statements (d) Exaggerated / untrue claims made (e) Pseudo-features; i.e., for virtually all of the alleged benefits provided for the end user, none of the "issues" supposedly addressed by these features are legitimate issues / threat vectors for Bitcoin users at all

However, rather than nitpick from a distance, we're going to go through each one of these alleged features with a fine-toothed comb and pick them apart in one of the subsequent articles for this series.

For now though, we're going to focus on some of the major deficits in the 'OpenDime' product offering.

Carving Open 'OpenDime'

"Zooming out" for a second, its critical for users to adjudicate any hardware-based "Bitcoin wallet" product they purchase / are offered through the scope of that product's efficacy in handling any & all sensitive cryptographic data.

Bitcoin / cryptocurrencies aren't the only thing in life that are underpinned by cryptographic keys or sensitive cryptographic material that must be highly secured & protected.

HSMs are Effectively the World's Best Hardware Wallets

HSM stands for, 'Hardware Security Module'. In a nutshell, "The hardware security module (HSM) is a special 'trusted' network computer performing a variety of cryptographic operations: key management, key exchange, encryption, etc." (source - https://www.cryptomathic.com/news-events/blog/understanding-hardware-security-modules-hsms).

Also, see this description for an 'HSM' provided by Thales (to parity the sources used for this critical task of defining these devices):

https://cpl.thalesgroup.com/encryption/hardware-security-modules

Effectively, it does everything that Bitcoin hardware wallets market themselves as providing ; the only difference is that these solutions are **exponentially more secure than what you see out of your 'garden variety' Bitcoin hardware wallets.

As we'll see in the next section, there are a number 'boxes' that must be "checked" before we can declare an HSM device (effectively what these products are), to be secure in any capacity.

Properties of a Secure HSM Device

One of the best guides for this you'll find anywhere online is located here - https://wiki.opendnssec.org/display/DOCREF/HSM+Buyers%27+Guide

We're going to briefly summarize some of the finer points included in this document below (as a mini-criteria for what someone should want out of their HSM device)

  • There are four tiers of 'HSM' devices that one can obtain (based on scale of operation, required usage, and features / properties of the HSM device in question necessary for whatever its being purchased for)

  • Any HSM worth its salt should be compatible with PKCS #11

  • The HSM device in question should be audited (by a legitimate security firm qualified to conduct such audits); this audit, in specific, is different from what we have come to expect in the crypto space in relation to "smart contract audits". Instead of being commissioned for the purpose of finding any bugs/glitches/exploits/etc., audits of mission-critical hardware/software like this is usually commissioned and subsequently published publicly for the purposes of providing assurance to the general public via a trusted, reputable 3rd-party source that the construction of the device reflects the type of development / cryptographic acumen a device of this nature must possess.

  • Device should be compliant with National & International security standards established by the world's foremost Standards Organizations (i.e., 'NIST', 'FIPS', 'ISO/IEC', etc.)

  • This list is far from comprehensive, but if you're wondering what the most popular compliance standards are that companies seek to align with that are providing a product like this (HSM): GDPR, eIDAS, FIPS 140-2 (level 3) , Common Criteria, HIPAA, PCI-DSS, NITES, ANSI X9.24, ISO 13491, ISO 27799, ISO 27002, FedRAMP, GLBA, HIPAA, PIPA, PDPA, UIDAI, PSD2 (among others that aren't listed but compliance with the standard could still be considered desirable, contingent on the use case of the device & the corresponding context of the situation)

  • To be clear this 'compliance' label is usually cleared by the standards organization before the manufacturer makes this claim (simply asserting that one's device conforms to these standards without going through this process would do significantly more harm than good in the eyes of the prospective end-user / consumer if that were to ever be discovered & exposed)

Below is a screenshot of a real certificate (given to Thales by the NIST), certifying that their HSM was FIPS 140 complaint (Level 2).

https://csrc.nist.gov/Projects/Cryptographic-Module-Validation-Program/Certificate/3205

Picture of the actual 'Certificate' provided by the U.S. government for the product deemed to meet the threshold requirements of an FIPS-certified device.

https://csrc.nist.gov/CSRC/media/projects/cryptographic-module-validation-program/documents/certificates/JuneCertFinal.pdf (ignore the quality here; this is the best that the gov't provided on its site of this certificate for whatever reason)

The certificate shown in the screenshot above is simply the first page of a pdf document (linked directly from the NIST website). This next screenshot (from 'page 2' of that same pdf), provides a more granular outlook of the different facets of the HSM that needed to be adjudciated for certification (shown to give readers an idea of how meticulous this process is).

Can HSMs be Used for Blockchain?

In Two Words?: Hell yes.

In fact, there are a number of HSM manufacturers out there that have went out of their way to publish documentation on their products' respective site(s), outlining how their device can be purposed for securing one's blockchain addresses / funds.

Example One: 'Ultimaco'

https://hsm.utimaco.com/blog/why-hsm-is-vital-to-the-blockchain-technologies/

More relevant information can be found here - https://hsm.utimaco.com/blog/the-key-role-of-hsms-and-key-management-in-secure-permissioned-blockchains-for-banking-and-payment-services-an-overview/

Example Two - Thales Group HSMs

Thales published an entire whitepaper covering how their HSM devices could be used to provide elite protection for those looking to store $ETH / $BTC keys.

The prelude to the whitepaper (on their site), states: "Secure cold storage of cryptocurrencies such as Bitcoin or Ethereum, is a difficult and complex challenge. Traditional paper wallet-based solutions may be effective for the most basic use cases, but they present a substantial challenge for more complex environments as they do not scale, or address compliance requirements for strong key management."

That whitepaper can be found here - https://cpl.thalesgroup.com/sites/default/files/content/solution_briefs/field_document/2020-03/Securing_Blockchain_Ledger_ProtectServer_HSM_SB_v8.pdf

https://cpl.thalesgroup.com/resources/encryption/blockchain-protectserver-hsm-solution-brief

Below is an excerpt from that whitepaper (pdf document):

Open Source HSM Solutions (for cheap)

The best commercially available HSM solution out there, hands down (for those that don't want to get into tinkering with chips & hardware), is the 'Nitrokey 3'.

You can read about the features that come with this key here - https://www.nitrokey.com/news/2021/new-nitrokey-3-nfc-usb-c-rust-common-criteria-eal-6

these are some pretty significant features, right?

^^ That summary doesn't provide a comprehensive list of the benefits afforded by one of these devices.

Those benefits are presented below (screen'd from the site):

That's not all though, Nitrokey also provides a breakdown of the security technology embedded in these devices (and each component's respective role in the greater design of this mini-HSM product).

Fortunately for NitroKey users, the project is entirely open source (both the firmware and hard ware provided; 'OpenDime' only open sourced their firmware, which does little to provide us with the assurance one would desire when entrusting a device to effectively secure all of your hard-earned crypto funds).

The above referenced 'Security Technology' is outlined in the screenshots published below form the site, for convenience:

Wait, there's more

If you visit the product page of NitroKey's site, you'll find a list of some of the general security assurances their devices afford users across the board (regardless of what is purchased).

Let's Revisit the 'OpenDime' Features Again

from the main site: https://opendime.com/ (non-descript, vague "features" that are effectively unable to be verified beyond the statements on the website itself)

Hard to argue that this device provides a compelling and/or competitive use case in light of what we just learned in this article. But - who knows? Maybe this product makes up for it in its pricing (comparatively).

Fortunately, we don't have to speculate on this as the companies responsible for bringing each respective product to market have the price point for these items published online at the time of writing.

Price of 'OpenDime' / ColdCard Device

https://store.coinkite.com/store/opendime

As we can see in the screenshot above, the price of an 'OpenDime' disposable USB device (3-pack) at the time of writing is approximately, $49-59.

Let's see how much the NitroKeys are going for.

Price of NitroKey 3 HSM

https://shop.nitrokey.com/shop/product/nk3cn-nitrokey-3c-nfc-148

Per the screenshot above, it appears that this key is going for 49 euros, which equates to ~$56 at the time of writing.

Conclusion

There is none, this is only part one. We have a hell of a lot more to discuss here.

Oldest comments (0)