<p>Take the card home and use to access work data? Are you going to issue readers as well? Without a pin or something entered by the user there&#39;s no stopping a cloned or loaned card.</p>
<div class="gmail_quote">On Oct 6, 2011 9:46 PM, &quot;Michael B. Trausch&quot; &lt;<a href="mailto:mike@trausch.us">mike@trausch.us</a>&gt; wrote:<br type="attribution">&gt; On Thu, Oct 06, 2011 at 06:52:43PM -0400, Michael H. Warfield wrote:<br>
&gt;&gt; On Thu, 2011-10-06 at 16:11 -0400, Michael Trausch wrote: <br>&gt;&gt; &gt; Just to clarify, I am not specifically looking for an OpenPGP smartcard...<br>&gt;&gt; &gt; anything that&#39;ll do for auth is fine.<br>
&gt;&gt;<br>&gt;&gt; Hmmm...<br>&gt;&gt;<br>&gt;&gt; I haven&#39;t quite done what you are looking to do but you might check<br>&gt;&gt; into the Aladdin eToken cards / tokens.  They have Windows software<br>&gt;&gt; which I believe MIGHT do what you want to do but you&#39;d have to buy<br>
&gt;&gt; that separately.  You&#39;ll need their pkcs11 driver to make the token<br>&gt;&gt; work with NSS, ssh, pgp/gpg, and pam but it can be done.  I&#39;ve used<br>&gt;&gt; these with ssh (ssh-agent on Fedora has NSS integration and NSS<br>
&gt;&gt; handles the pkcs11 side of the house when used with ssh-agent).<br>&gt;&gt; I&#39;ve seen some code which, I think, logs you in when you insert a<br>&gt;&gt; smart card and locks your screen when you pull it out but have had<br>
&gt;&gt; no experience with it.  The pam_usb module does something similar<br>&gt;&gt; but just uses a plain ole usb memory card on which some sort of key<br>&gt;&gt; is simply stored for that.<br>&gt; <br>&gt; I would like something whre you can essentially lock the system, yes.<br>
&gt; Well, actually, here is what I would _like_ to do, though I don&#39;t<br>&gt; seriously know if this would be an attainable setup:<br>&gt; <br>&gt;   * Be able to have my own CA (trusted roots aren&#39;t relevant here, I&#39;d<br>
&gt;     be installing the root CA onto the systems I am managing).<br>&gt; <br>&gt;   * Be able to use that CA to initialize a smart card, such that the<br>&gt;     smart card would be given to a person to use as their identity<br>
&gt;     card for network operations.<br>&gt; <br>&gt;   * Be able to map a smart card&#39;s public key to a user, which is of<br>&gt;     course a prerequisite for everything else.  In all probability<br>&gt;     this can easily be solved by using the CN field to indicate the<br>
&gt;     user&#39;s name and domain in email format.<br>&gt; <br>&gt;   * Be able to use the card for networked workstation logins for<br>&gt;     specially configured computers on the business network.<br>&gt; <br>&gt;   * Be able to use the card to gain access to mountable filesystems in<br>
&gt;     a secure manner for computers e.g., at home or other locations.<br>&gt;     Of course, when the card is removed the access to the filesystem<br>&gt;     should be revoked, it should become<br>&gt;     unmounted/disconnected/whatever.<br>
&gt; <br>&gt;   * It should be possible to use that smart card with e.g., Firefox so<br>&gt;     that that identity card can go home with them, and they can gain<br>&gt;     access without a username and password to the company site(s).<br>
&gt; <br>&gt;   * It should be possible to use that card to sign/encrypt mails<br>&gt;     &quot;internally&quot; (being a self-signed CA means that it wouldn&#39;t<br>&gt;     [rather, shouldn&#39;t] be used on the Internet, but interally the<br>
&gt;     cert can be validated); of course, we&#39;re talking about S/MIME<br>&gt;     here, because that&#39;s the only thing that works out of the box for<br>&gt;     all standard MUAs that I&#39;m aware of (sorry, even though I am using<br>
&gt;     one right now, I don&#39;t consider terminal MUA to be standard<br>&gt;     anymore...)<br>&gt; <br>&gt;   * It should be possible to do this regardless of the operating<br>&gt;     system on the client system.  The card should be usable on<br>
&gt;     Windows, on OS X, and on Linux systems with a minimum of setup.<br>&gt; <br>&gt;   * I don&#39;t want to know the private key.  I don&#39;t want them to know<br>&gt;     the private key.  I want to be able to provision a new card and<br>
&gt;     associate it with their user account with relative ease (and<br>&gt;     honestly, just signing their key with the CA would be sufficient<br>&gt;     for that, as long as they correctly format their user@domain.tld<br>
&gt;     when they create the CSR).<br>&gt; <br>&gt;   * Also, I&#39;d like it to be possible to have something better than a 4<br>&gt;     digit PIN on the stupid thing.  I realize that many of the cards<br>&gt;     out there will burn themselves out (much like a SIM card does)<br>
&gt;     after a certain number of failed attempts, but that doesn&#39;t really<br>&gt;     mean much when people&#39;s 4-digit codes tend to be really<br>&gt;     predictable if you know the person for any length of time.  Four<br>
&gt;     digit PIN numbers are evil.  EVIL.<br>&gt; <br>&gt; Am I asking too much, do you think?<br>&gt; <br>&gt;&gt; All that said...  There are 2 types of Aladdin eToken cards.<br>&gt;&gt;<br>&gt;&gt; There are the 72K (yes, I said &quot;K&quot; - you don&#39;t need much space for<br>
&gt;&gt; keys) Java tokens (smart cards in a USB format).  These use their<br>&gt;&gt; Java cardlet to actually implement the crypto stuff in Java.  They<br>&gt;&gt; reserve some of the space for updates to the Java cardlet so you<br>
&gt;&gt; really only have about 64K available on the card for keys (which can<br>&gt;&gt; store a couple dozen private keys - you don&#39;t store public keys or<br>&gt;&gt; whole certs on them).  Those will run you in the $30-$40 range from<br>
&gt;&gt; CDW (<a href="http://cdw.com">cdw.com</a>).  I&#39;ve got a couple of those and don&#39;t really care for<br>&gt;&gt; them.  People claim the Aladin middleware (which uses a proprietary<br>&gt;&gt; protocol to talk to the cardlet) is buggy and klunky.<br>
&gt; <br>&gt; Java.  On a card.  Sheesh.<br>&gt; <br>&gt; I must be missing something, though.  How can you do authentication if<br>&gt; there aren&#39;t any certificates involved, unless you are keeping a<br>&gt; database with every single public key.  I&#39;d like to just sign a<br>
&gt; certificate and they can present that client certificate (or use it in<br>&gt; any other valid way, for that matter).<br>&gt; <br>&gt;&gt; There are also 32K and 64K CardOS cards which are slightly more<br>&gt;&gt; expensive (about $45 each for the 64K units I just bought a month<br>
&gt;&gt; ago or so).  They still require an Aladdin pkcs11 driver but you can<br>&gt;&gt; locate that on the net for download.  I&#39;ve used the 32K tokens in<br>&gt;&gt; the past with ssh.  Just starting to play with my new 64K ones now.<br>
&gt;&gt; Last ALE meeting on ssh, I had a keyring full of these things.  They<br>&gt;&gt; can be formatted for use directly with OpenCT but the format is not<br>&gt;&gt; compatible with the Aladdin format, which you would need for any<br>
&gt;&gt; Windows Software.  There are guides on the net on setting them up<br>&gt;&gt; and getting them working with Linux.<br>&gt; <br>&gt; So... cross-platform compatibility is a pipe dream?  In order to make<br>&gt; it possible to use truly smart cards that never leak the private key,<br>
&gt; I&#39;d have to give 1 user multiple keys so that they could use the right<br>&gt; type based on whatever operating system they&#39;re using?<br>&gt; <br>&gt; Perhaps I am seeing why these things aren&#39;t ubiquitous....<br>
&gt; <br>&gt;&gt; I&#39;ve also heard that they CAN BE formatted for OpenPGP but I&#39;ve<br>&gt;&gt; never done it and don&#39;t know anyone who has, but you say that&#39;s not<br>&gt;&gt; important to you.<br>&gt; <br>&gt; It&#39;s not.  I use OpenPGP when I think to set it up.  I used to sign<br>
&gt; all my mail... I don&#39;t anymore, because nobody cares.  I used to<br>&gt; encrypt mails that I sent out, but I often got the complaint that it<br>&gt; was unreadable because keychains were lost or somesuch.  And besides,<br>
&gt; if I didn&#39;t sign it, one really cannot legally prove that I said it,<br>&gt; at least with the way things sit at the moment (a federal court, if<br>&gt; I&#39;m not mistaken, recently ruled that an IP address alone is not good<br>
&gt; enough to identify a user on the Internet, and so anything left is<br>&gt; circumstantial... well, mostly, but I digress).<br>&gt; <br>&gt; If someone really wants me to put a fill-fledged digital signature on<br>&gt; something, I will.  But honestly, the last thing I used my PGP keys<br>
&gt; for was to sign the last release tarball for AllTray.<br>&gt; <br>&gt; I would personally like something like a smart card that simply has a<br>&gt; built-in reader, so that you can just plug it in.  I don&#39;t want to see<br>
&gt; its filesystem, I don&#39;t want access to the private key, I want it to<br>&gt; expose the same sort of interface that the readers themselves do.<br>&gt; Alas, I haven&#39;t found any of those yet, either.<br>&gt; <br>
&gt; And I still haven&#39;t got a bloody clue on how one would get anywhere<br>&gt; close to started with provisioning the damn things.<br>&gt; <br>&gt; Maybe I&#39;m not smart enough for this one... or maybe I need to invent<br>
&gt; something that Just Works in a cross-platform manner?  Yeah, like I<br>&gt; have time for that...<br>&gt; <br>&gt;       --- Mike<br>&gt; _______________________________________________<br>&gt; Ale mailing list<br>&gt; <a href="mailto:Ale@ale.org">Ale@ale.org</a><br>
&gt; <a href="http://mail.ale.org/mailman/listinfo/ale">http://mail.ale.org/mailman/listinfo/ale</a><br>&gt; See JOBS, ANNOUNCE and SCHOOLS lists at<br>&gt; <a href="http://mail.ale.org/mailman/listinfo">http://mail.ale.org/mailman/listinfo</a><br>
</div>