联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-23:00
  • 微信:codehelp

您当前位置:首页 >> Java程序Java程序

日期:2020-11-12 08:36

CS5285: Information Security for eCommerce Autumn, 2020
Problem Set 2 (Due Date: Q1–Q8 November 25 – 19:00) Total: 102 points
Submit Q1–Q7 electronic copy (via Canvas).
Submit Q8 as instructed in the question.
No late submissions accepted.
Questions:
1. Password File (2-2-2-2 points):
(a) In a system, each user has an entry in the system’s password file: (y; s) where y is
computed as follows and s is a salt.
i. y = H(s; password) ⊕ password
ii. y = H(s) ⊕ H(password)
iii. y = Es(H(password)) where E is AES algorithm
iv. y = MACpassword(s) where MAC is CBC-MAC constructed with AES
List which of the methods above for computing y are effectively secured by the salt
against precomputed dictionary attack. Assume that s is adequately long and random.
2. TLS (2-8 points): In TLS you can specify different ciphersuites for communication.
(a) How many ciphersuites are there in the latest specification TLS 1.3
(b) For the following mode how is a data message encrypted and session keys generated?
TLS_AES_128_CCM_SHA256
3. Digital Certificates (2-2-2-2):
(a) Find out who issued the certificate for https://mail.google.com and how long the
certificate will be valid.
(b) Find out or estimate how many certificates (approximately, no need to count them
explicitly) your browser contains.
(c) What is the significance of a CA certificate being contained in the browser?
(d) The identity of the certificate for the question above is a DNS hostname. Certificates
can also be used for signing and encrypting email. For a certificate used for email, what
identifier would be used as the identity in the certificate?
1
4. Security Services - Web Security (10 points):
We are currently using Zoom (so are a lot of other people). Please provide a short explanation
of what“zoombombing” is. Your answer should mention at least two main security services
that are failing, as well as the main technical vulnerability that is allowing this to happen.
Conclude by providing some mechanisms for mitigating issues for each of the security services
you mentioned.
5. Key agreement/IKE (10-5-10 points):
(a) Consider the following key exchange protocol which is similar to IKE Phase 1 Aggressive
Mode. p is a large prime number and g is a generator of Z
?
p
.
1. A → B : g
a mod p, {“Alice”}Bob, {RA}Bob
2. A ← B : g
b mod p, {“Bob”}Alice, {RB}Alice, proofB
3. A → B : proofA
where
proofA = h(g
ab mod p, ga mod p, gb mod p, “Alice”)
proofB = h(g
ab mod p, gb mod p, ga mod p, “Bob”)
K = h(g
ab mod p)
i) First explain if the protocol authenticates A and B, and achieves secure key agreement
(discuss key control and key authentication). {m}X denotes a message m encrypted with
public key of x.
ii) Modify the protocol so that RA and RB can be eliminated but the protocol can mutually
authenticate A and B. In your modification, no additional protocol message, secret
keys or signature can be used.
(b) Consider the following simplified IKE Phase 1 in Aggressive Mode.
A → B : “Alice”, “Bob”, ga mod p
A ← B : “Bob”, “Alice”, gb mod p, [g
a mod p]B
A → B : “Alice”, “Bob”, [g
b mod p, ga mod p]A
[X]A denotes a signature on message X generated by A. The session key established
between A and B is g
ab mod p. Show that this simplified version is insecure (allows
attacker to establish a key with one of the participants while pretending to be the other
participant) . Hint: consider that this IPSec system has multiple users.
2
6. IPSec (10 points): Imagine two branches of a corporate network are connected through the
Internet. Specifically, each of the two branches has a router facing the Internet, communicating
with the router of the other branch over IPsec (ESP in tunnel mode).
The network is setup such that two nodes from the two branches can communicate transparently.
Imagine node 10.1.1.5 from branch 1 is sending a packet to node 10.2.1.6 from branch
2. Describe in detail the steps of how the packet travels between the two nodes and how it is
encapsulated and decapsulated on the way.
7. Password Files (4-4-4-4 points): Use hashcat to execute a brute-force search to recover the
passwords from the three files provided (give some screenshots to prove that you did calculate
the answer): file1.txt, file2.txt, file3.txt
You can download hashcat here: http://hashcat.net/hashcat/
It is a command line program (no GUI), so you if you would like to run it in Windows you
need to do so from the command prompt.
The new version of hashcat you need to specify the processor option. You can use the -I
option to see compatible processors, then use -D option to specify using CPU (not GPU).
You can also download and use this older executable file if the new version does not work:
https://www.dropbox.com/s/xkwa3mh7h8xuc1z/hashcat-cli64.exe?dl=0
General instructions for using hashcat
http://hashcat.net/wiki/doku.php?id=hashcat
Details on brute force attack here:
http://hashcat.net/wiki/doku.php?id=mask_attack#example1
Information about the password files
? File1 and File2 has six 5-character passwords (from the set A-Z,a-z,0-9). MD5 is the
hash function used.
? File 3 is the same but has six 6-character passwords
? File1 uses the same salt for all entries (all the salt values are the same, equal to 0 so the
stored value is h(0,pwd))
? File2 uses a 8-bit salt (the stored value is h(s,pwd))
? File3 uses a 8-salt for all entries (same format as file 2), but the password is now 6
characters long.
3
While hashcat is running you can press [s]tatus and it will show you a progress update.
(a) Recover the passwords in file1 and file 2
(b) Recover the passwords in file 3
(c) How much longer should it take to recover file2 compared to file1. Did the result support
the theory?
(d) How much longer did it take to find the 6 character passwords?
8. PGP eMail (5-5-5 points): In this problem we will ask you to familiarize yourself with PGP
and ultimately send an encrypted and signed message using PGP to the tutor (see below for
more details).
Unless you are already familiar with using PGP, we suggest you use Thunderbird (a free email
client) and Enigmail to accomplish this. The setup of this will require the following steps:
? Download and install GnuPG (a free and open-source implementation of PGP).
? Download and install Thunderbird
? Download and install the Enigmail plugin for Thunderbird (a plugin to enable the use
of PGP in Thunderbird)
You can find more detailed instructions on the installation process in the Quick Start guide
of the Enigmail plugin here: https://www.enigmail.net/documentation/Installation_
of_Enigmail.
Once you have successfully setup the required software, please complete the following assignments:
(a) Create your own PGP keypair by using the Enigmail plugin in Thunderbird (Menu
“OpenPGP” → “Key Management” → “Generate” → “New Key Pair”). If you have
used PGP before and already have a key pair, you can skip this step.
(b) Import the course public PGP key into Enigmail. You can find the key tsgexercise cert.asc
on the following URL:
https://www.dropbox.com/s/txqjtdyy613iorx/tsgexercise_cert.asc?dl=0
(c) Send an email to email address tsgexercise@gmail.com, encrypted with the course public
key and signed with your newly created key. The subject of the email should include
“CS5285 PS2 EncryptedMail XXXXXXXX” where “XXXXXXXX” is your 8-digit student
id. Make sure you include your public key as an attachment in the message (Enigmail
allows to easily send public keys by going to “OpenPGP” → “Key Management”,
then right-click on a key and select “Send Public Keys by Email”).
NOTE: The points for tasks (a) and (b) will be awarded when completing task (c), so make
sure to complete task (c).
4

版权所有:留学生编程辅导网 2021,All Rights Reserved 联系方式:QQ:99515681 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。