Table of Contents
Introduction Definitions and context . . . . Issuer . . . . Applicant . . . . Identification token . . . . Reduced cost of highly secure electronic transactions . . . . Call centers . . . . Broad distribution of low cost software and electronic devices Preparation steps by the issuer . . . . The issuer gets a private/public key pair for a public key cryptosystem. . . . . The issuer prepares an applicant registration software. . . . . The issuer releases the applicant registration software. Preparation steps by the applicant . . . . The applicant obtains the applicant registration software. . . . . The applicant obtains a blank identification token. Computerized portion of the SAKEM procedure . . . . The applicant starts the registration software. . . . . . . . . Access to issuer's configuration parameters . . . . . . . . Legal notices and contract formation . . . . . . . . Variants of the PEKE cryptosystem protocol . . . . . . . . Private random source design . . . . The applicant chooses and types a pass query and a pass reply. . . . . . . . . The pass query might be omitted . . . . . . . . The pass phrases may be computer-generated . . . . The secret key is loaded in the identification token. . . . . The registration programs sends a registration request message to the issuer data processing center. . . . . . . . . Cryptographic protection applied to the registration request . . . . . . . . Contens of the registration request . . . . . . . . Data transmission to the issuer's data processing center . . . . The issuer data processing center receives the request, processes it and files the application request in the issuer database. . . . . . . . . Responsiveness in processing registration requests . . . . . . . . Computer system architecture Conversational portion of the SAKEM procedure . . . . A voice contact is established between applicant and issuer agent. . . . . The applicant and the issuer agent mutually verify the knowledge of pass query/reply by the other person in the conversation. . . . . The issuer agent verifies the identity of the applicant. . . . . The issuer agent flags the registration as being validated in the issuer database.
Outline / Operational / Security / Cryptography / Programming
"SAKEM" stands for "Secret Authentication Key Establishment Method." It is useful for the issuance of electronic identification devices. The general function of a registration procedure such as SAKEM is to make a given client known by the service organization in such a way that the subsequent routine processing of transactions is automated and efficient. The SAKEM procedure can be used in a myriad of different application areas, and this document focuses on project strategy options and flexibility of the procedure.
Outline / Operational / Security / Cryptography / Programming
Outline / Operational / Security / Cryptography / Programming
Outline / Operational / Security / Cryptography / Programming
Outline / Operational / Security / Cryptography / Programming
Outline / Operational / Security / Cryptography / Programming
Outline / Operational / Security / Cryptography / Programming
Outline / Operational / Security / Cryptography / Programming
This preparation step is governed by the choice made for the cryptographic aspects of the SAKEM procedure implementation. The SAKEM procedure does not require a "Certification Authority" (CA) for the issuance of a security certificate for this private/public key pair.
Outline / Operational / Security / Cryptography / Programming
The applicant registration software must be able to load a secret key into the identification token used in a particular application of the SAKEM procedure. This executable program may be embedded in an electronic apparatus like a POS terminal instead of being run by a general purpose computer.
The applicant registration software may be 1) a custom software development for a single issuer, or 2) a software development for a specific type of identification token. In either case, the issuer must prepare a set of issuer-specific configuration parameters such as the public component of the issuer's private/public key pair. This set of parameters may include any identification data for the issuer, like the electronic mail address where the secret key registration should be sent. With the custom software development (alternative 1), the set of configuration parameters is embedded in the software in any way that fits. With the token-type specific software (alternative 2), the set of configuration parameters is stored in a configuration file.
In planning the software development strategy, one must account for the threat of computer viruses or bogus software. This is an area where the science of cryptology doesn't provide quantifyable solutions, so ad hoc security software solutions always remain (sometimes tacitly embedded in de facto standards adopted by the industry). Ultimately, the idea is to increase the difficulty of reverse-engineering executable code. Here are the alternative courses of action:
As a summary comment, the alternatives 3 or 2 are handy custom solutions, while alternatives 4b) or 4c) are more oriented towards out-sourcing to established security companies.
Outline / Operational / Security / Cryptography / Programming
Any distribution channel can be used, including for instance the download of software from an Internet site by the applicant.
Outline / Operational / Security / Cryptography / Programming
Any distribution channel can be used, including for instance the download of software from an Internet site by the applicant.
Since there is no particular security issue at software installation time, it is simple to have the software available for self-service use at kiosks installed in shopping malls.
Outline / Operational / Security / Cryptography / Programming
It is not before the applicant decides to go through the SAKEM procedure that an identification token is loaded with a useful secret key. According to this principle, there are many options as to how the applicant gets an identification token.
When it is commercially attractive, it is possible to send unsolicited identification tokens to potential applicants. The legal notices about the rights and liabilities associated with the identification token may be displayed to the applicant when he decides to go through the SAKEM procedure.
Alternatively, the SAKEM procedure can update an identification token already in possession of the applicant. This can occur besause a new service is requested by the applicant, maybe from a new issuer. Also, following a suspected security breach, or on a periodical basis, it may be desirable to renew the secret key used by an issuer for this applicant.
Outline / Operational / Security / Cryptography / Programming
When the applicant starts the registration software, it is the last chance for the set of issuer's configuration parameters to come to the applicant. If this set of parameters was not bundled with the registration software, it may be received through an on-line connection with a server.
The applicant registration software execution offers an opportunity for bringing legal notices to the attention of the applicant and/or requesting agreement to be bound by the terms of a contract. For contract formation formalities, the completion of the SAKEM procedure where the applicant manipulates an identification token according to instructions displayed on a computer screen may be a clear manifestation of intent.
According to the original PEKE cryptosystem specifications, the registration software should receive an "initiator message" from the issuer. Actually, the contents of this message may come from diverse sources. It is only when very powerful attackers are suspected that the PEKE specification should be followed exactly. Here are the options:
A very different system design issue for the registration software operation is the private random source essential to the secret key generatation. There is no easy solution for a reliable private random source on a general-purpose computer: these machines are built to produce deterministic and reproducible results. The challenge arises from the lack of a source of unpredictable bits of sufficient bandwidth, considering the fact that a hacker may try millions of possible outcomes in a very short period of time. In cryptographic applications, any design oversight in this area can lead to significant security weaknesses, as was unforgivingly experienced in the case of an early implementation of Netscape's SSL.
Outline / Operational / Security / Cryptography / Programming
The pass query is meant to later reassure the applicant that the person he is speaking with is an authorized issuer agent. If there is little room for doubt, the pass query may be omitted from the SAKEM procedure (e.g. if the applicant visits a branch of the issuer for the conversational portion of the SAKEM procedure).
The pass query, if any, and the pass reply may be chosen by the registration program instead of the applicant. This would reduce the amount of keyboard usage for the applicant, but may lead to meaningless pass phrases that are harder to remember. It is common to see computer generated passwords made of a few unrelated english language words concatenated with ponctuation marks (a compressed english words listing is needed in the generating program). Obviously, randomness and secrecy should surround the computer generation of pass phrases.
Outline / Operational / Security / Cryptography / Programming
The key loading operation is where the long-term security of the identification token is obtained. An application designer should consider the security model appropriate to the application. By itself, the secret key of an identification token is a single factor of security. Other factors may be put in the chain of prerequisites for the routine usage of the secret key:
Various information security techniques are implied by these alternatives. Once a decision is made on the combination suitable for an application, the registration program should be adapted accordingly. For instance, if a token PIN is needed for to load the secret key, the registration program may either accept the PIN from the applicant or instruct him to type the PIN on an attached smartcard reader.
Outline / Operational / Security / Cryptography / Programming
The term "hybrid" is applied to the frequent dual use of 1) a public key cryptosystem, and 2) conventional cryptographic algorithms for encryption and MAC'ing (Message Authentication Code). The foremost conventional algorithms are respectively DES (or triple-DES) for encryption, and the CBC-MAC construct for MAC'ing (this construct using DES as the base algorithm). The SAKEM procedure is an hybrid cryptographic application.
About the public key cryptosystem side of the story, many details are dependent on the PEKE public key cryptosystem. Adjustments would be needed if the actual public key cryptosystem used was changed to one of the PEKE alternatives.
About the conventional cryptographic algorithms, it is reasonable to use the foremost solutions indicated above. Nonetheless, there may be situations where other encryption and MAC'ing algorithms are preferred.
The message containing the registration request includes the encrypted pass reply that is critical to the bound between the applicant and the generated secret key. It may also contain other encrypted registration data. There is room for enhancements to the basic SAKEM procedure because this data is cryptographically bound to the verification of applicant's identity. For instance, a secret PIN (Personal Identification Number) may be selected by the user at this time. Also, if the registration program can read a serial number in the token where a secret key is loaded, this may further the security of the whole identification scheme.
Any data transmission means may be used to send the (encrypted) registration request to the issuer's data processing center. The SAKEM procedure is designed so that a voice connection and a data connection are not required simultanously.
Outline / Operational / Security / Cryptography / Programming
For faster responses in the processing of registration requests, the receipt of each request should automatically trigger the decryption and filing of the registration request, but at the same time security shouldn't be compromised. For instance, the automatic decryption may be defered while the computer room surveillance is not in effect.
It is usually thought that the computer systems best suited to networking with outside applicants and to public key cryptography processing are high end servers like PC, workstations, or departmental systems. The issuer secure database is often on central computers. If these two generalizations apply in a given case, the registration request processing would be done on a server and the database would be on a central computer. A cryptographically protected upload mechanism would thus be needed.
Outline / Operational / Security / Cryptography / Programming
Once filed in the issuer's database, workflow automation may be applied to registration requests. The task of verifying the applicant's identity may be undertaken:
Outline / Operational / Security / Cryptography / Programming
The main design option is the omitting of the pass query, which may be justified if the applicant has to visit a branch of the issuer to go through the conversational portion of the SAKEM procedure.
Outline / Operational / Security / Cryptography / Programming
How does the issuer get personal identification data that is relevant for this verification of identity? Here are three possibilities:
Outline / Operational / Security / Cryptography / Programming
It is possible to supplement the SAKEM procedure with a paper-based follow-up procedure, or to limit the value of electronic transactions for an initial trial period (e.g. until the first periodic bill has been paid or the first monthly statement has been received).
Outline / Operational / Security / Cryptography / Programming
[ CONNOTECH home page: http://www.connotech.com/ | SAKEM web page: http://www.connotech.com/sakem.htm | about us | web editorial policy | e-mail to: info@connotech.com ]
CONNOTECH Experts-conseils Inc.
9130 Place de Montgolfier
Montréal, Québec, Canada, H2M 2A1
Tél.: +1-514-385-5691
Fax: +1-514-385-5900