<div dir="ltr">That's why tamper resistance is such a critical assumption -- otherwise you can't use a short PIN. If you know the hardware is tamper-resistant, then you can trust that the attacker will never obtain a copy of the ciphertext, so you don't have to worry about offline brute-force attacks *even for a 6-digit PIN*. Instead you can trust that the retry lockout asserted by the tamper-resistant hardware will prevent more than three incorrect tries, which is not impossible to do but a reasonable tradeoff given the significant usability of needing to remember only a short PIN. (I believe the math is (999999÷1000000)×(999998÷999999)×(999997÷999998) = 99.9997% chance of getting locked out rather than correctly guessing 6 numeric digits, given a maximum of three attempts.)<div><br></div><div>> <span style="color:rgb(33,33,33)">I was however </span><span style="color:rgb(33,33,33)">assuming you are using a proper</span></div><div><span style="color:rgb(33,33,33)">> good passphrase for your GnuK.</span></div><div><span style="color:rgb(33,33,33)"><br></span></div><div><span style="color:rgb(33,33,33)">If you still need a good passphrase, then there is no usability benefit over pure desktop GnuPG -- in either case the experience is "start GPG operation, enter long passphrase into pinentry dialog on desktop, complete GPG operation."</span></div><div><span style="color:rgb(33,33,33)"><br></span></div><div><span style="color:rgb(33,33,33)">There is a small bit of additional security from the fact that the private key lives in a physical home that you can take with you or lock in a lockbox. But if the threat model includes exfiltration of the encrypted private key from that physical home, then that additional security is largely imaginary; moreover, you don't need GnuK to make it possible to lock a copy of your GPG key in a box.</span></div></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Jan 11, 2018 at 10:59 AM Peter Lebbing <<a href="mailto:peter@digitalbrains.com">peter@digitalbrains.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 11/01/18 19:38, Mike Tsao wrote:<br>
> They are inexpensive and they replace a<br>
> strong stretched passphrase with a short unstretched PIN that's easy to<br>
> memorize and enter.<br>
<br>
Well, if you're not worried about brute-force attacks on extracted<br>
encrypted keys, sure, you can use a short unstretched PIN. I was however<br>
assuming you are using a proper good passphrase for your GnuK. I haven't<br>
looked at the key derivation function of GnuK, but I know that this area<br>
is under construction to be improved by letting the host PC do (part<br>
of?) the KDF. So even if right now the KDF isn't as good as you want,<br>
this is already being worked on.<br>
<br>
With a good KDF, there is no problem with brute-forcing, known plaintext<br>
or no.<br>
<br>
> * Valuable asset...<br>
> * That is encrypted by a brute-forceable PIN...<br>
<br>
As you say, this is unsolvable, might as well not encrypt it at all. It<br>
is not the assumed usage of GnuK, it is assumed you use a good<br>
passphrase rather than a PIN if you're worried about data extraction.<br>
Luckily, nobody is forcing you to use a PIN :-).<br>
<br>
With a 6-digit PIN, the time needed to crack is inherently only 500,000<br>
times slower than that of regular use, *irrespective* *of* *stretching*.<br>
Even if you were to accept a totally painful delay of 10 seconds on<br>
passphrase entry, that /same/ computer could necessarily crack it after<br>
on average just two months of computation. A dedicated cracking rig<br>
would be much quicker even, so these numbers are unrealistically benign.<br>
<br>
HTH,<br>
<br>
Peter.<br>
<br>
--<br>
I use the GNU Privacy Guard (GnuPG) in combination with Enigmail.<br>
You can send me encrypted mail if you want some privacy.<br>
My key is available at <<a href="http://digitalbrains.com/2012/openpgp-key-peter" rel="noreferrer" target="_blank">http://digitalbrains.com/2012/openpgp-key-peter</a>><br>
<br>
</blockquote></div>