Sec+ Chapter 07: Cryptography and the Public Key Infrastructure Flashcards

1
Q

Cryptography

A

The practice of encoding information in a manner that it cannot be decoded without access to the required decryption key. Consists of two main operations:

1) Encryption: Transforms plain text information into ciphertext using an encryption key

2) Decryption: Transforms ciphertext back into plain text with a decryption key

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

4 goals of cryptography

A

1) Confidentiality: Used to protect information from prying eyes

2) Integrity: Used to ensure data isn’t maliciously or unintentionally altered

3) Authentication: Validate the identity of individuals

4) Nonrepudiation: Ensures that individuals can prove to a third party that a message came from its purported sender

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Cipher

A

The algorithms used to perform encryption and decryption operations

Ciphering is the process of using a cipher to scramble a message

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Substitution cipher

A

A type of coding or ciphering system that changes one character or symbol into another

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Transposition cipher

A

Transposing or scrambling letters in a certain manner. Typically broken into blocks of equal size and each block is then scrambled

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Steganography

A

The art of using cryptography techniques to embed secret messages within another file

Steganographers often embed their secret messages in images, video files, or audio files because the files are so large the message would be easily missed by inspectors.

Often used for illicit activities

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Cryptography Goal: Confidentiality

A

The most widely cited goal of cryptosystems

Refers to the preservation of secrecy for stored information or for comms between individuals and groups

Ensures data remains private in three different situations:

1) At rest

2) In transit (on the wire)

3) In use

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Symmetric encryption

A

AKA: secret key algorithm or shared secret

Uses a single key to encrypt the data, and when you want to decrypt the data you use the same key

This shared, secret key is available to all users of the cryptosystem

It doesn’t scale well and is challenging to distribute

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Asymmetric encryption

A

AKA: Public key cryptography

Unlike symmetric, asymmetric uses multiple keys: a public and private key

Private key is what only you have access to and nobody knows what that is

Public key is mathematically related to the private key, and it’s what you give everyone so they can encrypt info and send it to you

Once someone encrypts data with your public key, the only way to decrypt it is with your private key

You can also do this the opposite way, and encrypt info with your private key and the people who decrypt it are the ones with your public key (digital signatures)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Data at rest

A

Stored data that resides in a permanent location awaiting access

EX: hard drives, backup tapes, cloud storage, USB drivers

To protect it, we must encrypt the data with whole disk, database, or file/folder encryption

Assign permissions to data in this drive

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Data in transit

A

On the wire (aka, in the cables), is data being transmitted across a network between two systems

EX: Data going between switch interfaces, router connections, and devices on the network

It’s difficult to protect as it travels, but not impossible

Allow or prevent access with firewall or IPS, or we encrypt the data as it goes through the network with TLS or IPsec

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Data in use

A

Stored in the active memory of a computer system, where it can be accessed by a process running on that system

EX: Data in system RAM, CPU registers, or system caches

Almost always presented in a decrypted view, which makes it a very attractive option for attackers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Cryptography Goal: Integrity

A

Ensures data isn’t altered without authorization. If integrity mechanisms are in place, the recipient of a message can be certain that the message received is identical the one that was sent.

Integrity checks ensure stored data wasn’t altered between time it was created and accessed.

Integrity controls protect against all forms of alternation, including:

1) Intentional by third-party attempting to insert false info

2) Intentional deletion of portions of the data

3) Unintentional alteration by faults in the transmission process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Cryptography Goal: Authentication

A

Verifies the claimed identity of the system users

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Cryptography Goal: Nonrepudiation

A

Provides assurance to the recipient that the message was originated by the sender, and not someone pretending to be the sender

Prevents the sender from claiming they never sent the message in the first place

Only offered by public key, or asymmetric

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Key space

A

The range of values that are valid for use as a key for a specific algorithm

Defined by its key length

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Key length

A

The number of binary bits in the key that defines the key space

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Kerchoff Principle

A

A cryptographic system should be secure, even if everything about the system, except the key, is public knowledge

AKA: Your enemy knows this system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Cipher suite

A

Sets of ciphers and key lengths supported by a system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Block cipher

A

Ciphers that operate on blocks of a message and apply the encryption algorithm to the entire message block at the same time

Usually you see this with 64 or 128 bit blocks

