TL;DR: “HOLY SATOSHI!” developer Tobias Ruck announced. “I did it! A smart card that produces valid Bitcoin Cash signatures. Who would love to pay with a card—to a phone?? Tap took less than a second! Imagine trying to set up shop accepting cards and all you need to do is install an app on your phone.” We nabbed Ruck for an exclusive interview to ask about his demonstration and what it might ultimately mean.
Smart Card Produces Bitcoin Cash Signatures, Card-to-Phone
“I can see it totally makes sense. Cool!” developer Mark B. Lundeberg commented. “You did it brother!” CoinText’s Vin Armani congratulated. “If you need help [getting] your organization set up correctly to be able to take the big investments that are about to come your way, it would be my honor to help you. I am excited to help build infrastructure for this whole new territory,” Armani urged.
Ruck himself was careful to explain, “It‘s still very much unpolished and I still have to make the app build and send the transactions, but once finished—it‘s going to be huge! And when scaled up, smart cards could literally be $1 each.”
HOLY SATOSHI! 😱😱
I did it! A smart card that produces valid #BitcoinCash signatures.
Who would love to pay with a card—to a phone??
Tap took less than a second!👟👏
Imagine trying to set up shop accepting cards and all you need to do is install an app on your phone. 💪 pic.twitter.com/ielKlcPvDA
— Tobias Ruck (@TobiasRuck) November 11, 2019
The huge-ness of the successful experiment Ruck fleshes out in our interview. However, another way to rudimentary understand what he’s done is how most credit cards operate in the real world. They aren’t, obviously, always online, and they don’t require being online to work. That’s not the case with cryptocurrency, which in most cases involves an internet connection. What Ruck might have found is a way for a crypto-loaded card to send a signal to a traditional point-of-sale terminal — imitating a key credit card function.
The practice device he used appears to be a JCOP dual interface RSA4096 ECC Java card with standard, banking grade PVC. The German dev described his cryptocurrency background to CoinSpice as coming through “random bits of information” reaching him after finishing formal schooling. “Later, I became a libertarian, I had a more thorough look into cryptocurrency. Recently, I realized I‘m really good at developing smart contracts and systems of that sort, so I got more into it.”
Interview With Tobias Ruck
CoinSpice: What prompted you to even explore the idea?
Tobias Ruck: So I went to a Thai restaurant in Townsville [Australia] during the [Bitcoin Cash City Conference] with Cindy and Chris, and there, of course, we paid with Bitcoin Cash. I didn‘t have internet, so Chris had to pay for me and I‘d pay him back later. But his internet was choppy, too, so it didn‘t go through, so he sent it again.
I guess you can see where this is going, the payment actually went through twice. Yeah, I was kinda disappointed at the UX of Bitcoin Cash and realized that we can‘t compete with both paper cash and credit cards at all. If two devs can‘t figure out how to pay reliably, my grandmother will never be able to do it.
Forward a couple of days where I had a chat with one of the Bitcoin.com developers. He told me they worked on offline payments in the past, but it just had too many weaknesses, e.g. a merchant not broadcasting a tx or needing to cache and rebroadcast txs. All not really feasible on a smart card, and hard to develop reliably on a phone.
I was pretty bummed about it and thought how that could be changed. Then I recalled the gist of what Mark Lundeberg wrote a while back, which outlined how we can make signatures that are valid for any inputs. It would suffer from a replay attack, though. That means, once you pay a merchant once, he could just re-redeem the coins over and over again.
Then I found the solution! Just using a nonce that you increment each transaction, similar to the way Ethereum already does it.
What are some practical applications of your early experiments here?
Well, the biggest one would be connecting it with a stablecoin. Then it would literally be a much better version of credit cards. The goal is getting it into the hands of people who can barely afford a phone/internet connection. Being able to be your own bank for just $2 once scaled would bring so many people economic freedom. However, the main short-term goal is building a reliable PoS system for NFC phones.
Bitcoin Cash developers seem thrilled by your demonstration. Why?
Oh, there are many reasons for that. The first is everyone is already used to cards. One of the big hurdles for crypto is its newness; ie paying and managing funds with your phone, etc. If it‘s literally the same, only cheaper, then, of course, people will switch. And crypto people know that.
The other reason is that the card is more reliable. It doesn‘t run out of battery, and people are used to that for credit cards. Also, decades of engineering have made them robust and tamper-proof with a PIN, they‘d be more secure than phone or paper wallets.
Why choose Bitcoin Cash? Is there anything particular about it that lends itself to your idea?
BTC is too expensive, Ripple is weird, Ethereum is amazing, but doesn‘t scale well, and can‘t be used for small cash payments. Going down the list of coinmarketcap, one quickly realizes there aren‘t any coins that have the properties required for cash.
Also, Bitcoin Cash has cash as its focus, while still adding some smart contract stuff. This is the perfect combination for be.cash (pronounced be-dot-cash), which needs cheap transactions and just a bit of smart contract magic.
CONTINUE THE SPICE and check out our piping hot VIDEOS. Our podcast, The CoinSpice Podcast, has amazing guests. Follow CoinSpice on Twitter. Join our Telegram feed to make sure you never miss a post. Drop some BCH at the merch shop — we’ve got some spicy shirts for men and women. Don’t forget to help spread the word about CoinSpice on social media.
DYOR: CoinSpice is your home for just spicy crypto things. We’re not affiliated with any cryptocurrency project or token. Each published piece is intended for information purposes only, not investment advice and not in the hope of impacting speculative markets. There are plenty of trading sites and coin-specific advocacy journals out there, we’re neither. CoinSpice strives for rigorous accuracy in our reporting. Information presented here is contingent usually on a host of factors, and the ecosystem moves fast — prices change, projects change, and at warp speed. Do your own research.
DISCLOSURE: The author holds cryptocurrency as part of his financial portfolio, including BCH.