首页
网站开发
桌面应用
管理软件
微信开发
App开发
嵌入式软件
工具软件
数据采集与分析
其他
首页
>
> 详细
CSIE编程代做、代写C++程序设计
项目预算:
开发周期:
发布时间:
要求地区:
National Taiwan Normal University
CSIE Information Security
Due Date: April 7, 2024, PM 11:59
Assignment
1
Policies:
• Zero tolerance for late submission.
• Please pack all your submissions in one zip file. RAR is not allowed!!
• I only accept PDF. MS Word is not allowed.
• Hand-writing is not allowed.
• Please use Chinese.
1.1 Triple Encryption (10 pts)
In this class, I have shown you why double DES is useless. However, someone argues that an attacker may find one key to simulate three keys. That
is,
Enc(k3, Enc(k2, Enc(k1, x))) = Enc(k
′
, x).
So the attacker may need to brute force k
′
instead of k1, k2, k3. Please
show that the probability is negligible.
1.2 Hybrid Chosen-Plaintext-Attack Construction (10 pts)
Let (E0, D0) be a semantically secure cipher defined over {K0,M, C0} and
(E1, D1) be a CPA secure cipher defined over {K, K0, C1}. Define the following hybrid cipher (E, D) as:
E(k, m) := {k0
R←− K0, c1 ← E1(k, k0), c0 ← E0(k0, m), output (c0, c1)},
D(k,(c0, c1)) := {k0 ← D1(k, c1), m ← D0(c0, k0), output m}.
Prove that (E, D) is CPA secure.
1.3 The malleability of CBC mode (10 pts)
Let c be the CBC encryption of some message m ∈ X l
, where X := 0, 1
n
.
You do not know m. Let △ ∈ X . Show how to modify the ciphertext c to
obtain a new ciphertext c
′
that decrypts to m′
, where m′
[0] = m[0] ⊕ △,
and m′
[i] = m[i] for i = 1, . . . , l. That is, by modifying c appropriately,
you can flip bits of your choice in the first block of the decryption of c,
without affecting any of the other blocks.
1.4 Modular Multiplicative Inverse (10 pts)
Please find the modular multiplicative inverse of the following number.
Please write down how you find it. If you give the answer directly without
the process, you will get zero points.
1. 400 mod 997
2. 472 mod 16651
1.5 Euler’s Theorem and RSA (10 pts)
In this class, I have introduced Euler’s Theorem to you as follows.
Theorem 1.1. For every a and n that are relatively prime, then
a
ϕ(n) ≡ 1(mod n).
However, when we run RSA permutation, m and N = pq may not be
relatively prime. When m and N = pq are not relatively prime, will the
reverse permutation still work? Why or why not?
1.6 Pseudo Prime (10 pts)
In this class, I have told you that in computer science, we often use pseudo
primes instead of real primes. However, when we verify the correctness of
RSA, we always assume that p, q are primes. Is there any conflicts? Of
course not or RSA will not work. Please show that even p, q are pseudo
primes, the correctness of RSA still stands.
Hint: What are pseudo primes?
1-2
Figure 1.1: Elliptic group E23(1, 1).
1.7 Elliptic Curve over Zp (10 pts)
An elliptic curve is defined by an equation in two variables with coefficients.
Elliptic curves are not ellipse. They are named because they are described
by cubic equations, similar to those used for calculating the circumference
of an ellipse. For cryptography, the variables and coefficients are restricted
in a finite field, which results in the definition of a finite abelian group.
For elliptic curves over Zp, we use the following equation to form a
group:
y
2 mod p = (x
3 + ax + b) mod p.
Note that all coefficients and variables are belong to Zp.
For example, given a group Ep where a = 1, b = 1, x = 9, y = 7, p = 23,
we have
7
2 mod 23 = (93 + 9 + 1) mod 23
49 mod 23 = 739 mod 23
3 mod 23 = 3 mod 23
So (9, 7) ∈ Ep. We often use Ep(a, b) to represent the group. All points
are shown in Fig. 1.1. Note that (4a
3+27b
2
) mod p ̸= 0 mod p for avoiding
repeated factors.
How about the operation and the identity? In a elliptic curve group,
the identity is defined at infinity O. The operation is defined as follows:
1. For any point P, P + O = P.
2. If P = (x, y), then −P = (x, −y).
1-3
Figure 1.2: Elliptic group operation.
3. To ”add” (operation) P and Q, draw a straight line P Q and find the
third intersection R with the curve Ep. We define P + Q + R = O.
Therefore, P +Q = −R. Note that the computation should be in Zp.
4. For P + P, use the tangent line instead.
You can see Figure 1.2 for reference.
Please show that given P = (xP , yP ), Q = (xQ, yQ), R = P + Q =
(xR, yr),
xR = (λ
2 − xP − xQ) mod p
yR = (λ(xP − xR) − yP ) mod p
where
λ =
(
yQ − yP
xQ − xP
) mod p, if P ̸= Q
(
3x
2
P + a
2yP
) mod p, if P = Q
1.8 Lab: Secret-Key Encryption (15 pts)
• Lab: https://seedsecuritylabs.org/Labs_20.04/Crypto/Crypto_
Encryption/
You need to submit a detailed lab report, with screenshots, to describe
what you have done and what you have observed. You also need to provide
explanation to the observations that are interesting or surprising. Please
also list the important code snippets followed by explanation. Simply attaching code without any explanation will not receive credits.
1.9 Lab: Padding Oracle Attack (15 pts)
• Lab: https://seedsecuritylabs.org/Labs_20.04/Crypto/Crypto_
Padding_Oracle/
1-4
You need to submit a detailed lab report, with screenshots, to describe
what you have done and what you have observed. You also need to provide
explanation to the observations that are interesting or surprising. Please
also list the important code snippets followed by explanation. Simply attaching code without any explanation will not receive credits.
1-5
软件开发、广告设计客服
QQ:99515681
邮箱:99515681@qq.com
工作时间:8:00-23:00
微信:codinghelp
热点项目
更多
cis432代做、代写python/java程...
2024-05-04
eeen3007j代写、c++程序设计代...
2024-05-04
代写data程序、代做c/c++, jav...
2024-05-04
comp2006代做、代写c++程序语言
2024-05-04
comp26020代做、java/c++设计编...
2024-05-04
csci251 advanced programming...
2024-05-03
cs 6290: high-performance co...
2024-05-03
assignment 2: executing and ...
2024-05-03
ecse427/comp310 programmin...
2024-05-03
cs 452 (fall 22): operating...
2024-05-03
comp9414 23t2 assignment 2 ...
2024-05-03
dpst1091 23t1 assignment 2 ...
2024-05-03
program代做、代写python设计编...
2024-05-03
热点标签
finm8007
comp2006
comp26020
comp1721
eeen3007j
cis432
csci251
comp5125m
com398sust
32022
mth6158
comp328
finn41615
2024
mec302
mgmt3004
mgt7158
com160
as.640.440
econ3016
finm7405
econ7021
fin600
infs4205/7205
mktg2510-
f27sb
csse2310/csse7231
rv32i
eecs 113
comp1117b
cs 412
comp 315
econ7300
comp2017
ecs 116
fit5046
com6511
comp30024
acs341
econ1020
isys3014
acc408
comp1047
csc 256
cs 6347
finm7008
comp34212
csmde21
estr2520
comp285/comp220
mds5130/iba6205
finc6010
is3s665
busi2194
125.785
iom209
msin0041
econ339
cmt218
mast10007
comp5349
ecx2953/ecx5953
bios706
comp3310
mth6150
comp30027
comp20005
eec286
busi2211
bff2401
fnce90046
visu2001
mang6554
finc6001
125785
data423-24s1
engi 1331
fint2100
(520|600).666
can202
cs 61b
mast20029
info20003
stat512
econ3208
cmpsc311
engg1340
ecmt1010
fit5216
basc0003
ee3121
acct2002
comp5313
busi2131
ise529
elec372/472
csit940/csit440
cenv6141
comp3027/comp3927
ftec5580
comp1433
msci223
mark203
en3098
eden1000
ece6483
econ4410
mats16302
cs 6476
com6521
comp222
comp3211
comp10002
csc1002
chc6186
cs 161
comp27112
comp282
swen20003
comm1190
elec9764
acfi3308
acct7101
fin6035
comp2048
geog0163
comp2013
coen 146
dts101tc
sehh2042
comp30023
comp4880/8880
cs 455
07
stat0045.
fil-30023
celen085
psyc40005
math40082
are271
comp9311
ee5311
imse2113
comp 2322
acct2102
fnd109
int102
is3s664
is6153
data4000
accfin5034
fit5212
cs536-s24
fit5225
ecos3006
mes202tc
finc5001
stat3061
csc171
cs1b
7ssmm712
bu.450.760
cs170
comp3411
swen90004
cpt206
comp5313/comp4313—large
bl5611
kxo206
comp532
elec207
kxo151
cs 2820
cpt108
math2319
dts204tc
qm222
comp2511
ccs599
infs1001
mat2355
eeee4123
25721
ifn647
pols0010
hpm 573
qbus6860
comp9417
csci 1100
stat0023
cse340
comp2003j
cs 2550
cs360
fin 3080
ierg 4080
cs6238
cit 594
finm7406
hw6
联系我们
- QQ: 9951568
© 2021
www.rj363.com
软件定制开发网!