If it doesn’t fit, padding is added to fill in the short blocks

Like stream cipher, this is commonly used with symmetric encryption

Uses different modes of operation to avoid patterns in the encryption

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Stream cipher

A

Ciphers that operate on one character or bit of a message / data steam at a time

Often used with symmetric encryption

High speed, low hardware complexity

Challenge is that you don’t know what’s coming down the stream, which means randomization of data could be difficult if multiple bytes are identical in the stream

IV is added to the cipher to add randomization to the process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Symmetric key cryptography weaknesses

A

1) Key distribution is a major problem: Parties must have a secure method of exchanging the secret key before establishing comms with a symmetric key protocol

2) Doesn’t implement nonrepudiation: There’s no way to prove where a given message originated since anyone can encrypt and decrypt with the shared secret key

3) Algo isn’t scalable: Extremely difficult for large groups to comm with this. Secure private comms between individuals in the group can only be achieved if each possible combo of users shared a private key

4) Keys must be regenerated often: Each time a participant leaves a group, all keys known must be discarded

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Strengths of symmetric key cryptography

A

Speed: It’s 1k to 10k faster than asymmetric algos

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Strengths of asymmetric key cryptography

A

1) The addition of new users requires the generation of only one public-private key pair, which is used to comm with all users. Extremely scalable

2) Users can be removed easily. Key revocation mechanism allows a key to be canceled, removing a user from the system

3) Key regeneration is only required when a private key is compromised. If a user leaves, the admin simply needs to invalidate their keys

4) Provides integrity, authentication, and nonrepudiation. If a user doesn’t share their private key with others, a message signed by them can be shown to be accurate and from a specific source. Can’t be repudiated later

5) Simple key distribution. Users who participate simply make their public key available to anyone they want to comm with

6) No preexisting comm link needed. Two individuals can begin comms securely from the start of their session. No prior relationship needed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Weakness of asymmetric key cryptography

A

Speed: It has a slow speed of operation

Often, many applications that required the secure transmission of large amounts of data use public key cryptography to establish a connection and then exchange a symmetric secret key

The remainder of the session uses symmetric cryptography

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

DES

A

Data encryption standard

Published by US Gov in 1977, deprecated

A 64-bit block cipher that has five modes of operation:

1) Electronic codebook mode (ECB)

2) Cipher block chaining mode (CBC)

3) Cipher feedback mode (CFB)

4) Output feedback mode (OFB)

5) Counter mode (CTR)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

ECB Mode

A

Electronic codebook mode

Uses the DES algorithm, easiest to understand, least secure

Each time the algo processes a 64-bit block, it encrypts the block using the encryption key

This process is done all the way through the file until all blocks are encrypted

If the algo encounters the same block multiple times, it will produce the same encrypted block because it doesn’t use salt

This means it might not be the best encryption mode to use for every situation, but it can be used to exchange small amounts of data, like keys and parameters used to initiate other DES modes as well as the cells in a db

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

CBC Mode

A

Cipher block chaining mode

Uses the DES algorithm, adds more randomization than ECB

Each block is XORed with the previous ciphertext block, which means we perform a different set of input and output to that data to add randomization

XOR = exclusive, or, if you input two identical bits the output is 0, but if they’re different it’s 1

Encryption process is similar to ECB, but just before the encryption occurs we add the IV data, which further randomizes the ciphertext

On the second block of data, we use the resulting ciphertext as the IV for the next block

Ciphertext will be different every time, even if the plaintext is identical

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

CFB Mode

A

Cipher feedback mode

Uses the DES algorithm

The streaming cipher version of CBC. CFB operates against data produced in real time, but instead of breaking a message into blocks it uses memory buffers of the same size block. As it fills up, it’s encrypted and send to the recipients

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

OFB Mode

A

Output feedback mode

Uses the DES algorithm

Almost the same as CFB, but instead of XORing an encrypted version of the previous block of ciphertext, it XORs the plain text with a seed value

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

CTR Mode

A

Counter mode

Uses the DES algorithm and acts as a stream cipher similar to CFB and OFB

Uses an incremental counter to add randomization to the encryption process

We start with the counter, and encrypt the counter with the block cipher encryption

After that, we perform the XOR (exclusive, or) to the plaintext to create the ciphertext

