1 / 20

Chapter 7: Confidentiality using Symmetric Encryption

2. Introduction. traditionally symmetric encryption is used to provide message confidentiality. 3. Placement of Encryption. have two major placement alternativeslink encryptionencryption occurs independently on every linkimplies must decrypt traffic between linksrequires many devices, but paired keysend-to-end encryptionencryption occurs between original source and final destinationneed devices at each end with shared keys.

shen
Download Presentation

Chapter 7: Confidentiality using Symmetric Encryption

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. 1 Chapter 7: Confidentiality using Symmetric Encryption Fourth Edition by William Stallings Lecture slides by Lawrie Brown (modified by Prof. M. Singhal, U of Kentucky) Lecture slides by Lawrie Brown for “Cryptography and Network Security”, 4/e, by William Stallings, Chapter 7 – “Confidentiality Using Symmetric Encryption”. Lecture slides by Lawrie Brown for “Cryptography and Network Security”, 4/e, by William Stallings, Chapter 7 – “Confidentiality Using Symmetric Encryption”.

    2. 2 Introduction traditionally symmetric encryption is used to provide message confidentiality If encryption is to be used to counter attacks on confidentiality, need to decide what to encrypt and where the encryption function should be located. Now examine potential locations of security attacks and then look at the two major approaches to encryption placement: link and end to end. Have many locations where attacks can occur in a typical scenario (Stallings Figure 7.1), such as when have: + workstations on LANs access other workstations & servers on LAN + LANs interconnected using switches/routers + with external lines or radio/satellite links Consider attacks and placement in this scenario: + snooping from another workstation + use dial-in to LAN or server to snoop + physically tap line in wiring closet + use external router link to enter & snoop + monitor and/or modify traffic one external links If encryption is to be used to counter attacks on confidentiality, need to decide what to encrypt and where the encryption function should be located. Now examine potential locations of security attacks and then look at the two major approaches to encryption placement: link and end to end. Have many locations where attacks can occur in a typical scenario (Stallings Figure 7.1), such as when have: + workstations on LANs access other workstations & servers on LAN + LANs interconnected using switches/routers + with external lines or radio/satellite links Consider attacks and placement in this scenario: + snooping from another workstation + use dial-in to LAN or server to snoop + physically tap line in wiring closet + use external router link to enter & snoop + monitor and/or modify traffic one external links

    3. 3 Placement of Encryption have two major placement alternatives link encryption encryption occurs independently on every link implies must decrypt traffic between links requires many devices, but paired keys end-to-end encryption encryption occurs between original source and final destination need devices at each end with shared keys There are two fundamental encryption placement alternatives: link encryption and end-to-end encryption. With link encryption, each vulnerable communications link is equipped on both ends with an encryption device. But all the potential links in a path from source to destination must use link encryption. Each pair of nodes that share a link should share a unique key, with a different key used on each link. Thus, many keys must be provided. With end-to-end encryption, the encryption process is carried out at the two end systems. Thus end-to-end encryption relieves the end user of concerns about the degree of security of networks and links that support the communication. The user data is secure, but the traffic pattern is not because packet headers are transmitted in the clear. See Stallings Table 7.1 for more detailed comparison between these alternatives. There are two fundamental encryption placement alternatives: link encryption and end-to-end encryption. With link encryption, each vulnerable communications link is equipped on both ends with an encryption device. But all the potential links in a path from source to destination must use link encryption. Each pair of nodes that share a link should share a unique key, with a different key used on each link. Thus, many keys must be provided. With end-to-end encryption, the encryption process is carried out at the two end systems. Thus end-to-end encryption relieves the end user of concerns about the degree of security of networks and links that support the communication. The user data is secure, but the traffic pattern is not because packet headers are transmitted in the clear. See Stallings Table 7.1 for more detailed comparison between these alternatives.

    4. 4 Placement of Encryption Stallings Figure 7.2 contrasts the two encryption placement alternatives, for encryption over a Packet Net.Stallings Figure 7.2 contrasts the two encryption placement alternatives, for encryption over a Packet Net.

    5. 5 Placement of Encryption when using end-to-end encryption must leave headers in clear so network can correctly route information hence although contents protected, traffic pattern flows are not ideally want both at once end-to-end protects data contents over entire path and provides authentication link protects traffic flows from monitoring With end-to-end encryption, user data are secure, but the traffic pattern is not because packet headers are transmitted in the clear. However end-to-end encryption does provide a degree of authentication, since a recipient is assured that any message that it receives comes from the alleged sender, because only that sender shares the relevant key. Such authentication is not inherent in a link encryption scheme. To achieve greater security, both link and end-to-end encryption are needed, as is shown in Figure 7.2 on the previous slide.With end-to-end encryption, user data are secure, but the traffic pattern is not because packet headers are transmitted in the clear. However end-to-end encryption does provide a degree of authentication, since a recipient is assured that any message that it receives comes from the alleged sender, because only that sender shares the relevant key. Such authentication is not inherent in a link encryption scheme. To achieve greater security, both link and end-to-end encryption are needed, as is shown in Figure 7.2 on the previous slide.

    6. 6 Placement of Encryption can place encryption function at various layers in OSI Reference Model link encryption occurs at layers 1 or 2 end-to-end can occur at layers 3, 4, 6, 7 as move higher less information is encrypted but it is more secure though more complex with more entities and keys Can place encryption at any of a number of layers in the OSI Reference Model. Link encryption can occur at either the physical or link layers. End-to-end encryption could be performed at the network layer (for all processes on a system, perhaps in a Front End Processor), at the Transport layer (now possibly per process), or at the Presentation/Application layer (especially if need security to cross application gateways, but at cost of many more entities to manage). Can view alternatives noting that as you move up the communications hierarchy, less information is encrypted but it is more secure. Can place encryption at any of a number of layers in the OSI Reference Model. Link encryption can occur at either the physical or link layers. End-to-end encryption could be performed at the network layer (for all processes on a system, perhaps in a Front End Processor), at the Transport layer (now possibly per process), or at the Presentation/Application layer (especially if need security to cross application gateways, but at cost of many more entities to manage). Can view alternatives noting that as you move up the communications hierarchy, less information is encrypted but it is more secure.

    7. 7 Encryption vs Protocol Level Stallings Figure 7.5 illustrates the relationship between encryption and protocol level, using the TCP/IP architecture as an example, showing how much information in a packet is protected. Stallings Figure 7.5 illustrates the relationship between encryption and protocol level, using the TCP/IP architecture as an example, showing how much information in a packet is protected.

    8. 8 Traffic Analysis is monitoring of communications flows between parties useful both in military & commercial spheres can also be used to create a covert channel link encryption obscures header details but overall traffic volumes in networks and at end-points is still visible traffic padding can further obscure flows but at cost of continuous traffic Some users are concerned with Traffic Analysis, which concerns knowledge about the number and length of messages between nodes which may enable an opponent to determine who is talking to whom, and hence suggest when important information is being exchanged, or to correlate with observed events. With the use of link encryption, network-layer headers are encrypted, reducing the opportunity for traffic analysis. An effective countermeasure to this attack is traffic padding. If only end-to-end encryption is employed, then the measures available to the defender are more limited since various protocol headers are visible. Padding of application data & null messages can be used. Some users are concerned with Traffic Analysis, which concerns knowledge about the number and length of messages between nodes which may enable an opponent to determine who is talking to whom, and hence suggest when important information is being exchanged, or to correlate with observed events. With the use of link encryption, network-layer headers are encrypted, reducing the opportunity for traffic analysis. An effective countermeasure to this attack is traffic padding. If only end-to-end encryption is employed, then the measures available to the defender are more limited since various protocol headers are visible. Padding of application data & null messages can be used.

    9. 9 Key Distribution symmetric schemes require both parties to share a common secret key issue is how to securely distribute this key often secure system failure due to a break in the key distribution scheme For symmetric encryption to work, the two parties to an exchange must share the same key, and that key must be protected from access by others. This is one of the most critical areas in security systems - on many occasions systems have been broken, not because of a poor encryption algorithm, but because of poor key selection or management. It is absolutely critical to get this right! For symmetric encryption to work, the two parties to an exchange must share the same key, and that key must be protected from access by others. This is one of the most critical areas in security systems - on many occasions systems have been broken, not because of a poor encryption algorithm, but because of poor key selection or management. It is absolutely critical to get this right!

    10. 10 Key Distribution given parties A and B have various key distribution alternatives: A can select key and physically deliver to B third party can select & deliver key to A & B if A & B have communicated previously can use previous key to encrypt a new key if A & B have secure communications with a third party C, C can relay key between A & B The strength of any cryptographic system thus depends on the key distribution technique. For two parties A and B, key distribution can be achieved in a number of ways: Physical delivery (1 & 2) is simplest - but only applicable when there is personal contact between recipient and key issuer. This is fine for link encryption where devices & keys occur in pairs, but does not scale as number of parties who wish to communicate grows. 3 is mostly based on 1 or 2 occurring first. A third party, whom all parties trust, can be used as a trusted intermediary to mediate the establishment of secure communications between them (4). Must trust intermediary not to abuse the knowledge of all session keys. As number of parties grow, some variant of 4 is only practical solution to the huge growth in number of keys potentially needed. The strength of any cryptographic system thus depends on the key distribution technique. For two parties A and B, key distribution can be achieved in a number of ways: Physical delivery (1 & 2) is simplest - but only applicable when there is personal contact between recipient and key issuer. This is fine for link encryption where devices & keys occur in pairs, but does not scale as number of parties who wish to communicate grows. 3 is mostly based on 1 or 2 occurring first. A third party, whom all parties trust, can be used as a trusted intermediary to mediate the establishment of secure communications between them (4). Must trust intermediary not to abuse the knowledge of all session keys. As number of parties grow, some variant of 4 is only practical solution to the huge growth in number of keys potentially needed.

    11. 11 Key Hierarchy typically have a hierarchy of keys session key temporary key used for encryption of data between users for one logical session then discarded master key used to encrypt session keys shared by user & key distribution center The use of a key distribution center is based on the use of a hierarchy of keys. At a minimum, two levels of keys are used: a session key, used for the duration of a logical connection; and a master key shared by the key distribution center and an end system or user and used to encrypt the session key. The use of a key distribution center is based on the use of a hierarchy of keys. At a minimum, two levels of keys are used: a session key, used for the duration of a logical connection; and a master key shared by the key distribution center and an end system or user and used to encrypt the session key.

    12. 12 Key Distribution Scenario The key distribution concept can be deployed in a number of ways. A typical scenario is illustrated in Stallings Figure 7.9 above, which has a “Key Distribution Center” (KDC) which shares a unique key with each party (user). See text section 7.3 for details of the steps shown in this distribution process. The key distribution concept can be deployed in a number of ways. A typical scenario is illustrated in Stallings Figure 7.9 above, which has a “Key Distribution Center” (KDC) which shares a unique key with each party (user). See text section 7.3 for details of the steps shown in this distribution process.

    13. 13 Key Distribution Issues hierarchies of KDC’s required for large networks, but must trust each other session key lifetimes should be limited for greater security use of automatic key distribution on behalf of users, but must trust system use of decentralized key distribution Briefly note here some of the major issues associated with the use of Key Distribution Centers (KDC’s). For very large networks, a hierarchy of KDCs can be established. For communication among entities within the same local domain, the local KDC is responsible for key distribution. If two entities in different domains desire a shared key, then the corresponding local KDCs can communicate through a (hierarchy of) global KDC(s) To balance security & effort, a new session key should be used for each new connection-oriented session. For a connectionless protocol, a new session key is used for a certain fixed period only or for a certain number of transactions. An automated key distribution approach provides the flexibility and dynamic characteristics needed to allow a number of terminal users to access a number of hosts and for the hosts to exchange data with each other, provided they trust the system to act on their behalf. The use of a key distribution center imposes the requirement that the KDC be trusted and be protected from subversion. This requirement can be avoided if key distribution is fully decentralized. In addition to separating master keys from session keys, may wish to define different types of session keys on the basis of use. These issues are discussed in more detail in the text Stallings section 7.3.Briefly note here some of the major issues associated with the use of Key Distribution Centers (KDC’s). For very large networks, a hierarchy of KDCs can be established. For communication among entities within the same local domain, the local KDC is responsible for key distribution. If two entities in different domains desire a shared key, then the corresponding local KDCs can communicate through a (hierarchy of) global KDC(s) To balance security & effort, a new session key should be used for each new connection-oriented session. For a connectionless protocol, a new session key is used for a certain fixed period only or for a certain number of transactions. An automated key distribution approach provides the flexibility and dynamic characteristics needed to allow a number of terminal users to access a number of hosts and for the hosts to exchange data with each other, provided they trust the system to act on their behalf. The use of a key distribution center imposes the requirement that the KDC be trusted and be protected from subversion. This requirement can be avoided if key distribution is fully decentralized. In addition to separating master keys from session keys, may wish to define different types of session keys on the basis of use. These issues are discussed in more detail in the text Stallings section 7.3.

    14. 14 Random Numbers many uses of random numbers in cryptography nonces in authentication protocols to prevent replay session keys public key generation keystream for a one-time pad in all cases its critical that these values be statistically random, uniform distribution, independent unpredictability of future values from previous values Random numbers play an important role in the use of encryption for various network security applications. Getting good random numbers is important, but difficult. You don't want someone guessing the key you're using to protect your communications because your "random numbers" weren't (as happened in an early release of Netscape SSL). Need such random values to be both statistically random (with uniform distribution & independent) and also to be unpredictable (so that it is not possible to predict future values having observed previous values).Random numbers play an important role in the use of encryption for various network security applications. Getting good random numbers is important, but difficult. You don't want someone guessing the key you're using to protect your communications because your "random numbers" weren't (as happened in an early release of Netscape SSL). Need such random values to be both statistically random (with uniform distribution & independent) and also to be unpredictable (so that it is not possible to predict future values having observed previous values).

    15. 15 Pseudorandom Number Generators (PRNGs) often use deterministic algorithmic techniques to create “random numbers” although are not truly random can pass many tests of “randomness” known as “pseudorandom numbers” created by “Pseudorandom Number Generators (PRNGs)” Cryptographic applications typically make use of deterministic algorithmic techniques for random number generation, producing sequences of numbers that are not statistically random, but if the algorithm is good, the resulting sequences will pass many reasonable tests of randomness. Such numbers are referred to as pseudorandom numbers, created by “Pseudorandom Number Generators (PRNGs)”.Cryptographic applications typically make use of deterministic algorithmic techniques for random number generation, producing sequences of numbers that are not statistically random, but if the algorithm is good, the resulting sequences will pass many reasonable tests of randomness. Such numbers are referred to as pseudorandom numbers, created by “Pseudorandom Number Generators (PRNGs)”.

    16. 16 Linear Congruential Generator common iterative technique using: Xn+1 = (aXn + c) mod m given suitable values of parameters can produce a long random-like sequence suitable criteria to have are: function generates a full-period generated sequence should appear random efficient implementation with 32-bit arithmetic note that an attacker can reconstruct sequence given a small number of values have possibilities for making this harder By far the most widely used technique for pseudorandom number generation is the “Linear Congruential Generator”, first proposed by Lehmer. It uses successive values from an iterative equation. Given suitable values of parameters can produce a long random-like sequence, but there are only a small number of such good choices. Note that the sequence, whilst looking random, is highly predictable, and an attacker can reconstruct the sequence knowing only a small number of values. There are some approaches to making this harder to do in practice by modifying the numbers in some way, see text.By far the most widely used technique for pseudorandom number generation is the “Linear Congruential Generator”, first proposed by Lehmer. It uses successive values from an iterative equation. Given suitable values of parameters can produce a long random-like sequence, but there are only a small number of such good choices. Note that the sequence, whilst looking random, is highly predictable, and an attacker can reconstruct the sequence knowing only a small number of values. There are some approaches to making this harder to do in practice by modifying the numbers in some way, see text.

    17. 17 Using Block Ciphers as PRNGs for cryptographic applications, can use a block cipher to generate random numbers often for creating session keys from master key Counter Mode Xi = EKm[i] For cryptographic applications, it makes some sense to take advantage of any block cipher encryption functions available to produce random numbers. Can use the Counter Mode or Output Feedback Mode, typically for session key generation from a master key.For cryptographic applications, it makes some sense to take advantage of any block cipher encryption functions available to produce random numbers. Can use the Counter Mode or Output Feedback Mode, typically for session key generation from a master key.

    18. 18 ANSI X9.17 PRG One of the strongest (cryptographically speaking) PRNGs is specified in ANSI X9.17. It uses date/time & seed inputs and 3 triple-DES encryptions to generate a new seed & random value. See discussion & illustration in Stallings section 7.4 & Figure 7.14 where: DTi - Date/time value at the beginning of ith generation stage Vi - Seed value at the beginning of ith generation stage Ri - Pseudorandom number produced by the ith generation stage K1, K2 - DES keys used for each stage Then compute successive values as: Ri = EDE([K1, K2], [Vi XOR EDE([K1, K2], DTi)]) Vi+1 = EDE([K1, K2], [Ri XOR EDE([K1, K2], DTi)]) Several factors contribute to the cryptographic strength of this method. The technique involves a 112-bit key and three EDE encryptions for a total of nine DES encryptions. The scheme is driven by two pseudorandom inputs, the date and time value, and a seed produced by the generator that is distinct from the pseudo-random number produced by the generator. Thus the amount of material that must be compromised by an opponent is overwhelming.One of the strongest (cryptographically speaking) PRNGs is specified in ANSI X9.17. It uses date/time & seed inputs and 3 triple-DES encryptions to generate a new seed & random value. See discussion & illustration in Stallings section 7.4 & Figure 7.14 where: DTi - Date/time value at the beginning of ith generation stage Vi - Seed value at the beginning of ith generation stage Ri - Pseudorandom number produced by the ith generation stage K1, K2 - DES keys used for each stage Then compute successive values as: Ri = EDE([K1, K2], [Vi XOR EDE([K1, K2], DTi)]) Vi+1 = EDE([K1, K2], [Ri XOR EDE([K1, K2], DTi)]) Several factors contribute to the cryptographic strength of this method. The technique involves a 112-bit key and three EDE encryptions for a total of nine DES encryptions. The scheme is driven by two pseudorandom inputs, the date and time value, and a seed produced by the generator that is distinct from the pseudo-random number produced by the generator. Thus the amount of material that must be compromised by an opponent is overwhelming.

    19. 19 Blum Blum Shub Generator based on public key algorithms use least significant bit from iterative equation: xi = xi-12 mod n where n=p.q, and primes p,q=3 mod 4 Unpredictable (passes next-bit test) security rests on difficulty of factoring n is unpredictable given any run of bits slow, since very large numbers must be used too slow for cipher use, good for key generation A popular approach to generating secure pseudorandom number is known as the Blum, Blum, Shub (BBS) generator, after its developers [BLUM86]. It has perhaps the strongest public proof of its cryptographic strength of any PRNG. It is based on public key algorithms, and hence is very slow, but has a very high level of security. It is referred to as a cryptographically secure pseudorandom bit generator (CSPRBG), being in practice unpredictable.A popular approach to generating secure pseudorandom number is known as the Blum, Blum, Shub (BBS) generator, after its developers [BLUM86]. It has perhaps the strongest public proof of its cryptographic strength of any PRNG. It is based on public key algorithms, and hence is very slow, but has a very high level of security. It is referred to as a cryptographically secure pseudorandom bit generator (CSPRBG), being in practice unpredictable.

    20. 20 Natural Random Noise best source is natural randomness in real world find a regular but random event and monitor do generally need special h/w to do this eg. radiation counters, radio noise, audio noise, thermal noise in diodes, leaky capacitors, mercury discharge tubes etc starting to see such h/w in new CPU's problems of bias or uneven distribution in signal have to compensate for this when sample and use best to only use a few noisiest bits from each sample A true random number generator (TRNG) uses a nondeterministic source to produce randomness. Most operate by measuring unpredictable natural processes, such as pulse detectors of ionizing radiation events, gas discharge tubes, and leaky capacitors. Special hardware is usually needed for this. A true random number generator may produce an output that is biased in some way. Various methods of modifying a bit stream to reduce or eliminate the bias have been developed.A true random number generator (TRNG) uses a nondeterministic source to produce randomness. Most operate by measuring unpredictable natural processes, such as pulse detectors of ionizing radiation events, gas discharge tubes, and leaky capacitors. Special hardware is usually needed for this. A true random number generator may produce an output that is biased in some way. Various methods of modifying a bit stream to reduce or eliminate the bias have been developed.

    21. 21 Summary have considered: use and placement of symmetric encryption to protect confidentiality need for good key distribution use of trusted third party KDC’s random number generation issues Chapter 7 summary.Chapter 7 summary.

More Related