On 03/12/2010 10:12 PM, Anders Rundgren wrote:
> Why is replacing the 15 year old Netscape hack suddenly a bad idea?
>
> Because you cannot create a secure provisioning system without having
> some kind of [by the issuer recognizably] predefined key in the token.
> With such a key, the token would be able to attest generated keys,
> import data
> using MACs, and encrypt data as needed in both directions.
>
> In addition, you need "bookkeeping" support inside of the token so
> that the
> token can provide the issuer with evidence that the process indeed
> succeeded
> enrolling n keys etc etc.
>
> Without such support in tokens, all bets are off regarding where keys
> are actually stored, making the value of having tokens suddenly drop
> to zero, at least from the issuer's perspective.
I agree with the above. The problem is that there is no standard for
remote card provisioning, There are primitives that are standards (the
Secure Channel Spec, for instance), but each card "type" has its own way
of dealing with them (and many card "type" don't support remote
provisioning at all). To date, even the Cryptoki group has washed its
hands on provisioning and initialization of cards.

That being said, there is at least one open source system that has
attempted to solve the problem for exactly one card type (based on it's
own APDU's: That system is part of dogtag
(http://pki.fedoraproject.org/wiki/PKI_Main_Page). It looks like the
documentation for that part of the system isn't on the wiki, but there
is some documentation on the client portion here
http://www.redhat.com/docs/manuals/cert-system/8.0/esc/html/index.html

A general browser solution would require a lot more thought. The Dogtag
client solution is to trust the provisioning server (which the dogtag
client reads from the token itself). The client basically works as a
conduit to pipe apdu's from the backend server directly into the card.
If the server is malicious, this could be an issue for the card. Dogtag
protects itself by only getting the URL directly from the user or the
Card (getting it from a keygen tag, for instance, would be an issue).
This system means that the dogtag back end could be made to work with
different tokens with only minimal changes to the Client (basically the
client needs to be able to identify cards it can manage, and read the
URL for that cards out of it).

Getting the URL from the card also solves the problem of multiple cards
of the same "type" but from different vendors managing them with
different key sets.

Anyway, I would certainly be happy to look at proposals that would
advance the state of technology here. I've seen some scary things router
vendors are doing which make getting workable client auth solutions all
the more desirable.
>
> Since the progress in the token industry is mainly driven by the slowest
> movers you can find on this planet, i.e. banks and governments, we can
> safely conclude that on-line provisioning of keys will remain a marginal
> activity in spite of all the hype around "Cloud Computing".
Add the hand held devices, which often implement relatively old versions
of standards (like SSL and HTML), and have no standard ports for
supporting smart cards (and vendors who lock down those devices so third
parties can't fixe these issues) and the outlook looks pretty bleak
indeed.... but 2010 will be the year of the Smart Card;).

bob
>
> -anders
>


-- 
dev-tech-crypto mailing list
dev-tech-crypto@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-tech-crypto

Reply via email to