Instead of using the results of this encryption on the next block, we increment the counter and perform the exact same encryption with the next block of plaintext

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

3DES

A

Triple DES

An adapted version of DES, uses the same algorithm to produce a more secure encryption. There are 4 versions of 3DES:

1) Encrypts plaintext three times, using three different keys K1, K2, and K3 (subscripts). DES-EEE3 (168 bit)

2) Uses three keys, but replaces second encryption operation with a decryption one. DES-EDE3 (168 bit)

3) Only uses two keys. DES-EEE2 (112 bit)

4) Uses two keys, but decryption operation in the middle. DES-EDE2 (112 bit)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

AES

A

Advanced encryption standard

NIST mandated use of AES/Rjindael in Nov 2001 for encryption of all sensitive but unclassified data by US Gov

Uses three key strengths of 128, 192, and 256 bit

AES only allows the processing of 128 bits, but Rjindael exceeded this spec, allowing people to use block size equal to the key length. The number of encryption rounds depends on the key length chose:

1) 128 bit requires 10 rounds

2) 192 bit requires 12 rounds

3) 256 bit requires 14 rounds

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

Key management practices

A

The security and protection of cryptographic keyring materials

Create the keys with a particular strength and cipher, generate the digital certificates which associate the keys with a particular user, and safely and securely distribute the keys to their users

Store the keys securely, ensure they’re used appropriately, revoke keys, escrow of keys, and create new keys after expiration dates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Offline distribution

A

One of three main methods used to exchange secret keys securely

This is the most technically simple and involves the physical exchange of key material

One party provides the other with a sheet of paper or storage media containing the secret key

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

Public key encryption

A

One of three main methods used to exchange secret keys securely

To achieve speed benefits of secret key encryption without the hassles of key distro, many use public key encryption to set up an initial comms link

Once it’s established, and everyone is confident in the others identity, they exchange a secret key over the secure public key link

Comms are then switched from public key algo to secret key algo and enjoy increased processing speeds

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

Diffie-Hellman

A

Uses asymmetric encryption to create a symmetric key, and you don’t have to send it across the network

Bob and Alice both use asymmetric encryption and both have private keys

Bob can combine his private key with Alice’s public key to create a symmetric key

Alice can combine her private key with Bob’s public key to create a symmetric key

If you use the related public and private keys on both side, you get symmetric keys identical to each other

By doing this, the same symmetric key can be created on both sides of the convo without ever sending the symmetric key across the network

This is the process used for Diffie-Hellman, and it’s used extensively everyday

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

Key storage best practices

A

1) Never store a key on the same system where encrypted data resides

2) For sensitive keys, consider providing two different individuals with half of the key. They must collaborate to re-create the entire key. Known as principle of split knowledge

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

RSA

A

The most famous public key cryptosystem, named for its creators: Ronald Rivest, Adi Shamir, and Leonard Adleman

Widely used for secure comms. This algo depends on computational difficult inherent in factoring large prime numbers

Each user of the cryptosystem generate a pair of public and private keys using the algo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

ECC

A

Elliptic curve cryptography

Instead of using large prime numbers, you use curves to create the asymmetric keys used for public and private key encryption and decryption

ECC can use smaller keys to maintain same security as non-ECC algorithms, and they require smaller storage and data needed to be transmitted across the network

You can thus access the power of asymmetric encryption on mobile and IoT devices that can’t store mass quantities of data

Widely believed that this is harder to solve than both the prime factorization of RSA and standard discrete logarithm from Diffie-Hellman

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

Message digest

A

What you get when you take a potentially long message and generate a unique output value derived from the content of the message

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

5 basic requirements for a cryptographic hash function

A

1) They accept an input of any length

2) They produce an output of a fixed length, regardless of the input length

3) The hash value is relatively easy to compute

4) The hash function is one-way, meaning that it’s extremely hard to determine the input when provided with the output

5) The hash function is collision free, meaning it’s extremely hard to find two messages that produce the same hash value

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

SHA

A

Secure hash algorithm

It and it’s successors SHA-1, SHA-2, and SHA-3 are govt standard hash functions promoted by NIST

44
Q

SHA-1

A

Takes an input of virtually any length (upper bound of 2,097,152 TB on the algo) and produces a 160-bit message digest

Processes a message in 512-bit blocks

