An toàn và An ninh thông tin
Nguyn Linh Giang.
B môn Truyn thông
và Mng máy tính.
Phng pháp RSA
Thut toán mã hoá công khai RSA
C s lý thuyt
Sđmã hóa và gii mã
To khóa
Vn đ tính toán trong RSA
Thám mã RSA
Lý thuyt s
S hc modun
nh lý Euler và đnh lý Fermat
Kim tra s nguyên t
Thut toán Euclid
nh lý s d Trung Hoa
Sinh gi ngu nhiên các s nguyên ln
S hc modun
nh lý v s d. Cho mt s nguyên dngnvà mt s nguyêna.Khi
đó tn ti duy nht các s qvà rvi,sao choa =qn+ r.
rgi là s d ca phép chia a cho n.
nh ngha s d. Cho mt s nguyên dng n và s nguyêna.Ký hiu
a mod n là s d khi chia a cho n.
a = x n + (a mod n)
nh ngha2.Hai s avà b đc gi là đng d theo mođunnnua
mod n = b mod n. Và vit là a b (mod n)
Ví d: 11 = 1 x 7 + 4 => 11 mod 7 = 4
-11= (-2) x 7+ 3=> -11mod 7= 3
73 4 (mod 23)
≡
≡
S hc modun (tip)
Phép toán s hc mođun.
1. [(a mod n) + (b mod n) ] mod n = (a + b) mod n
2. [(a mod n) – (b mod n) ] mod n = (a – b) mod n
3. [(a mod n) x (b mod n) ] mod n = (a x b) mod n
Chng minh
Ví d
11 mod 8 = 2; 15 mod 8 = 2
[(11 mod 8) + (15 mod 8) ] mod 8 = 10 mod 8 = 2
S hc modun (tip)
Tính cht ca s hc mođun
Tính giao hoán:
(w + y) mod n = (y + w) mod n
(w x x ) mod n = (x x w) mod n
Tính kt hp:
[(w + x) + y] mod n = [w + (x + y)] mod n
[(w x x) x y] mod n = [w x (x x y)] mod n
Tính phân phi:
[w x (x + y)] mod n = [(w x x) + (w x y)] mod n
Phn t trung hoà
(0 + w) mod n = w mod n
(1 x w) mod n = w mod n
Phn tđi xng ca phép cng:
Vi miw
∈
n
Z
tn ti z sao cho w + z = 0 mod n
nh lý Euler và đnh lý Fermat
nh lý Fermat
Hàm Euler
nh lý Euler
nh lý Fermat
Phát biu
Nuplà s nguyên t và alà s nguyên dng không chia ht chopthì
Chng minh
Ví d
a = 7, p = 19
nh lý trên có th phát biu di dng tng đng nh sau:
Nuplà s nguyên t và alà mt s nguyên dng bt k,thì
p1
a 1(mod p)
−
≡
p
aa (mod p)≡
Hàm Euler
Hàm Euler đc ký hiu là là s các s nguyên dng nh hnnvà
nguyên t cùng nhau vin.
Ví d
= 12 (12 s nguyên đó là [1, 2, 4, 5, 8, 10, 11, 13, 16, 17, 19, 20])
(n)
φ
(21)φ
nh lý Euler
Phát biu
Ví d
a = 3; n = 10;
Chng minh
-Trng hpnlà s nguyên t:
-Trng hpnlà s nguyên bt k:
Phát biu dng khác
Kim tra s nguyên t
Chng minh
-Xét trng hp (x + 1), (x – 1) đng thi chia ht cho p.
-Xét trng hp (x - 1) chia ht cho p.
-Tng t xét trng hp (x + 1) chia ht cho p ta suy ra x -1 (mod p)
Kt qu suy ra
̈nh lý
1.3 Kim tra s nguyên t (tip)
Thut toán Miller, Rabin: kim tra
mt s có phi là mt s nguyên
t không da vào kt qu ca
đnh lý trên.
Input ca thut toán là s nguyên
nvà mt s nguyênanào đó nh
hnn.Nu WITNESS có giá tr
tr v là TRUE thì nkhông phi là
s nguyên t,nu WITNESS có
giá tr tr v là FALSE thì ncó th
là s nguyên t
Ví d
ánh giá đ phc tp
Thut toán Euclid
Tìm c s chung ln nht
- nh lý
-Chng minh
-Ví d
- ánh giá đ phc tp
Thut toán Euclid (tip)
Tìm phn tđi xng
Thut toán Euclid m rng s tr v phn tđi xng cadnu gcd(d, f)
= 1.
nh lý s d Trung Hoa
nh lý
̇ Hai kt qu ca đnh lý s d Trung Hoa
̇ ng dng ca đnh lý s d Trung Hoa
̇ Ví d
Sinh gi ngu nhiên các s nguyên ln
B sinh s gi ngu nhiên
K thut đc s dng rng rãi trong vic sinh gi ngu nhiên là phng
pháp đng d tuyn tính ln đu tiên đc đ xut bi Lehmer.
Sinh s gi ngu nhiên da trên k thut mt mã
B sinh s gi ngu nhiên Blum Blum Shub
Sđmã hóa và gii mã RSA
Xut x
– RSA do Ron Rivest, Adi Shamir và Len Adlenman
phát minh nm 1977;
– H thng mã khoá công khai ph bin và đa nng:
c s dng trong các ng dng mã hóa/gii mã;
Chng thc;
Phân phi và trao đi khoá.
Thut toánRSA:
– Phng pháp mã hóa khi;
Vn bn rõ và vn bn mt là các s nguyên có
giá tr t 0 đnn-1, n – s nguyên ln;
Mi khi có giá tr nh hnn.Nh vy, kích
thc ca khi(s bít) nh hn hoc bng
log
2
(n).
– Thc t,kích thc ca khi là 2
k
bit vi2
k
< n ≤
2
k+1
.
Sđmã hóa và gii mã RSA
Mô t gii thut(tip)
Sinh khoá
Mô t gii thut(tip)
Mã hoá
Gii mã
Mt mã
C
Bn rõ
M = C
d
mod n
Bn rõ
M < n
Mt mã
C = M
e
mod n
Mô t gii thut(tip)
Ví d
Thc hin gii thut
Mã hoá và gii mã
– Vn đ trong thut toán mã hoá và gii mã RSA là vic thc hin phép toán lu
tha và phép toán đng d vi s nguyên ln.
– Gii quyt da trên tính cht ca phép toán mođun:
[(a mod n) x (b mod n)] mod n = (a x b) mod n
Thc hin gii thut(tip)
Sinh khoá
-Xác đnh s nguyên t p, q (s dng thut toán Miller – Rabin)
1. Chn mt s nguyên l nngu nhiên(s dng b sinh s gi ngu nhiên).
2. Chn mt s nguyêna < nngu nhiên.
3. Thc hin thut toán xác sut đ kim tra s nguyên t.Nu n test thành
công thì loi b giá tr nvà quay li bc1.
4. Nu n test thành công vi s lng test đ,chp nhnn;mt khác, quay li
bc2.
-Chnd
-Tính e t dvà (n) (s dng thut toánEuclid)
φ
Tính bo mt ca gii thutRSA
Tn công vét cn
Tn công toán hc
Tn công da vào thi gian