Câu 1
Câu 1
Which
of the keys would Alice best use – as shown in the box on the diagram in Figure
1.1 below.
Answer:
We have Alice and Bob have been shown on the figure:
Alice has the Public key (PA), the Secret key of Alice (SA), and the Public key of Bob (PB).
Bob has the Public key (PB), the Secret key of Bob (SB), and the Public key of Alice (PA).
(P… means both you and others have this key, and S… means only you have the key)
To convey a secure message ({m}) to Bob and verify her identity, Alice employs her confidential
key (SA) to sign the message. By signing the message with her secret key (SA), Alice furnishes
proof that the message originated from her and remained untampered with during
transmission.
Subsequently, she encrypts the signed message using Bob's public key (PB) and dispatches it to
Bob. Upon receiving the message, Bob decrypts it using his secret key (SB) and verifies the
signature using Alice's public key (PA). In my perspective, Alice should encrypt the message
using Bob's public key (PB) before transmitting it to him.
-> Alice opts for her secret key (SA) to encrypt the message precisely because the encryption
with her secret key (SA) necessitates decryption with PB, a process that Bob can leverage to
confirm that the message originated from someone holding A—a crucial aspect that Alice must
safeguard as her confidential key.
Answer:
We have Alice and Bob have been shown on the figure:
Alice has the Public key (PA), the Secret key of Alice (SA), and the Public key of Bob (PB).
Bob has the Public key (PB), the Secret key of Bob (SB), and the Public key of Alice (PA).
(P… means both you and others have this key, and S… means only you have the key)
To establish a secure channel between Alice and Bob, shielding their messages from any
external interception or observation, Alice opts to employ Bob's public key (PB). Here's the
rationale behind her choice:
In her pursuit of securely transmitting a message to Bob, Alice employs Bob's public key (PB) for
encryption. Messages encrypted with Bob's public key (PB) can only be decrypted using Bob's
secret key (SB).
Alice takes her message and encrypts it using Bob's public key (PB), generating the ciphertext.
Upon reception, Bob, being the intended recipient, utilizes his secret key (SB) to decrypt the
message encrypted by Alice.
Because only Bob holds the secret key (SB) corresponding to his public key (PB), decryption of
the message is exclusive to him.Here is a step-by-step example process:
Alice encrypts the message {m} using Bob's public key (PB) to create ciphertext (C).
Alice sends the ciphertext (C) to Bob.
Bob, being the recipient, decrypts the ciphertext (C) using his secret key (SB) to retrieve
the original message {m}.
Now, the message {m} has been securely transmitted from Alice to Bob without any
external entity being able to read or observe the contents of the message.
Câu 3: Alice would like to use Diffie-Hellman Key Exchange to send a message to Bob that
includes authentication and secrecy. Which of the two keys would Alice best use – as shown
in the two boxes on the diagram in Figure 2.2 below?
Answer:
We have Alice and Bob have been shown on the figure:
Alice has the Public key (PA), the Secret key of Alice (SA), and the Public key of Bob (PB).
Bob has the Public key (PB), the Secret key of Bob (SB), and the Public key of Alice (PA).
(P… means both you and others have this key, and S… means only you have the key)
To achieve both authentication and secrecy while using Diffie-Hellman Key Exchange to send a
message to Bob, Alice should use both her secret key (SA) and Bob's public key (PB) in
conjunction with a digital signature and encryption.
Here is how Alice can achieve both authentication and secrecy in the message exchange:
Diffie-Hellman Key Exchange: Alice and Bob have to perform the Diffie-Hellman Key Exchange
protocol to establish a shared secret key known only to them. This shared secret key will be
used for encryption, ensuring message secrecy between Alice and Bob.
Authentication with Digital Signature: To authenticate her identity and ensure the integrity of
the message, Alice will sign the message {m} using her secret key (SA) to create a digital
signature (S). This signature proves that the message originates from Alice and has not been
altered in transit.
Encrypting the Message: After creating the digital signature, Alice encrypts both the original
message {m} and the digital signature (S) using Bob's public key (PB) to create a ciphertext (C).
Sending the Ciphertext: Alice sends the ciphertext (C) to Bob.
Decryption and Verification by Bob: Bob receives the ciphertext (C) and decrypts it using his
secret key (SB) to retrieve the original message {m} and the digital signature (S). After
decrypting, Bob verifies the authenticity of the message using Alice's public key (PA) to verify
the digital signature (S).
Câu 4: Amazon.com would like to work with its CA to set up its website for secure
eCommerce. The certificate issued by the CA to Amazon.com would be encrypted with the
secret key of the CA and would include which of the following information – as shown in the
box on the diagram in Figure 1.2 below:
Which key information is included in the certificate sent from the CA to Amazon.com?
Answer:
The Certificate Authority (CA) dispatches a certificate to Amazon.com encompassing
Amazon.com's public key (PM). Customers can acquire this certificate from Amazon.com and
decrypt it using the CA's public key (PCA). Once in possession of Amazon.com's public key, they
can encrypt their credit card details utilizing the SSL (Secure Sockets Layer) protocol.
pr
SSL serves as a secure communication protocol safeguarding transmitted internet data. When
customers input their credit card information on Amazon.com's site, it undergoes encryption
using Amazon.com's public key. Subsequently, the encrypted data is sent to Amazon.com's
server, where it gets decrypted utilizing Amazon.com's private key. This process guarantees
exclusive accessibility to the credit card details by Amazon.com, impeding third-party
interference.
The CA-sent certificate to Amazon.com is a digital file housing Amazon.com's public key and
supplementary information. The CA's signature on the certificate authenticates its integrity,
ensuring it remains untampered.
Upon a customer's visit to Amazon.com's site, their browser verifies the website's certificate
validity. A valid certificate prompts the browser to utilize the public key within the certificate for
encrypting data during transmission between the customer's browser and Amazon.com's server.
This measures up to safeguarding the data from unauthorized access.
Câu 5: From a service perspective, what is an important difference between a symmetric-key
system and a public-key system?
Note: Explain your answer in detail
Answer:
Symmetric-key systems: employ a single key for both encryption and decryption. This implies
that secure communication demands possession of the key by both the sender and receiver.
These systems tend to be faster than public-key systems but are comparatively less secure.
Compromise of the key results in the compromise of all data encrypted with it.
Public-key systems: utilize a key pair: a public key and a private key. While the public key is
open to everyone, the private key remains exclusively in the owner's possession. Data
encryption relies on the public key, while decryption requires the private key. This inherent
structure renders public-key systems more secure; even if the public key is compromised, the
private key remains secure.
From a service perspective, the most important difference between symmetric-key systems and
public-key systems is the way that keys are exchanged. In a symmetric-key system, the keys
must be exchanged in a secure way, such as in person or over a secure channel. This can be
difficult and time-consuming, especially if there are a large number of users involved. In a
public-key system, the public keys can be published, so there is no need to exchange them in a
secure way. This makes public-key systems more scalable and easier to use.
Here is a table that summarizes the key differences between symmetric-key systems and public-
key systems:
Câu 6: Propose your own schema for the purpose of authentication and confidentiality.
Describe the operation of your own schema.
What are the advantages of your own schema?
What are the disadvantages of your own schema?
Answer:
Schema:
User registration: Users register with the system by providing their username, password,
and email address. The username and password are stored in the database as hashed
values. The email address is used to send the user a confirmation message and to reset
their password if they forget it.
Login: Users login to the system by providing their username and password. The
username is checked against the database to see if it exists. If it does, the password is
hashed and compared to the hashed password in the database. If the passwords match,
the user is logged in.
Data confidentiality: Data confidentiality is achieved by encrypting all data before it is
stored in the database. The encryption key is a symmetric key that is shared between the
client and the server. The key is generated randomly and stored in the database.
Data integrity: Data integrity is achieved by using a hash function to calculate a hash
value for each piece of data. The hash value is stored along with the data. When the
data is retrieved, the hash value is recalculated and compared to the stored hash value.
If the hash values match, the data has not been tampered with.
Operation:
The schema works as follows:
1. When a user registers with the system, their username, password, and email address are
stored in the database. The password is hashed before it is stored.
2. When a user logs in to the system, their username and password are checked against the
database. If the passwords match, the user is logged in.
3. Before any data is stored in the database, it is encrypted using the symmetric key. The
key is shared between the client and the server.
4. When data is retrieved from the database, it is decrypted using the symmetric key.
5. A hash function is used to calculate a hash value for each piece of data. The hash value is
stored along with the data.
6. When the data is retrieved, the hash value is recalculated and compared to the stored
hash value. If the hash values match, the data has not been tampered with.
Advantages:
The advantages of this schema include:
Strong authentication: Users are authenticated using a combination of username,
password, and email address. This makes it more difficult for unauthorized users to gain
access to the system.
Strong confidentiality: All data is encrypted before it is stored in the database. This
ensures that the data is not accessible to unauthorized users.
Strong integrity: A hash function is used to calculate a hash value for each piece of data.
This ensures that the data has not been tampered with since it was stored.
Disadvantages:
The disadvantages of this schema include:
The schema is more complex than some other schemas. This could make it more difficult
to implement and maintain.
The schema requires the use of a symmetric key. This key must be kept secure in order
to prevent unauthorized users from accessing the data.
Overall, this schema provides strong authentication, confidentiality, and integrity for data stored
in the system. However, the schema is more complex than some other schemas and requires
the use of a symmetric key.
Cách 2:
My schema:
Authentication is achieved using a two-factor authentication (2FA) system. The first
factor are username and password, and the second factor is one-time password (OTP)
generated by a hardware token or a mobile app.
Confidentiality is achieved using symmetric encryption. The sender and receiver of a
message share a secret key, which is used to encrypt and decrypt the message.
The operation of my schema is as follows:
The sender generates a message. This message could be anything, such as a text file, an
image, or a video.
The sender encrypts the message using the secret key. The secret key is a shared secret
between the sender and the receiver. It is never shared with anyone else.
The sender sends the encrypted message to the receiver. The encrypted message can be
sent over any medium, such as the internet, a local network, or even a USB drive.
The receiver decrypts the message using the secret key. The receiver uses the same
secret key that the sender used to encrypt the message.
Here is an example of how my schema would be used to send an encrypted message:
- Hanabi wants to send Hazo a secret message.
- Hanabi generates a message that says " Pay me your loan immediately or I will come
to your house!"
- Hanabi encrypts the message using the secret key that she shares with Hazo.
- Hanabi sends the encrypted message to Hazo over the internet.
- Hazo receives the encrypted message and decrypts it using the secret key that he
shares with Hanabi.
- Hazo reads the message and sees that it says " Pay me your loan immediately or I will
come to your house!"
The advantages of my schema are:
It is very secure. The use of 2FA and symmetric encryption makes it very difficult for
unauthorized users to gain access to data. 2FA adds an extra layer of security to
authentication by requiring users to enter a one-time password (OTP) in addition to their
username and password. This makes it much more difficult for attackers to gain access to
accounts, even if they have stolen the user's username and password.
It is easy to use. The 2FA system is very simple to use. Users only need to enter a one-
time password that is generated by their hardware token or mobile app. The symmetric
encryption is transparent to the user, which means that they do not need to know
anything about how it works in order to use it.
The disadvantages of my schema are:
It is not as scalable as some other schemas. The use of symmetric encryption in my
schema requires that all users share the same secret key. This can be difficult to manage
in large systems, as it can be difficult to keep the secret key secure. If the secret key is
compromised, all messages encrypted with that key will be compromised as well.
It is not as resistant to offline attacks as some other schemas. If the secret key is
compromised, all messages encrypted with that key will be compromised as well. This is
a disadvantage of symmetric encryption, as it is not as resistant to offline attacks as
asymmetric encryption.
Overall, I believe that my schema is a secure and easy-to-use way to achieve authentication and
confidentiality. It is not as scalable or resistant to offline attacks as some other schemas, but it is
a good choice for systems where security and ease of use are the most important factors.
Here are some additional details about my schema:
The secret key can be generated using a secure random number generator.
The OTP can be generated using a hardware token or a mobile app.
The symmetric encryption algorithm can be any secure algorithm, such as AES-256
(Advanced Encryption Standard, 1.1 x 1077).
Câu 7: The Caesar cipher is a classic example of ancient cryptography and is said to have been
used by Julius Caesar, also known as shift cipher.
Decipher this cryptogram below to discover the secrets.
Cipher text: MWA-PH: Kv fvb ilsplcl pu yhukvtulzz?
Plaint text: F**-**: ** *** ******* ** **********?
Answer:
We have the order of the alphabet as follows:
00 01 02 03 04 05 06 07 08 09 10 11 12
A B C D E F G H I J K L M
13 14 15 16 17 18 19 20 21 22 23 24 25
N O P Q R S T U V W X Y Z
We have M = 12 and F = 5
So we can Decrypt cipher text with a shift of 12 – 5 = 7
1. M: D(M) = 12 – 7 Mod 26 = 5 -> F
2. W: D(W) = 22 – 7 Mod 26 = 15 -> P
3. A: D(A) = 0 – 7 Mod 26 = 19 -> T
4. P: D(P) = 15 – 7 Mod 26 = 8 -> I
5. H: D(H) = 7 – 7 Mod 26 = 0 -> A
6. K: D(K) = 10 – 7 Mod 26 = 3 -> D
7. v: D(v) = 21 – 7 Mod 26 = 14 -> o
8. f: D(f) = 5 – 7 Mod 26 = 24 -> y
9. v: D(v) = 21 – 7 Mod 26 = 14 -> o
10. b: D(b) = 1 – 7 Mod 26 = 20 -> u
11. i: D(i) = 8 – 7 Mod 26 = 1 -> b
12. l: D(l) = 11 – 7 Mod 26 = 4 -> e
13. s: D(s) = 18 – 7 Mod 26 = 11 -> l
14. p: D(p) = 15 – 7 Mod 26 = 8 -> i
15. l: D(l) = 11 – 7 Mod 26 = 4 -> e
16. c: D(c) = 2 – 7 Mod 26 = 21 -> v
17. l: D(l) = 11 – 7 Mod 26 = 4 -> e
18. p: D(p) = 15 – 7 Mod 26 = 8 -> i
19. u: D(u) = 20 – 7 Mod 26 = 13 -> n
20. y: D(y) = 24 – 7 Mod 26 = 17 -> r
21. h: D(h) = 7 – 7 Mod 26 = 0 -> a
22. u: D(u) = 20 – 7 Mod 26 = 13 -> n
23. k: D(k) = 10 – 7 Mod 26 = 3 - > d
24. v: D(v) = 21 – 7 Mod 26 = 14 -> o
25. t: D(t) = 19 – 7 Mod 26 = 12 -> m
26. u: D(u) = 20 – 7 Mod 26 = 13 -> n
27. l: D(l) = 11 – 7 Mod 26 = 4 -> e
28. z: D(z) = 25 – 7 Mod 26 = 18 -> s
29. z: D(z) = 25 – 7 Mod 26 = 18 -> s
Cipher text after decrypted is: FPT-IA: Do you believe in randomness?
Câu 8: The following schemas illustrate a variety of ways in which a hash code can be used to
provide message authentication.
For each schema above:
Describe the operation of this schema.
What are the advantages of this schema?
What are the disadvantages of this schema?
Answer:
Schema a: The operation of this schema:
In this scheme we have the sender party A and the receiver party B, the main goal of this
scheme is to check what the final message is and ensure data security during
transmission.
The message (M) plus the concatenated hash code is hashed from the message (M) by
using the hash function (H) and then both are encrypted (E) using symmetric encryption.
Since only A and B share a secret key (K) that only they know. This means that the
message (M) must have come from A and has not been altered. The hash code provides
the structure or redundancy needed to authenticate the message. The encryption of the
entire message (M) plus the hash code ensures confidentiality.
After encrypting (E) the data with the secret key (K), we have E(K, [M || H(M)]) on the
transmission from A to B, this is the message (M) and the hash code H(M) after both are
encrypted (E).
When it reaches party B, it is decrypted (D) with the secret key (K) and will receive a
message (M) with a hash code, known as H(M). Next, party B will hash the message (M)
just received from party A with the same hash function (H) as party A.
Finally, party B will use the hash code that has just been hashed out and compare it with
the hash code that party A sent, if the calculated hash code is the same as the received
hash code, it is determined that the data is safe and correct.
The advantages of this schema:
Speed: Symmetric encryption is generally faster than asymmetric encryption, so using
the same secret key for both encryption and hashing can improve performance.
Security: If the secret key is kept secret, then the encrypted data and hash value are also
secure. This means verifying the accuracy and security of the data.
Efficiency: It is more efficient to use the same key for both encryption and hashing, as
this eliminates the need to generate and manage two separate keys.
The disadvantages of this schema:
Key management: The secret key must be kept secure, as if it is compromised then both
the encrypted data and the hashed data will be vulnerable.
Brute-force attacks: If the secret key is compromised, then all encrypted data and hash
values can be decrypted.
Hash collision attacks: If the hash function is not collision-resistant, then it may be
possible to create two different messages with the same hash value, which could be
used to forge signatures or tamper with data.
Schema b: The operation of this schema:
For this schema, we can see the hash code is hashed from the message (M) by using the
hash function (H), and here only the hash code is encrypted (E) by using symmetric
encryption and the key secret (K). This means that the sender does not care about the
security of the data, but only wants to prove whether the data has changed during
transmission. Besides that, this reduces the processing burden for applications that do
not require confidentiality.
After encrypting (E) the data with the secret key (K), we have E(K, H(M)) on the
transmission to the receiver, this is the hash code H(M) after being encrypted (E).
When the data reaches the receiver, it only needs to be decrypted (D) with the secret
key (K) to get the hash code from the sender, and the message is not encrypted so no
decryption is needed. Then, the receiver will hash the received message (M) with the
same hash function (H) as the sender to get the hash code.
Finally, the hash code that has just been hashed is compared with the hash code
received from the sender, if the calculated hash code is the same as the received hash
code, it is determined that the data is safe and correct.
The advantages of this schema:
Speed: Same as schema number 1, symmetric encryption is generally faster than
asymmetric encryption, and this method would be faster than encrypting the entire
message.
Minimize storage: This reduces the processing burden for those applications that do not
require confidentiality.
Simplified key distribution: Only one secret key needs to be shared between the sender
and receiver, which simplifies key management.
Verifiable integrity: The hash function can be used to verify the integrity of the message,
even if the message is not encrypted.
The disadvantages of this schema:
Key management: The secret key must be shared securely between the parties involved
in the communication. If the secret key is compromised, then both the encrypted data
and hashed data will be compromised.
Message confidentiality: The message itself is not encrypted, so anyone who knows the
hash function and the secret key can read the message.
Message authentication: If the hash function is not collision-resistant, an attacker could
create a message with the same hash as the original message, even if the message
content is different.
Schema c: The operation of this schema:
For this schema, neither the message (M) nor the hash code is encrypted. It is possible
to use a hash function (H) but no encryption (E) for message (M) authentication. This
technique assumes that both the sender and the receiver must share a common seed
value (S). The sender computes the value of the hash code, which is hashed from the
message (M) along with the seed value (S) by using the hash function (H) to perturb the
value of the hash code. Since the receiver possesses the seed value (S) as the sender, it
can recompute the hash value for verification. Because the seed value (S) itself is not
sent, third parties cannot modify an intercepted message and cannot generate a false
message.
After hashing the message (M) along with the seed value (S), we have H(M || S) on the
way to the receiver, which is the value of the perturbed hash.
When the data reaches the receiver, there is no need to decrypt it because the sender
does not encrypt it, the receiver just hashes the message (M) along with the seed value
(S) by using the same hash function (H) as the sender to get the value of the hash code.
Finally, the value of the hash code that has just been hashed is compared with the value
of the hash code received from the sender, if the value of the hash code that has just
been calculated is the same as the value of the received hash code, it is determined as
safe and accurate data.
The advantages of this schema:
Data integrity: The hash code can be used to verify that the message has not been
tampered with. In addition, the hash code is accompanied by a seed value, which will
make it difficult for third parties to change or forge.
Authenticity: The hash code can be used to verify that the message was sent by the
intended sender.
Performance: Encryption can add overhead to the processing of data, so not encrypting
data can improve performance.
Complexity: Encryption can be complex to implement and manage, so not encrypting
data can reduce complexity.
The disadvantages of this schema:
The seed value must be kept secret: If the seed value (S) is compromised, then an
opponent could generate false messages with the same hash code.
The message is not encrypted: This means that an opponent could still
Digital signature
The operation of this schema:
- In this schema, we can see that this is a form of digital signature to identify the
sender of the message. This is a style that uses public-key encryption, encrypts (E)
with the sender's private key (PRa), and requires decryption (D) with the sender's
public key (PUa) to determine identity. Since it is a public key, anyone has the
sender's public key (PUa).
- The hash code is hashed from the message (M) by using the hash function (H) and
then encrypted (E) with the sender's private key (PRa), then we get E(PRa, H(M)).
- After encrypting (E) the data, we have E(PRa, H(M)) on the transmission to the
receiver, this is the hash code after being encrypted (E).
- When the data reaches the receiver, it only needs to be decrypted (D) with the
sender's public key (PUa) to get the hash code from the sender, and the message is
not encrypted, so there is no need to decrypt. Then the receiver will hash the
received message (M) with the same hash function (H) as the sender to get the hash
code.
- Finally, the hash code that has just been hashed is compared with the hash code
received from the sender, if the hash code that has just been calculated is the same
as the hash code received, the identity of the sender can be determined and the
data is also guaranteed to be safe and accurate.
The advantages of this schema:
- Increased security: The private key is never transmitted, so it is more secure than
symmetric encryption, where the key must be shared between the sender and
receiver. This is because the private key is only known to the sender, so even if an
attacker intercepts the encrypted hash code, they cannot decrypt it without the
private key.
- Verifiable authenticity: The recipient can verify that the message came from the
sender by decrypting the hash code with the sender's public key. This prevents
tampering with the message. This is because the hash code is unique to the
message, so if the message is tampered with, the hash code will also be different.
The recipient can then compare the decrypted hash code to the hash code of the
original message to verify that they are the same.
The disadvantages of this schema:
- Speed: Public key encryption is slower than symmetric encryption, so it is not ideal
for large messages. This is because public-key encryption uses more complex
mathematical operations than symmetric encryption.
- Complexity: This method is more complex to set up and use than symmetric
encryption. This is because each user needs to have a public/private key pair, and the
keys need to be distributed securely.
- Message confidentiality: Only the hash code is encrypted, the message is not. This
means that an opponent could still read the message even if the opponent cannot
solve the hash code.
Diffie-Hellman key exchange (DHKE) là một phương pháp trao đổi khóa an toàn giữa hai bên
thông qua một kênh công khai. Nó được xuất bản lần đầu tiên vào năm 1976 bởi Whitfield Diffie
và Martin Hellman, và là một trong những giao thức trao đổi khóa được sử dụng rộng rãi nhất
trên thế giới.
Trong DHKE, hai bên, Alice và Bob, đồng ý về một số nguyên tố lớn, p, và một cơ sở, g. Alice tạo
ra một số riêng, a, và Bob tạo ra một số riêng, b. Alice sau đó gửi cho Bob số công khai của
mình, A = g ^ a mod p. Bob sau đó gửi cho Alice số công khai của mình, B = g ^ b mod p.
Alice sau đó có thể tính toán khóa bí mật được chia sẻ, K = B ^ a mod p. Bob cũng có thể tính
toán khóa bí mật được chia sẻ, K = A ^ b mod p. Khóa bí mật được chia sẻ, K, sau đó có thể
được sử dụng để mã hóa các giao tiếp tiếp theo giữa Alice và Bob.
Dưới đây là một ví dụ cụ thể về DHKE
Alice và Bob đồng ý về số nguyên tố p = 23 và cơ sở g = 2.
Alice tạo ra một số riêng a = 5.
Bob tạo ra một số riêng b = 7.
Alice gửi cho Bob số công khai của mình A = g ^ a mod p = 2 ^ 5 mod 23 = 32 mod 23 = 9.
Bob gửi cho Alice số công khai của mình B = g ^ b mod p = 2 ^ b mod 23 = 7 ^ 7 mod 23 = 128
mod 23 = 20.
Alice sau đó có thể tính toán khóa bí mật được chia sẻ, K = B ^ a mod p = 20 ^ 5 mod 23 = 32 ^ 5
mod 23 = 1,073,741,824 mod 23 = 20.
Bob cũng có thể tính toán khóa bí mật được chia sẻ, K = A ^ b mod p = 9 ^ 7 mod 23 = 32 ^ 7
mod 23 = 1,073,741,824 mod 23 = 20.
Ưu điểm của DHKE là nó cho phép hai bên trao đổi an toàn một khóa bí mật qua một kênh công
khai. Điều này là do khóa bí mật được chia sẻ được tính toán bằng các khóa riêng của Alice và
Bob, không bao giờ được tiết lộ cho nhau hoặc cho bất kỳ bên thứ ba nào.
Nhược điểm của DHKE là nó dễ bị tấn công lừa đảo. Điều này là do một kẻ tấn công có thể chặn
các khóa công khai của Alice và Bob và sau đó gửi khóa công khai của chính mình cho cả hai
bên. Kẻ tấn công sau đó có thể tính toán khóa bí mật được chia sẻ và sử dụng nó để giải mã bất
kỳ tin nhắn nào được gửi giữa Alice và Bob.
Để giảm thiểu nguy cơ tấn công lừa đảo, DHKE thường được sử dụng cùng với các cơ chế bảo
mật khác, chẳng hạn như chữ ký kỹ thuật số hoặc chứng chỉ.
Question:
Highlighted in document
Answer:
The certificate would include the name of Amazon.com, the public key of Amazon.com, and the
signature of the CA.
Step-by-step explanation:
The CA creates a certificate for Amazon.com that contains the name of Amazon.com, the public
key of Amazon.com, and the signature of the CA. This certificate is used to verify that
Amazon.com is the owner of the public key and to ensure that the public key has not been
tampered with.