If the message length is not a multiple of 512, the SHA algo pads it with additional data until the length reaches the next highest multiple of 512

45
Q

SHA-2

A

Developed after cryptanalytics showed weaknesses in SHA-1. SHA-2 has four variants:

1) SHA-256: produces a 256 bit message digest using a 512 bit block size

2) SHA-224: uses a truncated version of SHA-256 to produce a 224 bit message digest using a 512 bit block size

3) SHA-512: produces a 512 bit message digest using a 1,024 bit block size

4) SHA-384: uses a truncated version of SHA-512 to produce a 384 bit message digest using a 1,024 bit block size

46
Q

SHA-3

A

Released in 2015, this was developed to serve as a drop in replacement for SHA-2

Offers the same variants and hash lengths, but uses a more secure algo

47
Q

MD5

A

Released by Ron Rivest (of RSA fame) in 1991

Processes 512 bit blocks of the message, but it uses four distinct rounds of computation to produce a digest of the same length as the early MD2 and MD4 algos (128 bits)

However, MD5 is subject to collisions and has been compromised. It’s not usable for ensuring message integrity anymore

48
Q

Goals of digital signature infrastructures

A

1) Assure the recipient that the message truly came from the claimed sender. They enforce nonrepudiation

2) Assure the recipient that the message wasn’t altered while in transit between sender and recipient. Protects against malicious mods and unintentional mods

49
Q

HMAC

A

Hashed message authentication code

An algo that implements a partial digital signature. It guarantees the integrity of a message, but doesn’t provide for nonrepudiation

Can be combined with any standard message digest generation algo, like SHA-3, using a shared secret key

50
Q

4 core principles of public key cryptography

A

1) If you want to encrypt a message, use the recipient’s public key

2) If you want to decrypt a message sent to you, use your private key

3) If you want to digitally sign a message you’re sending to someone else, use your private key

4) If you want to verify the signature on a message sent by someone else, use the sender’s public key

51
Q

DSS

A

Digital signature standard, as specified by NIST in FIPS 186-4

Must use SHA-3 hashing function, and the following three approved standard encryption algos:

1) The Digital Signature Algorithm (DSA)

2) RSA

3) Elliptic Curve DSA (ECDSA)

52
Q

PKI

A

Public key infrastructure

The process of managing almost all aspects of digital certificates, from creation through revocation, which creates the foundation of trust for all digital certificates

Creating a PKI at your organization is a massive undertaking and requires lots of planning

Most PKI work is about creating certificates and associating them with users or devices

53
Q

Digital certificates

A

A public key combined with a digital signature, usually from the CA and may contain additional information that describe characteristics for the user or device

The foundation for PKI is the trust we associate with the certs, and the only way we can trust a cert is valid is to validate a digital signature

The digital signature often comes from a CA, which makes it a central point of trust

There are other ways to associate trust with the certs, like through a web of trust where the users can vouch for each other and digitally sign each others certs

54
Q

X.509

A

An international standard for digital certificates

Allows us to move the certs between systems and let the systems understand what’s inside

openSSL can read different formats or convert between formats if needed

Certs that conform have the following attributes:

1) Version X.509 to which the cert conforms (current version is X.509 v3)

2) Serial number (from the certificate creator)

3) Signature algo identifier (specifies the technique used by the CA to digitally sign the contents of the cert)

4) Issuer name (identification of the CA that issued the cert)

5) Validity period (specifies the dates and times during which a cert is valid)

6) Subject’s common name (CN) that clearly describes the cert’s owner

7) Certs can contain subject alternative name (SAN) that allows you to specify additional items (IPs, domains, etc) to be protected by a single cert

8) Subject’s public key (the meat of the cert, the actual public key the cert owner used to set up secure comms)

55
Q

Commercial CA

A

Certificate authorities

We can purchase a certificate from a CA that’s trusted by browsers and OS to make a CSR (certificate signing request):

1) Build a key pair on your local machine
2) Provide the public key to the CA
3) CA confirms you are the person making the request
4) CA signs your certificate
5) Put the certificate on your server
6) Visitors see you have a certificate and that it’s been signed by the CA

Some CAs:

Symantec, IdenTrust, AWS, GlobalSign, Comodo, Certum, GoDaddy, DigiCert, Secom, Entrust, Actalis, Trustwave

56
Q

RA

A

Registration authority

Assist CAs with the burden of verifying users’ identities prior to issuing digital certs

RA can revoke certs as well as help with renewal and re-key requests

They don’t directly issue certs themselves, but play an important role in certification process

Allow CAs to remotely validate user identities

57
Q

CRL

A

Certificate revocation lists

List of revoked certs that’s stored at the CA, contains the serial numbers of certs that have been issued and revoked, along with date and time the revocation went into effect

Disadvantage: they must be downloaded and x-referenced often, introducing a period of latency between the time a cert is revoked and the time end-users are notified of the revocation

58
Q

OCSP

A

Online certificate status protocol

This protocol eliminates the latency inherent in the use of CRLs by providing a means for real-time cert verification

When a client receives a cert, it sends an OSCP req to the CA OSCP server

The server then responds with a status of valid, invalid, or unknown

The browser uses the info to determine whether the cert is valid or not

Not all browsers or apps support OCSP, and even if some do they might not go through the process of checking

Don’t rely on any single method of certificate verification, use many

59
Q

OCSP Stapling

A

One of the easiest ways to check if certificates have been revoked

The status information regarding the cert is stored on the local server, and we staple the status into the handshake that occurs when SSL/TLS is used when connecting to the server

Since the status info is digitally signed by the CA, we trust it’s valid without going all the way to the CA for validation

60
Q

DER

A

Distinguished encoding rules format

A set of rules that allows us to encode x509 certificates

Binary format, but common across platforms that use Java

Usually stored with .der / .crt / .cer extensions

61
Q

PEM

A

Private enhanced mail format

A base64 encoded DER certificate in ASCII form that can be easily sent through email

PEM certs are normally stored with the .pem / .crt extensions

62
Q

PKCS #12 / PFX

A

Public key cryptography standard #12

Container format that holds many x.509 certificates

Usually sent as a .p12 or .pfx file

Commonly used to transfer public-private key pair in the same container, and you can password protect this

Interchangeable with PFX (personal information exchange)

Certificate format commonly used by Windows

PFX certs can be stored in binary form, using either .pfx / .p12 extensions

63
Q

PKCS #7

A

Public key cryptography standard #7

Cryptographic message syntax standard associated with the .p7b file

Stored in ASCII and easily transferred over email

Commonly send certificates and chain certificates, but not private keys in a .p7b file

You’ll find support for this in Windows, Java Tomcat, and more

64
Q

HSM

A

Hardware security modules

An effective way to manage encryption keys. These hardware devices store and manage encryption keys in a secure manner that prevents humans from ever needing to work directly with the keys.

65
Q

Frequency analysis

A

Looking at the blocks of an encrypted message to determine if any common pattern exists.

66
Q

Brute force cryptographic attack

A

Trying every possible key

It is guaranteed to work, but it can take millions of years depending on how complex the thing is you’re trying to crack

67
Q

Known plain text cryptographic attack

A

Relies on the attacker having pairs of known plain text along with the corresponding ciphertext

This gives the attacker a place to start attempting to derive a key

68
Q

Chosen plain text cryptographic attack

A

The attacker obtains the ciphertext corresponding to a set of plain texts of their own choosing

This allows them to attempt to derive the key used and thus decrypt other messages encrypted with that key

69
Q

Related key attack

A

Similar to chosen plain text, but the attacker can obtain ciphertext encrypted under two different keys

Often useful if you can obtain the plain text and matching ciphertext

70
Q

Birthday attack

A

An attack on cryptographic hashes based on something called the birthday theorem:

In a classroom of 23 students, what chance that 2 share a birthday? The answer is 50% because we compare every student to every other student for shared bday.

This is what’s called a hash collision

71
Q

Downgrade attack

A

Sometimes used against secure comms like TLS in an attempt to get the user or system to inadvertently shift to a form of encryption that’s easier to break

Tricks the user into shifting to a less secure protocol, one that can be easier to break

EX: POODLE (padding oracle on downgrade legacy encryption) downgrade attack

Researchers found a TLS vulnerability in 2014

They did an on-path attack and forced both sides to fallback on SSL 3.0, which has significant cryptographic vulnerabilities

72
Q

Rainbow table attack

A

