One of the first questions people ask about is security tokens is
how are they different than a USB flash drive? |
A security token is used to store cryptographic keys and certificates. It contains a processor, storage space, and a special-purpose operating system. The most important capability is that it can store a cryptographic key that cannot be copied off of the token by any easy means. The authentication methods used involve the user proving he has access to the secret key and not the transmission of the actual key.
The cryptographic method used is "public-key" cryptography. Plenty of reference material exists elsewhere, but here's a very brief overview. A user generates a pair of mathematically-related numbers. One of these numbers is kept secret (the "private" key) and the other is published (the "public" key). A person who has one of the keys can prove he has that key to a person with the other key without disclosing the key. (Note: the person with the public key must also have some assurance that the key belongs to the party he wants to authenticate. That's what certificates are all about.)
You can also think of the token as a sealed computer system. In general, we usually say that a person with physical access to a computer can access anything on it. A token seals the whole system in a tamper-resistant package you can only access through its serial port.
A party that wants to authenticate someone who has a security token can be reasonably sure that:
The relying party doesn't necessarily know:
The user of the token doesn't necessarily know: