Key Management in Ad Hoc Networks. Klas Fokine
|
|
|
- Pierce Johns
- 9 years ago
- Views:
Transcription
1 Examensarbete utfört i Informationsteori av Klas Fokine LITH-ISY-EX
2
3 Examensarbete utfört i Informationsteori vid Linköpings tekniska högskola av Klas Fokine LiTH-ISY-EX Handledare: Magnus Öberg Examinator: Viiveke Fåk Linköping:
4
5 Avdelning, Institution Division, Department Datum Date Institutionen för Systemteknik LINKÖPING Språk Language Svenska/Swedish X Engelska/English Rapporttyp Report category Licentiatavhandling X Examensarbete C-uppsats D-uppsats Övrig rapport ISBN ISRN LITH-ISY-EX Serietitel och serienummer Title of series, numbering ISSN URL för elektronisk version Titel Title Författare Author Nyckelhantering i Ad Hoc Nät Key Management in Ad Hoc Networks Klas Fokine Sammanfattning Abstract This thesis covers the issue of securing ad hoc networks. Such networks exhibit a number of characteristics that make such a task challenging. One of the major challenges is that ad hoc networks typically lack a fixed infrastructure both in form of physical infrastructure such as routers, servers and stable communication links and in the form of an organizational or administrative infrastructure. Another difficulty lies in the highly dynamic nature of ad hoc networks since new nodes can join and leave the network at any time. The major problem in providing security services in such infrastructure less networks is how to manage the cryptographic keys that are needed. In order to design practical and efficient key management systems it is necessary to understand the characteristics of ad hoc networks and why traditional key management systems cannot be used. These issues are covered and the thesis also provides a summary of those key management solutions that have been proposed in the research literature so far. Nyckelord Keyword ad hoc networking, key management, network security
6
7 Abstract This thesis covers the issue of securing ad hoc networks. Such networks exhibit a number of characteristics that make such a task challenging. One of the major challenges is that ad hoc networks typically lack a fixed infrastructure both in form of physical infrastructure such as routers, servers, and stable communication links and in the form of an organizational or administrative infrastructure. Another difficulty lies in the highly dynamic nature of ad hoc networks since new nodes can join and leave the network at any time. The major problem in providing security services in such infrastructure less networks is how to manage the cryptographic keys that are needed. In order to design practical and efficient key management systems it is necessary to understand the characteristics of ad hoc networks and why traditional key management systems cannot be used. These issues are covered and the thesis also provides a summary of those key management solutions that have been proposed in the research literature so far. i
8 ii Key Management in Ad Hoc Networks
9 Table of Contents 1 Introduction Background Purpose Reading Guide Target Audience Theoretical Background Network Security Security Services Security Attacks Security Mechanisms Cryptographic Background Symmetric Encryption Public Key Encryption Digital Signature Digital Certificate Secret Sharing Key Management Introduction Trusted Third Parties Public Key Infrastructure Registration Initialization Certification Key update Revocation Certificate and Revocation Notice Distribution Ad Hoc Networking Introduction Characteristics Network Origin Network Range Network Capabilities Network Transiency Applications Military Tactical Networks Personal Area Networks Sensor Networks Collaborative Networking Disaster Area Networks Partially Distributed Certificate Authority System Overview Certificate Issuing Certificate Renewal Certificate Retrieval System Maintenance Fully Distributed Certificate Authority iii
10 6.1 System Overview System Maintenance System Bootstrapping Share Initialization Share Update Certificate Issuing Certificate Renewal Certificate Revocation Self Issued Certificates System Overview Small-Worlds Shortcut Hunter Algorithm Secure Pebblenets Overview System Requirements Non Cryptographic Parameters Cryptographic Parameters Non Cryptographic Functions Cryptographic Functions Cluster Generation Phase Key Update Phase Demonstrative Identification Overview System Requirements Two-Party Key-Exchange The Basic Protocol Single Public Key Protocol Password Authenticated Key Exchange Overview The Hypercube Protocol Password Authentication Extension Analysis Traditional Key Management Solutions in Ad Hoc Networks Infrastructure Requirements Threats in Ad Hoc Networks Partially Distributed CA Fully Distributed CA Self Issued Certificates Secure Pebblenets Demonstrative Identification Password Authenticated Key Exchange Summary Conclusions Ad Hoc Networking Key Management Solutions Future Work References iv
11 List of Figures Figure 1. Symmetric encryption scheme....5 Figure 2. Public key encryption scheme....6 Figure 3. Diffie-Hellman key exchange....7 Figure 4. Example of a digital signature....8 Figure 5. X.509 certificate format....9 Figure 6. Categories of trusted third parties [2] Figure 7. Function of a KDC or KTC...12 Figure 8. Main components of a PKI Figure 9. Example of CRL contents Figure 10. Wireless ad hoc network Figure 11. System architecture showing three server nodes of which one is also a combiner Figure 12. Illustration of the share update mechanism [10] Figure 13. Fully distributed CA service where all nodes in the network are equals and each hold a share of the signing key Figure 14. Share initialization during the bootstrapping phase Figure 15. Share initialization during operational phase, due to joining node...29 Figure 16. Complete shuffling scheme Figure 17. Different phases during the lifetime of the ad hoc network...32 Figure 18. Node requesting for certificate renewal Figure 19. k-bounded coalition offsetting algorithm...34 Figure 20. Certificate revocation and distributed maintenance of certificate revocation lists Figure 21. Limiting flooding of accusations Figure 22. Example of a certificate chain Figure 23. Building certificate chains using only locally stored certificates Figure 24. Example of small-world phenomena Figure 25. Example of a shortcut in a small-world Figure 26. Small-world graph modeling certificates and users Figure 27. Shortcut Hunter algorithm - outbound certificate chain selection round Figure 28. The Shortcut Hunter vs. the Star Shortcut Hunter algorithm Figure 29. The different phases during the network lifetime Figure 30. Cluster segmentation and cluster backbone generation Figure 31. Separate location-limited channel between two nodes Figure 32. The Hypercube protocol used to provide four nodes with a common secret k = k1,2,3, Figure 33. Man-in-the-middle attack in a traditional network Figure 34. Man-in-the-middle attack in an ad hoc network Figure 35. Synchronization problem due to segmentation Figure 36. Problem of certificate propagation v
12 vi Key Management in Ad Hoc Networks
13 1 Introduction 1.1 Background Ad hoc networking is a wireless networking paradigm for self-organizing networks that until recently has mainly been associated with military battlefield networks. However, with the availability of wireless technologies such as Bluetooth and and the development of the next generation networks, civilian applications that exploit the advantages of ad hoc networking are being envisioned. So far most of the research that has been done on ad hoc networking has focused on routing. Other issues such as security and network addressing have received considerably less attention and these issues need to be addressed before any successful applications will appear. 1.2 Purpose The goal of this thesis is to study ad hoc networks from a security perspective and to extract their security relevant characteristics. It is also intended to summarize what has been done to provision key management in such networks so far. 1.3 Reading Guide This chapter briefly covers the background of the thesis and its purpose. Chapter 2 covers the theoretical background concerning network security and cryptography that is needed for the rest of the thesis. Readers that are familiar with these subjects could skip this chapter and refer to it when needed. Chapter 3 describes the purpose of key management and traditional key management solutions. This is followed in chapter 4 by a description of ad hoc networks and their characteristics. Chapter 4 should be of interest to readers that are new to the subject of ad hoc networking. Chapters 5 through 10 describe a number of key management solutions that have been proposed for ad hoc networks. Chapter 11 analyses the solutions presented in the previous chapters and categorizes them according to their requirements and suitability. Finally chapter 12 summarizes the conclusions drawn in this thesis. 1.4 Target Audience This thesis can be of interest to anyone who wants an introduction to ad hoc networking and the characteristics of such networks, but also to those who simply want a summary of the key management solutions that have so far been proposed in the research literature. The reader is assumed to have a basic understanding of networking and computer security. Although some of the presented solutions are based on more or less complicated mathematics, the purpose of this thesis is not to go into the mathematical details. Readers interested in such matters are referred to the original articles which are listed in chapter 13. Introduction 1
14 2 Introduction
15 2 Theoretical Background 2.1 Network Security When discussing network security, three aspects can be covered; the services required, the potential attacks and the security mechanisms. The security services aspect includes the functionality that is required to provide a secure networking environment while the security attacks cover the methods that could be employed to break these security services. Finally the security mechanisms are the basic building blocks used to provide the security services Security Services In providing a secure networking environment some or all of the following services may be required [3]: Confidentiality: Ensures that transmitted information can only be accessed by the intended receivers. Authentication: Allows the communicating parties to be assured of the others identity. Integrity: Ensures that the data has not been altered during transmission. Non-repudiation: Ensures that parties can prove the transmission or reception of information by another party, i.e. a party cannot falsely deny having received or sent certain data. Availability: Ensures that the intended network services are available to the intended parties when required. Depending on the capabilities of any potential attacker different mechanisms may be used to provide the services above Security Attacks Security attacks can be classified in the following two categories [3] depending on the nature of the attacker: Passive attacks: The attacker can only eavesdrop or monitor the network traffic. Typically this is the easiest form of attack and can be performed without difficulty in many networking environments, e.g. broadcast type networks such as Ethernet and wireless networks. Active attacks: The attacker is not only able to listen to the transmission but is also able to actively alter or obstruct it. Furthermore depending on the attackers actions, the following subcategories can be used to cover the majority of attacks. Theoretical Background 3
16 Eavesdropping: This attack is used to gain knowledge of the transmitted data. This is a passive attack which is easily performed in many networking environments as mentioned above. However this attack can easily be prevented by using an encryption scheme to protect the transmitted data. Traffic analysis: The main goal of this attack is not to gain direct knowledge about the transmitted data, but to extract information from the characteristics of the transmission, e.g. amount of data transmitted, identity of the communicating nodes etc. This information may allow the attacker to deduce sensitive information, e.g the roles of the communicating nodes, their position etc. Unlike the previously described attack this one is more difficult to prevent. Impersonation: Here the attacker uses the identity of another node to gain unauthorized access to a resource or data. This attack is often used as a prerequisite to eavesdropping. By impersonating a legitimate node the attacker can try to gain access to the encryption key used to protect the transmitted data. Once this key is known by the attacker, she can successfully perform the eavesdropping attack. Modification: This attack modifies data during the transmission between the communicating nodes, implying that the communicating nodes do not share the same view of the transmitted data. An example could be when the transmitted data represents a financial transaction where the attacker has modified the transactions value. Insertion: This attack involves an unauthorized party, who inserts new data claiming that it originates from a legitimate party. This attack is related to that of impersonation. Replay: The attacker retransmits data previously transmitted by a legitimate node. Denial of service: This active attack aims at obstructing or limiting access to a certain resource. This resource could be a specific node or service or the whole network Security Mechanisms Most of the security services previously mentioned can be provided using different cryptographic techniques. The following subsections give an overview of which techniques are used to provide each of the services. Confidentiality The confidentiality service can be of two different types. The most common type of confidentiality requirement is that transmitted information should not be exposed to any unauthorized entities. A more strict confidentiality requirement is that the very existence of the information should not be revealed to any unauthorized entities. The first type of confidentiality requirement only requires protection from eavesdropping attacks and can be provided using an encryption scheme. The stricter requirement implies that 4 Theoretical Background
17 the service must also provide protection against traffic analysis. Such a service will typically require additional mechanisms along with some encryption scheme. Integrity The integrity service can be provided using cryptographic hash functions along with some form of encryption. When dealing with network security the integrity service is often provided implicitly by the authentication service. Authentication Authentication can be provided using encryption along with cryptographic hash functions. Non-repudiation Non-repudiation requires the use of public key cryptography to provide digital signatures. Along with digital signatures a trusted third party must be involved. Availability The availability is typically ensured by redundancy, physical protection and other non cryptographic means, e.g. use of robust protocols. 2.2 Cryptographic Background Symmetric Encryption Symmetric encryption is illustrated in figure 1. The plain text message m is encrypted using the shared key k, resulting in the cipher text c. To recover the plain text message the cipher text is decrypted using the same key used to for the encryption. Symmetric encryption schemes can be used to provide confidentiality, integrity and authentication. The shared key must be distributed over a secure communication channel. Figure 1. Symmetric encryption scheme. Theoretical Background 5
18 2.2.2 Public Key Encryption Unlike conventional encryption schemes where the involved parties share a common encryption/decryption key, public key encryption schemes depend on the use of two different but mathematically related keys. One of the keys is used for encryption and the other for decryption. The public key encryption scheme is illustrated in figure 2. Bob generates a pair of keys, his public/private key pair pk Bob /sk Bob. The public key is related to the private key, but in such a way that the private key cannot be derived from it without additional information. If Alice wants to send an encrypted message to Bob, she first needs to obtain his public key. As the name implies Bobs public key does not need to be kept secret, however it must be authenticated, i.e. Alice must be assured that the public key she believes belongs to Bob is really his. Once Alice has Bobs authentic public key pk Bob, she encrypts the plain text message m using it. The resulting cipher text c can then only be decrypted using Bobs private key sk Bob which only Bob knows. Figure 2. Public key encryption scheme. Compared with symmetric encryption, public key encryption has a weaker requirement for the communication channel over which the key distribution is performed. Public key encryption only requires an authenticated channel as opposed to a secure channel that is required for the distribution of symmetric encryption keys. Public key encryption can also provide non-repudiation along with confidentiality, integrity and authentication. However, public key encryption requires much more computational resources than symmetric encryption and therefore has much lower performance. Therefore public key encryption is typically only used to encrypt small amounts of data, e.g. symmetric encryption keys and digital signatures Diffie-Hellman The Diffie-Hellman (DH) algorithm was the first public key algorithm published. However, it is limited to securely exchanging keys that can subsequently be used to provide the security services mentioned above. The DH algorithm, illustrated in figure 3, requires two public parameters, a prime p and a generator g of Z p. A generator of Z p is an integer g such that g, g 2,..., g p - 1 (mod p) generate the 6 Theoretical Background
19 values 1 through p - 1 in some order. To exchange a shared key Alice and Bob generate the random secrets x Alice and x Bob. Bob then sends y Bob = g xbob mod p to Alice and Alice sends = g xalice mod p to Bob. Alice and Bob can then generate the shared secret key k as: y Alice k ( ) x Bob ( ) x Alice = = = y Alice y Bob g x Bob x Alice ( mod p) Figure 3. Diffie-Hellman key exchange RSA RSA is a public key encryption algorithm that can be used to provide confidentiality, integrity, authentication and non-repudiation services. To encrypt a message m or decrypt a cipher text c, the following calculations are performed: c = m e mod n If the algorithm is intended to be used to provide confidentiality the values n and e are made publicly known while d is kept secret. Therefore the public key pk = {e, n} and the private key sk = {d, n}. For user A to encrypt a message intended for user B, B s public key pk B is used for the encryption, c = E pkb ( m) = m e mod n. Since only B has knowledge of the secret key sk B it alone can decrypt the cipher text and recover the plain text, m = D skb ( c) = c d mod n Digital Signature m = c d modn = m ed modn A digital signature is a data structure that provides proof of origin, i.e. authentication and integrity, and depending on how it is used, it can also provide non-repudiation. Figure 4 illustrates how a digital signature is used. Alice wants to send a message to Bob, however she doesn t want it to be modified during transmission and Bob wants to be sure that the message really came from Alice. What Alice does is that she computes a hash digest of the message which she encrypts with her private key sk Alice. She then sends both the message and the encrypted digest which is here signature. Bob can then verify the signature by computing the hash digest of the message he received and comparing it with the digest he gets when decrypting the signature using Alice s public key pk Alice. If the digests are equal Bob knows that Alice sent the message and that it has not been modified since she signed it. Theoretical Background 7
20 Figure 4. Example of a digital signature Digital Certificate Public key cryptography is very useful, but in the presence of active attackers a problem arises. Consider the following, Alice wants to send a secret message to Bob, so she encrypts the message using Bobs public key pk Bob that she has retrieved from a server. However the key that Alice retrieved actually belongs to an attacker. The secret message which was intended for Bob can now be decrypted and read by the attacker. Digital certificates are used to prevent the type of attack described above. Basically a digital certificate is a statement issued by some trusted party saying that it verifies that the public key pk A in fact belongs to the user A. The trusted party digitally signs this statement and therefore anyone with the authentic public key of the trusted party can verify the certificate and thereafter use pk A and be sufficiently sure that it actually belongs to node A. Figure 5 shows the information in an X.509 certificate. The serial number is used to uniquely identify the certificate, and issuer name is the name of the trusted party who has issued the certificate. The validity field specifies how long the certificate is valid. The subject is the entity being identified by the certificate, i.e. the entity who s public key is being certified. The next two fields contain the public key being certified and information about what it is certified to be used for (e.g. encryption, signatures etc.). The extensions field can be used to specify any additional information about the certificate. The signature field contains the certificates signature along with information about the hash algorithm used etc. 8 Theoretical Background
21 Figure 5. X.509 certificate format Secret Sharing Secret sharing allows a secret to be shared among a group of users (share holders) in such a way that no single user can deduce the secret from his share alone. Only by combining (a sufficient number of) the shares can the secret be reconstructed. A secret sharing scheme where k out of n share holders are needed to reconstruct the secret is referred to as a (k, n) threshold scheme Shamir s Secret Sharing This (k, n) threshold secret sharing scheme proposed by Adi Shamir [11] is based on polynomial interpolation and works as follows. The secret S is to be shared among the n shareholders identified by id i, i = 1,..., n. The following steps are performed by the dealer who is the trusted party responsible for generating the secret and distributing it to the users: 1. A prime p is chosen such that p > max( S, n). x k 1 2. A polynomial fx ( ) = a 0 + a 1 x + + a k 1 is generated where a 0 = S and a i, i = 1,, k 1 are chosen randomly from Z p. 3. The shares S i, i = 1,..., n are generated as S i = fid ( i )( mod p). 4. The shares are securely distributed to the respective shareholders. To reconstruct the secret Lagrange interpolation is used. With the knowledge of a minimum of k shares the polynomial f(x) can be reconstructed and the secret recovered by calculating f(0). The Lagrange interpolation is described below: k fx ( ) = S i l idi ( x) ( mod p) where l idi ( x) = i = 1 k j = 1, j i x id j id i id j Theoretical Background 9
22 It is important that no shareholder gains knowledge of any share other than his own. Otherwise he could potentially gain knowledge of k shares and then be able to reconstruct the secret himself. Therefore a trusted party is needed to perform the reconstruction of the secret, i.e. the shareholders provide their shares to the trusted party who performs the action requiring the secret, e.g the signing of certificates etc Proactive Secret Sharing In the secret sharing scheme described above the secret is protected by distributing it among several shareholders. However, given sufficiently long time an attacker could compromise k shareholders and obtain their shares, thereby allowing him to reconstruct the secret. To defend against such attackers proactive secret sharing schemes update the shares on a regular basis. An attacker must then compromise k shareholders between the updates since only k shares belonging to the same update period can be used to reconstruct the secret. The share update is achieved by adding a random update polynomial sharing polynomial fx ( ) as follows: f update ( x) to the original fx ( ) = a 0 + a 1 x + + a k 1 x k 1 f update ( x) = b 1 x+ b 2 x b k 1 ( mod p) x k 1, ( mod p), f new ( x) = fx ( ) + f update ( x) = a 0 + ( a 1 + b 1 )x + + ( a k 1 + b k 1 )x k 1 ( mod p) The updated shares S i, updated can then be calculated as f new ( id i ), i = 1,..., k. However, in practice it is enough to calculate the shares of the update polynomial, S i i = 1,..., k and securely distribute them to the respective shareholders. Each shareholder then adds it to its original share to obtain the updated share, i.e. S i, updated = S i + S i ( mod p) Verifiable Secret Sharing If any shareholder wishes to prevent the reconstruction of the secret, he can provide an invalid share, e.g. a random value, to be used for the reconstruction. The Lagrange interpolation will then result in the reconstruction of a value Ŝ, different from the secret S. Verifiable secret sharing mechanisms are used to prevent this type of denial of service attack. The mechanism works as follows: 1. Prior to distributing the shares to the shareholders, the dealer publishes g a0 g a 1 g a k 1,,, that are witnesses of the coefficients of the sharing polynomial. 2. Each node can then upon receiving its share verify it by checking that g S i = g a 0 g a 1 ( ) id i g a k 1 ( ) id i k Theoretical Background
23 3 Key Management 3.1 Introduction Most of the mechanisms used to provide the security services described in on page 3 require the use of some kind of cryptographic keys that need to be shared between the communicating parties. As stated by Menezes et al [2], the purpose of key management is to: 1. Initialize system users within a domain. 2. Generate, distribute and install keying material. 3. Control the use of keying material. 4. Update, revoke and destroy keying material. 5. Store, backup/recover and archive keying material. Threats that must be dealt with by the key management system include: Compromise of the confidentiality of keys. Compromise of the authenticity of the keys. Unauthorized use of keys, e.g. the use of keys which are no longer valid. 3.2 Trusted Third Parties A trusted third party (TTP) is an entity trusted by all users of the system and is often used to provide the key management services mentioned above. Depending on the nature of their involvement they can be categorized as in-line, on-line or off-line [2]. Figure 6 illustrates these different categories. An in-line TTP participates actively in-between the communication path of the two users while an on-line TTP participates actively but only for management purposes, the actual communication between the users is direct. An off-line TTP communicates with the users prior to their setting up a communication link. During the actual protocol run the off-line TTP is not active, in fact it does not even need to be connected to the network. Examples of trusted third parties are key distribution centers (KDC), key translation centers (KTC) and certificate authorities (CA). The KDC and KTC are symmetric key management systems and the CA is a public key management system. KDC s and KTC s are used to simplify the key management. Instead of each user having to share a secret key with every other user they only need to share one with the TTP. This brings down the number of keys that need to be managed from n(n-1)/2 to n, where n is the total number of users. Figure 7 illustrates how such a TTP is used. The use of TTP s for public key management will be covered in 3.3. Key Management 11
24 Figure 6. Categories of trusted third parties [2]. 3.3 Public Key Infrastructure Figure 7. Function of a KDC or KTC. 1) User A requests to share a secret key with user B. If the TTP is a KDC it generates the key to use, otherwise user A provides it. This communication is encrypted using the key shared by user A and the TTP. 2) The TTP encrypts the session key with the key it shares with user B and returns it to user A. 3) User A sends the encrypted session key to user B, who can decrypt it and thereafter use it to communicate securely with user A. The use of public key cryptography requires that the authenticity of the public keys can be established. A straightforward approach requires that any two users that wish to communicate must exchange their public keys in a authenticated manner and this would require the initial distribution of n(n-1) public keys. However, by having a trusted third party issue certificates to each of the users only the public key of the TTP needs to be distributed to each of the users. 12 Key Management
25 A PKI provides the mechanisms needed to manage such certificates and consists of the components illustrated in figure 8. Figure 8. Main components of a PKI. An end entity is either a user of a certificate or the subject to which a certificate has been issued. The certification authority (CA) is the component responsible for issuing and revoking certificates while the registration authority (RA) is responsible for establishing the identity of the subject of the certificate and the mapping between the subject and it s public key. The registration function can be implemented by the CA and therefore the RA is an optional component. The following basic services should be provided by the PKI components described above: Registration Initialization Certification Key update Revocation Certificate and revocation notice distribution Other services that may also be provided by the PKI include key recovery, key generation, cross-certification, secure time stamping and non-repudiation. The following subsections briefly describe each of the basic services mentioned above Registration The registration service establishes the mapping between an end entity and its public key. This typically includes providing the public key to the RA along with any information that is required for the certificate, e.g. name, address, organization etc. The RA may also require that the end entity prove that it possesses the corresponding private key, e.g. by generating a digital signature. Key Management 13
26 Next the RA needs to verify the information received from the end entity. This could e.g. be done by requiring that the end entity in person provide proof of identity such as a driver s license or id-card. Finally when the RA has verified the identity of the end entity it contacts the CA and request the generation of the certificate Initialization Before an end entity can use the services provided by the PKI it has to be initialized with certain information. The most important item required is the CA s certificate which contains the public key which is needed to verify any certificates issued by the CA. Other information could be addresses of certificate repositories and other PKI components that the user may need to contact etc. The initialization also includes the generation of the end entities public/private key pair Certification Upon receiving a certification request from the RA, the CA generates and signs the certificate. This process includes filling in the certificate form with the information provided by the RA and adding any additional information required, e.g. any extensions used etc. The CA then digitally signs the certificate using its private key sk CA Key update Key pairs are typically only valid for a limited time, ranging from days to years depending on the application. The key update service provides for the transition to a new key pair and the issuing of the corresponding certificate Revocation The CA is responsible for maintaining the status of the certificates it has issued. E.g. if a certificate becomes invalid due to the compromise of the private key the CA needs to revoke the certificate. Certificates may also need to be revoked if e.g. any information in the certificate becomes invalid, e.g. subject name, organization etc Certificate and Revocation Notice Distribution After a certificate has been issued it needs to be made available to the owner and to other users that wish to use it. After the CA generates a certificate it can distribute it in a number of ways, e.g. by making it available on a publicly accessible server or by providing it to the certificate owner directly. In case a certificate is revoked the PKI must provide a mechanism that informs certificate users of this. A common method used is that the CA on a regular basis publishes a certificate revocation list (CRL) that lists all the certificates that have been revoked. Certificate users can then use the CRL to check whether or not a certain certificate has been revoked. Figure 9 shows an example of the contents of a CRL. 14 Key Management
27 Figure 9. Example of CRL contents. A problem with CRL s is that the time between the compromise and the notification of a certificate being revoked can be significant since CRL s are only published at regular intervals. A different approach to revocation notification is the use of on-line revocation notification mechansims. These allow the certificate users to query the CA in real-time for the status of a particular certificate. Key Management 15
28 16 Key Management
29 4 Ad Hoc Networking 4.1 Introduction Ad hoc networking is a networking paradigm for mobile, self-organizing networks. Typically the network nodes are interconnected through wireless interfaces and unlike traditional networks lack specialized nodes, i.e. routers, that handle packet forwarding. Instead every node in the network functions as a router as well as an application node and forwards packets on behalf of other nodes. Figure 10 shows such an example, node A is not within reach of node C, however by using node B as an intermediate node, A and C are able to communicate. Figure 10. Wireless ad hoc network. Ad hoc networks have the ability to form on the fly and dynamically handle the joining or leaving of nodes in the network. An example is when three people with ad hoc networking enabled PDAs come within communication range of each other. The three PDAs could then automatically create an ad hoc network used to exchange data. Often ad hoc networks are also characterized as infrastructure-less networks where there are three main types of infrastructure [5]: Routing infrastructure: Routers and stable communication links, interconnecting the network nodes. Server infrastructure: On-line servers such as DNS, DHCP and CA servers providing services to network nodes. Organizational/administrative infrastructure: Support for registration of network users, issuing of certificates and handling of other network configuration tasks. Common to all ad hoc networks is the lack of routing infrastructure, however the other two infrastructure types may be available depending on the application. Specifically the organizational/administrative infrastructure will be available in many applications of ad hoc networking. In many if not most ad hoc networks the nodes will also be mobile and they can then be termed mobile ad hoc networks, MANET s. In fact this thesis deals with such networks, although the term MANET is not used, instead the general term ad hoc networks is used. Ad Hoc Networking 17
30 4.2 Characteristics When designing protocols for ad hoc networks, whether it be routing protocols or security protocols it is important to consider the characteristics of the network and realize that there are many flavors of ad hoc networks. Mobile ad hoc networks generally have the following characteristics [6]: Dynamic network topology: The network nodes are mobile and thus the topology of the network may change frequently. Nodes may move around within the network but the network can also be partitioned into multiple smaller networks or be merged with other networks. Limited bandwidth: The use of wireless communication typically implies a lower bandwidth than that of traditional networks. This may limit the number and size of the messages sent during protocol execution. Energy constrained nodes: Nodes in ad hoc networks will most often rely on batteries as their power source. The use of computationaly complex algorithms there may not be possible. This also exposes the nodes to a new type of denial of service attack, the sleep deprivation torture attack [7] that aims at depleting the nodes energy source. Limited physical security: The use of wireless communication and the exposure of the network nodes increases the possibility of attacks against the network. Due to the mobility of the nodes the risk of them being physically compromised by theft, loss or other means will probably be bigger than for traditional network nodes. In many cases the nodes of the ad hoc network may also have limited CPU performance and memory, e.g. low-end devices such as PDA s, cellular phones and embedded devices. As a result certain algorithms that are computationaly or memory expensive might not be applicable. Besides the characteristics mentioned above that are due to the nature of ad hoc networking the following aspects that depend more on the application should also be considered. Network origin: spontaneous vs. planned Spontaneous: nodes with no prior relationship. Planned: nodes with a prior relationship, e.g. belonging to the same company, military unit etc. Network range: localized vs. distributed Localized: the network nodes are within physical range, e.g. the same room. Distributed: the nodes are distributed over a large area without the possibility of physically interacting. Node capabilities: uniform vs. diverse Uniform: all nodes have approximately the same capabilities in terms of power source, CPU performance and memory size etc. Diverse: the nodes capabilities differ significantly, certain nodes may be high-end computers while other are e.g. embedded devices. 18 Ad Hoc Networking
31 Network transiency: short term vs. long term Short term: nodes come together once and create an ad hoc network, when finished no knowledge is kept about the other nodes.these networks typically only persist during a relatively short time period, i.e. less than a few hours. Long term: the same nodes will probably be part of the same ad hoc network multiple times and therefore save information about the other nodes for future use. These networks will persist during a longer time period. This also includes ad hoc networks that may only persist during a short time period, but that instead are created frequently. Each of the aspects mentioned above will now be discussed with regard to how they affect the implementation of security services Network Origin This aspect effects what assumptions or prerequisites that can be made on the nodes in the network. E.g. if it is a planned ad hoc network, it can perhaps be assumed that the nodes can be supplied with some initial data structures such as certificates, passwords, user names etc. However, if the network is spontaneous no such assumptions can be made Network Range Depending on the actual physical topology and distribution of the nodes in the ad hoc network, certain techniques may not be applicable. The most obvious situation is a technique that requires physical interaction. Such a technique obviously cannot be used in a highly distributed ad hoc network Network Capabilities If the capabilities of the nodes in the network are diverse, certain techniques may not be directly applicable. A certain technique may be applicable to a subset of the nodes but completely unusable on the rest of the nodes. An example of this could be the use of public key cryptography; although this is not an issue for high-end CPU s it may not be feasible for embedded devices Network Transiency The longevity of the ad hoc network may influence the allowed complexity of some initialization phase. E.g. for a network consisting of nodes that will frequently join in an ad hoc network it may be tolerable with a more complex initialization phase than that of a network that will only last for a short time and will not reoccur. 4.3 Applications To motivate the development of ad hoc networking protocols, there needs to be applications where the properties of ad hoc networking are beneficial. This section will cover some applications where this is the case. Although some have been implemented many are still in the early research phase. Ad Hoc Networking 19
32 4.3.1 Military Tactical Networks The first application of ad hoc networking was in the military domain. Ad hoc networking enables battlefield units to communicate anywhere and anytime, without the requirement of any fixed infrastructure. The fact that every node forwards packets also provides for a robust network. The loss of any one unit will not disrupt the network since there will (hopefully) be other units that can still provide packet forwarding services. Examples of military applications are the Tactical Internet [1] and the Saab NetDefence concept [8] Personal Area Networks The concept of personal area networks is about interconnecting different devices used by a single person, e.g. a PDA, cellular phone, laptop etc. In this case the PDA or the laptop will connect with the cellular phone in an ad hoc fashion. The cellular phone can then as an example be used to access Internet. Another example could be when a person holding a PDA comes within communication range of a printer. If both the PDA and the printer were ad hoc enabled the PDA could automatically get access to the printing services Sensor Networks Sensor networks [9] are ad hoc networks consisting of communication enabled sensor nodes. Each such node contains one or more sensors, e.g. movement-, chemical- or heat sensors. When a sensor is activated it relays the obtained information trough the ad hoc network to some central processing node where further analysis and actions can be performed. Such sensor networks may consist of hundreds or thousands of sensors and can be used in both military and non-military applications, e.g. surveillance, environmental monitoring etc. Sensor networks differ significantly from the other types of ad hoc networks described in this section. The most significant difference is the small size, extremely limited power resources and processing power of the sensor nodes Collaborative Networking This application of ad hoc networking may be the most intuitive. The simplest example is when a group of people are attending a meeting and need to share information between their laptops or PDAs. If these devices were ad hoc enabled they could dynamically set up a network consisting of the meeting participants and thus enable the sharing of the information. Without ad hoc networking, a great deal of configuration and setup would be required to accomplish this task. 20 Ad Hoc Networking
33 4.3.5 Disaster Area Networks Ad hoc networking allows for the quick deployment of a communication network in areas where no fixed infrastructure is available or where the fixed infrastructure has been destroyed by natural disasters or other events. Thus such networks could be used to improve the communication among rescue workers and other personnel and thereby support the relief efforts. Ad Hoc Networking 21
34 22 Ad Hoc Networking
35 5 Partially Distributed Certificate Authority This solution proposed by Zhou and Hass [10] uses a (k, n) threshold scheme to distribute the services of the certificate authority to a set of specialized server nodes. Each of these nodes is capable of generating a partial certificate using their share of the certificate signing key sk CA, but only by combining k such partial certificates can a valid certificate be obtained. The solution is suitable for planned, long-term ad hoc networks. Since it is based on public key encryption it requires that the all the nodes are capable of performing the necessary computations. Finally it assumes that a subset of the nodes are willing or able to take on the specialized server role. 5.1 System Overview The system contains three types of nodes; client, server and combiner nodes. The client nodes are the normal users of the network while the server and combiner nodes are part of the certificate authority. The server nodes are responsible for generating partial certificates and storing certificates in a directory structure allowing client nodes to request for the certificates of other nodes. The combiner nodes which are also server nodes are responsible for combining the partial certificates into a valid certificate. Although not stated implicitly by the authors the system also has an administrative authority which will be termed the dealer. The dealer is the only entity in the system that has knowledge of the complete certificate signing key sk CA. Every node in the network has a public/private key pair and it is the responsibility of the dealer to issue the initial certificate for the nodes public key as well as distributing the public key pk CA of the certificate authority which is needed to verify the certificates. The certificate authority as a whole has a public/private key pair, pk CA /sk CA of which the public key is known to all network nodes. The private key sk CA, is shared among the server nodes according to Shamir s secret sharing scheme. Figure 11 illustrates the different components of the system. Partially Distributed Certificate Authority 23
36 Figure 11. System architecture showing three server nodes of which one is also a combiner. 5.2 Certificate Issuing Before any node may join the network it must first obtain a valid certificate from the dealer off-line. A the same time the node should be supplied with the CA s certificate along with any other parameters that are required. 5.3 Certificate Renewal The certificates are only valid for a certain amount of time and therefore need to be renewed before they expire. When a node wishes to renew its certificate, it must request a certificate renewal from a minimum of k server nodes. If the request is granted, each of these k server nodes generates a partial certificate with a new expiration date. These partial certificates are then sent to a combiner, which could be one of the k servers, which then combines the partial certificates. If any of the servers are compromised they may generate an invalid partial certificate which they then send to the combiner. The certificate produced by the combiner will then also be invalid. This type of denial of service attack is prevented by verifying the validity of the certificate before accepting it. If the combiner detects that the certificate is invalid it will request a new set of partial certificates until a valid certificate is obtained. If a node changes its private/public key pair it will need to update its certificate with the new public key, this is accomplished in a similar way as the renewal. 24 Partially Distributed Certificate Authority
37 5.4 Certificate Retrieval The server nodes are responsible for storing the certificates of all nodes in the network. This allows any nodes requiring the public key of any other nodes to simply request the corresponding certificate from any of the server nodes. This service requires that all nodes must register their certificate with the servers when they initially join the network. The servers must also have a mechanism of synchronizing their certificate directories in the case of updates and renewal. 5.5 System Maintenance The maintenance of the certificate authority consists of two main parts; the issuing of the initial shares and the proactive update of the shares to protect against mobile adversaries. The share update can also allow the system to change its configuration, e.g. from a (3, 8) to a (2, 5) threshold scheme. This could be useful e.g. if some of the servers have been compromised or for some other reason are unavailable. During the bootstrapping of the network the dealer generates n shares of the CA s private key sk CA as described in section and supplies each of the n servers with a share. At periodic intervals the servers update their shares of the CA s private key sk CA. At the beginning of the update, each server generates a random (n, k) sharing of 0 and distributes a share to each of the other servers, each of these shares are called subshares. Each server now has n subshares from different servers which are added to their old share giving them their new updated share. See section for the mathematical details on proactive secret sharing. Figure 12 illustrates the share update mechanism. Figure 12. Illustration of the share update mechanism [10]. During the share update a malicious server can potentially launch a denial of service attack against the distributed CA by generating invalid subshares. When the other servers use these to update their old shares the updated share will also be invalid, effectively preventing the correct Partially Distributed Certificate Authority 25
38 generation of certificates. To prevent such an attack the authors propose using a verifiable secret sharing scheme, see section This allows the servers to validate each of the subshares before using them. Due to the highly dynamic topology of ad hoc networks, all servers might not be connected during the share update. Therefore, mechanisms must be in place to handle such situations. An example would be if the network is segmented into two parts. The servers in each part may update their shares independently of each other. If the network later merges, the shares held by the servers will be inconsistent. A mechanism that deals with this is mentioned by the authors but no details about it are given. 26 Partially Distributed Certificate Authority
39 6 Fully Distributed Certificate Authority This solution is first described by Luo and Lu in [12] and later analyzed by Luo et al in [13] and [14]. Its uses a (k, n) threshold scheme to distribute an RSA certificate signing key to all nodes in the network. It also uses verifiable and proactive secret sharing mechanisms to protect against denial of service attacks and compromise of the certificate signing key. Similar to the solution presented in chapter 5, this solution is aimed towards planned, longterm ad hoc networks with nodes capable of public key encryption. However, since the service is distributed among all the nodes when they join the network, there is no need to elect or choose any specialized server nodes. 6.1 System Overview In this solution, the capabilities of the CA are distributed to all nodes in the ad hoc network, see figure 13. Any operations requiring the CA s private key sk CA can only be performed by a coalition of k or more nodes. The services provided by the CA can be grouped as certificate related services and system maintenance services. The certificate related services include certificate renewal and revocation. The system maintenance services include incorporating joining nodes into the CA, i.e. provide them with their share of the CA s private key sk CA. This service is called share initialization. The system maintenance also includes proactively updating the shares of the CA s private key to protect it from being compromised. This service is termed share update. Figure 13. Fully distributed CA service where all nodes in the network are equals and each hold a share of the signing key. The availability of the service is based on the assumption that every node will have a minimum of k one-hop neighbors and that the nodes are provided with a valid certificate prior to their joining the network. The system then provides services to maintain and update these initial certificates. Fully Distributed Certificate Authority 27
40 6.2 System Maintenance This section describes the steps required to setup and maintain the distributed CA service. The maintenance is required to handle the joining of new nodes and to protect the service against attackers who try to compromise the CA service System Bootstrapping During the system bootstrapping phase, the administrative authority responsible for the ad hoc network (known as the dealer) initializes the first k nodes. The initialization includes providing the nodes with their own certificates cert id, the CA s certificate cert CA and their shares of the CA s secret key sk CA. The bootstrapping phase is illustrated in figure 14. Figure 14. Share initialization during the bootstrapping phase. The dealer provides each of the initial nodes with their share. The dealer is the only entity who has access to the certificate signing key sk CA and he can therefore issue the initial certificates mentioned above. To initialize the first k nodes of the network the following steps are performed: 1. The dealer generates the sharing polynomial fx ( ) = a 0 + a 1 x + + a k 1 over Z N where a 0 = sk CA. 2. Each of the initial k nodes, identified by id i, i = 1,, k are securely supplied with their polynomial share S i = fid ( i )mod N. 3. The dealer broadcasts k public witnesses of the sharing polynomial s coefficients g a 0 g a k 1 {,, } after which it destroys the polynomial and quits. x k 1 28 Fully Distributed Certificate Authority
41 4. Each node verifies that it received a valid share in step 2 above by checking g S j = g a 0. After the bootstrapping of the first k nodes the dealer is only responsible for the registration, initialization and initial certification of any new nodes joining the network Share Initialization g a 1 ( ) id j g a k 1 ( ) id j k 1 Any new nodes joining the network are incorporated into the distributed CA by being provided with their own share of the CA certificate signing key sk CA. Since the dealer is no longer part of the network this share distribution mechanism needs to be handled by the nodes that have already been initialized as illustrated in figure 15. Figure 15. Share initialization during operational phase, due to joining node. Those nodes already part of the CA service generate a new share from their shares and initialize the new node. A node i already initialized can generate a partial share S pi, = S i l idi ( id p ) for the joining node p, l idi ( x) is the Lagrange term defined in section By combining k such partial shares the complete share S p for the joining node can be generated as follows (see section ): S p k k S pi, S i l idi id p i = 1 i = 1 = = ( ) = fid ( p )mod N However the joining node can only be allowed to know the value of the sum of the k subshares, not the value of the subshares themselves. The reason for this is that l idi ( id p ) is a publicly known value and therefore the S i can be derived, thereby revealing the secret shares of the nodes in the coalition. Fully Distributed Certificate Authority 29
42 To protect the secrecy of the coalition nodes secret shares, they shuffle their partial shares before sending them to the joining node. Figure 16 illustrates how the shuffling scheme works in the case where the coalition consists of two nodes, node 1 and node 2. First node 1 and 2 secretly agree on a random shuffling factor d 1,2 where one of the nodes treats it as a positive number and the other node treats it as a negative number. The two nodes then add the shuffling factor to their respective subshares and send the resulting shuffled subshares to the joining node 3. Node 3 then adds up the shuffled subshares resulting in its complete share S 3. In the case that k is larger than 2, i.e. the coalition consists of more than 2 nodes, each pair of nodes {i,j}in the coalition agree on a shuffling factor d i,j. Therefore the number of shuffling factors that need to be distributed are k(k-1)/2, where k is the size of the coalition. Figure 16. Complete shuffling scheme. Below is a step by step description of the share initialization described above, where node p is the node that wishes to be initialized: 1. Node p locates a coalition B of k nodes, B = {id 1,..., id k } and broadcasts a initialization request. 2. Each node in the coalition verifies the certificate of node p, cert p and checks that it hasn t been revoked. If the verification fails the request is denied. 3. Each pair of nodes {i,j}in the coalition now need to agree on a shuffling factor d i,j. One of the nodes generates the shuffling factor and encrypts it with the public key of the other node and signs it. It also generates and signs a public witness g d ikj of the shuffling factor. The witness is needed to be able to detect and identify any misbehaving coalition nodes that generate an invalid shuffled partial share. The shuffling factors and their witnesses are then sent to the requesting node p. 4. Node p distributes the shuffling factors and the witnesses received to all the coalition nodes. 30 Fully Distributed Certificate Authority
43 5. Each coalition node j now generates the partial share = S j l idj ( id p ) for node p and shuffles it using the shuffling factors received in the previous step. The shuffled partial share S p j is generated as follows: where 6. Each coalition node j sends its shuffled partial share to node p. 7. Node p verifies each of the received shuffled partial shares by checking that g S j p g S p g d i, j ( ) sign id i id j =, where g S p g a 0 g a 1 ( ) id p g a k 1 ( ) id p =. If the verification fails node p drops the invalid shuffled share and issues a new initialization request from a new coalition excluding the misbehaving node that was detected. Node p also revokes the misbehaving nodes certificate and floods an accusation against it, see section 6.5 for more details on the certificate revocation mechanism. 8. If all the shuffled partial shares where correct, node p can obtain its new share by add- j ing the shuffled partial shares = S p mod N. After being initialized with its share of the certificate signing key sk CA the node has become part of the CA and can participate in the provision of the CA s service, including certificate renewal and revocation as well as initializing any joining nodes with their share of the certificate signing key sk CA Share Update k S p j i = 1, i j = S p j + i = 1, i j As described in on page 10, proactive secret sharing is required to protect against attackers that (given enough time) can compromise k or more nodes and thereby be able to reconstruct the shared secret, in this case the certificate signing key sk CA. As illustrated in figure 17 the lifetime of the network is divided up in time periods, where each time period consists of two phases, the operational phase and the share update phase. During the operational phase nodes can renew their certificate and request share initialization. During the share update phase all nodes that have been initialized update their shares in a distributed manner. During the share update phase the following three steps are performed: Collaborative generation of the update polynomial f update (x). Distribution of the update polynomial to all network nodes. k ( ) S p Distributed evaluation of the share update S p = f update ( id p ) of all nodes p. S p j [ sign( id i id j ) d ij, ]mod N sign( x) k j = 1 1, x 0 = 1, x > 0 S p j S p j, k 1 Fully Distributed Certificate Authority 31
44 Operational Phase Share Update Phase Figure 17. Different phases during the lifetime of the ad hoc network. At the beginning of the share update phase each node initiates the update process with the probability 1 nˆ where nˆ is a known estimate of the total number of nodes in the network. The node that decides to initiate the share update then locates a coalition of k nodes that generate the update polynomial f update ( x) = b 1 x+ b 2 x b k 1 x k 1 mod N. Each of the polynomial s coefficients is then encrypted, signed, and flooded in the network. At this point every node in the network has received { E pkca ( b 1 ),, E pkca ( b k 1 )} which it has authenticated by verifying the signatures. This prevents an attacker from being able to flood a false update polynomial. Each node p in the network can now generate its update share S p = f update ( id p ) ; however since the polynomial is encrypted it must request the evaluation of its update share from a coalition of k nodes. Each of the nodes in the coalition returns a partial update share to the requesting node p who adds them to obtain its complete update share S p. Adding this update share to the nodes current share provides the updated share of sk CA. During the share update phase two different versions of shares can be present since not all nodes update their shares simultaneously. However, as long as the nodes in the coalition use the same version of their shares, the services required can be performed. Therefore the nodes keep the old share until the share update phase is complete. At this point they destroy the old share and thereafter only use the updated share until the next share update phase. 6.3 Certificate Issuing This solution is based on the assumption that all nodes have been initialized, registered, and issued a valid certificate before they join the network. The distributed CA never issues new certificates, it only manages certificates once they have been initially created. The responsibility of initializing, registering, and certifying new nodes belongs to the administrative authority responsible for setting up the network, i.e. the dealer. 6.4 Certificate Renewal Since certificates are only valid for a limited time period they must be renewed before they expire. When a node p wishes to renew its certificate cert it requests a certificate renewal from a coalition of k of its one-hop neighbors. Each node i in the coalition then first checks that the old certificate has not already expired and that it has not been revoked. If they agree to serve the request they each generate a new partial certificate cert i and returns it to the requesting 32 Fully Distributed Certificate Authority
45 node p. Node p then combines the k partial certificates to obtain its updated certificate cert up-. The details of this process is described below: dated 1. Node p that wishes to update its certificate broadcasts a certificate renewal request to its one-hop neighborhood, see figure 18. Figure 18. Node requesting for certificate renewal. 2. Each of the nodes that receive the request, check that the requesting nodes current certificate cert has not expired or been revoked. If the certificate is still valid and the receiving node i decides to serve the request it generates the partial certificate cert i by using its share of the CA s certificate signing key sk CA. The partial certificate is generated as follows; cert i = ( cert) Si mod N where S i is node i s share of the sk CA. The observant reader will realize that its not actually a partial certificate that s generated but a partial certificate signature. However the authors use the term partial certificate and to be consistent with their terminology the same term is used in the following description. 3. Each node i serving the request randomly generates a u and calculates A 1 = g u and A 2 = cert u. It then calculates c Hash g S i = (, cert i, A 1, A 2 ) and r = u c S i. The values A 1, A 2, and r are used to enable the verification of the generated partial certificate cert p. 4. Each node i returns cert i, A 1, A 2, and r to the requesting node p. 5. Node p now chooses k of the partial certificates received (the set of partial certificates referred to as B) and verifies each of them by checking that g r g S i ( ) c = A 1 and that cert r ( cert i ) c = A 2. Node p can generate c by applying the same hash function used in step 3 above. A 1, A 2 and r are known from step 4 and g S i g a 0 g a 1 ( ) id i g a k 1 ( ) id i = sharing polynomial s coefficients. k 1 can be calculated using the public witnesses of the Fully Distributed Certificate Authority 33
46 6. If any of the partial certificates failed the verification, the certificate of the node that generated the invalid certificate is revoked, see 6.5 for details on certificate revocation. A different partial certificate is then chosen from those received in step 4 and validated as described in step 5. If less than k valid certificates are received the certificate renewal fails. 7. Node p combines the k valid partial certificates to obtain a candidate certificate cert updated '. cert updated ' = ( cert) i B = S i l idi ( 0) i B ( cert i ) l id ( 0) i ( cert) t N sk CA = 8. The updated certificate should be cert updated cert sk CA ( cert) t N sk CA =. To obtain the updated certificate an algorithm called the k-bounded offsetting algorithm, illustrated in figure 19, is applied to the candidate certificate : Y 0 = cert updated ' 1: Z = cert N mod N 2: j = 0, W = 1 3: while j k do 4: Y = Y 0 WmodN 5: W = W ZmodN 6: if( cert Y pkca ( mod N) ) then 7: updated certificate found, return Y 8: end if 9: j = j : end while 6.5 Certificate Revocation Figure 19. k-bounded coalition offsetting algorithm. The certificate revocation mechanism is based on the assumption that all nodes monitor the behavior of their one-hop neighbors and maintain their own certificate revocation lists. If a node discovers that one of its neighbors is misbehaving it adds its certificate to the CRL and floods an accusation against the node. Any node receiving such an accusation first checks its CRL to verify that the accusation didn t originate from a node whose certificate has been 34 Fully Distributed Certificate Authority
47 revoked. If the accusers certificate has been revoked the accusation is ignored. However, if the accusation originated from a valid node, the accused node is marked as suspect. When a threshold of legitimate accusations, i.e. k accusations, against the same node are received the accused node s certificate is revoked. Figure 20 illustrates the sequence of events when a misbehaving node D is detected by two nodes B and C. First nodes B and C revoke node D s certificate and thereafter they flood an accusation. Upon receiving the accusations, node A first validates them by checking its own CRL to make sure that the certificate of node B or C hasn t been revoked. Since a threshold of accusation has been received (in this example k = 2) node A also adds node D to its CRL. Node A then retransmits the accusations of node B and C. Node E and F receiving these accusations then perform the same steps as node A. Figure 20. Certificate revocation and distributed maintenance of certificate revocation lists. In the example above node A retransmitted the accusations by node B and C to flood the accusations throughout the network. However the accusations only need to be flooded a limited number of hops. The reason for this is that the certificates are only valid for a limited time t cert, after which they will be implicitly revoked. Therefore it is enough to flood the accusations as many hops as required to prevent the accused node of renewing its certificate. Figure 21 illustrates this. At time t 0 the misbehaving node is detected and the arc shows the distance it can cover before its certificate is implicitly revoked. At time t 1 node D is within range of node A and still has a valid certificate, therefore node A must be informed by nodes B and C of the accusations. At time t 2 however, node D is within range of node F but it no longer has a valid certificate since it has been implicitly revoked. Therefore node F does not need to be informed of the accusations against node D. Fully Distributed Certificate Authority 35
48 Figure 21. Limiting flooding of accusations. The number of hops that the accusation must be flooded is determined by the following relation. TTL t cert 2s max d TTL is the number of hops that the accusation should be flooded, s max is the maximum speed of a node and d is the one-hop transmission range of the wireless media used. A node that has had its certificate revoked by a certain node can be removed from the CRL. This could happen if one of the accusers is itself added to the CRL. If this node has thrown any accusations, they are nullified and if this brings the number of accusations against a convicted node below k, its revocation is also nullified. In the example illustrated by figure 20, node D s certificate was revoked by node A since it was accused by nodes B and C. However, if later one of these accusers, e.g. node B, is convicted and its certificate revoked, node A will remove node D from its CRL. 36 Fully Distributed Certificate Authority
49 7 Self Issued Certificates This solution is proposed by Hubaux et al [15] and provides a public key management solution similar to PGP [16] in the sense that certificates are issued by the users themselves without the involvement of any certification authority. Unlike the previous public key based solutions presented, this one is intended to function in spontaneous ad hoc networks where the nodes don t have any prior relationship. However, due to this it requires an initial phase during which its effectiveness is limited and therefore it is unsuitable for short-term networks. Since it is based on public key encryption it requires that the nodes have sufficient computational capacity. 7.1 System Overview This solution, like PGP, deals with the problem of distributing public keys in an authenticated manner. Unlike traditional PKI solutions, in PGP the public keys aren t certified by some trusted third party, e.g. a CA. Instead each user has the capability of certifying the public keys of other users. It is then up to each user to determine how much trust to place in a specific certificate. Figure 22 illustrates a simple example of how PGP works. Bob has issued a certificate to Chris thus stating that pk Chris really is the public key belonging to Chris. Alice has also issued a certificate to Bob, indicating that pk Bob is really the public key belonging to Bob. Alice also trusts Bob not to issue any false certificates, thus Alice will trust any certificates issued by him. Therefore having cert Alice, Bob and cert Bob, Chris, Alice can verify that pk Chris is authentic. She can then securely communicate with Chris even though they have never met. Figure 22. Example of a certificate chain. In PGP, public key servers, i.e. certificate directories are used to distribute certificates; however in ad hoc networks no such servers are available and therefore the solution proposed by Hubaux et al relies on the users to distribute and store the certificates themselves. Each user stores a small number of certificates that have been issued. When two users wish to authenti- Self Issued Certificates 37
50 cate each others public keys, they try to find a certificate chain using only the certificates stored in their combined local certificate repositories, see figure 23. Figure 23. Building certificate chains using only locally stored certificates. The certificate selection algorithm proposed by the authors, the Shortcut Hunter algorithm is based on a phenomenon known as the small-world phenomenon and it only provides a probabilistic guarantee of obtaining a certificate chain as described above. 7.2 Small-Worlds The theory behind the small worlds phenomenon is beyond the scope of this thesis. However, small world graphs can be described as graphs that have a small average diameter and are highly clustered. A popular example of a small-worlds phenomena is a principle known as the six degrees of separation principle. This principle states that any two people are acquainted to each other through a maximum of six other people and is illustrated in figure 24. Figure 24. Example of the small-world phenomenon. A concept used in the small-world graph theory is the shortcut concept. In a graph, a shortcut is defined as an edge, upon whose removal, the shortest undirected path between the vertices 38 Self Issued Certificates
51 previously connected by that edge becomes strictly larger than two [15]. Figure 25 illustrates the shortcut concept. Compared with figure 24, Alice is connected to Bob through three other people instead of five. 7.3 Shortcut Hunter Algorithm Figure 25. Example of a shortcut in a small-world. As described earlier, each user stores a limited number of certificates. These certificates can be placed in three categories: 1. Certificates issued by the user. 2. Certificates issued to the user. 3. Other certificates. Obviously a user knows which certificates it has issued and can easily store these in its local certificate repository. E.g., when Alice issues a certificate to Bob she stores the certificate locally. However she also informs Bob that she has issued a certificate for him. This way all users obtain the certificates belonging to the first two categories mentioned above. The certificates stored that belong to the third category are selected using a suitable algorithm. The Shortcut Hunter is the name of the certificate selection algorithm proposed by the authors. The algorithm models the set of all certificates issued and the corresponding users as a smallworld graph as illustrated in figure 26. A certificate is represented by a directed edge, e.g. if Alice has issued a certificate to Bob there is a directed edge from the vertex representing Alice to the vertex representing Bob Self Issued Certificates 39
52 Figure 26. Small-world graph modeling certificates and users. The Shortcut Hunter algorithm consists of two rounds. One round selects an outgoing certificate chain and the other round an incoming certificate chain. The certificates selected are determined by examining the number of shortcuts that the certificate issuers or subjects have. The round that selects the outgoing certificate chain is presented in figure 27. The round for the incoming certificate chains is similar. V(S) represent the vertices in selected subgraph, E(S) the corresponding edges and E(G) all the edges in the complete small-world graph. u represents the vertex executing the algorithm and s is a parameter specifying the maximum length of the selected outgoing certificate chain. s corresponds to the total number of certificates that are stored by each user. N represent those vertices that have been processed but not chosen. To exemplify the algorithm, the small-world graph in figure 26 will be used, where Alice is the user executing the algorithm. The maximum length of the certificate chain selected is s = 3. Since she has only issued one certificate cert Alice, Chris, it is selected in the first iteration. Next the certificates issued by Chris are examined. Here Trent and Bob both have three shortcuts and therefore one of them is chosen randomly, e.g. Trent. cert Chris, Trent is then added to Alice s outgoing certificate chain. Finally the certificates issued by Trent are examined and since he has only issued one, it is selected. Since three certificates have been selected the algorithm stops, resulting in Alice storing {cert Alice, Chris, cert Chris, Trent, cert Trent, Jane } in her local certificate repository. Similarly an incoming certificate chain is chosen. 40 Self Issued Certificates
53 1. VS ( ) = { u}, ES ( ) =, N =, w = ui, = 0 2. T = {( w, z) EG ( ); z V( S)and z N} 3. If T = then (a) If w = u then goto 9. (b) Add w to N (c) Remove (v, w) from E(S) and w from W(S) (d) w = v, i = i - 1 (e) Goto Select the edge ( wz, ) T i.e. the certificate cert w, z where the terminating vertex z, i.e. the certificate subject has the highest number c of shortcuts. If several such edges exist choose one randomly. 5. If c = 0 select the edge ( wz, ) T where z has the largest number of outgoing edges, i.e. the largest number of issued certificates. If several such edges exist choose one randomly. 6. Add (w, z) to E(S) and z to V(S) 7. w = z, i = i If i < s then goto Return the outgoing certificate chain represented by V(S) and E(S) and stop. Figure 27. Shortcut Hunter algorithm - outbound certificate chain selection round. The Shortcut Hunter algorithm described selects a set of certificates that provides a single incoming and outgoing certificate chain. The authors also propose a modified algorithm which they call the Star Shortcut Hunter algorithm. It is basically the same algorithm but it executes each round multiple times, which results in multiple outgoing and incoming certificate chains being selected as illustrated in figure 28. Self Issued Certificates 41
54 Figure 28. The Shortcut Hunter vs. the Star Shortcut Hunter algorithm. 42 Self Issued Certificates
55 8 Secure Pebblenets This solution proposed by Basagni et al [17] provides a distributed key management system based on symmetric encryption. The solution provides group authentication, message integrity and confidentiality. This solution is suitable for planned and distributed, long-term ad hoc networks consisting of low performance nodes that are unable to perform public key encryption, e.g. sensor networks. 8.1 Overview All network nodes share a secret group identity key k GI which is used to provide authentication and to derive additional keys used to provide confidentiality. The group identity key s cryptoperiod lasts for the whole duration of the network while the keys used to provide confidentiality are updated on regular intervals. The network s lifetime is divided up in time periods, each consisting of three phases as illustrated in figure 29. During the operational phase the nodes use the group identity key k GI to provide authentication and message integrity, and a traffic encryption key k TEK to provide confidentiality. To enable the distributed update of the traffic encryption key, the network is segmented into clusters during the cluster generation phase. Each cluster has a node designated as the cluster head. During the key update phase one of the cluster heads is elected key manager and is responsible for generating a new traffic encryption key and distributing it to the other cluster heads. Each of the cluster heads then distributes the new traffic encryption key to its cluster members. t update Operational Phase Cluster Generation Phase Key Update Phase 8.2 System Requirements Figure 29. The different phases during the network lifetime. This section specifies the system requirements that are either explicitly mentioned by the authors or that are implied. The solution is intended to be used in large ad hoc networks consisting of nodes with limited processing, storage and power resources. Therefore public key cryptography is not feasible. Due to the complexity involved in key distribution, authentication is limited to group membership since this only requires that all nodes in the network share one cryptographic key. If authentication of individual nodes is required, n ( n 1) 2 symmetric keys need to be managed. Secure Pebblenets 43
56 The network nodes have tamper-resistant storage where the group identity key k GI is stored. This prevents any attacker from being able to gain access to it by theft or other means. It is also assumed that all nodes are honest and that no malicious nodes are present in the network. Since the network lifetime consists of a number of time periods during which the nodes update the encryption key, the nodes must maintain a loosely synchronized clock Non Cryptographic Parameters Prior to joining the network all nodes must be equipped with the following parameters: the key update period, t update a unique node id, id i a statistical average delay The key update period specifies the time between key updates, see figure 29. The shorter update period used the higher security is obtained, however the shorter the update period is, the more resources are used. Each node must have a unique id, which is used during the cluster generation phase and to elect the key manager. The statistical average delay,, is used to minimize the risk of multiple nodes becoming key managers Cryptographic Parameters The following cryptographic parameters are used by the network nodes. group identity key k GI : used as seed for other keys and for authentication traffic encryption key k TEK : used for encryption of application data cluster key k C : used to encrypt intra cluster communication backbone key k B : used for encryption of cluster head communication hello key k H : used during cluster head selection The group identity key k GI and the traffic encryption key k TEK are used during the operational phase while the other keys are only used during the cluster generation and the key update phase. The backbone and the hello keys are derived from the group identity key k GI as described below. k B 0 = k GI k H i k B i i 1 hk B = ( ) = h i ( k GI ) + k GI i = hk ( H ) = h i 1 ( ) k i represents the key used during the i:th update period and h j represents j applications of a hash function h. 44 Secure Pebblenets
57 The traffic encryption key is randomly generated by the key manager during each key update phase and the cluster key k C is generated by each cluster head and used for intra cluster communication Non Cryptographic Functions During the cluster generation and the key update phase all nodes need to be able to calculate a weight that represents their current status with regard to remaining battery power, distance to other nodes etc. This weight is then used to determine which nodes that become cluster heads and finally which node that becomes the key manager. The weight is calculated as follows: w id = k K c k P k Here c k is the weighting factor for the system parameter P k and K is the set of system parameters Cryptographic Functions The following cryptographic functions are required by all nodes in the network: one-way hash function symmetric encryption algorithm secure key generation algorithm The hash function and the symmetric encryption algorithm are used to provide authentication and confidentiality while the secure key generation algorithm is needed to generate a new traffic encryption key k TEK, during the key update phase. 8.3 Cluster Generation Phase During the cluster generation phase each node decides, depending on its weight w and the weights of its one hop neighbors, if it is to be a cluster head or an ordinary cluster member. After all the cluster heads have been selected, they must discover each other and setup a cluster head backbone which subsequently will be used to distribute the new traffic encryption key. The whole cluster generation phase consists of three main steps: 1. Neighbor discovery. 2. Cluster head selection. 3. Cluster head backbone creation. During the neighbor discovery each node i calculates its weigh w i and broadcast the following message to all its one hop neighbors: E i ( w kh i id i MAC kgi ( w i id i )) Here the hello key k H as described in is used to provide confidentiality and the group identity key to provide message authentication. Secure Pebblenets 45
58 After receiving the message above from all its neighbors a node i decides to become the cluster head if it has the highest weight, otherwise is decides to become an ordinary cluster member. However, it only decides after all its neighbors with higher weights have decided on their role. The node then broadcasts the following message to its neighbors informing them of its role: E i ( w kh i id i role MAC kgi ( w i id i role) ) Here the value of role can be either CH or id j. If role = CH, the node has decided to be cluster head, otherwise id j identifies the cluster head that the node has decided to belong to. After all the cluster heads have been selected each cluster head c generates the random cluster key k C and distributes it to the cluster members with the following message: E kh i i i ( id c k C ( id c k C )) MAC kgi During the third step of the cluster generation phase, the cluster members inform the cluster head of the id and the weight of any other cluster heads within three hops. After this the network has been segmented into clusters that are interconnected through an inter cluster backbone as illustrated in figure 30. Figure 30. Cluster segmentation and cluster backbone generation. 46 Secure Pebblenets
59 8.4 Key Update Phase During the key update phase one of the cluster heads selected in the previous phase will become the key manager and generate a new traffic encryption key that will be distributed among the other cluster heads. To select a key manager all cluster heads first decide whether they are a potential key manager. This is done by checking whether any of its neighboring cluster heads has a higher weight. If not, the node decides it is a potential key manager. After an exponential delay with the average i (see 8.2.1) the potential key manager then generates a new traffic encryption key k TEK which is subsequently distributed to all other cluster heads over the cluster backbone with the following message: E kb i i ( id c w c k TEK MAC kgi ( id c w c k TEK )) If another potential key manager receives this message it will do one of the following: 1. If it has not already generated a new traffic encryption key it will cancel its timer and accept the message. 2. If it has generated a new traffic encryption key it will discard the received key if it has a higher weight than the cluster head that has generated the received key. 3. If it has generated a new traffic encryption key but has a lower weight than the cluster head that generated the received key it will accept the received key as the new traffic encryption key. The new traffic encryption key is then distributed by each cluster head to its cluster members with the following message: E kc i i ( id c k TEK MAC kgi ( id c k TEK )) i i Secure Pebblenets 47
60 48 Secure Pebblenets
61 9 Demonstrative Identification This solution proposed by Balfanz et al [18] presents a mechanism for bootstrapping trust relationships in local ad hoc networks where the network nodes have no prior relationship with each other. Examples of such local ad hoc networks could be a group of people at a meeting wishing to setup a temporary network or a PDA wishing to temporarily connect to a printer. Since the solution doesn t require that the nodes have any prior relationship, it s suitable for spontaneous, localized ad hoc networks. It s unsuitable for distributed ad hoc networks since it requires that the nodes be in a close proximity of each other during the initial bootstrapping. It allows the participating nodes to have diverse capabilities, i.e. some limited to symmetric encryption while others are capable of public key encryption. 9.1 Overview The solution is based on what the authors call demonstrative identification and is similar to the concept of imprinting introduced by Stanjo and Anderson [7]. To establish initial trust, two nodes first exchange authentication data, termed pre-authentication data over a location-limited channel, which is separate from the main wireless links, see figure 31. Examples of such channels are infrared, physical contact, audio etc. Figure 31. Separate location-limited channel between two nodes. The concept of demonstrative identification can be illustrated with the following example. Consider a user with a PDA who wishes to connect to one of several printers. By using e.g. an infrared channel the user can identify the printer by going up to it and directing the infrared device towards it. Due to the characteristics of infrared communication the user can be assured that the authentication data exchanged originated from the chosen printer. Once the pre-authentication data has been exchanged, e.g. public keys, any traditional key agreement protocols, e.g. Diffie Hellman can be used over the main communication channel to establish a common key used to protect the communication. Using demonstrative identification and pre-authentication the authors describe different protocols for two-party and group key-exchange protocols. Demonstrative Identification 49
62 9.2 System Requirements This solution requires that all network nodes be equipped with the same location-limited communication device, e.g. infrared or audio and it only permits the key-exchange in local ad hoc network, i.e. ad hoc networks where the nodes are in close proximity to each other. 9.3 Two-Party Key-Exchange Two different two-party key-exchange protocols are presented. The basic protocol requires that both parties are capable of performing public key cryptography, the single public key protocol only requires that one party has this capability The Basic Protocol For two nodes A and B capable of public key cryptography to exchange a secret encryption key the following steps are performed: 1. Using the location-limited channel node A sends Hash(pk A ) to node B and node B sends Hash(pk B ) to node A. 2. Switching over to the main wireless channel the nodes now exchange their public keys. The received keys pk * A and pk * B are the authenticated by verifying Hash(pk * A ) = Hash(pk A ) and Hash(pk * B ) = Hash(pk B ). 3. If the verification was successful any public key based key-exchange protocols, e.g. Diffie-Hellman can now be used to exchange a shared secret Single Public Key Protocol In the case that one of the nodes is not capable of public key cryptography the following protocol can be used: 1. Using the location-limited channel, node A (capable of public key cryptography) sends node B, Hash(pk A ), and node B sends node A, Hash(s B ), where s B is a secret generated by B. 2. Switching over to the main wireless channel node A sends node B, pk A. 3. Node B authenticates the received key pk A * by verifying that Hash(pk A * ) = Hash(pk A ). 4. If the verification was successfull, node B sends ( ) to node A. 5. Node A decrypts the received message E and verifies that Hash(s * pka ( s B ) B ) = Hash(s B ). If the verification is successfull both nodes have successfully authenticated themselves and share a secret s B which can be used to generate a shared encryption key. This protocol assumes that the public key algorithm used has a computationally cheap encryption function. RSA is an example of such an algorithm, if e is chosen suitably. E pka s B 50 Demonstrative Identification
63 10 Password Authenticated Key Exchange This chapter describes key agreement protocols that can be used to secure the communication in a collaborative networking scenario as described in section A number of such group key agreement protocols, also known as conference keying protocols, have been devised. However, the majority of them require that the group members are authenticated prior to the execution of the protocol, e.g. using certificates Overview Asokan and Ginzborg [19] present a password authenticated group key agreement protocol that is an extension to a previous group key agreement protocol called the Hypercube protocol. The Hypercube protocol is based on the Diffie-Hellman key agreement protocol described in section. The extensions to the Hypercube protocol described in [19] include password authentication and improved fault tolerance. The focus of this description is on the password authentication extension. Asokan and Ginzborg consider a collaborative networking scenario where a group of people wish to set up a secure wireless network during a meeting. The meeting members have no means of authenticating the other members using e.g. digital certificates. Therefore a simple password is chosen and e.g. written on a whiteboard. Using this weak password the members can engage in the password authenticated Hypercube protocol which results in them sharing a strong secret. The key agreement protocol needs to be authenticated to protect against active attacks, e.g. man-in-the-middle attacks. In [20] a number of group key establishment protocols are compared along with the Hypercube protocol. However, neither of these protocols provide authentication The Hypercube Protocol The nodes participating in the protocol are arranged as the vertices in a d-dimensional cube, a hypercube. The protocol then consists of d rounds of two-party DH key exchange. During each round j = 1,..., d a node performs the two-party key exchange with its neighbor in the j:th dimension. In the first round each node i uses his own secret x i as the exponent. In the following rounds the key obtained from the previous round is used as the secret exponent. Figure 32 illustrates the Hypercube protocol where the number of participants is four, i.e. d = 2. In the first round nodes 1 and 2 perform a two-party DH key exchange, in parallel nodes 3 and 4 do the same. After the first round the pairs (1, 2) and (3, 4) share a common secret k 1,2 and k 3,4. In the second and final round nodes 1 and 3 perform a two-party DH key exchange, as do nodes 2 and 4. The key exchange in the previous round is now used as the secret exponent in the DH key exchange. E.g. node 1 sends g k 12, mod p to node 3 and node 3 sends g k 34, mod p to node 1. After the second round is complete all four nodes share a secret k. Password Authenticated Key Exchange 51
64 Figure 32. The Hypercube protocol used to provide four nodes with a common secret k = k 1,2,3,4. The protocol can be generalized to 2 d group members and the members are then arranged in a d-dimensional cube and the same steps as described above are performed. The authors of the original Hypercube protocol also propose a protocol called the 2 d Octopus protocol that can handle the case when the number of group members isn t an even power of two, see [21] for more details. The extensions to the Hypercube protocol presented by Asokan and Ginzborg [19] also handles the case where the number of group members is not an even power of Password Authentication Extension A protocol known as Encrypted Key Exchange (EKE) provides a two-party password authenticated DH key exchange. The two parties wishing to exchange a strong cryptographic key agree on a simple password p. Using this password they encrypt their public DH values and send to the other party. The receiving node can then decrypt the public value and calculate the shared secret k. The protocols proceeds as follows: 1. A B: A, E p ( g xa mod p) 2. B A: 3. A B: 4. B A: E p ( g xb mod p), E k ( c B ) E k ( c A, c B ) E k ( c A ) After receiving the message in step 1, B can extract g xa mod p and calculate the shared key k as k g x A = ( ) x B mod p. Likewise A can calculate the shared key after receiving the message sent in step 2. To verify that both parties share the same view of the shared key, i.e. that both know the simple password p and could decrypt the messages in steps 1 and 2, they exchange challenges c A and c B. Asokan and Ginzborg simply propose using EKE instead of the basic DH key exchange in each round of the Hypercube protocol. 52 Password Authenticated Key Exchange
65 11 Analysis This chapter discusses the issues that prevent traditional key management solutions from being directly applied in ad hoc networks. It also discusses threats that are of special significance when providing key management facilities in ad hoc networking environments. Then each of the key management solutions presented in the previous chapters is discussed and their pros and cons described. Finally the solutions are categorized and compared Traditional Key Management Solutions in Ad Hoc Networks Infrastructure Requirements The traditional key management solutions presented in chapter 3 have a number of requirements that make them unsuitable or even unusable in ad hoc networks. The use of a trusted third party to provide key management services implies that an organizational or administrative infrastructure is present. Such an infrastructure may be present in certain ad hoc networking applications, e.g. military networks or sensor networks but in many it will not, e.g. collaborative networking applications. Even in the presence of an organizational/administrative infrastructure, solutions based on the use of a trusted third party face problems. The obvious problem is that they rely on the availability of a central server. However, due to the lack of routing infrastructure and highly dynamic network topology in ad hoc networks, such availability cannot be assumed. Finally the very existence of a server infrastructure cannot be assumed in certain ad hoc network applications, e.g. in spontaneous ad hoc networks formed when two or more PDAs come within range of each other Threats in Ad Hoc Networks One of the most obvious threats in ad hoc networks is that of eavesdropping since all communication takes place over wireless channels. A more serious threat however, and one that complicates the matter of key establishment is that of active attacks. Due to the lack of routing infrastructure nodes participate in the forwarding of messages on behalf of other nodes as described in section 4.1. A direct consequence of this is that an attacker can easily modify messages and perform man-in-the-middle attacks. Therefore unauthenticated key establishment protocols such as Diffie-Hellman cannot be used. Since the nodes of ad hoc networks are often mobile and more exposed than traditional network nodes (e.g. desktop computers) the risk of compromise through theft or loss should generally be considered higher. Therefore any key management solution for ad hoc networks should have a revocation mechanism. This also implies that the straightforward approach of improving the availability of a TTP by distributing it to multiple nodes is inappropriate. The reason for this is that it weakens the security since it exposes more TTPs to attackers. If any of them are compromised the security of the whole network is compromised. In the case where the TTP is a CA a more suitable approach is to use a threshold secret sharing scheme to share Analysis 53
66 the secret among a number of nodes. The compromise of up to k-1 of these still leaves the security of the service intact. The threats mentioned above are not the only threats in ad hoc networks and they also exist in traditional networks. However, the effort required to perform the attacks is considerably smaller in ad hoc networks than in traditional networks. Figure 33 and figure 34 illustrate the difference between a man-in-the-middle attack in a traditional network and an ad hoc network. To perform the attack in the traditional network the attacker must first gain control of the router connecting Alice and Bob before he is able to perform the attack against Alice and Bob s communication. In an ad hoc network however, Alice and Bob use the attacker (but they don t know he s an attacker) as an intermediate node. The attacker can then easily insert new messages or delete or modify Alice and Bob s messages. If ad hoc networks become widely used it could even be assumed that programs will appear that allow even novice computer users to perform such active attacks. Such a scenario could be compared with the so called script kiddies, i.e. virus authors and other attackers that use available programs to automatically create new viruses. Figure 33. Man-in-the-middle attack in a traditional network. Figure 34. Man-in-the-middle attack in an ad hoc network. 54 Analysis
67 11.2 Partially Distributed CA This solution requires that a server- and organizational/administrative infrastructure is available and therefore is only applicable to a subset of ad hoc network applications. Viewed from a functional standpoint the solution has a number of faults or weaknesses of which the lack of a certificate revocation mechanism is the most critical. Any solution based on certificates should, considering the risk of compromise in ad hoc networks, provide such a mechanism. Also the solution requires that the server nodes store all of the certificates issued. This requires a synchronization mechanism that propagates any new certificates to all the servers. It also must handle the case when the network has been segmented and later re-joined. a) b) c) Figure 35. Synchronization problem due to segmentation. Analysis 55
68 Consider the scenario illustrated in figure 35. In a) all the nodes are interconnected in the same ad hoc network and keeping the certificate repositories synchronized is no problem. Later in b) the network is segmented into two ad hoc networks and in each of these, subsequent certificate renewals occurs. In c) when the two network segments re-join the server nodes will have inconsistent certificate repositories which require synchronization. Another issue that arises in this scenario is what happens if the server nodes in the two segments have performed a share update. The servers then must synchronize their shares so that they have a consistent view of the shares of the CA s certificate signing key sk CA. The availability of the CA service is highly dependent on the threshold parameters k and n. These must therefore be chosen carefully to obtain an acceptable trade-off between availability, security, and cost. The larger k is, the higher security is achieved at the cost of availability. An issue related to addressing is how client nodes know how to locate the server nodes. Since the client node is interested in locating any k of the n server nodes, the CA service could be given a multicast address. A client node that requires a CA service could then send the request to this multicast address. Those server nodes that choose to serve the request then reply with their unicast address. Another option if the ad hoc network doesn t support multicast traffic is that the client node broadcasts the request. This approach however will potentially generate a large amount of network traffic Fully Distributed CA Similar to the partially distributed CA this solution requires an organizational/administrative infrastructure to provide the registration and initialization services described in section 3.3. The main benefits of this solution is its availability and that it, unlike the other certificate based solution proposed, provides a certificate revocation mechanism. Since all nodes are part of the CA service, it is sufficient that a requesting node has k one-hop neighbors for the CA service to be available. Also since only a node s one-hop neighborhood is involved in any service request the addressing issue mentioned in the previous section is avoided. The amount of network wide traffic is also limited. The cost of achieving this high availability is a set of rather complex maintenance protocols, e.g. the share initialization and the share update protocols. A larger number of shares are also exposed to compromise since each node has its own share as compared to only the specialized server nodes in the partially distributed solution. The threshold parameter k therefore may need to be chosen larger since an attacker may be able to compromise a larger number of shares between each share update. This in turn affects the availability of the service. The solution must also provide for a synchronization mechanism in the case of network segmentations as illustrated in figure 35. The certificate revocation method proposed assumes that each node is capable of monitoring the behavior of all its one-hop neighbors, e.g. by monitoring the network traffic they generate. This assumption however may be too strong in certain ad hoc networks. 56 Analysis
69 11.4 Self Issued Certificates The main benefit of this solution is that it doesn t require any form of infrastructure neither routing, server or organizational/administrative. However it lacks a certificate revocation mechanism. Also like PGP it has problems during its initial stages before the number of certificates issued reaches a critical amount. Consider the situation illustrated in figure 36. There is a chain of friendship connecting Alice and Bob, however so far only Chris and Jane have issued any certificates and therefore no certificate chain exists between Alice and Bob. Not until the other users have issued certificates to their friends will Alice and Bob be able to communicate securely. Figure 36. Problem of certificate propagation. This solution also assumes that all users are, what in PGP terminology is called trusted introducers or even meta-introducers. A trusted introducer is a user that is trusted to introduce other users, i.e. issue certificates to other users. A meta-introducer is a trusted introducer that is trusted to introduce other trusted introducers. E.g. in figure 36, Chris may issue a certificate to Dave, but he doesn t trust any certificates issued by Dave. On the other hand he trusts any certificates issued by Trent. This makes Trent a trusted introducer. If Chris even trusts the certificates issued by users to which Trent has issued certificates, e.g. Jane, then Trent is a metaintroducer. Requiring that all users must accept all other users as meta-introducers is a strong requirement that most probably will not be acceptable in many ad hoc networks. Finally the Shortcut Hunter algorithm has been tested on authentic PGP trust graphs, i.e. a database of PGP certificates available on Internet. However in an ad hoc network no such global knowledge of all certificates will be available. E.g. in step 4 of the algorithm (see figure 27) the edge (w, z) is chosen such that the vertex z has the highest number of shortcuts. Determin- Analysis 57
70 ing how many shortcuts a node has however requires knowledge of the surrounding trust graph. The solution doesn t mention this issue which needs to be dealt with if the solution is to function in a real life ad hoc network Secure Pebblenets This solution based on symmetric cryptography requires an organizational/administrative infrastructure that initializes the network nodes with the shared group identity key k GI and additional parameters such as t update. The main weakness of this solutions is that it requires that the nodes maintain a tamper-resistant storage. Such a requirement excludes the use of standard networking devices since these typically don t include any tamper-resistant memory. If the group identity key is compromised then all the network nodes need to be re-initialized with a new group identity key. Finally since only group authentication is supported this solution is not applicable in applications where the communication is peer-to-peer Demonstrative Identification All previous solutions have required either a organizational/administrative infrastructure or some sort of social interaction as in the solution based on self issued certificates. The use of demonstrative identification however allows the formation of a secure ad hoc network in a purely self-configured way. As an example two users need only to point their PDAs towards each other. The PDAs then automatically exchange the authentication information required to secure the following communications. A possible down-side is that the networking devices must be equipped with some sort of location-limited channel. However since the majority of portable devices, e.g. PDAs and laptops are equipped with an infrared interface this should not be a problem. Also this solution is only applicable for localized ad hoc networks. An advantage of this solution is that it s applicable even for devices that don t have a user friendly interface, e.g. printers, projectors etc Password Authenticated Key Exchange This is a group-oriented solution since it doesn t allow for authentication of individual nodes. An issue that isn t mentioned is that of joining and leaving nodes. Consider as an example a meeting where all but one of the meeting members start the meeting and perform the key exchange. When the missing member arrives he needs to join the network. A mechanism for providing him with the encryption key or generating a new encryption key must be present. Similarly a member that leaves a meeting should not be able to eavesdrop from outside the meeting room. A method for updating the encryption key upon the departure of a member should also be available. 58 Analysis
71 The Hypercube protocol used assumes that the participating nodes are arranged in a hypercube. A mechanism must also be provided to decide upon this internal ordering of the nodes Summary The solutions presented in this thesis differ significantly in their requirements, functionality and complexity. However, they can be grouped into different categories depending on different criteria. One possible categorization could be based on the different aspects of ad hoc networks described in section 4.2. Table 1 shows what types of ad hoc networks that the different solutions are suitable for. The partially and fully distributed CA solutions are similar and are appropriate for large distributed ad hoc networks such as military battlefield networks or disaster area networks. The solutions based on self issued certificates has a number of issues that make it questionable if it is appropriate for an ad hoc networking environment. Even if these issues are resolved the question is if the PGP approach is realistic in such a dynamic networking environment as ad hoc networks. The Secure Pebblenets solution is appropriate for group-oriented ad hoc networks where the network nodes are distributed and do not have the resources or the need for public key based solutions. Analysis 59
72 Network Origin Network Range Node Capabilities Network Transiency Partially Distributed CA Fully Distributed CA Self Issued Certificates Planned Distributed Uniform Long-term Planned Distributed Uniform Long-term Spontaneous Distributed Uniform Long-term Secure Pebblenets Planned Distributed Uniform Long-term Demonstrative Identification Password Authenticated Key Exchange Spontaneous Localized Diverse or Uniform Short-term Spontaneous Localized Uniform Short-term Table 1. Categorization of key management solutions. For highly spontaneous ad hoc network applications, such as collaborative networking or personal area networking, the solutions based on demonstrative identification or password authenticated key exchange are preferable. 60 Analysis
73 12 Conclusions 12.1 Ad Hoc Networking The concept of ad hoc networking allows for a whole set of new networking applications that can benefit from the mobility and dynamics inherent with ad hoc networks. However, the very characteristics that make ad hoc networking so appealing provide new challenges for designers and implementors of security solutions. Traditional solutions will most likely not be directly applicable, but will need to be enhanced or modified to work in an ad hoc networking environment. As section 4.3 indicates the variety and environments in which ad hoc networks can be used are widespread and there is no single definition of ad hoc networking that covers all of these scenarios. Instead different flavors of ad hoc networking will appear. Some of these networks will be completely autonomous and self-organized while others will be administered by some organization or company, but will be deployed in environments where no routing or server infrastructure is available. Others will be deployed in environments where such infrastructure is available but where ad hoc networking provides a more flexible solution Key Management Solutions The key management solutions presented in this thesis are intended to provide a summary of the work that has so far been done to provide security in ad hoc networks. Since the solutions are intended for substantially different types of ad hoc networks their comparison is difficult, however they illustrate many of the difficulties that arise in ad hoc networks. The solutions that have been presented are: Partially Distributed Certificate Authority Fully Distributed Certificate Authority Self Issued Certificates Secure Pebblenets Demonstrative Identification Password Authenticated Key Exchange The first two are similar and use Shamir s secret sharing scheme (see section ) to distribute the CA service among the network nodes. The solution based on a fully distributed CA is most promising, but also the most complex. The partially distributed solution s main drawback is it s lack of a certificate revocation mechanism. The third solution which is similar to PGP also lacks a certificate revocation mechanism. It also appears to have some fundamental issues with its Shortcut Hunter algorithm that could make it unsuitable for mobile ad hoc networks. Also it s questionable if the PGP approach is suitable for such dynamic environments as ad hoc networks. Conclusions 61
74 The Secure Pebblenets solution provides group-oriented security services based on symmetric encryption. It s main weakness is that it requires the nodes to maintain a tamper-resistant storage. Such a requirement excludes it from ad hoc networks based on standard of-the-shelf products. The last two solutions are suitable for localized ad hoc networks where the nodes have no prior relationship. The solution based on demonstrative identification requires that the nodes be equipped with a location-limited communication channel, e.g. infrared. This shouldn t be a problem since many devices, e.g. PDAs and laptops, are equipped with an infrared device. This solution is also appealing for ad hoc networks where some nodes lack user-friendly interfaces, e.g. printers. The solution based on password authenticated key exchange is suitable for group-oriented ad hoc networks. An issue that needs to be dealt with however, is how joining and leaving nodes are handled. As the summary above points out, many of the solutions presented have issues that need to be resolved. Also once applications of ad hoc networking are actually deployed and more practical knowledge is gained about their dynamics some of these solutions will likely need to be modified Future Work The solutions described in this thesis are theoretical in the sense that they present the protocols and the cryptographic primitives needed to provide the key management services. However, one aspect that needs to be given more attention is the actual implementation of the services. In [22] Perrig et al describe how they implement security services in extremely resource limited devices. As an example the memory available is not even enough to store a single RSA key, let alone the encryption software. Since ad hoc networks consist of mobile and most likely battery powered devices, some of which will have limited computational and storage resources, efficient solutions need to be developed. As an example the Fully Distributed CA solution is based on the use of RSA. The mathematical properties of RSA are such that the threshold scheme used requires rather complex protocols for the certificate renewal, share update and share initialization. Future work could investigate the possibility of using other less resource demanding algorithms e.g. elliptic curve cryptography (ECC) to determine if this could lead to less complex protocols. Finally more effort needs to be spent in providing mechanisms to handle the joining and leaving of nodes in ad hoc networks. 62 Conclusions
75 13 References [1] C. Perkins, Ad Hoc Networking, Addison-Wesley 2001, ISBN [2] A. Menezes, P. van Oorschot and S. Vanstone, Handbook of Applied Cryptography, CRC Press 1997, ISBN [3] W. Stallings, Cryptography and Network Security: Principles and Practice, 2nd ed., Prentice-Hall 1999, ISBN [4] A. Nash, W. Duane, C. Joseph and D. Brink, PKI: Implementing and Managing E-Security, McGraw-Hill 2001, ISBN [5] N. Asokan and P. Ginzboorg, Key Agreement in Ad Hoc Networks, Computer Communications, Volume 23, Pages [6] J. Mackar and S. Corson, RFC 2501, Mobile Ad hoc Networking (MANET): Routing Protocol Performance Issues and Evaluation Considerations, IETF 1999 [7] F. Stanjo, R. Anderson, The Resurrecting Duckling: Security Issues in Ad-Hoc Wireless Networks, Security Protocols, 7th International Workshop Proceedings, Lecture Notes in Computer Science, Springer-Verlag 1999 [8] Saab NetDefence, Available on-line [9] J. M. Kahn, R. H. Katz and K. S. J. Pister, Next Century Challenges: Mobile Networking for Smart Dust, ACM Press 1999 [10] L. Zhou and Z. J. Haas, Securing Ad Hoc Networks, IEEE Networks, Volume 13, Issue [11] A. Shamir, How to Share a Secret, Communications of ACM 1979 [12] H. Luo and S. Lu, Ubiquitous and Robust Authentication Services for Ad Hoc Wireless Networks, Technical Report , UCLA Computer Science Department 2000 [13] J. Kong, P. Zerfos, H. Luo, S. Lu and L. Zhang, Providing Robust and Ubiquitous Security Support for Mobile Ad-Hoc Networks, IEEE ICNP 2001 [14] H. Luo, P. Zerfos, J. Kong, S. Lu and L. Zhang, Self-securing Ad Hoc Wireless Networks, IEEE ISCC 2002 [15] J-P. Hubaux, L. Buttyán and S. Capkun, The Quest for Security in Mobile Ad Hoc Networks, ACM 2001 [16] S. Garfinkel, PGP: Pretty Good Privacy, O Reilly & Associates 1995, ISBN [17] S. Basagni, K. Herrin, E. Rosti and Danilo Bruschi, Secure Pebblenets, ACM 2001 [18] D. Balfanz, D. K. Smetters, P. Stewart and H. Chi Wong, Talking To Strangers: Authentication in Ad-Hoc Wireless Networks, Internet Society, Conference Proceeding of NDSS Conference 2002 [19] N. Asokan, P. Ginzborg, Key Agreement in Ad Hoc Networks, Computer Communications Volume 23, 2000 References 63
76 [20] M. Hietalahti, Key Establishment in Ad-Hoc Networks, Laboratory for Theoretical Computer Science, Helsinki University of Technology 2001 [21] K. Becker and U. Willie, Communication complexity of group key distribution, Proceedings of 5th ACM Conference on Computer and Communications Security, ACM Press 1998 [22] A. Perrig, R. Szewczyk, V. Wen, D. Culler and J. D. Tygar, SPINS: Security Protocols for Sensor Networks, ACM SIGMOBILE References
77 På svenska Detta dokument hålls tillgängligt på Internet eller dess framtida ersättare under en längre tid från publiceringsdatum under förutsättning att inga extra-ordinära omständigheter uppstår. Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner, skriva ut enstaka kopior för enskilt bruk och att använda det oförändrat för ickekommersiell forskning och för undervisning. Överföring av upphovsrätten vid en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning av dokumentet kräver upphovsmannens medgivande. För att garantera äktheten, säkerheten och tillgängligheten finns det lösningar av teknisk och administrativ art. Upphovsmannens ideella rätt innefattar rätt att bli nämnd som upphovsman i den omfattning som god sed kräver vid användning av dokumentet på ovan beskrivna sätt samt skydd mot att dokumentet ändras eller presenteras i sådan form eller i sådant sammanhang som är kränkande för upphovsmannens litterära eller konstnärliga anseende eller egenart. För ytterligare information om Linköping University Electronic Press se förlagets hemsida In English The publishers will keep this document online on the Internet - or its possible replacement - for a considerable time from the date of publication barring exceptional circumstances. The online availability of the document implies a permanent permission for anyone to read, to download, to print out single copies for your own use and to use it unchanged for any non-commercial research and educational purpose. Subsequent transfers of copyright cannot revoke this permission. All other uses of the document are conditional on the consent of the copyright owner. The publisher has taken technical and administrative measures to assure authenticity, security and accessibility. According to intellectual property law the author has the right to be mentioned when his/ her work is accessed as described above and to be protected against infringement. For additional information about the Linköping University Electronic Press and its procedures for publication and for assurance of document integrity, please refer to its WWW home page: Klas Fokine
Network Security. Computer Networking Lecture 08. March 19, 2012. HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23
Network Security Computer Networking Lecture 08 HKU SPACE Community College March 19, 2012 HKU SPACE CC CN Lecture 08 1/23 Outline Introduction Cryptography Algorithms Secret Key Algorithm Message Digest
Entrust Managed Services PKI. Getting started with digital certificates and Entrust Managed Services PKI. Document issue: 1.0
Entrust Managed Services PKI Getting started with digital certificates and Entrust Managed Services PKI Document issue: 1.0 Date of issue: May 2009 Copyright 2009 Entrust. All rights reserved. Entrust
References: Adi Shamir, How to Share a Secret, CACM, November 1979.
Ad Hoc Network Security References: Adi Shamir, How to Share a Secret, CACM, November 1979. Jiejun Kong, Petros Zerfos, Haiyun Luo, Songwu Lu, Lixia Zhang, Providing Robust and Ubiquitous Security Support
Digital Certificates (Public Key Infrastructure) Reshma Afshar Indiana State University
Digital Certificates (Public Key Infrastructure) Reshma Afshar Indiana State University October 2015 1 List of Figures Contents 1 Introduction 1 2 History 2 3 Public Key Infrastructure (PKI) 3 3.1 Certificate
Security Digital Certificate Manager
System i Security Digital Certificate Manager Version 5 Release 4 System i Security Digital Certificate Manager Version 5 Release 4 Note Before using this information and the product it supports, be sure
Lecture slides by Lawrie Brown for Cryptography and Network Security, 5/e, by William Stallings, Chapter 14 Key Management and Distribution.
Lecture slides by Lawrie Brown for Cryptography and Network Security, 5/e, by William Stallings, Chapter 14 Key Management and Distribution. 1 Opening quote. 2 The topics of cryptographic key management
Security Digital Certificate Manager
IBM i Security Digital Certificate Manager 7.1 IBM i Security Digital Certificate Manager 7.1 Note Before using this information and the product it supports, be sure to read the information in Notices,
CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives
CIS 6930 Emerging Topics in Network Security Topic 2. Network Security Primitives 1 Outline Absolute basics Encryption/Decryption; Digital signatures; D-H key exchange; Hash functions; Application of hash
1 Public Key Cryptography and Information Security
International Carpathian Control Conference ICCC 2002 MALENOVICE, CZECH REPUBLIC May 27-30, 2002 IMPLEMENTATION ISSUES OF PKI TECHNOLOGY Victor-Valeriu PATRICIU, Marin BICA and Ion BICA Department of Computer
INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY
INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY A PATH FOR HORIZING YOUR INNOVATIVE WORK AN OVERVIEW OF MOBILE ADHOC NETWORK: INTRUSION DETECTION, TYPES OF ATTACKS AND
CS 356 Lecture 28 Internet Authentication. Spring 2013
CS 356 Lecture 28 Internet Authentication Spring 2013 Review Chapter 1: Basic Concepts and Terminology Chapter 2: Basic Cryptographic Tools Chapter 3 User Authentication Chapter 4 Access Control Lists
Brocade Engineering. PKI Tutorial. Jim Kleinsteiber. February 6, 2002. Page 1
PKI Tutorial Jim Kleinsteiber February 6, 2002 Page 1 Outline Public Key Cryptography Refresher Course Public / Private Key Pair Public-Key Is it really yours? Digital Certificate Certificate Authority
Overview of CSS SSL. SSL Cryptography Overview CHAPTER
CHAPTER 1 Secure Sockets Layer (SSL) is an application-level protocol that provides encryption technology for the Internet, ensuring secure transactions such as the transmission of credit card numbers
Overview. SSL Cryptography Overview CHAPTER 1
CHAPTER 1 Note The information in this chapter applies to both the ACE module and the ACE appliance unless otherwise noted. The features in this chapter apply to IPv4 and IPv6 unless otherwise noted. Secure
WIRELESS PUBLIC KEY INFRASTRUCTURE FOR MOBILE PHONES
WIRELESS PUBLIC KEY INFRASTRUCTURE FOR MOBILE PHONES Balachandra Muniyal 1 Krishna Prakash 2 Shashank Sharma 3 1 Dept. of Information and Communication Technology, Manipal Institute of Technology, Manipal
Neutralus Certification Practices Statement
Neutralus Certification Practices Statement Version 2.8 April, 2013 INDEX INDEX...1 1.0 INTRODUCTION...3 1.1 Overview...3 1.2 Policy Identification...3 1.3 Community & Applicability...3 1.4 Contact Details...3
Lecture VII : Public Key Infrastructure (PKI)
Lecture VII : Public Key Infrastructure (PKI) Internet Security: Principles & Practices John K. Zao, PhD (Harvard) SMIEEE Computer Science Department, National Chiao Tung University 2 Problems with Public
Module 7 Security CS655! 7-1!
Module 7 Security CS655! 7-1! Issues Separation of! Security policies! Precise definition of which entities in the system can take what actions! Security mechanism! Means of enforcing that policy! Distributed
KEY DISTRIBUTION: PKI and SESSION-KEY EXCHANGE. Mihir Bellare UCSD 1
KEY DISTRIBUTION: PKI and SESSION-KEY EXCHANGE Mihir Bellare UCSD 1 The public key setting Alice M D sk[a] (C) Bob pk[a] C C $ E pk[a] (M) σ $ S sk[a] (M) M, σ Vpk[A] (M, σ) Bob can: send encrypted data
Security Sensor Network. Biswajit panja
Security Sensor Network Biswajit panja 1 Topics Security Issues in Wired Network Security Issues in Wireless Network Security Issues in Sensor Network 2 Security Issues in Wired Network 3 Security Attacks
CS 392/681 - Computer Security
CS 392/681 - Computer Security Module 3 Key Exchange Algorithms Nasir Memon Polytechnic University Course Issues HW 3 assigned. Any lab or course issues? Midterm in three weeks. 8/30/04 Module 3 - Key
Den Gode Webservice - Security Analysis
Den Gode Webservice - Security Analysis Cryptomathic A/S September, 2006 Executive Summary This report analyses the security mechanisms provided in Den Gode Web Service (DGWS). DGWS provides a framework
Expert Reference Series of White Papers. Fundamentals of the PKI Infrastructure
Expert Reference Series of White Papers Fundamentals of the PKI Infrastructure 1-800-COURSES www.globalknowledge.com Fundamentals of the PKI Infrastructure Boris Gigovic, Global Knowledge Instructor, CEI,
SSL A discussion of the Secure Socket Layer
www.harmonysecurity.com [email protected] SSL A discussion of the Secure Socket Layer By Stephen Fewer Contents 1 Introduction 2 2 Encryption Techniques 3 3 Protocol Overview 3 3.1 The SSL Record
How To Understand And Understand The Security Of A Key Infrastructure
Security+ Guide to Network Security Fundamentals, Third Edition Chapter 12 Applying Cryptography Objectives Define digital certificates List the various types of digital certificates and how they are used
Chapter 14. Key management and Distribution. Symmetric Key Distribution Using Symmetric Encryption
Chapter 14. Key management and Distribution Symmetric Key Distribution Using Symmetric Encryption For symmetric encryption to work, the two parties to an exchange must share the same key, and that key
Security in Ad Hoc Network
Security in Ad Hoc Network Bingwen He Joakim Hägglund Qing Gu Abstract Security in wireless network is becoming more and more important while the using of mobile equipments such as cellular phones or laptops
Trust Establishment in Mobile Ad Hoc Networks: Key Management
258 Trust Establishment in Mobile Ad Hoc Networks: Key Management Dawoud D.S. 1, Richard L. Gordon 2, Ashraph Suliman 1 and Kasmir Raja S.V. 3 1 National University of Rwanda 2 University of KwaZulu Natal
Network Security. Gaurav Naik Gus Anderson. College of Engineering. Drexel University, Philadelphia, PA. Drexel University. College of Engineering
Network Security Gaurav Naik Gus Anderson, Philadelphia, PA Lectures on Network Security Feb 12 (Today!): Public Key Crypto, Hash Functions, Digital Signatures, and the Public Key Infrastructure Feb 14:
Client Server Registration Protocol
Client Server Registration Protocol The Client-Server protocol involves these following steps: 1. Login 2. Discovery phase User (Alice or Bob) has K s Server (S) has hash[pw A ].The passwords hashes are
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wānanga o te Ūpoko o te Ika a Māui
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wānanga o te Ūpoko o te Ika a Māui School of Engineering and Computer Science Te Kura Mātai Pūkaha, Pūrorohiko PO Box 600 Wellington New Zealand Tel: +64 4 463
The DoD Public Key Infrastructure And Public Key-Enabling Frequently Asked Questions
The DoD Public Key Infrastructure And Public Key-Enabling Frequently Asked Questions May 3, 2004 TABLE OF CONTENTS GENERAL PKI QUESTIONS... 1 1. What is PKI?...1 2. What functionality is provided by a
IBM i Version 7.3. Security Digital Certificate Manager IBM
IBM i Version 7.3 Security Digital Certificate Manager IBM IBM i Version 7.3 Security Digital Certificate Manager IBM Note Before using this information and the product it supports, read the information
Journal of Electronic Banking Systems
Journal of Electronic Banking Systems Vol. 2015 (2015), Article ID 614386, 44 minipages. DOI:10.5171/2015.614386 www.ibimapublishing.com Copyright 2015. Khaled Ahmed Nagaty. Distributed under Creative
Chapter 9 Key Management 9.1 Distribution of Public Keys 9.1.1 Public Announcement of Public Keys 9.1.2 Publicly Available Directory
There are actually two distinct aspects to the use of public-key encryption in this regard: The distribution of public keys. The use of public-key encryption to distribute secret keys. 9.1 Distribution
Authentication Application
Authentication Application KERBEROS In an open distributed environment servers to be able to restrict access to authorized users to be able to authenticate requests for service a workstation cannot be
Content Teaching Academy at James Madison University
Content Teaching Academy at James Madison University 1 2 The Battle Field: Computers, LANs & Internetworks 3 Definitions Computer Security - generic name for the collection of tools designed to protect
Chapter 10. Cloud Security Mechanisms
Chapter 10. Cloud Security Mechanisms 10.1 Encryption 10.2 Hashing 10.3 Digital Signature 10.4 Public Key Infrastructure (PKI) 10.5 Identity and Access Management (IAM) 10.6 Single Sign-On (SSO) 10.7 Cloud-Based
7 Key Management and PKIs
CA4005: CRYPTOGRAPHY AND SECURITY PROTOCOLS 1 7 Key Management and PKIs 7.1 Key Management Key Management For any use of cryptography, keys must be handled correctly. Symmetric keys must be kept secret.
CS 348: Computer Networks. - Security; 30 th - 31 st Oct 2012. Instructor: Sridhar Iyer IIT Bombay
CS 348: Computer Networks - Security; 30 th - 31 st Oct 2012 Instructor: Sridhar Iyer IIT Bombay Network security Security Plan (RFC 2196) Identify assets Determine threats Perform risk analysis Implement
Case Study for Layer 3 Authentication and Encryption
CHAPTER 2 Case Study for Layer 3 Authentication and Encryption This chapter explains the basic tasks for configuring a multi-service, extranet Virtual Private Network (VPN) between a Cisco Secure VPN Client
CS 758: Cryptography / Network Security
CS 758: Cryptography / Network Security offered in the Fall Semester, 2003, by Doug Stinson my office: DC 3122 my email address: [email protected] my web page: http://cacr.math.uwaterloo.ca/~dstinson/index.html
Key Management. CSC 490 Special Topics Computer and Network Security. Dr. Xiao Qin. Auburn University http://www.eng.auburn.edu/~xqin xqin@auburn.
CSC 490 Special Topics Computer and Network Security Key Management Dr. Xiao Qin Auburn University http://www.eng.auburn.edu/~xqin [email protected] Slide 09-1 Overview Key exchange Session vs. interchange
Part I. Universität Klagenfurt - IWAS Multimedia Kommunikation (VK) M. Euchner; Mai 2001. Siemens AG 2001, ICN M NT
Part I Contents Part I Introduction to Information Security Definition of Crypto Cryptographic Objectives Security Threats and Attacks The process Security Security Services Cryptography Cryptography (code
Key Management Interoperability Protocol (KMIP)
(KMIP) Addressing the Need for Standardization in Enterprise Key Management Version 1.0, May 20, 2009 Copyright 2009 by the Organization for the Advancement of Structured Information Standards (OASIS).
Certification Practice Statement
FernUniversität in Hagen: Certification Authority (CA) Certification Practice Statement VERSION 1.1 Ralph Knoche 18.12.2009 Contents 1. Introduction... 4 1.1. Overview... 4 1.2. Scope of the Certification
Single Sign-On Secure Authentication Password Mechanism
Single Sign-On Secure Authentication Password Mechanism Deepali M. Devkate, N.D.Kale ME Student, Department of CE, PVPIT, Bavdhan, SavitribaiPhule University Pune, Maharashtra,India. Assistant Professor,
Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 15.1
Chapter 15 Key Management Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 15.1 Symmetric-key Distribution Symmetric-key cryptography is more efficient than asymmetric-key
CSCE 465 Computer & Network Security
CSCE 465 Computer & Network Security Instructor: Dr. Guofei Gu http://courses.cse.tamu.edu/guofei/csce465/ Public Key Cryptogrophy 1 Roadmap Introduction RSA Diffie-Hellman Key Exchange Public key and
Security for Ubiquitous and Adhoc Networks
Security for Ubiquitous and Adhoc Networks Mobile Adhoc Networks Collection of nodes that do not rely on a predefined infrastructure Adhoc networks can be formed merged together partitioned to separate
Secure Socket Layer. Introduction Overview of SSL What SSL is Useful For
Secure Socket Layer Secure Socket Layer Introduction Overview of SSL What SSL is Useful For Introduction Secure Socket Layer (SSL) Industry-standard method for protecting web communications. - Data encryption
Comparing Cost of Ownership: Symantec Managed PKI Service vs. On- Premise Software
WHITE PAPER: COMPARING TCO: SYMANTEC MANAGED PKI SERVICE........ VS..... ON-PREMISE........... SOFTWARE................. Comparing Cost of Ownership: Symantec Managed PKI Service vs. On- Premise Software
Public Key Cryptography in Practice. c Eli Biham - May 3, 2005 372 Public Key Cryptography in Practice (13)
Public Key Cryptography in Practice c Eli Biham - May 3, 2005 372 Public Key Cryptography in Practice (13) How Cryptography is Used in Applications The main drawback of public key cryptography is the inherent
SECURITY ASPECTS IN MOBILE AD HOC NETWORK (MANETS)
SECURITY ASPECTS IN MOBILE AD HOC NETWORK (MANETS) Neha Maurya, ASM S IBMR ABSTRACT: Mobile Ad hoc networks (MANETs) are a new paradigm of wireless network, offering unrestricted mobility without any underlying
Authentication Types. Password-based Authentication. Off-Line Password Guessing
Authentication Types Chapter 2: Security Techniques Background Secret Key Cryptography Public Key Cryptography Hash Functions Authentication Chapter 3: Security on Network and Transport Layer Chapter 4:
Security & Privacy on the WWW. Topic Outline. Information Security. Briefing for CS4173
Security & Privacy on the WWW Briefing for CS4173 Topic Outline 1. Information Security Relationship to safety Definition of important terms Where breaches can occur Web techniques Components of security
Authentication. Computer Security. Authentication of People. High Quality Key. process of reliably verifying identity verification techniques
Computer Security process of reliably verifying identity verification techniques what you know (eg., passwords, crypto key) what you have (eg., keycards, embedded crypto) what you are (eg., biometric information)
Chapter 10. Network Security
Chapter 10 Network Security 10.1. Chapter 10: Outline 10.1 INTRODUCTION 10.2 CONFIDENTIALITY 10.3 OTHER ASPECTS OF SECURITY 10.4 INTERNET SECURITY 10.5 FIREWALLS 10.2 Chapter 10: Objective We introduce
Chap. 1: Introduction
Chap. 1: Introduction Introduction Services, Mechanisms, and Attacks The OSI Security Architecture Cryptography 1 1 Introduction Computer Security the generic name for the collection of tools designed
Security Goals Services
1 2 Lecture #8 2008 Freedom from danger, risk, etc.; safety. Something that secures or makes safe; protection; defense. Precautions taken to guard against crime, attack, sabotage, espionage, etc. An assurance;
Best Practices for SIP Security
Best Practices for SIP Security IMTC SIP Parity Group Version 21 November 9, 2011 Table of Contents 1. Overview... 33 2. Security Profile... 33 3. Authentication & Identity Protection... 33 4. Protecting
Security. Contents. S-72.3240 Wireless Personal, Local, Metropolitan, and Wide Area Networks 1
Contents Security requirements Public key cryptography Key agreement/transport schemes Man-in-the-middle attack vulnerability Encryption. digital signature, hash, certification Complete security solutions
Vulnerabilities of Intrusion Detection Systems in Mobile Ad-hoc Networks - The routing problem
Vulnerabilities of Intrusion Detection Systems in Mobile Ad-hoc Networks - The routing problem Ernesto Jiménez Caballero Helsinki University of Technology [email protected] Abstract intrusion detection
Compter Networks Chapter 9: Network Security
Goals of this chapter Compter Networks Chapter 9: Network Security Give a brief glimpse of security in communication networks Basic goals and mechanisms Holger Karl Slide set: Günter Schäfer, TU Ilmenau
12/3/08. Security in Wireless LANs and Mobile Networks. Wireless Magnifies Exposure Vulnerability. Mobility Makes it Difficult to Establish Trust
Security in Wireless LANs and Mobile Networks Wireless Magnifies Exposure Vulnerability Information going across the wireless link is exposed to anyone within radio range RF may extend beyond a room or
Is your data safe out there? -A white Paper on Online Security
Is your data safe out there? -A white Paper on Online Security Introduction: People should be concerned of sending critical data over the internet, because the internet is a whole new world that connects
Key Management and Distribution
Key Management and Distribution Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 [email protected] Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse571-11/
OFFICE OF THE CONTROLLER OF CERTIFICATION AUTHORITIES TECHNICAL REQUIREMENTS FOR AUDIT OF CERTIFICATION AUTHORITIES
OFFICE OF THE CONTROLLER OF CERTIFICATION AUTHORITIES TECHNICAL REQUIREMENTS FOR AUDIT OF CERTIFICATION AUTHORITIES Table of contents 1.0 SOFTWARE 1 2.0 HARDWARE 2 3.0 TECHNICAL COMPONENTS 2 3.1 KEY MANAGEMENT
Chapter 7: Network security
Chapter 7: Network security Foundations: what is security? cryptography authentication message integrity key distribution and certification Security in practice: application layer: secure e-mail transport
CPSC 467b: Cryptography and Computer Security
CPSC 467b: Cryptography and Computer Security Michael J. Fischer Lecture 1 January 9, 2012 CPSC 467b, Lecture 1 1/22 Course Overview Symmetric Cryptography CPSC 467b, Lecture 1 2/22 Course Overview CPSC
Chapter 1: Introduction
Chapter 1 Introduction 1 Chapter 1: Introduction 1.1 Inspiration Cloud Computing Inspired by the cloud computing characteristics like pay per use, rapid elasticity, scalable, on demand self service, secure
COSC 472 Network Security
COSC 472 Network Security Instructor: Dr. Enyue (Annie) Lu Office hours: http://faculty.salisbury.edu/~ealu/schedule.htm Office room: HS114 Email: [email protected] Course information: http://faculty.salisbury.edu/~ealu/cosc472/cosc472.html
2.4: Authentication Authentication types Authentication schemes: RSA, Lamport s Hash Mutual Authentication Session Keys Trusted Intermediaries
Chapter 2: Security Techniques Background Secret Key Cryptography Public Key Cryptography Hash Functions Authentication Chapter 3: Security on Network and Transport Layer Chapter 4: Security on the Application
Security and Privacy Issues in Wireless Ad Hoc, Mesh, and Sensor Networks
Advance in Electronic and Electric Engineering. ISSN 2231-1297, Volume 4, Number 4 (2014), pp. 381-388 Research India Publications http://www.ripublication.com/aeee.htm Security and Privacy Issues in Wireless
Mobile Security Wireless Mesh Network Security. Sascha Alexander Jopen
Mobile Security Wireless Mesh Network Security Sascha Alexander Jopen Overview Introduction Wireless Ad-hoc Networks Wireless Mesh Networks Security in Wireless Networks Attacks on Wireless Mesh Networks
TELE 301 Network Management. Lecture 18: Network Security
TELE 301 Network Management Lecture 18: Network Security Haibo Zhang Computer Science, University of Otago TELE301 Lecture 18: Network Security 1 Security of Networks Security is something that is not
Tema 5.- Seguridad. Problemas Soluciones
Tema 5.- Seguridad Problemas Soluciones Wireless medium is easy to snoop on Routing security vulnerabilities Due to ad hoc connectivity and mobility, it is hard to guarantee access to any particular node
Key Management and Distribution
and Distribution CSS322: Security and Cryptography Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 23 January 2011 CSS322Y10S2L12, Steve/Courses/CSS322/Lectures/key.tex,
HKUST CA. Certification Practice Statement
HKUST CA Certification Practice Statement IN SUPPORT OF HKUST CA CERTIFICATION SERVICES Version : 2.1 Date : 12 November 2003 Prepared by : Information Technology Services Center Hong Kong University of
Principles of Network Security
he Network Security Model Bob and lice want to communicate securely. rudy (the adversary) has access to the channel. lice channel data, control s Bob Kai Shen data secure sender secure receiver data rudy
Network Security. Mobin Javed. October 5, 2011
Network Security Mobin Javed October 5, 2011 In this class, we mainly had discussion on threat models w.r.t the class reading, BGP security and defenses against TCP connection hijacking attacks. 1 Takeaways
Wireless Sensor Network Security. Seth A. Hellbusch CMPE 257
Wireless Sensor Network Security Seth A. Hellbusch CMPE 257 Wireless Sensor Networks (WSN) 2 The main characteristics of a WSN include: Power consumption constrains for nodes using batteries or energy
E-commerce. business. technology. society. Kenneth C. Laudon Carol Guercio Traver. Second Edition. Copyright 2007 Pearson Education, Inc.
Copyright 2007 Pearson Education, Inc. Slide 5-1 E-commerce business. technology. society. Second Edition Kenneth C. Laudon Carol Guercio Traver Copyright 2007 Pearson Education, Inc. Slide 5-2 Chapter
MANAGED FILE TRANSFER: 10 STEPS TO SOX COMPLIANCE
WHITE PAPER MANAGED FILE TRANSFER: 10 STEPS TO SOX COMPLIANCE 1. OVERVIEW Do you want to design a file transfer process that is secure? Or one that is compliant? Of course, the answer is both. But it s
Evaluate the Usability of Security Audits in Electronic Commerce
Evaluate the Usability of Security Audits in Electronic Commerce K.A.D.C.P Kahandawaarachchi, M.C Adipola, D.Y.S Mahagederawatte and P Hewamallikage 3 rd Year Information Systems Undergraduates Sri Lanka
Introduction to Cryptography
Introduction to Cryptography Part 3: real world applications Jean-Sébastien Coron January 2007 Public-key encryption BOB ALICE Insecure M E C C D channel M Alice s public-key Alice s private-key Authentication
Certificates. Noah Zani, Tim Strasser, Andrés Baumeler
Certificates Noah Zani, Tim Strasser, Andrés Baumeler Overview Motivation Introduction Public Key Infrastructure (PKI) Economic Aspects Motivation Need for secure, trusted communication Growing certificate
Skoot Secure File Transfer
Page 1 Skoot Secure File Transfer Sharing information has become fundamental to organizational success. And as the value of that information whether expressed as mission critical or in monetary terms increases,
How To Write A Transport Layer Protocol For Wireless Networks
Chapter 9: Transport Layer and Security Protocols for Ad Hoc Wireless Networks Introduction Issues Design Goals Classifications TCP Over Ad Hoc Wireless Networks Other Transport Layer Protocols Security
Network Security Protocols
Network Security Protocols EE657 Parallel Processing Fall 2000 Peachawat Peachavanish Level of Implementation Internet Layer Security Ex. IP Security Protocol (IPSEC) Host-to-Host Basis, No Packets Discrimination
Introduction to Public Key Technology and the Federal PKI Infrastructure 26 February 2001
Introduction to Public Key Technology and the Federal PKI Infrastructure 26 February 2001 D. Richard Kuhn Vincent C. Hu W. Timothy Polk Shu-Jen Chang National Institute of Standards and Technology, 2001.
Asymmetric cryptosystems fundamental problem: authentication of public keys
Network security Part 2: protocols and systems (a) Authentication of public keys Università degli Studi di Brescia Dipartimento di Ingegneria dell Informazione 2014/2015 Asymmetric cryptosystems fundamental
Peer-to-peer Cooperative Backup System
Peer-to-peer Cooperative Backup System Sameh Elnikety Mark Lillibridge Mike Burrows Rice University Compaq SRC Microsoft Research Abstract This paper presents the design and implementation of a novel backup
CRYPTOGRAPHY IN NETWORK SECURITY
ELE548 Research Essays CRYPTOGRAPHY IN NETWORK SECURITY AUTHOR: SHENGLI LI INSTRUCTOR: DR. JIEN-CHUNG LO Date: March 5, 1999 Computer network brings lots of great benefits and convenience to us. We can
Computer and Network Security. Outline
Computer and Network Security Lecture 10 Certificates and Revocation Outline Key Distribution Certification Authorities Certificate revocation 1 Key Distribution K A, K B E KA ( K AB, E KB (KAB) ) K A