An attempt to reverse hashed password values by precomputing the hashes of common passwords

Attackers take a list of common passwords and run them through the hash function to generate a rainbow table

They can search through lists of hashed values, looking for matches to the table

73
Q

Key stretching

A

A technique used to make weak passwords more secure by requiring repeated hashing

EX: Hash a password, then hash the hash, etc, etc

74
Q

Exploiting weak keys

A

A good cryptographic algo is used, like AES, but it’s implemented in a weak manner, like with weak key generation. These can be exploited

EX: Wireless equivalent privacy (WEP) protocol. Uses an improper implementation of RC4 encryption algo and has significant security vulnerabilities

75
Q

Exploiting human error

A

Any fault in cryptographic comms because of human error

EX: You forget to encrypt an email, code keys winding up in the wrong hands, giving insights into what the keys hold, using weak or deprecated algos, etc

76
Q

Hash collision

A

When you have two different types of plaintext that create the same hash

You could increase the size of the hash, which decreases the chance of collision

This should never happen, but it’s what compromised MD5 (message digest algo version 5)

Use SHA-3 instead

77
Q

Confusion

A

The encrypted data is drastically different than the plaintext

78
Q

Diffusion

A

If you change one piece of information in the plain text, the resulting cipher text will be dramatically different between encryption versions

79
Q

Plaintext

A

An unencrypted message

AKA: in the clear

80
Q

Cryptanalysis

A

The art of cracking cryptography

Researches are constantly trying to find weaknesses in ciphers through this art

81
Q

Ciphertext

A

An encrypted message

82
Q

Key stretching libraries

A

A technique to make weak passwords more secure by using repeated hashing

There are a number of libraries that exist to stretch your keys

brcypt generates hashes from passwords, an extension of the UNIX crypt library and uses the Blowfish cipher to perform multiple rounds of hashing

PBKDF2 (password based key derivation function v2), uses thousands of iterations of salting and hashing to generate encryption keys that are resilient against attacks

PBKDF2 is part of the RSA public key cryptography standards

83
Q

Homomorphic encryption

A

Perform calculations on data while it’s encrypted

You can save the results as encrypted data, without every having to decrypt the information

84
Q

Explain the process of asymmetric encryption

A

1) Bob wants to send information to Alice that’s encrypted—he needs his laptop, the original plaintext, and Alice’s public key

2) To obtain her key, Bob asks Alice for her key, retrieves it from a public key server, or gets it from anywhere Alice has posted her key publicly

3) Bob combines the plaintext with Alice’s public key to create the ciphertext

4) Alice receives the ciphertext and decrypts it with her private key, and she reads the plaintext

85
Q

Explain the process of creating a digital signature

A

1) Alice wants to send Bob a message, but she wants Bob to ensure it’s legit and actually comes from her

2) She hashes the plaintext

3) Then, she’ll encrypt the hash with her private key, which outputs a digital signature

4) The digital signature gets attached to the original plaintext and send to the recipient

5) Bob receives the message with the digital signature

6) To verify, Bob decrypts the signature with Alice’s public key

7) Bob is left with the plaintext hash

8) Bob now runs the plaintext through the same hashing algorithm Alice did

9) Bob compares the hashes

10) If they match, Bob knows the message is legit, it came from Alice, and nothing has been altered in transit

86
Q

Key strength

A

Larger keys tend to be more secure, and they can prevent brute force attacks

In symmetric encryption, 128 bit or larger are common, but those numbers increase as our computing power does

Asymmetric tends to be larger than symmetric, and tend to be 3,072 or larger

87
Q

Out of band key exchange

A

Sending symmetric keys through telephone, courier, in-person, etc

88
Q

In band key exchange

A

Sending symmetric keys on the network, usually with asymmetric encryption to deliver the key (additional encryption method)

89
Q

Explain how to send symmetric keys across the network securely

A

Use asymmetric encryption to encrypt symmetric key inside of it

1) The client takes the symmetric key (plaintext) and encrypts it with a server’s public key to create ciphertext

2) Ciphertext is sent to server, which decrypts with its private key and access the symmetric key we started with (the session)

These keys need to be changed often, as they’re used for individual sessions

This is known as an ephemeral key since it’s not permanent

90
Q

PFS

A

Perfect forward secrecy

This changes the encryption process so you’re not using the same private key every time to transfer symmetric keys across the network

Uses ECC of Diffie-Hellman ephemeral (ECDHE)

Every session should have a different set of encryption keys, which are no longer used after a session is over

You can’t go back after the fact and decrypt network traffic based on a single server private key (or attackers can’t if they capture a private key and the traffic)

91
Q

Private CA

A

When all the applications and services are done in-house, and no external parties are connecting

You build and sign your own certificates internally (self signed certificates)

An internal CA is a requirement for mid to large organizations with hundreds of servers and you need to provide signed digital certs for every server

92
Q

DV

A

Domain validation certificate

This means the owner of the cert, who’s added it to their webserver, has some control over the domain you’re connecting to

Provides trust that you’re connecting to the legitimate site when you connect

93
Q

EV

A

Extended validation certificate

Additional checks have been done by the CA and they enable additional features that show the name of the cert owner in the browser bar (in green)

Not as necessary anymore since SSL/TLS has become the norm

94
Q

SAN

A

Subject alternative name

Allows the owner of the cert to add different DNS names into the cert configuration

A single cert could support connectivity for multiple websites

You’ll often see a wildcard domain attached to this, designated with an * == many names associated with a DNS

EX: *.brainscape.com

95
Q

Code signing certificate

A

When developers create software, they can sign it with a code signing certificate

We can receive the software and install it, and during the install process we can verify the executable is the same as the one distributed by the manufacturer

Ensure it hasn’t changed since it left the developer

96
Q

Root certificate

A

All of the signatures and additional CA certs start here

If you’re building out intermediate and leaf CA, you start here and sign everything downstream from there

This is the foundation of your PKI, so make sure this cert stays safe at all times

97
Q

Machine and computer certs

A

Deploy machine or computer certs to all the devices that need to be trusted to your organization

You’ll know when one connects to the network, if they have the certificiate, that it’s trusted by your organization

EX: Connecting thru VPN, before gaining access to internal network it validates a certificate to ensure it’s trusted

98
Q

Email certificate

A

These use public key cryptography to encrypt information so you can send it protected, and receive encrypted messages to decrypt locally in your email client

These can also be used for digital signatures, we can sign emails with a certificate, and the recipient can validate everything is the same for integrity and non repudiation

99
Q

User certificate

A

Certificates for every user

Uses an additional authentication factor, like in an ID card or smart card

Could be both a physical and digital i

100
Q

CER

A

Certificate format

Primarily a Windows x.509 file extension

Provides binary DER or ASCII PEM format

Usually contains just public keys, private keys are sent in .pfx files

Look for the .cer file extension

101
Q

Offline and Online CAs

A

If your root CA is compromised, all the keys assigned and distributed by the root are no longer trustworthy

Limit the exposure of the root CA by having some CAs be online, others offline

Build out intermediate CAs that sign the certs throughout your org

Then, you can remove the root CA and store it safely so nobody has access to the root CA certs

This limits the scope of any type of compromise of an intermediate CA, and you only have to recreate a CA and distribute a fraction of the total certs in an environment

If you need all new intermediate CA, you have a root CA that’s never been compromised

102
Q

Pinning

A

When you put a certificate inside the app you’re using, and then compare that to the cert that you see when the app connects to the server

You have to compile the cert inside the app you’re using, or add it the first time you run the app

The app will perform a check, see if the cert it has internally matches the cert it sees on the server

If not match, app will decide what to do like show error or shut down

103
Q

PGP web of trust

A

PGP (pretty good privacy) was built as a web of trust, and in that you sign certs of people you know

They sign certs for people they know

If you see a cert from someone you don’t know, but it’s been signed by someone you do know, there’s a level of trust you can associate with that

104
Q

Mutual authentication

A

When you validate the server you comm with is trusted

Server validates the client it comms with is trusted

Both sides can trust each other, and the app they use has additional layer of trust

105
Q

Key escrow

A

When a third party holds your decryption keys

You hand over your keys, and the third party only uses them in particular situations

EX: You store private information about your employees that’s encrypted, you’re only allowed if it’s validated by the third party with decryption keys

106
Q

Certificate chaining

A

Chain of trust

List all of the certs between the server we connect to and the root CA

Any cert between the device we connect to and the root CA is a chain cert (or intermediate cert)