Dr. Aly, O.
Computer Science
Introduction
The purpose of this discussion is to discuss and analyze encryption, the encryption types, the impact of the encryption, and the use of encryption when streaming data in the network.
Cryptography and Encryption
The cryptography comprises a set of algorithms and system-design principles, some well-developed and some are just emerging for protecting data in the era of Big Data and Cloud Computing. Cryptography is a field of knowledge whose products are encryption technology. Encryption technology is an inhibitor to compromising privacy with well-designed protocols. However, it is not the “silver bullet” to cut through the complexity of the existing issues of privacy and security (PCAST, May 2014).
The encryption technology involves the use of a key. Only with the key can encrypted data be used. At every stage of the life of the key, it is potentially open to misuse that can ultimately compromise the data which the key was intended to protect. If the user with access to private keys can be forced into sharing them, no system based on encryption is secure.
The keys were distributed physically, on paper or computer media, protected by registered mail, armed guards until the1970s. However, the intervention of the “public-key cryptography” changed everything. The public-key cryptography allows individuals to broadcast their personal key publicly. However, this public key is only an encryption key, useful for turning plaintext into cryptotext which is meaningless to others. The private key is used to transform cryptotext to plaintext and is kept secret by the recipient (PCAST, May 2014).
The message typically is in the form of plaintext represented by the letter P when encryption functions are described. The sender of the message uses a cryptographic algorithm to encrypt the plaintext message and generate a ciphertext or cryptotext represented by the letter C. The message is transmitted, and the recipient uses a predetermined algorithm to decrypt the ciphertext message and retrieve the plaintext version. All cryptographic algorithms rely on keys to maintain their security. A key is just a number and usually substantial binary number. Every algorithm has a specific “keyspace,” which is the range of values which are valid for use as a key for a specific algorithm and is defined by its “bit size.” Thus, 128-bit key can have a value from 0 to 2128. It is essential and critical to protecting the security of the secret keys because of the security of the cryptography relies on the ability to keep and maintain the keys used privately (Abernathy & McMillan, 2016; Maiwald, 2001; Stewart, Chapple, & Gibson, 2015). Figure 1 illustrates the basic encryption operation (Maiwald, 2001).

Figure 1. Basic Encryption Operation (Maiwald, 2001).
The modern cryptosystems utilize computationally sophisticated algorithm and long cryptographic keys to meet the cryptographic four goals mentioned below. There are three types of an algorithm which are commonly used: symmetric encryption algorithm, asymmetric encryption algorithm, and hashing algorithms (Abernathy & McMillan, 2016; Connolly & Begg, 2015; Stewart et al., 2015; Woo & Lam, 1992).
Four Goals for Encryption
The cryptography provides an additional level of security to the data during processing, storage, and communications. A series of increasingly sophisticated algorithms have been designed to ensure the confidentiality integrity, authentication, and non-repudiation. At the same time, hackers also have devoted time to undermine this additional security layer of the encryption. There are four fundamental goals for organizations to use the cryptographic systems; the confidentiality, the integrity, the authentication, and non-repudiation. However, not all of the cryptosystems are intended to achieve all four goals (Abernathy & McMillan, 2016; Stewart et al., 2015).
The confidentiality ensures that the data remains private while at rest, such as when stored on a disk, or in or transit such as during transmission between two or more parties. The confidentiality is the most common reason for using the cryptosystems. There are two types of cryptosystems which enforce confidentiality; symmetric key and asymmetric key algorithms. The symmetric key cryptosystems use a shared secret key available to all users of the cryptosystem. The asymmetric key algorithm uses special combinations of public and private key for each user of the system (Abernathy & McMillan, 2016; Stewart et al., 2015).
When implementing a cryptographic system to provide confidentiality, the data types must be considered, whether the data is at rest or in motion. The data at rest is the data that is stored in a storage area waiting to be accessed. For instance, the data at rest include data stored on hard drives, backup tapes, cloud storage services, USB devices and other storage media. The data in motion or data “on the wire” is the data that is being transmitted across the network between systems the data in motion might be traveling on a corporate network, a wireless network, or public Internet. Both types of the data post different types of confidentiality risks against which cryptographic system can protect. For instance, the data in motion may be susceptible to eavesdropping attacks, while data at rest is more susceptible to the theft of physical devices (Abernathy & McMillan, 2016; Stewart et al., 2015).
The integrity ensures that the data is not modified without authorization. If the integrity techniques are in place, the recipient of a message can ensure that the message received is identical to the message sent. The integrity provides protection against all forms of modification such intentional modification by a third party attempting to insert false information, and unintentional modification by faults in the transmission process. The message integrity is enforced through the use of encrypted message digests, known as digital signatures created upon transmission of a message. The integrity can also be enforced by both public and secret key cryptosystems (Abernathy & McMillan, 2016; Stewart et al., 2015).
The authentication is a primary function of the cryptosystems and verifies the claimed identity of system users. Secret code can be used for the authentication. The nonrepudiation assures the recipient that the message was originated by the sender and not someone masquerading as the sender. Moreover, the nonrepudiation also prevents the sender to deny sending the message or repudiating the message. The secret key or symmetric key cryptosystems do not provide this guarantee of non-repudiation. The non-repudiation is offered only by the public key or asymmetric cryptosystem (Abernathy & McMillan, 2016; Stewart et al., 2015).
Symmetric Cryptosystem
The symmetric key algorithms rely on a “shared secret” encryption key which is distributed to all users who participate in the communication. The key is used by all members to both encrypt and decrypt messages. The sender encrypts with the shared key, and the receiver decrypts with the same shared key. The symmetric encryption is difficult to break because of the long and large-size key. The symmetric encryption is primarily used for bulk encryption and to meet the confidentiality goal. The symmetric key cryptography can also be called “secret key cryptography and private key cryptography.” There are several common symmetric cryptosystems such as the Data Encryption Standard (DES), Triple DES (3DES), International Data Encryption Algorithm (IDEA), Blowfish, Skipjack, and the Advanced Encryption Standard (AES). The advantage of the symmetric cryptosystem is that it operates at high speed and it is faster than the asymmetric (1,000 to 10,000 faster) (Abernathy & McMillan, 2016; Connolly & Begg, 2015; Maiwald, 2001; Stewart et al., 2015).
The symmetric cryptosystem has limitations. The first limitation is the key distribution. The members must implement a secure method of exchanging the shared secret key before establishing the communication with the symmetric key protocol. If the secure electronic channel does not exist, an offline key distribution method must be used. The second limitation represents the nonsupport to the non-repudiation, due to sharing the same key which makes it difficult to know the source of the message. The third limitation represents the inability of the scalable algorithm. The last limitation of the symmetric cryptosystem is the frequent regeneration of the key (Abernathy & McMillan, 2016; Connolly & Begg, 2015; Stewart et al., 2015).
Asymmetric Cryptosystem
The asymmetric key algorithm, also known as “public key algorithm, provides a solution to the limitation of the symmetric key encryption. This system uses two keys; a public key which is shared with all users, and a private key which is secret and known only to the user. If the public key encrypts the message, the private key can decrypt the message, and the same applies if the private key encrypts the message, the public key decrypts the message. The asymmetric key cryptosystem provides support to the digital signature technology. The advantages of the asymmetric key algorithm include the generation of only one public-private key for new users, and the removal of the users easily. Moreover, the key generation is required only when the private key of the user is compromised. The asymmetric key algorithm provides integrity, authentication, and non-repudiation. The key distribution is a simple process in the asymmetric key algorithm. The asymmetric key algorithm does not require a pre-existing relationship to provide a secure mechanism for data exchange (Abernathy & McMillan, 2016; Connolly & Begg, 2015; Maiwald, 2001; Stewart et al., 2015).
The limitation of the asymmetric key cryptosystem is the slow speed of operation. Thus, many applications which require the secure transmission of the large volume of data employs the public key cryptographic system to establish a connection and then exchange a symmetric secret key. The remainder of the session then utilizes the symmetric cryptographic approach. Figure 2 illustrates a comparison of symmetric and asymmetric cryptographic systems (Abernathy & McMillan, 2016; Connolly & Begg, 2015; Stewart et al., 2015).

Figure 2. Comparison of Symmetric and Asymmetric Cryptographic Systems. Adapted from (Abernathy & McMillan, 2016; Stewart et al., 2015).
The Hashing Algorithm
The hashing algorithm produces message digests which are summaries of the content of the message. It is challenging to derive a message from an ideal hash function, and two messages will unlikely produce the same hash value. There are some of the more common hashing algorithm in use today including the Message Digest 2 (MD2), Message Digest 5 (MD5), Secure Hash Algorithm (SHA-0, SHA-1, and SHA-2), and Hashed Message Authentication Code (HMAC). Unlike symmetric and asymmetric algorithms, the hashing algorithm is publicly known. The hash functions are performed in one direction and using in reverse is not required. The hashing algorithm ensures the integrity of the data as it creates a number which is sent along with the data. When the data gets to the destination, this number can be used to determine whether even a single bit has changed in the data by calculating the hash value from the data which was received. The hashing algorithm also helps in protecting against undetected corruption (Abernathy & McMillan, 2016; Connolly & Begg, 2015; Stewart et al., 2015).
Attacks Against Encryption
The encryption systems can be attacked in three ways, through weaknesses in the algorithm, through brute-force against the key, or through a weakness in the surrounding system. When the algorithm is attacked through the weakness in the way that the algorithm changes plaintext into ciphertext so that the plaintext may be recovered without knowing the key. The algorithm that has weaknesses of this type are rarely considered reliable enough for use. The brute-force attacks are attempts to use every possible key on the ciphertext to find the plaintext. On the average, 50% of the keys must be tried before finding the correct key. The strength of the algorithm is then only defined by the number of keys that must be attempted. Thus, the longer the key, the more significant the total number of keys and the larger the number of keys which must be tried until the correct key is found. The brute-force attacks will always succeed eventually if enough time and resources are used. Thus, the algorithms should be measured by the length of time the information is expected to be protected even in the fact of a brute-force attack. The algorithm is considered computationally secure if the cost of acquiring the key through brute-force is more than the value of the information being protected. The last encryption attack through weaknesses in the surrounding system can involve keeping the key in a file that has a password, but the password is weak and can be guessed easily (Maiwald, 2001).
References
Abernathy, R., & McMillan, T. (2016). CISSP Cert Guide: Pearson IT Certification.
Connolly, T., & Begg, C. (2015). Database Systems: A Practical Approach to Design, Implementation, and Management (6th Edition ed.): Pearson.
Maiwald, E. (2001). Network security: a beginner’s guide: McGraw-Hill Professional.
PCAST. (May 2014). Big Data and Privacy: A Technological Perspective.
Stewart, J., Chapple, M., & Gibson, D. (2015). ISC Official Study Guide. CISSP Security Professional Official Study Guide (7th ed.): Wiley.
Woo, T. Y., & Lam, S. S. (1992). Authentication for distributed systems. Computer, 25(1), 39-52.












