
L I C M NỜ Ả Ơ
Sau ba tháng n l c th c hi n, đ án “ Nghiên c u xây d ng h th ng ỗ ự ự ệ ồ ứ ự ệ ố
PKI d a trên b ph n m m mã ngu n m OpenCA” đã ph n nào hoàn ự ộ ầ ề ồ ở ầ
thành. Ngoài s c g ng h t mình c a b n thân, em đã nh n đc s khích ự ố ắ ế ủ ả ậ ượ ự
l r t nhi u t phía nhà tr ng, th y cô, gia đình, b n bèệ ấ ề ừ ườ ầ ạ
Em xin g i l i c m n chân thành và sâu s c nh t t i Ths Hoàng Đc ử ờ ả ơ ắ ấ ớ ứ
Th , ng i th y đã cho em nh ng đnh h ng và nh ng ý ki n r t quý báu ọ ườ ầ ữ ị ướ ữ ế ấ
v PKI và OpenCAề
Em cũng xin t lòng bi t n sâu s c t i th y cô trong khoa và b n bè ỏ ế ơ ắ ớ ầ ạ
cùng khoá đã giúp đ em ti n b trong su t nh ng năm h c t i H c Vi n ỡ ế ộ ố ữ ọ ạ ọ ệ
K Thu t M t Mã. ỹ ậ ậ
Xin c m n gia đình và nh ng ng i thân yêu đã luôn đng viên, ả ơ ữ ườ ộ
khuy n khích giúp đ con trong m i hoàn c nh khó khănế ỡ ọ ả
Xin c m n b n bè đã và đang đng viên, giúp đ tôi trong quá trình h cả ơ ạ ộ ỡ ọ
t p và hoàn thành đ án t t nghi p nàyậ ồ ố ệ
Đ án t t nghi p c a em đc hoàn thành trong m t th i gian cũng ồ ố ệ ủ ượ ộ ờ
t ng đi ng n. Vì v y đ án này ch c ch n s còn nhi u khi m khuy t. ươ ố ắ ậ ồ ắ ắ ẽ ề ế ế
Em xin c m n nh ng th y cô, b n bè và ng i thân s có nh ng góp ý ả ơ ữ ầ ạ ườ ẽ ữ
chân thành cho n i dung c a đ án này, đ em có th ti p t c tìm hi u, đi ộ ủ ồ ể ể ế ụ ể
sâu nghiên c u và áp d ng trong th c ti nứ ụ ự ễ
Ngô Thu H ngằ
1

M C L CỤ Ụ
M C L CỤ Ụ .............................................................................................................................. 2
DANH M C CÁC T VI T T TỤ Ừ Ế Ắ ....................................................................................... 6
DANH M C HÌNH VỤ Ẽ ....................................................................................................... 10
L I NÓI ĐUỜ Ầ ..................................................................................................................... 10
CH NG I: C S M T MÃ H CƯƠ Ơ Ở Ậ Ọ ............................................................................... 13
1.1.M t mã khoá bí m tậ ậ .................................................................................................. 13
1.1.1.Gi i thi u v m t mã khoá bí m t và các khái ni m có liên quanớ ệ ề ậ ậ ệ ................... 13
1.1.2.M t vài các thu t toán s d ng trong m t mã khoá đi x ng ộ ậ ử ụ ậ ố ứ ......................... 14
1.1.2.1.DES ............................................................................................................. 14
1.1.2.2.IDEA ............................................................................................................ 14
1.1.2.3. Triple DES ................................................................................................... 14
1.1.2.4.CAST-128 .................................................................................................... 15
1.1.2.5.AES .............................................................................................................. 15
1.2.M t mã khoá công khaiậ .............................................................................................. 16
1.2.1.Khái ni mệ ........................................................................................................... 16
1.2.2. Các thu t toán s d ng trong m t mã khoá công khaiậ ử ụ ậ ..................................... 17
1.2.2.1. RSA ............................................................................................................. 17
1.2.2.2.Ph ng th c trao đi khoá Diffie Hellmanươ ứ ổ ................................................ 17
1.3. Ch ký sữ ố .................................................................................................................. 18
2

1.3.1.Quá trình ký ......................................................................................................... 18
1.3.2.Quá trình ki m tra ch ký sể ữ ố .............................................................................. 19
1.4. Hàm hash ................................................................................................................... 20
1.4.1.Khái ni m hàm hashệ ........................................................................................... 20
1.4.2. Tóm l c thông báo ượ .......................................................................................... 20
CH NG II: T NG QUAN V PKI VÀ CA ƯƠ Ổ Ề .................................................................. 21
2.1. L ch s phát tri n PKIị ử ể .............................................................................................. 21
2.2.Tình hình PKI t i Vi t Namạ ệ ...................................................................................... 23
2.3. Các đnh nghĩa v PKI và các khái ni m có liên quanị ề ệ ............................................. 25
2.3.1. Các đnh nghĩa v PKIị ề ....................................................................................... 25
2.3.2. Các khái ni m liên quan trong PKIệ .................................................................... 26
2.3.2.1.Ch ng chứ ỉ ..................................................................................................... 26
2.3.2.2.Kho ch ng chứ ỉ .............................................................................................. 28
2.3.2.3.H y b ch ng chủ ỏ ứ ỉ ........................................................................................ 28
2.3.2.4. Sao l u và d phòng khóaư ự .......................................................................... 29
2.3.2.5.C p nh t khóa t đngậ ậ ự ộ ........................................................................... 30
2.3.2.6.L ch s khóaị ử ................................................................................................. 30
2.3.2.7.Ch ng th c chéoứ ự .......................................................................................... 31
2.3.2.8.H tr ch ng ch i bỗ ợ ố ố ỏ .................................................................................. 31
2.3.2.9.Tem th i gianờ ............................................................................................... 32
2.3.2.10.Ph n m m phía Clientầ ề ............................................................................... 32
2.4. M c tiêu, ch c năng ụ ứ ................................................................................................ 33
2.4.1. Xác th cự ............................................................................................................. 34
2.4.1.1.Đnh danh th c thị ự ể ...................................................................................... 34
2.4.1.1.1.Xác th c c c bự ụ ộ .................................................................................... 34
2.4.1.1.2.Xác th c t xaự ừ ....................................................................................... 34
2.4.1.2. Đnh danh ngu n g c d li uị ồ ố ữ ệ .................................................................... 35
2.4.2. Bí m tậ ................................................................................................................. 35
2.4.3.Toàn v n d li uẹ ữ ệ ................................................................................................ 35
2.4.3.1.Ch ký sữ ố ..................................................................................................... 36
2.4.3.2. Mã xác th c thông báo ự ............................................................................... 36
2.4.4.Ch ng ch i bố ố ỏ .................................................................................................... 36
2.5. Các khía c nh an toàn c b n mà PKI cung c pạ ơ ả ấ ..................................................... 36
2.5.1. Đăng nh p an toàn ậ ............................................................................................ 37
2.5.2. Đăng nh p m t l n an toàn ậ ộ ầ .............................................................................. 37
2.5.3. Trong su t v i ng i dùng cu iố ớ ườ ố ....................................................................... 38
2.5.4. An ninh toàn di nệ .............................................................................................. 39
CH NG IIII: CÁC THÀNH PH N, C CH LÀM VI C C A PKI. CÁC MÔ HÌNH ƯƠ Ầ Ơ Ế Ệ Ủ
VÀ CÁC KI U KI N TRÚC C A PKIỂ Ế Ủ ............................................................................. 40
3.1. Mô hình PKI và các thành ph n c a PKIầ ủ ................................................................. 40
3.1.1. CA ...................................................................................................................... 40
3.1.2.RA ....................................................................................................................... 41
3.1.2.1.Ch c năng, nhi m v c a RAứ ệ ụ ủ .................................................................... 41
3.1.2.2.Thành ph n c a RAầ ủ ..................................................................................... 41
3.1.2.2.1.RA Console ........................................................................................... 41
3.1.2.2.2.RA Officer ............................................................................................. 42
3.1.2.2.3.RA Manager .......................................................................................... 42
3.1.3. Certificate-Enabled Client: Bên đc c p phát ch ng chượ ấ ứ ỉ ............................... 42
3

3.1.4. Data Recipient : Bên nh n d li uậ ữ ệ .................................................................... 43
3.1.5. Kho l u tr /thu h i ch ng chư ữ ồ ứ ỉ .......................................................................... 43
3.1.6.Chu i ch ng ch ho t đng nh th nào ỗ ứ ỉ ạ ộ ư ế .......................................................... 43
3.2. Cách th c làm vi c c a PKIứ ệ ủ .................................................................................... 44
3.2.1. Kh i t o th c th cu iở ạ ự ể ố ...................................................................................... 45
3.2.2. T o c p khoá công khai/khoá riêngạ ặ .................................................................. 45
3.2.3. Áp d ng ch ký s đ đnh danh ng i g i.ụ ữ ố ể ị ườ ử ................................................... 46
3.2.4. Mã hóa thông báo ............................................................................................... 46
3.2.5. Truy n khóa đi x ng.ề ố ứ ...................................................................................... 46
3.2.6. Ki m tra danh tính ng i g i thông qua m t CAể ườ ử ộ ............................................ 47
3.2.7. Gi i mã thông báo và ki m tra n i dung thông báo.ả ể ộ ......................................... 47
3.3. Các ti n trình trong PKIế ............................................................................................ 48
3.3.1. Yêu c u ch ng chầ ứ ỉ ............................................................................................. 48
3.3.1.1. G i yêu c uử ầ ................................................................................................ 49
3.3.1.2. Các chính sách ............................................................................................. 49
3.3.2. Hu b ch ng chỷ ỏ ứ ỉ .............................................................................................. 50
3.4. Các mô hình PKI ....................................................................................................... 50
3.4.1. Mô hình phân c p CA ch t ch (strict hierarchy of CAs)ấ ặ ẽ ................................ 50
3.4.2.Mô hình phân c p CA không ch t ch (loose hierarchy of CAs)ấ ặ ẽ ...................... 52
3.4.3.Mô hình ki n trúc tin c y phân tán (distributed trust architecture)ế ậ .................... 52
3.4.4. Mô hình 4 bên (four-corner model) .................................................................... 53
3.4.5. Mô hình Web (web model) ................................................................................ 55
3.4.6.Mô hình tin c y l y ng i dùng làm trung tâm (user-centric trust)ậ ấ ườ .................. 56
3.5.Các ki u ki n trúc PKIể ế .............................................................................................. 57
3.5.1. Ki n trúc ki u Web of Trustế ể ............................................................................. 58
3.5.2.Ki n trúc ki u CA đn (Single CA)ế ể ơ .................................................................. 59
3.5.3. Ki n trúc CA phân c pế ấ ...................................................................................... 61
3.5.4. Ki n trúc ki u ch ng th c chéo (Cross-certificate)ế ể ứ ự ......................................... 62
3.5.5. Ki n trúc Bridge CA(BCA)ế ............................................................................... 63
CH NG IV: XÂY D NG MÔ HÌNH PKI D A TRÊN MÃ NGU N M OPENCAƯƠ Ự Ự Ồ Ở
.............................................................................................................................................. 64
4.1.L ch s phát tri n OpenCAị ử ể ....................................................................................... 64
4.2. CA ............................................................................................................................ 66
4.2.1.Ch c năng c a CAứ ủ .............................................................................................. 66
4.2.1.1. C p phát ch ng chấ ứ ỉ ..................................................................................... 66
4.2.1.2.Hu b ch ng chỷ ỏ ứ ỉ ........................................................................................ 66
4.2.1.3.T o l p chính sách ch ng chạ ậ ứ ỉ ..................................................................... 67
4.2.1.4.H ng d n th c hi n ch ng ch s (Certification Practice Statement)ướ ẫ ự ệ ứ ỉ ố ..... 67
4.2.2.Nhi m v c a CAệ ụ ủ .............................................................................................. 68
4.2.3. Các lo i CAạ ........................................................................................................ 68
4.2.3.1.Enterprise CA: ............................................................................................. 68
4.2.3.2.Standalone CA .............................................................................................. 68
4.2.4.Các c p CAấ ......................................................................................................... 69
4.2.4.1.Root CA(CA g c)ố ........................................................................................ 69
4.2.4.2.Subordinate CA(CA ph thu c): ụ ộ ................................................................ 69
4.3. Thi t k chung c a CAế ế ủ ............................................................................................ 70
4.3.1.Phân c p c b nấ ơ ả ................................................................................................. 71
4.3.2.Các giao di nệ ...................................................................................................... 73
4

4.3.2.1.Node ............................................................................................................. 74
4.3.2.2.CA ................................................................................................................ 75
4.3.2.3.RA ................................................................................................................ 75
4.3.2.4. LDAP ........................................................................................................... 76
4.3.2.5.Pub ................................................................................................................ 76
4.4. Vòng đi c a các đi t ngờ ủ ố ượ .................................................................................... 76
4.5. Các l u ý khi thi t k PKIư ế ế ....................................................................................... 77
4.5.1. Các v n đ ph n c ngấ ề ầ ứ ...................................................................................... 78
4.5.1.1.Th i gianờ ...................................................................................................... 78
4.5.1.2.Đĩa l iỗ ........................................................................................................... 78
4.5.1.3.Theo dõi ph n c ngầ ứ ..................................................................................... 78
4.5.2.An toàn v t lýậ ...................................................................................................... 79
4.5.3.Các v n đ v m ngấ ề ề ạ .......................................................................................... 80
4.5.4.V n đ v ch ng chấ ề ề ứ ỉ ......................................................................................... 80
4.5.5.CDPs (Các đi m phân ph i danh sách hu b ch ng ch (CDP))ể ố ỷ ỏ ứ ỉ .................... 80
4.5.6.Các v n đ c th v ng d ngấ ề ụ ể ề ứ ụ ....................................................................... 81
4.5.6.1.Mail Server ................................................................................................... 81
4.5.6.2. Client Netscape ............................................................................................ 81
4.5.6.3.OpenLDAP ................................................................................................... 81
PH L CỤ Ụ ............................................................................................................................. 83
1.Môi tr ng phát tri nườ ể ................................................................................................... 83
1.1.Apache .................................................................................................................... 83
1.2. OpenSSL ............................................................................................................... 84
1.2.1.Công c dòng l nh trong opensslụ ệ ................................................................... 85
1.2.1.1.Các dòng l nh chu nệ ẩ ............................................................................... 85
1.2.1.2.Các dòng l nh tóm l c thông báoệ ượ ......................................................... 87
1.2.1.3. Các dòng l nh v mã hoáệ ề ....................................................................... 87
1.2.2.Th vi n SSL/TLS trong OpenSLư ệ .................................................................. 88
1.2.2.1.Miêu tả ..................................................................................................... 88
1.2.2.2. C u trúc d li uấ ữ ệ ..................................................................................... 88
1.2.2.3. Các file header ......................................................................................... 89
1.2.3. Th vi n m t mã trong OpenSSLư ệ ậ ................................................................. 90
1.2.3.1. Miêu t ả ................................................................................................... 90
1.2.3.2.T ng quanổ ................................................................................................ 90
1.2.4. B công c OpenSSLộ ụ .................................................................................... 90
1.3.1.Các đi m n i b tể ổ ậ ............................................................................................ 92
1.3.2.Ki n trúc gói mod_sslế ..................................................................................... 93
1.3.3.Giao th c SSL ứ ................................................................................................ 93
1.4. OpenLDAP ............................................................................................................ 95
1.5. Các module perl ..................................................................................................... 99
2.Các chu n m t mãẩ ậ ...................................................................................................... 100
5