Tải bản đầy đủ (.pdf) (30 trang)

đồ án bảo mật thông tin: Chữ ký số

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.3 MB, 30 trang )


[\[\



BÁO CÁO ĐỒ ÁN: MÔN HỌC BẢO MẬT
THÔNG TIN
ĐỀ TÀI: CHỮ KÝ SỐ





Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 1




A. Danh sách nhóm
STT
MSSV
Tên
Email
SDT
1.
406170001



01698815297
2.
406170006


0983728190
3.
406170015


0938170788
4.
406170046


0932613917
B. Nội dung nghiên cứu
I. 
II.  và so sánh
III. 
IV. 
V. 
VI. 
C. Chi tiết nội dung
I. Tổng quan về chữ ký số
1. 
 

- 


Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 2

-     
không có cách nào 


 sau:
 
 
 

:
 C.
 

 
 
 

 
2. 
   


- 
- 


- 
-   

3.  
Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 3

i) 







-
encryption)

Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 4




.
  

 

  các




ii) 
ài.






K
xa
 

ay


X

K
xa


ay
. 


X,

Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 5


.

(1) X A: M||E(K
xa
, [ID
X
||H(M)])
(2) A Y: E(K
ay
, [ID
X
||M||E(K
xa
, [ID
X
||H(M)])||T])

(1) X A: ID
X
||E(K
xy

, M)||E(K
xa
, [ID
X
||H(E(K
xy
, M))])
(2) A Y: E(K
ay
,[ID
X
||E(K
xy
, M)])||E(K
xa
, [ID
X
||H(E(K
xy
, M))||T])

(1) X A: ID
X
||E(PR
x
, [ID
X
||E(PU
y
, E(PR

x
, M))])
(2) A Y: E(PR
a
, [ID
X
||E(PU
y
, E(PR
x
, M))||T])
(c) 


X

Y

A

M

T


II. Các thuật toán tạo chữ ký số
1. ElGamal


Chữ ký số - Các thuật toán và tấn công

2009

Nhóm DSII [BDHT] Page 6

 
o


i) 
 p
 Z
*
p
(g odulo p)
ii) 
 k 1 ≤ k ≤ p
 v = g
k
(mod p)
 công khai là (p,g,v)
iii) DD 1<D<p
 1<e<p và gcd(e, p-1) =1
 Tính r = g
e
(mod p)
 Tính s = (D – k.r)e
-1
(mod p-1)
D (s,r)


iv) 

 0 < r < p và 0 < s < p − 1
 g
D
(mod p) = v
r
r
s
(mod p)
N
g
k
≡ v (mod p) 

v và g
D
x và y v
x
x
y
≡ g
D
(mod p)
 
log
g
(v)x + y log
g
(x) ≡ D (mod p − 1)


toán log
g
(v) và log
g
(x) y.
Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 7


2

 vào 

2. DSA (Digital Signature Algorithm)
Các thao tác 
i) o khóa
 
L-1
<p<2
L


 
 
(p-1)/q
-
(p-1)/q

mod p>1
 
 
x
mod p
 
ii) 
 
k
mod p) mod q
 Tính s = [k
-1
(H(M) + x.r] mod q

iii) 

 
-1
mod q
 
 
 v = [g
u1
y
u2
mod p] mod q
 
Chữ ký số - Các thuật toán và tấn công
2009


Nhóm DSII [BDHT] Page 8

So sánh ElGamal và DSA: 

r = g
e
(mod p) -1
r = (g
k
mod p) mod q -1






-1



3. RSA


(ANS) X9.31 và Public Key Cryptography Standard (PKCS) #1.
i) 


gcd(v, (p - 1)(q - 1)) = 1
Công khai N = p*q và v
ii) 

Tính s sao cho:



s
(mod N)
Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 9

iii) Xác minh:
Tính S
v
mod N


 

công khai.
 

 t tóan RSA không dùng 

4. ECDSA(Elliptic Curve Digital Signature Algorithm)

ISO 1998, ANSI 1999, IEEE 2000.
i) 
- 1]
Khóa chung Q : Q = d*G

ii) 

1. e = SHA-1(M)
2. 
3.  
4. s = k
-1

 
iii) Xác minh:
1.  - 

2. e = sha-1(m)
Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 10

3. w = s
-1
(mod n)
4. u1 = ew (mod n)
5. u2 = rw (mod n)
6. (x1, y1) = u1*G + u2*Q
7. r = x
1
(mod n

 
 


.

5. GGH
 Goldwasser  

vector problem  


 

6. NTRU(n-th degree truncated polynomial ring)
     


. 



i) 
 C
  g * F = q
 Tính h = f
-1
* g (mod q)
Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 11


 Công khai khóa h
ii) 
 
 Tính: 
 v2 = (-D1 * g + D2 * f) / q
 Tính: s = v1 * f + v2 * F
 
iii) 
 Tính t = h * s (mod q)
 

      


3

2
) phép toán. Các phép toán

   
  



                 


III. Lý thuyết về cách tấn công chữ ký số
 gian nên



 
Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 12

- 

- 

 
g

 key cryptography)
 

brute-         


. Hàm
 
 

máy tính.


 

-0, MD4, MD5, HAVAL-128, và

-1
i) 

-

Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 13



-  

static byte[] vec1 =
{
0xd1, 0x31, 0xdd, 0x02, 0xc5, 0xe6 , 0xee , 0xc4 , 0x69 , 0x3d, 0x9a
, 0x06 , 0x98 , 0xaf , 0xf9 , 0x5c , 0x2f , 0xca , 0xb5 , /**/0x87 , 0x12 , 0x46 , 0x7e ,
0xab , 0x40 , 0x04 , 0x58 , 0x3e , 0xb8 , 0xfb , 0x7f , 0x89 , 0x55 , 0xad , 0x34 , 0x06 ,
0x09 , 0xf4 , 0xb3 , 0x02 , 0x83 , 0xe4 , 0x88 , 0x83 , 0x25 , /**/0x71 , 0x41 , 0x5a,
0x08 , 0x51 , 0x25 , 0xe8 , 0xf7 , 0xcd , 0xc9 , 0x9f , 0xd9 , 0x1d , 0xbd , /**/0xf2 , 0x80
, 0x37 , 0x3c , 0x5b , 0xd8 , 0x82 , 0x3e
, 0x31 , 0x56 , 0x34 , 0x8f , 0x5b , 0xae , 0x6d , 0xac , 0xd4 , 0x36 , 0xc9 , 0x19 , 0xc6
, 0xdd , 0x53 , 0xe2 , /**/0xb4 , 0x87 , 0xda , 0x03 , 0xfd , 0x02 , 0x39 , 0x63 , 0x06 ,
0xd2 , 0x48 , 0xcd , 0xa0 , 0xe9 , 0x9f , 0x33 , 0x42 , 0x0f , 0x57 , 0x7e , 0xe8 , 0xce ,
0x54 , 0xb6 , 0x70 , 0x80 , /**/0xa8 , 0x0d , 0x1e , 0xc6 , 0x98 , 0x21 , 0xbc , 0xb6 ,
0xa8 , 0x83 , 0x93 , 0x96 , 0xf9 , 0x65 ,/**/ 0x2b , 0x6f , 0xf7 , 0x2a , 0x70}
static byte[] vec2 =
{
0xd1 , 0x31, 0xdd , 0x02 , 0xc5 , 0xe6 , 0xee , 0xc4 , 0x69 , 0x3d ,

0x9a , 0x06 , 0x98 , 0xaf , 0xf9 , 0x5c, 0x2f , 0xca , 0xb5 , /**/0x07 , 0x12 , 0x46 , 0x7e ,
0xab , 0x40 , 0x04 , 0x58 , 0x3e , 0xb8 , 0xfb , 0x7f , 0x89 , 0x55 , 0xad , 0x34 , 0x06 ,
0x09 , 0xf4 , 0xb3 , 0x02 , 0x83 , 0xe4 , 0x88 , 0x83 , 0x25 ,/**/ 0xf1 , 0x41 , 0x5a ,
0x08 , 0x51 , 0x25 , 0xe8 , 0xf7 , 0xcd , 0xc9 , 0x9f, 0xd9 , 0x1d , 0xbd , /**/0x72 , 0x80
, 0x37 , 0x3c , 0x5b, 0xd8 , 0x82 , 0x3e , 0x31 , 0x56 , 0x34 , 0x8f , 0x5b , 0xae , 0x6d ,
0xac , 0xd4 , 0x36
, 0xc9 , 0x19 , 0xc6 , 0xdd , 0x53 , 0xe2 , /**/0x34 , 0x87 , 0xda , 0x03 , 0xfd , 0x02 ,
0x39 , 0x63 , 0x06 , 0xd2 , 0x48 , 0xcd , 0xa0, 0xe9 , 0x9f , 0x33 , 0x42 , 0x0f , 0x57 ,
0x7e , 0xe8 , 0xce , 0x54 , 0xb6 , 0x70 , 0x80 , /**/ 0x28 , 0x0d , 0x1e, 0xc6 , 0x98 ,
Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 14

0x21 , 0xbc , 0xb6 , 0xa8 , 0x83 , 0x93 , 0x96 , 0xf9 , 0x65 , /* flag byte*/0xab , 0x6f ,
0xf7 , 0x2a , 0x70 }
- 
  



-

- 

Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 15



-
không :



Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 16




Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 17






Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 18



 


ii) -1

y
thành SHA--.
-
 

-
cách trên, và 

2005.
-1 sau
-force. 



Bruce Schneier và Jo
-force.
-
-224, SHA-256, SHA-384 và SHA-512.
 64 vòng:
 
492068657265627920736F6C656D6E6C792070726F6D69736520746F2066696E69736
8206D7920506844207468657369732062792074686520656E64206F662032303035200
A0AEACBD7029E9F219821F0F0FF9213E43DF407CA4A69067368507F397C77DDD
F45C152AC0AB09D1511CFA15FDC789F4D86215D1D41F3C2A73C6AC2B5D3A11
EBB7DEEFFC27FB55C31535C8FB13DCEC26A4B890E82D2608CE731FB383B24D9

37FBECA9F5E390B6C12315D5C1A48ABE9AD3C1DFF6D550C96BD9572D

Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 19

492068657265627920736F6C656D6E6C792070726F6D69736520746F2066696E69736
8206D7920506844207468657369732062792074686520656E64206F662032303036600
A0AB88BD702DE7F21987350F0FF9293E43DB427CA4A6826736830FF397C769DDF
458392AC0AF3DD1511EDA15FDC7BDF4D86639D1D41B002A73C48C2B5D3A25E
BB7DBCBFC27FF5BC31530E2FB13DCE426A4BC92E82D261ACE7319BB83B24D8
77FBECEB35E390F5812315F7C1A48ABDDAD3C19D36D5508AABD9570F

E9069CCAB770EC16F9ED4E3AD6FD5A866F829F0C


 hereby solemnly promise to finish my PhD thesis by the end of


nhau.

IV. Giới thiệu về Rainbow Crack Tool
1. Rainbow Crack là gì?
a. Ngun gc: RainbowCrack là mt thành phn trong d án FASTER TIME-
MEMORY TRADE-OFF TECHNIQUE ca Philippe Oechslin. Nó phá v 
rainbow tables.
b. Các ch
- H tr rainbow table ca bt c thu-
- H tr  phc hi bt k ký t nào (ch cái, s, ký t c bit).

- H tr h ng trên nn 32bit.
- S dng bng cách gõ lnh hoc dùng giao din.
c. Ti v ta ch:
2. Rainbow Crack ho nào?
a. Hong da trên Rainbow table.
- Rainbow table là mt bng tra cc s d khôi phc li plaintext t mt
ng m 
- c thit k bi thut thun bi Martin Hellman, nó
c s d c li mt hash bng cách tra cu các chuc tính toán
c.
b. Cu trúc ca mt rainbow table.
- Mt Rainbow table là mt chui các record (bn ghi). Mi record có 2 fields, mi
field 8 bytes, tng cng m c ca mt bng
cu vòng là mt bi s ca 16. Mi din bi mt chain (chuu
Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 20

tiên là ch s trong không gian khóa (Keyspace) ca tt c plaintext do rainbow table thit
lt con s ngu nhiên gic ca keyspace -1. Field th
hai là plaintext ca cùng ca 1 chain, thc ra nó là ch s ch t s là m
c sp xp da trên field th 2: record vi hash thp nhu tiên
trong bng vi hash cui cùng cao nht.

3. Các thông s ca mt rainbow table:
Thông s ca mi din bi tên ca nó:
hash_algorithm charset plaintext_len_min plaintext_len_max table_index chain_len
chain_num part_index.


Tên:

hash_algorithm
Thut gi
charset
Tt c các ký t nh

plaintext_len_min
S ký t ít nht gic.
plaintext_len_max
S ký t nhiu nht gic.
table index
chain_len
chain_num
4 thông s này th hi  nói
qua:
Table index: Ch s s ln s dng Reduce Function trong
Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 21

part_index
rainbow table
  dài ca mt rainbow chain trong rainbow
table, m
nh nht trong rainbow table, mt rainbow table cha rt
nhiu rainbow chain
Chain_num: s ng ca rainbow chain trong rainbow
table

   m b u cho mt rainbow
c to

Ví d:
Tên:

hash_algorith
m
Md5
charset
loweralpha-numeric =
[abcdefghijklmnopqrstuvwxyz0123456789]
plaintext_len_
min
1
plaintext_len_
max
7
chain_len
3800
chain_num
33554432

Tên file Rainbow table s có dng:
"md5_loweralpha-numeric#1-7_0_3800x33554432_0.rt"

V. Demo dùng Rainbow Crack Tool để tấn công chữ ký số.
Chữ ký số - Các thuật toán và tấn công
2009


Nhóm DSII [BDHT] Page 22


1. 
2. 
3. Hacker dùng các thông tin côn
 
4. 
5. 
6. 
 


 M'.
Demo cách s d bin mt m


Chữ ký số - Các thuật toán và tấn công
2009

Nhóm DSII [BDHT] Page 23





        

Chữ ký số - Các thuật toán và tấn công
2009


Nhóm DSII [BDHT] Page 24






×