Commands
Table 9-2 summarizes the commands that are used for security with servers and set-top boxes:
Daemons
Table 9-3 summarizes the daemons that run on a server:
countersigner | `unblinds' a certificate for a client |
logind | provide a certificate to a client |
signer | sends a blinded certificate to a client |
Abstract Data Types
The following abstract data types (adts) are defined in the Keyring module: SigAlg
The SigAlg adt contains a single string that specifies the algorithm used for digital signatures. The allowable values are MD5 and SHA, which specify which one-way hash function is used to produce a digital signature, or message digest. In general, a one-way hash function converts an arbitrary length message to a unique fixed-length message digest. MD5 produces a 128-bit; SHA produces a 160-bit hash. PK and SK
The PK adt contains the data necessary to construct a public key; the SK adt contains the data necessary to construct a secret key. Both keys are built from the combination of a specified signature algorithm and a string representing the name of owner of the key. Certificate
The Certificate adt contains a digital signature with the certification of the trusted authority (CA), the hash algorithm that is used, the name of the signer and a message expiration date. DigestState
The DigestState adt contains the state of partially completed hash functions during processing. Authinfo
The Authinfo adt contains an individual user's private and public key, the signer's certificate and the signer's public key, and the Diffie-Hellman parameters. Authinfo is normally created during login or registration (See login, getauthinfo - get an Authinfo adt from a certificate authority and register - command to register set-top-box identity with signer).
IPint
The IPint adt provides certain cryptographic functions so that various popular public key algorithms can be implemented directly in Limbo. The current implementation limits the maximum integer to 23192-1.