Author

Topic: I have tested Greenaddress with BTChip. Here what to expect (Read 2679 times)

hero member
Activity: 714
Merit: 500
Martijn Meijering
Yay, I've managed to use an HW-1 to log in to my GreenAddress wallet! Is there an overview of the algorithms / protocols used in this mode so we can judge how secure it is? I'm too lazy right now to look it up in the code...
full member
Activity: 192
Merit: 100
We support either entropy as per secure RNG in chrome or in the device, there's no user option to provide it yet but pull requests on github are really welcome!
hero member
Activity: 623
Merit: 500
CTO, Ledger
Is it still possible to mix in some entropy of your own?

no, that was removed as it was not done properly and not that useful. Either you trust the RNG and it can generate the seed, or you don't trust the RNG and you can push it yourself (not supported by GreenAddress yet, I think)
hero member
Activity: 714
Merit: 500
Martijn Meijering
Is it still possible to mix in some entropy of your own?
full member
Activity: 192
Merit: 100
Quote
They told me that soon the chip will be able to generate a new seed so that no computer in the world will ever see it.

It can already do it: in the Chrome app, on the side of the mnemonic passphrase generated randomly there's a button to create the seed directly inside the device.
Once the seed is created the app will ask you to unplug the device and plug it in a separate computer to write down the seed automagically as a HID USB keyboard.

In this way, the seed is never seen by the computer running the greenaddress app. Note however that this mode outputs the seed directly and not the mnemonic.
full member
Activity: 162
Merit: 100
It is still possible to have the chip confirm every transaction using its own internal keyboard second factor (that'll require the unplug / replug dance)


Is it possible to test it? Is there documentation in some place?


Future firmwares will improve the login & transaction signing speed significantly, and yes, we're considering a dual NFC+USB solution, with the same feature set.

definitely it will be important. I'm looking forward to see it.

Have fun and enjoy more secure bitcoin transactions (even in the woods)
Woods are wherever you don't expect...  Grin
hero member
Activity: 623
Merit: 500
CTO, Ledger
Thanks to our great hosts in Prague for the party Smiley and to you for the review.

Also note that BTChip uses a special mode when working with GreenAddress : the chip own second factor is disabled to create a smoother user experience, because we assume that the user set up GreenAddress second factor in a secure way (i.e. GreenAddress second factor is sent to an external device, such as a dumb-phone that won't be used to connect BTChip either, not an e-mail account viewed on the same computer) - so it "just" makes it less likely for you to get your part of the seed stolen by malware and abused when the chip is not connected, and that's about it.

It is still possible to have the chip confirm every transaction using its own internal keyboard second factor (that'll require the unplug / replug dance)

Future firmwares will improve the login & transaction signing speed significantly, and yes, we're considering a dual NFC+USB solution, with the same feature set.

Have fun and enjoy more secure bitcoin transactions (even in the woods)



full member
Activity: 162
Merit: 100
DISCLAIMER: I was at the Trezor party in Prague with the cofounders of Greenaddress and BTCHIP and we had a loooot of fun.

That said, I haven't any share or interest in any of the company here reviewed.
I have received the chip to test it and I have been kindly asked by /u/BitFast if I could write an honest review. No payments whatsoever or favor I will receive except the chip used for the test.
This is not a professional review and I could make some mistake in what I'm going to write especially describing the two companies.
I beg your pardon in advance for the errors they (or you) will find but at least they will prove that I write this little review in an independent way and of course you are invited to correct me.
Slush is present in the picture and we were in Trezor party i Prague. I love my new Trezor and Slush and Sticks have been wonderful hosts but this post doesn't cover the Trezor nor is Satoshi labs involved in this particular project.
The beauty of this industry is that is enough young to allow still a good relationship among competitors.

TL;DR: Greenaddress with BTChip has made my bitcoin life a bit safer. This solution even though it cannot give you absolute security represents a huge step in the way we manage our bitcoins.

For those who don't know the two companies involved in this partnership:
  • Greenaddress is a bitcoin wallet which, using multisig technology, can give your counterpart of a payment a good degree of reliability from the first moment of a transaction that you (as the payer) will not double spend the output involved.
    Thank to this for example one seller can let go the buyer of a watch out of the shop without waiting for the first confirmation (if he trust Greenaddres and their procedures of course).
  • BTChip is a company which has succeeded in putting in a microchip similar to the one you can find on the credit cards a bunch of bitcoin technologies like the ability of managing an HD wallet and to sign multisig transactions.

Well these two companies instead of developing the part they lack to improve their user's life have decided to put together their work and to offer a system integration which allow Greenaddress' users a safer way to store their keys. Instead storing them on a pc or on a mobile phone, starting from today they can store them on a chip with abanking industry security grade.

The card with the chip can be purchased  here.
Greenaddress wallet can be accessed here

They gave me in Prague one of the first chip to test and I have done it on my Mac. For this reason I have not tested the order and shipping part.

When I came home from Prague I immediatly tested the chip. I already have a Greenaddress wallet so I could immediately put it at work transferring my seed on the chip.
If you haven't got a greenaddress wallet (you haven't yet subscribed) you have to sign up and go through the onboarding process before proceeding.
They told me that soon the chip will be able to generate a new seed so that no computer in the world will ever see it.

Setup
The first thing to do is to pull out the usb chip from the card so it can be used in an usb port. Personally I have put the detached chip in my physical keyring for convenience.
Then I logged in my Greenaddress account with my chrome app and I have gone to "settings". I have to admit that I new what I had to do because they told me but there is not enough documentation yet AFAIK.

So here are some informations for you:
Once you are logged in go to "Settings" and plug in the chip. Look for "write on an Hardware wallet" button and press it.


If you haven't yet connected your chip a message will pop up telling you to do this.


A window will pop up asking for a pin. This is not the Greenaddress PIN but the chip PIN which will protect the chip from being used by others. Once you enter the pin the process of construction of the hierarchical deterministic wallet starts and in few seconds it should complete.

It happened to me that the process stopped at 0% progress but canceling the process and retrying a few times finally It completed smoothly.
I don't know the cause of the error but could be the wrong positioning of the chip in the USB port. If it happen to you try to start over the process disconnecting and reconnecting the chip again.

Normal use
Once the wallet was transferred everything worked well and I coud read the balance, the transactions and I could easily make one trnsacton sending some millibits like usual.

All you have to do is start Greenaddress chrom app, insert the chip and the login screen will change (sorry for the language. I don't know how to change it):


All you have to do is to press the newly appeared button "BTChip login", to enter the chip PIN and you will be using the chip.

Don't forget to erase the key from your pc but before that make yourself sure you have the mnemonic stored in some form (handwritten or in QR code).

One only note: the chip on the card is not very fast and the signing process requires 4 secs for each output signed so my transaction took 8 seconds (probably two output).
This could be a problem if you pay with your mobile and you are paying the tickets for a movie but for normal payments the increased security worth waiting a bit.

My personal opinion on this partnership is that this represent a giant step for me in managing bitcoin payments.
  
I'm perfectly aware of the main limit of this solution: the lack of a screen securely connected to the chip which can assure me about what I am signing. But when I look at what it is available today I'm pretty happy about this new partnership.
You have also to consider that Greenaddress is protected by default by a second factor authentication (sms, Google authenticator, email or phone call) that can help you to verify the transaction before signing it.

I know that there are very powerful threat out there for your bitcoins but at least hackers have to work bloody harder than with the most wide spread solutions available today.

An other limit of this solution is the lack of NFC support. USB interfaces are ubiquitous but not practical on a smartphone (I haven't tried yet but I have ordered my USB microusb adapter). In Prague Nicholas told me that NFC support was in the plans and in these days an NFC capable card has been announced by an other company (http://www.helioscard.com/) even if they don't ship yet.

So when a NFC capable screen provided card will be available that will be my perfect solution but in the meantime I absolutely will use the Greenaddres-Btchip for my online purchases.

EDIT: Added two screenshot to show how to use it. Thank you gmaxwell for moving the post to a more proper section.
UPDATE:




Jump to: