| This is an HTML working draft that led to an article
publication. A reference to this work should always be done using the
following citation:
(J1) Stefanos Gritzalis, Socrates Katsikas, Dimitrios Lekkas, Konstantinos Moulinos, Eleni Polydorou, "Securing The Electronic Market: The KEYSTONE Public Key Infrastructure Architecture", Computers & Security, Vol.19, No.8 (2000) pp.731-746 This material is presented to ensure timely dissemination of research and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by all the copyright holders. In most cases, these works may not be reposted or distributed without the explicit permission of the copyright holders. |
Computers & Security Vol.19, No.8, pp.731-746, 2000 Copyright © 2000 Elsevier Science Limited Printed in Great Britain. All rights reserved 0167-4048/00$20.00
Stefanos Gritzalis1,2, Sokratis K. Katsikas1, Dimitrios Lekkas1, Konstantinos Moulinos3,4 and Eleni Polydorou4
1University of the Aegean, Department of Information and Communication Systems, Karlovassi GR-832 00, Greece,
{sgritz, ska,dlek}@aegean.gr . 2Technological Education Institute of Athens, Department of Informatics, Ag. Spiridonos St., Aegaleo GR-122 10, Greece.
3Data Protection Commission, 8 Omirou St., Athens GR-105 64, Greece. 4Athens University of Economics & Business, Department of Informatics, 76 Patission St., Athens GR-104 34,
Greece,{kdm, epp}@aueb.gr .
In this paper, the unified, abstract KEYSTONE Public Key Infrastructure is presented.This architecture consists of a reference model, a functional architecture specification, and a set of technologies that can be used for implementing the functional units, along with all relevant standards. It was derived within the course of the KEYSTONE project, which was funded by the European Commission under the Electronic Trust Services II Programme. The proposed PKI architecture guarantees openness, scalability, flexibility, extensibility, integration with existing TTP and information infrastructure, transparency and, above all, security.Thus, it enjoys all the desirable characteristics and fulfils all those criteria that are essential for a PKI to constitute a successful framework for the development of inter-domain and international Trusted Services.
Use of electronic messaging is becoming more widespread as information and communication technology becomes more effective and cheaper and telecommunications become more advanced. However, the increased user interconnectivity, the growth of electronic commerce and the reliance upon electronic communications means that more information is being carried electronically. Sensitive information such as contracts, money transactions and personal details become vulnerable to attacks such as eavesdropping, non-authorized modification and masquerade.
Public Key Infrastructure (usage of public and private keys for data encryption and for digitally signing of messages) can play an integral role in countering these attacks by providing end-to-end security of information in terms of confidentiality, integrity, availability and non-repudiation security services. The strength of these security services depend upon the security of the underlying keys, whether they are used for data encryption or for message signing. In any case, security features require first of all the protection of the confidentiality of the private keys and the integrity of the public keys in the delivery and storage processes.
In a small community, the integrity of the public keys may be ensured by manual delivery of the keys.
However, in an international electronic messaging environment, the manual delivery of keys between users is neither practical nor adequate. Automatic key management by a trusted agent is necessary and this must be performed by a Trusted Third Party (TTP), in order to facilitate the use of public key cryptography and digital signing.
Public Key Infrastructure (PKI) is an essential security component of electronic trusted services. The development of robust and scaleable PKI is an important task, which has been a field of active research for a number of years. Several standards and ad-hoc solutions have been proposed [1]-[15]; however, the work is still far from complete.
The aim of this paper is to present the unified, abstract KEYSTONE Public Key Infrastructure. This architecture consists of a reference model, a functional architecture specification, and a set of technologies that can be used for implementing the functional units, along with all relevant standards. It was derived within the course of the KEYSTONE project, which was funded by the European Commission under the Electronic Trust Services II Programme.The proposed PKI architecture guarantees openness, scalability, flexibility, extensibility, integration with existing TTP and information infrastructure, transparency and, above all, security.
The paper is structured as follows: In section 2, the list of services that a PKI offers are presented.These form the ground upon which the rest of the work is based. In section 3, the KEYSTONE Reference Model is presented. Section 4 describes the functional architecture and the proposed technology profiles that can be used in order to implement the functional units. Section 5 describes the KEYSTONE integrated Public Key Infrastructure Architecture in terms of functional units, accompanied with the relevant candidate technologies, and the relationships between these functional units. Finally, section 6 summarizes our conclusions.
Previous attempts [16] to define a set of services that a PKI should be offering were not user-needs-oriented. User requirements from a PKI have been recorded in several references [17]-[25]. Each one of these works recorded user requirements for their own application domain. However, a common ground can be and has been found [26, 27]. This ‘minimal set’ of user requirements includes authentication of users, integrity of messages, privacy and confidentiality of messages, non-repudiation of message origin and destination, availability of services, ease of use. In addition to this minimal set, issues like anonymity of participants, time-stamping, uniqueness of documents, interoperability between different elements, protection from abuse of any participant by another, legal issues have been identified as important.
A comprehensive list of PKI services that satisfy the above requirements follows [27]. The functions required to perform each of these services can subsequently be defined.
The specified PKI services are as follows:
10.Camouflaging communications. Camouflaging communications not only provides data confidentiality, but also hides the very fact of communication. This is achieved by adding dummy messages into the data stream enabling TTPs and users to hide real data transfers, both in terms of their occurrence and frequency. Functions supporting this service are responsible for camouflaging online as well off-line communications.
11.Authorization. The PKI should enable requesting entities to delegate access rights at will to other PKI entities.This means that a PKI user who possesses a resource may grant the right to another PKI user to access this resource. TTPs should ensure the granting of rights, including the ability to access specific information or resources. Supporting functions include authentication, group definition, rights update, group update, enrolment of a user into a group, resolving of rights, determination of administrative authorities.
12.Audit. In order to ensure that certain operational, procedural, legal, qualitative and several other requirements are complied with, so that trust is enhanced, an auditing service is required. The functions supporting this service fall into two categories: Initial preparatory phase functions and main operation of the audit plan phase functions.
13.Quality assurance and trust enhancement services. It is expected that the potential users of PKI services would require products and services of a given quality to be delivered or be available by a given time and to be priced so that best value for money is achieved. In order to achieve this level of quality, PKI services must be quality assured. Functions supporting this service include organization operations manual specification, organization operations maintenance and improvement.
14.Customer oriented services.This group of PKI services includes services which directly involve users or that require some contact, or some kind of dealing or bargaining with the end user. Examples of such services are legal aspects and payment negotiations between a user and a TTP.This group of services is implemented by the following functions: liability and insurability, underwriting, accounting management, ordinary operations assistance and support provision.
15.TTP to TTP interoperability. It is unlikely that in a large scale PKI all users will be connected to a unique TTP. Interoperability services are concerned with the issues necessary for establishing a network of TTPs, possibly operating by different companies with different policies and different domain specialization. Functions supporting this service include: accepting a request, validating a request, return of the validation result, finding the certification path, validation of the certification path, sending cross-certification requests, accepting the certification result, retrieval of information from other domains, response to other domains’ requests, translation, other operational functions.
Detailed descriptions for all the aforementioned functions can be found in [27].
3.KEYSTONE Reference Model
The specified PKI services and functions were used to create a high-level model of ETS and associated PKI. This model is called the ‘KEYSTONE Reference model’ and is described in terms of actors and their roles.
The KEYSTONE Reference model is depicted in Figure 1. Two types of organizational entities (actors) are identified: TTPs and PKI users. Trust services are offered by the TTPs to the users at the TTP-User interface. A user uses trust services of one TTP in its domain.TTPs in different domains cooperate, in order to meet their users’ needs. The interaction between TTPs is performed at the TTP-TTP interface.Within each Security Domain or Business Sector one or many users are depicted, and within each TTP one or more roles are depicted. Roles are specific individual tasks performed by a TTP, in order to provide security services to meet specific user requirements and therefore implement trust services.
The specified TTP roles are as follows:

Figure 1: KEYSTONE Reference Model
PKI operation, for contributing to the emerging legal frameworks and for monitoring the PKI operation, in order to handle legal issues or possible problems in either a PKI«User or a TTP«TTP relation.
| Roles Services | Time-stamping role | Management & Trust enhancement role | Legal issues management role | Key management role | Customer support role | Accounting role | Registration role | Certification role |
| Registration | + | + | ||||||
| Digital Signatures | + | + | + | + | ||||
| Encryption | + | + | + | + | ||||
| Time-stamping | + | + | ||||||
| Non-repudiation | + | + | ||||||
| Key management | + | + | + | + | ||||
| Certificate management | + | + | ||||||
| Information Repository | + | + | + | |||||
| Directory Services | + | + | + | |||||
| Camouflaging communications | + | + | + | |||||
| Authorisation | + | + | + | |||||
| Audit | + | + | ||||||
| Quality Assurance & Trust enhancement services | + | + | + | |||||
| Customer-Oriented Services | + | + | + | + | ||||
| TTP to TTP interoperability | + | + | + | + |
Table 1: Relationship between TTP services and roles
of registration forms and supporting documents, authentication and identification of candidate entities, user anonymity assurance, notification of candidate entities about evaluation results, etc.
8. Certification role. This role forms the heart of each TTP. The ultimate goal of this role is to effectively manage the certificates generated and revoked by the TTP. Its duties involve certificate generation, certificate storage and retrieval, maintenance of certificate revocation list, storage and retrieval of certificate revocation list.
The relation between the roles and the PKI services is summarized in Table 1.
4.KEYSTONEFunctional Architecture
The KEYSTONE Functional Architecture describes the TTP information system at the level of functional units interacting across clearly defined interfaces. The list of functional units is presented along with the descriptions of individual units, their interfaces, and the overall picture of information processing in the TTP information system.
4.1. Functional Architecture Elements
The Functional Architecture is made up of a number of functional units, each of which performs a specific task within the TTP.The functional unit definition specifies clearly the functionality provided, without being tied to any particular technology.The functional units provide services to one another by means of abstract primitives, i.e. operations that they carry out for one another. Each functional unit exports a number of abstract primitives to the others, and imports some abstract primitives from the others.
In order to simplify the management of the functional units, all importing and exporting of abstract primitives is from and to the kernel (see Figure 2). The use of a central kernel allows the easy addition of new functional units without any changes being required to the others, and thus facilitates the provision of new services by the TTP. By forbidding any exchange of abstract primitives except via the kernel, the Functional Architecture divorces each functional unit from the internal details of the other. This makes the TTPs

Figure 2: Kernel as a bus for abstract primitives Figure 3:TTP and its users

easier to develop and maintain, and also facilitates distribution of TTP functionality, if required. Such an architecture is well suited to implementation using an object management technology such as CORBA [28, 29].
Since the functional unit is not tied to any particular technology, any technology that provides the functions defined for the functional unit (and thus the abstract primitives that it exports) may be used. In the event of a new technology appearing, such as a new encryption algorithm or a message digest technique, this may be added to the TTP without any changes to any functional unit other than the one concerned. Thus, the functional unit acts as a gateway between a particular technology and a set of functions, which are required by the TTP.
In order to design the KEYSTONE Functional Architecture, the relationship between the TTP information system and its users has been studied. This relationship is schematically depicted in Figure 3.
Each TTP information system deals with three different kinds of external entities: TTP personnel, TTP customer, other TTPs.
There are two fundamental types of interaction:
The format of the service request must be standardized to facilitate interoperability. The rules must also be defined to convert service requests from other service requests formats into the KEYSTONE service request format. The rest of the commands is given to the TTP information system in the form of management operation requests. Because of high security requirements, the originator of a management operation request must be authenticated and his/her rights to initiate the requested operation must be strictly controlled.
From the information processing point of view, the KEYSTONE TTP functions naturally fall into six groups:
The interrelations between these functional groups while processing user requests is schematically depicted in Figure 4.
The detailed mapping of the specified functions on the functional unit groups can be found in [27].
Service requests are first processed by the customer access functions that perform customer authentication, customer access rights control, and payment. Following this, the requested service is performed by the appropriate functional unit. Similarly, management operation requests are first processed by the management access functions that perform request originator authentication and access rights control. Following this, the requested management operation is performed by the

Figure 4: Functional groups and their interrelation.
corresponding functional unit. Supporting services, such as cryptographic computations, database management, and logging can be used in every step of the user request processing.
The KEYSTONE Functional Architecture splits the functional groups of Figure 4 into interrelated functional units, and specifies interfaces between them. The logical view of the KEYSTONE Functional Architecture (the kernel is not shown) is presented in Figure 5.
The Customer Access group is divided into the Secure Customer Access, Customer Access Rights Control, Payment, and Customers’ Accounts functional units.
account or for initiating an electronic payment transaction.
• The Customers’ Accounts functional unit maintains the database of customers’ accounts. A customer’s account holds the entire information about the customer: identification information, access rights, payment details, etc.
The service request is sequentially processed by the Secure Customer Access, Customer Access Rights Control, and Payment functional units. Following this, the request is dispatched by the kernel to the appropriate functional unit. This division of service request processing into three steps helps to build the TTP using specialized packages, and creates the opportunity for service request pipelining.
The Management Access group is divided into three functional units: Secure Management Access, Management Access Rights Control, and Management Accounts.

Figure 5: KEYSTONE Functional Architecture (the Kernel is not shown).
This service-per-unit approach used in the Trusted Services group simplifies addition and removal of support for trusted services by actual TTPs.
The remaining two functional groups (Local-ized Supporting Services and Infrastructure Supporting Services) provide general purpose functionality used in trusted services, and access related functional units.
The Localized Supporting Services group is split into four functional units: Cryptographic services, Logging, Archiving, and Database management.
The Infrastructure Supporting Services functional group is divided into four functional units: Electronic payment access, Directory service access, Delivery system access, and Service Client.
| KEYSTONE PKI services | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Standards and specifications | Registration | Digital Sign | Encryption | Time stamping | Non repudiation | Key management | Certificate management | Information Repository | Directory | Camouflaging | Authorisation | Audit | Assurance | Customer | TTP to TTP |
| ISO 9594 ITU-T X.500 (The Directory) | + | + | + | + | + | + | + | + | + | ||||||
| ISO 9796 (Digital signature giving message recovery) | + | + | |||||||||||||
| ISO 14888 (Digital signatures with appendix) | + | ||||||||||||||
| ISO 11770 (Key management) | + | + | |||||||||||||
| ISO 9798 (Entity authentication) | + | + | + | ||||||||||||
| ISO 13888 (Non repudiation framework) | + | + | |||||||||||||
| ISO 13335 (Management of IT security) | + | + | |||||||||||||
| ISO 15416 (Management of TTPs) | + | + | + | ||||||||||||
| ISO 15408 (Evaluation criteria for IT security) | + | + | |||||||||||||
| ISO TR-13569 (Information security guidelines in banking) | + | + | + | ||||||||||||
| ISO 9735 (EDIFACT) | + | ||||||||||||||
| ENV 12388 (Algorithm for digital signature services) | + | ||||||||||||||
| PKIX | + | + | + | ||||||||||||
| SPKI | + | + | + | + | |||||||||||
| LDAP | + | + | |||||||||||||
| WHOIS++ | + | + | |||||||||||||
| PEM | + | + | + | + | |||||||||||
| S/MIME | + | ||||||||||||||
| SSL | + | ||||||||||||||
| IPSEC | + | ||||||||||||||
| DNSSEC | + | + | + | + | |||||||||||
| GSS-API | + | + | + | ||||||||||||
| Microsoft CryptoAPI | + | + | + | ||||||||||||
| GCS-API | + | + | + | ||||||||||||
| CORBA Security Services | + | + | + | + | + | + | |||||||||
| RSA PKCS | + | + | + | + | |||||||||||
| SET | + | + | |||||||||||||
Table 2: Standards and KEYSTONE PKI services. ‘+’ means that the standard describes the mechanisms and/or guidelines that implement the service on their own or in co-operation with other mechanisms and/or guidelines.
directory or an on-line database for specific objects, and to provide read/write access to the record(s) about the TTP in the directory service(s) and/or online database(s).
In order to ensure TTP to TTP interoperation, standards must be adopted at the TTP operation level as well at the TTP to TTP interconnection level. Standard status gives a technology additional competing advantage on the market. Such technologies are considered to be particularly promising candidates. Twenty-seven PKI related International and European standards have been reviewed in [27].The applicability of PKI standards for different KEYSTONE PKI services is summarized in Table 2.
The review of PKI related standards demonstrated that many PKI services are covered with standards of some form.There are international standards dedicated to encrypted communications, digital signatures, digital certificates, non-repudiation services, key management, TTP security assurance and TTP management. Other PKI services or their elements are discussed as parts of large framework standards or as supporting services for other PKI services.
Every service in the above table corresponds to one or more functional units through its supporting functions. In order to implement these functional units, available technologies have been evaluated.The rest of this section evaluates available technologies in each functional area in the KEYSTONE Functional Architecture and highlights the most promising candidates in each functional area.
We understand functional area as a group of functional units that are based on the same technologies. The KEYSTONE Functional Architecture consists of fifteen functional areas:
Also there are two functional units that are totally based on services provided by other functional units and do not require additional technology. These are the Customers’ Accounts and the Management Accounts functional units.
Not all of the above functional areas can employ a widely accepted standard. That is why we will use a rather broad definition of technology.We will understand a technology as either
| Functional area | Most promising candidate technologies |
| System interconnection | CORBA |
| Secure management and customer access | WWW + SSL, |
| SSH + custom application | |
| Secure email (S/MIME, PGP) | |
| Postal mail | |
| Access rights and payment control | Policy Maker or a proprietary system |
| Digital certificates | X.509 |
| SPKI | |
| Key management | ISO 8732 |
| ISO 11770 | |
| PKCS | |
| Time Stamping | U.S. patent 5,136,647, |
| Annex to ISO 13888-3 | |
| Non-repudiation | ISO 13888 |
| CORBA Non-repudiation service | |
| Camouflaging communications | Onion routing |
| Traffic padding | |
| Cryptographic services | RSA Cryptoki Microsoft CryptoAPI Open Group’s GCS-API |
| Database management systems | Medium-class or high-end DBMS supporting SQL |
| Archiving | Unix tar |
| IBM ADSM | |
| Logging | Unix logging |
| CORBA Audit service | |
| Electronic payment mechanisms | SET |
| Ecash | |
| Mondex | |
| Directory access | X.500/LDAP |
| Z.39.50 | |
| Delivery | Secure E-mail (S/MIME, PGP) |
| Postal mail |
Table 3: KEYSTONE technology profile.
The most promising candidate technologies, on the basis of which a highly interoperable and secure TTP can be built, have been highlighted. The technology profile presented in Table 3 lists the most promising candidate technologies on a per-functional area basis.
Of course, the above technology profile is not fixed. When a new suitable technology appears, it can be added to it.
5. The KEYSTONEAbstract Public Key Infrastructure Architecture
The main characteristics of this architecture are the following:
that legacy infrastructure (software code as well as legacy hardware) can interoperate with the KEYSTONE PKI.
The proposed abstract KEYSTONE PKI is depicted in Figure 6.
The basic communications that take place in such a model are the following:

Figure 6: Unified KEYSTONE Abstract Public Key Infrastructure Architecture.
point. The same holds true for non-KEYSTONE PKI member TTP (or PKI) that implements the same (or compliant with those) standards that the KEYSTONE PKI utilizes.
3. Other-TTP to KEYSTONE-PKI-member-TTP communication. In that case protocol and standard converters or bridges should be utilized in order to translate transmitted information from KEYSTONE based format to other PKI’s based format and vice versa. These bridges should be the intersection points between the KEYSTONE PKI and the foreign PKI.The bridges need not necessarily reside in sites that belong to KEYSTONE infrastructure.
6. Conclusions
A PKI architecture has been proposed, which consists of: a set of services that should be offered; a set of functions implementing these services; an abstract reference model describing the operation of a PKI TTP in terms of roles and actions; a functional specification comprising functional units and a communication kernel; and a set of technologies and relevant standards implementing the defined functional units.
The proposed KEYSTONE Architecture has all the desirable characteristics and fulfils all those criteria that are essential for a PKI to constitute a successful framework for the development of inter-domain and international Trusted Services.The object methodology followed during the architecture evolution promises that the KEYSTONE architecture will easily adjust to future technological variations. Furthermore, the adoption of standards s uitable for the TCP/IP protocol stack guarantees that the KEYSTONE may constitute the future vehicle for the European Trusted services, taking advantage of the Internet as the information highway back bone.
References
[1] W. T. Polk, D. F. Dodson, et al, Public Key Infrastructure: From Theory to Implementation, http:// csrc.nist.gov/ pki/ panel/overview.html .
[2] Public Key Infrastructure, http://www. ietf.org/ html.charters/pkix-charter.html .
[3] B. Kaliski, An overview of the PKCS standards, RSA Laboratories, 1993.
[4] P. R. Zimmermann, The Official PGP User’s Guide,MIT Press, 1995.
[5] C. Ellison et al., SPKI Examples, 1998 (draft-ietf-spki-cert-examples-01.txt).
[6] C. Ellison et al., SPKI requirements, 1998 (draft-ietf-spki-cert-req-02.txt).
[7] C. Ellison et al., Simple Public Key Certificate, 1998 (draft-ietf-spki-cert-structure-05.txt).
[8] C. Ellison et al., SPKI Certificate Theory, 1998 (draft-ietf-spki-cert-theory-03.txt).
[9] R.L. Rivest, B. Lampson, SDSI – A Simple Distributed Security Infrastructure, http:// theory.lcs.mit. edu/cis/sdsi.html .
[10] M.Blaze, J. Feigenbaum, J. Lacy, “Decentralized Trust Management”, in Proceedings, IEEE Conference on Security and Privacy, IEEE Computer Society Press, 1996.
[11] Q. He, K. Sycara and Z. Su, “A solution to open standard of PKI”, in C. Boyd and E. Dawson (Eds.), Information Security and Privacy, Lecture Notes in Computer Science, Springer-Verlag, 1998.
[12] W. Burr D. Dodson, N. Nazario, T. Polk, MISPKI: Minimum Interoperability Specification for PKI Components, June 1997, NIST.
[13] Specifications for Trusted Third Party Services, September 1997, ETSI DEN/SEC-003001.
[14] T. Gustavsson, “A WWW based Certification Infrastructure for secure open network transactions”, in P. Horster (Ed.) Communications and Multimedia Security Volume 2, Chapman & Hall, 1996.
[15] SET Secure Electronic Transactions Specification version 1.0, Books 1-3, SET consortium, 1997.
[16] A. van Rensburg and S. von Solms, “A reference framework for Certification Authorities / Trusted Third Parties”, in L.Yngstrom and J. Carlsen (Eds.), Proceedings, IFIP 13th International Information Security Conference, Chapman & Hall, 1996.
[17] Trusted Health Information Systems (THIS) project,
Final report: Requirements on electronic signature services and TTP services, Swedish Institute for Health Services Development, 1995.
[18] TrustHealth-ETS project, Functional specification of TTP services, Swedish Institute for Health Services Development, 1995.
[19] TTP & Electronic Signature Trial for Inter-Modal Transport (TESTFIT) project, Final report, CEC/DGXI-II/B6, 1995
[20] BOLERO project, Final Report, CEC/DGXIII/B6, 1995.
[21] Ebridge project, Final Report, CEC/DGXIII/B6, 1995.
[22] EAGLE project, Software description and functional specification of the TTP demonstrator, Deliverable 3, CEC/DGXIII/B6, 1997.
[23] S2101 Project, User requirements for TTP services, CEC/DGXIII/B6, 1993.
[24] EUROMED-ETS project, Final Report, CEC/DGXI-II/B6, 1998.
[25] A.Nilson, European Trusted Services (ETS) - Results of 1995 TTPs Projects. Final Report, Marinade Ltd., 1997
[26] KEYSTONE project, KEYSTONE deliverable 1.1: User Requirements Statement, 1998.
[27] KEYSTONE project, KEYSTONE deliverable 9.1: Final project report, 1998.
[28] CORBA, The Common Object Request Broker Architecture: Architecture and Specification, OMG, 1995.
[29] CORBA, CORBA Services Specification, OMG, 1997.