ĐẠI HỌC THÁI NGUYÊN

KHOA CÔNG NGHỆ THÔNG TIN
-----------------------------------




VŨ ANH TUẤN




BẢO MẬT VÀ AN TOÀN THÔNG TIN TRONG
THƯƠNG MẠI ĐIỆN TỬ




LUẬN VĂN THẠC SĨ KHOA HỌC
CÔNG NGHỆ THÔNG TIN




Chuyên ngành : Khoa học máy tính
Mã số : 60 . 48 . 01




Người hướng dẫn khoa học:
PGS.TS NGUYỄN GIA HIỂU





THÁI NGUYÊN – 2008
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
2
Môc lôc

Néi dung Trang

Lêi nãi ®Çu................................................................................................

2
I. Nội dung nghiên cứu của đề tài .........................................................
3
1. Mục tiêu và nhiệm vụ nghiên cứu của đề tài.....................................
3
2. ý nghĩa khoa học của đề tài.................................................................
3
3. Phƣơng pháp nghiên cứu....................................................................
3
4. Phạm vi nghiên cứu.............................................................................
3
5. Các kết quả nghiên cứu dự kiến cần đạt đƣợc..................................
4
II. Bố cục của luận văn............................................................................
5
Chƣơng I : CÁC KHÁI NIỆM VÒ TMĐT VÀ CÁC ĐẶC TRƢNG CỦA
TMĐT
6
1. Khái niệm về TMĐT...........................................................................
6
2. Lợi ích của thƣơng mại điện
tử...........................................................
6
3. Các đặc trƣng cơ bản của TMĐT.......................................................
8
4. Các loại thị trƣờng điện tử..................................................................
9
5. Các hệ thống thanh toán trong TMĐT..............................................
10
6. Công nghệ thanh toán điện tử............................................................
11
7. Quy trình thanh toán điện tử.............................................................
12
Ch- ¬ng II : hÖ mËt m·, m· kho¸ ®èi xøng, m· kho¸ c«ng
khai, ch÷ ký sè
14
I. tæng quan vÒ c¸c hÖ mËt m·..................................................................
14
1. Mật mã học cổ điển..............................................................................
14
2. Mật mã học hiện đại............................................................................
15
3. Thuật ngữ............................................................................................
16
4. Tiêu chuẩn mật mã.............................................................................
17
ii. c¸c ph- ¬ng ph¸p m· ho¸
19
1. Mã hoá đối xứng (mã hoá khoá bí mật)............................................
19
2. Mã hóa không đối xứng (Mã hóa khóa công khai)...........................
29
iii. CHỮ KÝ Sè
36
1. Chữ kí số..............................................................................................
36
2. Phân loại các sơ đồ chữ kí số..............................................................
37
3. Một số sơ đồ chữ ký cơ bản.................................................................
3.1. Sơ đồ chữ ký RSA.............................................................................
3.2. Sơ đồ chữ ký DSA (Digital Signature Standard).............................
40
40
42
4. Các sơ đồ chữ kí số khả thi.................................................................
46

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
3
Néi dung Trang

5. Các cách tấn công chữ kí điện tử........................................................

47
Ch-¬ng III : b¶o mËt vµ an toµn th«ng tin trong tm®t
49
i. vÊn ®Ò an toµn th«ng tin..........................................................................
49
II. chøng chØ sè vµ c¬ chÕ m· ho¸..................................................... 51
1. Giới thiệu về chứng chỉ số...................................................................
51
2. Xác thực định danh.............................................................................
52
3. Chứng chỉ khóa công khai...................................................................
54
4. Mô hình CA..........................................................................................
57
5. Một số giao thức bảo mật ứng dụng trong TMĐT...........................
57
CHƢƠNG IV: cµi ®Æt b¶o mËt vµ an toµn th«ng tin trªn
website mua b¸n c¸c linh kiÖn m¸y tÝnh trªn m¹ng internet
74

I. C¸c chøc n¨ng c¬ b¶n vµ ho¹t ®éng cña hÖ thèng website
74
1. Tổ chức dữ liệu....................................................................................
74
2. Quản trị thông tin...............................................................................
75
3. Mã hóa RSA và áp dụng trong hệ thống...........................................
75
4. Thực hiện mua hàng...........................................................................
75
5.Cách thức thực hiện mã hóa và giải mã..............................................
76
II. cµi ®Æt c¸c chøc n¨ng b¶o mËt vµ an toµn th«ng tin trªn
web site mua b¸n linh kiÖn m¸y tÝnh
77
1. Thủ tục đăng kí thành viên ................................................................
77
2. Khách hàng lựa chọn và mua hàng trên website.............................
79
kÕt luËn................................................................................................. 82
Tµi liÖu tham kh¶o............................................................................. 83








Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
4
lêi nãi ®Çu
Với sự phát triển mang tính toàn cầu của mạng Internet và TMĐT, con
ngƣời có thể mua bán hàng hoá và dịch vụ thông qua mạng máy tính toàn cầu
một cách dễ dàng trong mọi lĩnh vực thƣơng mại rộng lớn . Tuy nhiên đối
với các giao dịch mang tính nhạy cảm này cần phải có những cơ chế đảm bảo
bảo mật và an toàn vì vậy vấn đề bảo mật và an toàn thông tin trong thƣơng
mại điện tử là một vấn đề hết sức quan trọng. Đề tài sẽ đề cập đến các kỹ
thuật chính của lĩnh vực Bảo mật và an toàn thông tin trong thƣơng mại điện
tử.
Hiện nay vấn đề Bảo mật và an toàn thông tin trong TMĐT đã và đang
đƣợc áp dụng phổ biến và rộng rãi ở Việt Nam và trên phạm vi toàn cầu. Vì
thế vấn đề Bảo mật và an toàn đang đƣợc nhiều ngƣời tập trung nghiên cứu
và tìm mọi giải pháp để đảm bảo Bảo mật và an toàn cho các hệ thống thông
tin trên mạng. Tuy nhiên cũng cần phải hiểu rằng không có một hệ thống
thông tin nào đƣợc bảo mật 100% bất kỳ một hệ thống thông tin nào cũng có
những lỗ hổng về bảo mật và an toàn mà chƣa đƣợc phát hiện ra
Vấn đề bảo mật và an toàn thông tin trong TMĐT phải đảm bảo bốn yêu
cầu sau đây:
- Đảm bảo tin cậy : Các nội dung thông tin không bị theo dõi hoặc sao
chép bởi những thực thể không đƣợc uỷ thác.
- Đảm bảo toàn vẹn : Các nội dung thông tin không bị thay đổi bởi những
thực thể không đƣợc uỷ thác
- Sự chứng minh xác thực : Không ai có thể tự trá hình nhƣ là bên hợp
pháp trong quá trình trao đổi thông tin
- Không thể thoái thác trách nhiệm : Ngƣời gửi tin không thể thoái thác về
những sự việc và những nội dung thông tin thực tế đã gửi đi
Xuất phát từ những khả năng ứng dụng trong thực tế và những ứng dụng đã
có từ các kết quả của nghiên cứu trƣớc đây về lĩnh vực Bảo mật và an toàn
trong TMĐT. Đề tài sẽ đi sâu nghiên cứu các kỹ thuật và các phƣơng pháp
Bảo mật và an toàn thông tin trong thƣơng mại điện tử




Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
5
I. Nội dung nghiên cứu của đề tài
1. Mục tiêu và nhiệm vụ nghiên cứu của đề tài
- Đề tài nghiên cứu các kỹ thuật và phƣơng pháp để thực hiện nhiệm vụ
Bảo mật và an toàn trong thƣơng mại điện tử, quá trình thực hiện và các
kiến thức khoa học và thuật toán liên quan nhƣ: Xác thực, Bảo mật, Bảo
toàn dữ liệu, Mật mã, Chữ ký số...
- Áp dụng các kết quả đã nghiên cứu để triển khai hệ thống Bảo mật và an
toàn trong TMĐT
2. ý nghĩa khoa học của đề tài
÷ Áp dụng các kết quả đã nghiên cứu để xây dựng các kỹ thuật Bảo mật và
an toàn trong thƣơng mại điện tử với một số tính năng cơ bản nhƣ: Hệ
thống chứng thực, Các cơ chế phân bố khoá tự động, Mã hoá các thông
tin cần thiết, kỹ thuật ngăn ngừa các rui ro trong TMĐT.
÷ Vấn đề Bảo mật và an toàn trên mạng là một trong những vấn đề nóng hổi
trong hoạt động thực tiễn của TMĐT, giải quyết tốt vấn đề bảo mật và an
toàn trong TMĐT sẽ mang lại ý nghĩa hết sức to lớn nhƣ: Làm cho khách
hàng tin tƣởng khi thực hiện các giao dịch trên mạng, và các nhà cung cấp
dịch vụ giao dịch trực tuyến cũng nhƣ các ISP đảm bảo đƣợc những thông
tin của khách hàng giao dịch trên mạng đƣợc an toàn.
3. Phương pháp nghiên cứu
÷ Thu thập, phân tích các tài liệu và những thông tin liên quan đến đề tài.
÷ Tìm hiểu các giao dịch trong thƣơng mại điện tử của một số Website
trong và ngoài nƣớc, thu thập các thông tin về bảo mật các giao dịch
thƣơng mại điện tử đã có.
÷ Kết hợp các nghiên cứu đã có trƣớc đây của các tác giả trong nƣớc cùng
với sự chỉ bảo, góp ý của thầy hƣớng dẫn để hoàn thành nội dung nghiên
cứu
4. Phạm vi nghiên cứu
÷ Các vấn đề về bảo mật chứng thực trong thƣơng mại điện tử Hàm băm,
các thuật toán mã hoá đối xứng DES và và bất đối xứng nhƣ mã khoá
công khai RSA, sử dụng chữ ký số DSA và RSA, các giao thức bảo mật
trên mạng nhƣ: SSL, TLS, SET...
÷ Các kỹ thuật sử dụng và các phƣơng pháp kết hợp các hệ mật mã trong
bảo mật.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
6
÷ Do có những hạn chế nhất định về cơ sở vật chất và điều kiện tiếp cận
thực tế với lĩnh vực an toàn và bảo mật trong thƣơng mại điện tử nên việc
cài đặt các ứng dụng chủ yếu mang tính thử nghiệm.
5. Các kết quả nghiên cứu dự kiến cần đạt được
÷ Các vấn đề về bảo mật chứng thực trong thƣơng mại điện tử, sử dụng chữ
ký số, Các kỹ thuật sử dụng và các phƣơng pháp kết hợp các hệ mật mã
trong bảo mật.
÷ Cài đặt thử nghiệm vấn đề về bảo mật và an toàn trong thƣơng mại điện tử
đã nghiên cứu.



















Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
7
II, Bố cục của luận văn
Chƣơng I : CÁC KHÁI NIỆM VÒ TMĐT VÀ CÁC ĐẶC TRƢNG CỦA
TMĐT
1. Khái niệm về TMĐT
2. Lợi ích của thƣơng mại điện tử
3. Các đặc trƣng cơ bản của TMĐT
4. Các loại thị trƣờng điện tử.
5. Các hệ thống thanh toán trong TMĐT
6. Công nghệ thanh toán điện tử
7. Quy trình thanh toán điện tử
Chƣơng II : HỆ MẬT MÃ, MÃ KHOÁ ĐỐI XỨNG, MÃ KHOÁ CÔNG
KHAI, CHỮ KÝ Sè
I, Tổng quan về các hệ mật mã
1. Mã hoá khoá đối xứng: Thuật toán và quá trình tạo khoá
2. Mã hoá khoá công khai: Hoạt động, tạo khoá, mã hoá, giải mã,
chuyển đổi văn bản rõ
II, Chữ ký số
1. Khái niệm chữ ký số
2. Phân loại chữ ký số
3. Một số sơ đồ chữ ký số cơ bản
4. Đánh giá tính an toàn của các sơ đồ chữ ký số
Chƣơng III : BẢO MẬT VÀ AN TOÀN TRONG TMĐT
1. An toàn thông tin
2. Cơ chế mã hoá
3. Chứng thực số hoá
4. Một số giao thức bảo mật ứng dụng trong TMĐT
- Các vấn đề bảo mật ứng dụng WEB
- Cơ chế bảo mật SSL và TSL
- Cơ chế bảo mật SET
Chƣơng IV: CÀI ĐẶT VÀ PHÁT TRIỂN CÁC ỨNG DỤNG
- Cài đặt ứng dụng bảo mật và an toàn thông tin, chøng thùc sè ho¸, ch÷ ký
sè trên WEBSITE mua b¸n m¸y tÝnh trªn m¹ng INTERNET
Kết luận





Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
8
ch- ¬ng i : c¸c kh¸i niÖm vÒ TM§T vµ c¸c ®Æc tr- ng
cña TM§T
1. Khái niệm về TMĐT
Thƣơng mại điện tử là hình thức mua bán hàng hoá và dịch vụ thông qua
mạng máy rính toàn cầu. TMĐT theo nghĩa rộng đƣợc định nghĩa trong luật mẫu
về thƣơng mại điện tử của Uỷ ban LHQ về luật thƣơng mại quốc tế:
“Thuật ngữ thương mại cần được diễn giải theo nghĩa rộng để bao quát
các vấn đề phát sinh từ mọi quan hệ mang tính chất thương mại dù có hay
không có hợp đồng. Các quan hệ mang tính chất thương mại bao gồm các giao
dịch sau đây: Bất cứ giao dịch nào về thương mại nào về cung cấp hoặc trao
đổi hàng hoá hoặc dịch vụ, thoả thuận phân phối, đại diện hoặc đại lý thương
mại, uỷ thác hoa hồng, cho thuê dài hạn, xây dựng các công trình, tư vấn, kỹ
thuật công trình, đầu tư, cấp vốn, ngân hàng, bảo hiểm, thoả thuận khai thác
hoặc tô nhượng, liên doanh các hình thức khác về hợp tác công nghiệp hoặc
kinh doanh, chuyên chở hàng hoá hay hành khách bằng đường biển, đường
không, đường sắt hoặc đường bộ”
Nhƣ vậy, có thể thấy rằng phạm vi của Thƣơng mại điện tử rất rộng, bao
quát hầu hết các lĩnh vực hoạt động kinh tế, việc mua bán hàng hoá và dịch vụ
chỉ là một trong hàng ngàn lĩnh vực áp dụng của Thƣơng mại điện tử. Theo
nghĩa hẹp TMĐT chỉ gồm các hoạt động thƣơng mại đƣợc tiến hành trên mạng
máy tính mở nhƣ Internet. Trên thực tế chính các hoạt động thƣơng mại thông
qua mạng Internet đã làm phát sinh thuật ngữ Thƣơng mại điện tử.
Thƣơng mại điện tử gồm các hoạt động mua bán hàng hoá và dịch vụ qua
phƣơng tiện điện tử, giao nhận các nội dung kỹ thuật số trên mạng, chuyển tiền
điện tử, mua bán cổ phiếu điện tử, vận đơn đơn điện tử, đấu giá thƣơng mại, hợp
tác thiết kế, tài nguyên mạng, mua sắm công cộng, tiếp thị trực tuyến tới ngƣời
tiêu dùng và các dịch vụ sau bán hàng. Thƣơng mại điện tử đƣợc thực hiện đối
với cả thƣơng mại hàng hoá (ví dụ nhƣ hàng tiêu dùng, các thiết bị y tế chuyên
dụng) và thƣơng mại dịch vụ (ví dụ nhƣ dịch vụ cung cấp thông tin, dịch vụ
pháp lý, tài chính). Các hoạt động truyền thống nhƣ chăm sóc sức khoẻ, giáo
dục và các hoạt động mới (nhƣ siêu thị ảo). Thƣơng mại điện tử đang trở thành
một cuộc cách mạng làm thay đổi cách thức mua săm của con ngƣời.
2. Lợi ích của TMĐT
Xuất phát từ những kinh nghiệm thực tế trong quá trình hoạt động của
thƣơng mại điện tử thì TMĐT đã mang lại cho con ngƣời và xã hội các lợi ích
sau:
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
9

2.1. Thu thập được nhiều thông tin

TMĐT giúp cho mỗi cá nhân khi tham gia thu đƣợc nhiều thông tin về thị
trƣờng, đối tác, giảm chi phí tiếp thị và giao dịch, rút ngắn thời gian sản xuất,
tạo dựng và củng cố quan hệ bạn hàng. Các doanh nghiệp nắm đƣợc các thông
tin phong phú về kinh tế thị trƣờng, nhờ đó có thể xây dựng đƣợc chiến lƣợc sản
xuất và kinh doanh thích hợp với xu thế phát triển của thị trƣờng trong nƣớc,
trong khu vực và quốc tế. Điều này đặc biệt có ý nghĩa đối với các doanh nghiệp
vừa và nhỏ, hiện nay đang đƣợc nhiều nƣớc quan tâm coi là một trong những
động lực phát triển kinh tế.

2.2. Giảm chi phí sản xuất

TMĐT giúp giảm chi phí sản xuất, trƣớc hết là chi phí văn phòng. Các văn
phòng không giấy tờ chiếm diện tích nhỏ hơn rất nhiều, chi phí tìm kiếm chuyển
giao tài liệu giảm nhiều lần trong đó khâu in ấn gần nhƣ bỏ hẳn. Theo số liệu
của hãng General Electricity của Mỹ tiết kiệm trên lĩnh vực này đạt tới 30 %.
Điều quan trọng hơn, với góc độ chiến lƣợc là các nhân viên có năng lực đƣợc
giải phóng khỏi nhiều công đoạn sự vụ và có thể tập trung vào nghiên cứu phát
triển, sẽ đƣa đến những lợi ích to lớn lâu dài.

2.3. Giảm chi phí bán hàng, tiếp thị và giao dịch

TMĐT giúp giảm thấp chi phí bán hàng và chi phí tiếp thị. Bằng phƣơng
tiện Internet / Web một nhân viên bán hàng có thể giao dịch với rất nhiều khách
hàng, catalogue điện tử trên web phong phú hơn nhiều so với catalogue in ấn chỉ
có khuôn khổ giới hạn và luôn luôn lỗi thời, trong khi đó catalogue điện tử trên
web đƣợc cập nhật thƣờng xuyên.
TMĐT qua Internet / Web giúp ngƣời tiêu thụ và các doanh nghiệp giảm
đáng kể thời gian và chi phí giao dịch. Thời gian giao dịch qua Internet chỉ bằng
7% thời gian giao dịch qua FAX, và bằng khoảng 0.5 phần nghìn thời gian giao
dịch qua bƣu điện chuyển phát nhanh, chi phí thanh toán điện tử qua Internet chỉ
bằng 10% đến 20% chi phí thanh toán theo lối thông thƣờng.

2.4. Xây dựng quan hệ đối tác

Thƣơng mại điện tử tạo điều kiện cho việc thiết lập và củng cố mối quan
hệ giữa các thành viên tham gia quá trình thƣơng mại thông qua mạng Internet
các thành viên tham gia có thể giao tiếp trực tiếp (liên lạc trực tuyến) và liên tục
với nhau, có cảm giác nhƣ không có khoảng cách về địa lý và thời gian nữa, nhờ
đó sự hợp tác và quản lý đều đƣợc tiến hành nhanh chóng một cách liên tục, các
bạn hàng mới, các cơ hội kinh doanh mới đƣợc phát hiện nhanh chóng trên
phạm vi toàn thế giới và có nhiều cơ hội để lựa chọn hơn.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
10


2.5. Tạo điều kiện sớm tiếp cận kinh tế tri thức

Trƣớc hết TMĐT sẽ kích thích sự phát triển của nghành CNTT tạo cơ sở
cho phát triển kinh tế tri thức. Lợi ích này có một ý nghĩa lớn đối với các nƣớc
đang phát triển, nếu không nhanh chóng tiếp cận nền kinh tế tri thức thì sau
khoảng một thập kỷ nữa nƣớc đang phát triển có thể bị bỏ rơi hoàn toàn. Khía
cạnh lợi ích này mang tính chiến lƣợc công nghệ và tính chính sách phát triển
cần cho các nƣớc công nghiệp hoá.

3. Các đặc trƣng cơ bản của TMĐT

So với các hoạt động thƣơng mại truyền thống, TMĐT có một số các đặc
trƣng cơ bản sau:

3.1. Các bên tiến hành giao dịch trong thương mại điện tử không tiếp xúc
trực tiếp với nhau và không đòi hỏi phải biết nhau từ trước.
Trong thƣơng mại truyền thống các bên thƣờng gặp gỡ nhau trực tiếp để
tiến hành giao dịch. Các giao dịch đƣợc thực hiện chủ yếu theo nguyên tắc vật lý
nhƣ chuyển tiền, séc, hoá đơn, vận đơn, gửi báo cáo. Các phƣơng tiện viễn
thông nhƣ: Fax, telex,... chỉ đƣợc sử dụng để chao đổi số liệu kinh doanh. Tuy
nhiên việc sử dụng các phƣơng tiện điện tử trong thƣơng mại truyền thống chỉ
để chuyển tải thông tin một cách trực tiếp giữa 2 đối tác của cùng một giao dịch.
Thƣơng mại điện tử cho phép tất cả mọi ngƣời cùng tham gia từ các vùng
xa xôi hẻo lánh đến các khu vực đô thị rộng lớn, tạo điều kiện cho tất cả mọi
ngƣời ở khắp mọi nơi đều có cơ hội ngang nhau tham gia vào thị trƣờng giao
dịch toàn cầu và không đòi hỏi nhất thiết phải có mối quen biết với nhau.

3.2. Các giao dịch thương mại truyền thống được thực hiện với sự tồn tại của
khái niệm biên giới quốc gia, còn thương mại điện tử được thực hiện trong
một thị trường không có biên giới (thị trường thống nhất toàn cầu). Thương
mại điện tử trực tiếp tác động tới môi trường cạnh tranh toàn cầu.
Thƣơng mại điện tử càng phát triển thì máy tính cá nhân trở thành cửa sổ
cho doanh nghiệp hƣớng ra thị trƣờng trên khắp thế giới. Với TMĐT một doanh
nhân dù mới thành lập đã có thể kinh doang ở Nhật Bản, Đức và Chi lê..., mà
không hề phải bƣớc ra khỏi nhà, một công việc trƣớc kia phải mất nhiều năm.

3.3. Trong hoạt động giao dịch TMĐT đều có sự tham gia của ít nhất ba chủ
thể, trong đó có một bên không thể thiếu được là người cung cấp dịch vụ
mạng, các cơ quan chứng thực.
Trong TMĐT ngoài các chủ thể tham gia quan hệ giao dịch giống nhƣ giao dịch
thƣơng mại truyền thống đã xuất hiện một bên thứ 3 đó là nhà cung cấp dịch vụ
mạng, các cơ quan chứng thực... là những ngƣời tạo môi trƣờng cho các giao
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
11
dịch thƣơng mại điện tử. Nhà cung cấp dịch vụ mạng và cơ quan chứng thực có
nhiệm vụ chuyển đi, lƣu giữ các thông tin giữa các bên tham gia giao dịch
TMĐT, đồng thời họ cũng xác nhận độ tin cậy của các thông tin trong giao dịch
TMĐT.

3.4. Đối với thương mại truyền thống thì mạng lưới thông tin chỉ là phương
tiện để trao đổi dữ liệu, còn đối với TMĐT thì mạng lưới thông tin chính là thị
trường
Thông qua TMĐT nhiều loại hình kinh doanh mới đƣợc hình thành. Ví
dụ: Các dịch vụ gia tăng giá trị trên mạng máy tính hình thành nên các nhà trung
gian ảo làm các dịch vụ môi giới cho giới kinh doanh và tiêu dùng, các siêu thị
ảo đƣợc hình thành để cung cấp hàng hoá và dịch vụ trên mạng máy tính. Các
chủ cửa hàng thông thƣờng ngày nay cũng đang đua nhau đƣa thông tin lên Web
để tiến tới khai thác mảng thị trƣờng rộng lớn trên Web bằng cách mở cửa hàng
ảo.

4. Các loại thị trƣờng điện tử

Tuỳ thuộc vào đối tác kinh doanh mà ngƣời ta gọi đó là thị trƣờng B2B,
B2C, C2B hay C2C. Thị trƣờng mở là những thị trƣờng mà tất cả mọi ngƣời có
thể đăng ký và tham gia. Tại một thị trƣờng đóng chỉ có một số thành viên nhất
định đƣợc mời hay cho phép tham gia. Một thị trƣờng ngang tập trung vào một
quy trình kinh doanh riêng lẻ nhất định, ví dụ nhƣ lĩnh vực cung cấp: nhiều
doanh nghiệp có thể từ các nghành khác nhau tham gia nhƣ là ngƣời mua và liên
hệ với một nhóm nhà cung cấp. Ngƣợc lại thị trƣờng dọc mô phỏng nhiều quy
trình kinh doanh khác nhau của một nghành duy nhất hay một nhóm ngƣời dùng
duy nhất.
Sau khi làn sóng lạc quan về TMĐT của những năm 1990 qua đi, thời
gian mà đã xuất hiện nhiều thị trƣờng điện tử, ngƣời ta cho rằng sau một quá
trình tập trung chỉ có một số ít thị trƣờng lớn là sẽ tiếp tục tồn tại. Thế nhƣng
bên cạnh đó là ngày càng nhiều những thị trƣờng chuyên môn nhỏ.
Ngày nay tình hình đã khác hăn đi, công nghệ để thực hiện một thị trƣờng
điện tử đã rẻ đi rất nhiều. Thêm vào đó là xu hƣớng kết nối nhiều thông tin chào
hàng khác nhau thông qua các giao diện lập trình ứng dụng để thành lập một thị
trƣờng chung có mật độ chào hàng cao. Ngoài ra các thị trƣờng độc lập trƣớc
đây còn đƣợc tích hợp ngày càng nhiều bằng các giải pháp phần mềm cho một
cổng Web toàn diện.
Thƣơng mại điện tử đƣợc phân loại theo tƣ cách của ngƣời tham gia giao
dịch nhƣ sau:
• Ngƣời tiêu dùng:

C2C (Consumer – To – Consumer): Ngƣời tiêu dùng với ngƣời tiêu dùng
C2B (Consummer – To – Business): Ngƣời tiêu dùng với doanh nghiệp
C2G (Consumer – To – Government): Ngƣời tiêu dùng với chính phủ
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
12

• Doanh nghiệp:
B2C (Bussiness – To – Consumer): Doanh nghiệp với ngƣời tiêu dùng
B2B (Bussiness – To – Business ): Doanh nghiệp với doanh nghiệp
B2G (Bussiness – To – Government): Doanh nghiệp với chính phủ
B2E (Bussiness – To – Employee): Doanh nghiệp với nhân viên
• Chính phủ
G2C (Government – To – Consumer): Chính phủ với ngƣời tiêu dùng
G2B (Government – To – Business): Chính phủ với doanh nghiệp
G2G (Government – To – Government): Chính phủ với chính phủ

5. Các hệ thống thanh toán trong TMĐT

Thanh toán điện tử là một khâu quan trọng trong TMĐT. Hiểu một cách
khái quát thì thanh toán điện tử là một quá trình thanh toán tiền giữa ngƣời mua
và ngƣời bán. Điểm cốt lõi của vấn đề này là việc ứng dụng các công nghệ thanh
toán tài chính (ví dụ nhƣ mã hoá số thẻ tin dụng, séc điện tử, hoặc tiền điện tử)
giữa ngân hàng, nhà trung gian và các bên tham gia hoạt động thƣơng mại. Các
ngân hàng và tổ chức tín dụng hiện nay sử dụng các phƣơng pháp này nhằm
mục đích nâng cao hiệu quả hoạt động trong bối cảnh phát triển của nền kinh tế
số, với một số lợi ích nhƣ giảm chi phí xử lý, chi phí công nghệ và tăng cƣờng
thƣơng mại trực tuyến.
Thanh toán điện tử là việc trả tiền thông qua các thông điệp điện tử thay
vì trao tay trực tiếp. Việc trả lƣơng bằng cách chuyển tiền vào tài khoản ngân
hàng, trả tiền mua hàng bằng thẻ tín dụng, bằng thẻ mua hàng... thực chất cũng
là những ví dụ đơn giản của thanh toán điện tử.
Hình thức thanh toán điện tử có một số hệ thống thanh toán cơ bản sau:

Thanh toán bằng thẻ tín dụng: Thực tế cho thấy, khách hàng trên mạng không
thể trả tiền hoặc séc để thanh toán. Điều cần thiết là Website bán hàng cần phải
tạo ra đƣợc các hình thức thanh toán trên mạng. Hệ thống thanh toán phổ biến
hiện nay trên mạng là thanh toán bằng thẻ tín dụng. Một số thẻ tín dụng phổ biến
hiện nay là Visa, MasterCard, American Express, JBC. Để tiến hành giao dịch
thẻ tín dụng từ Website bán hàng cần thiết phải liên kết tới một dịch vụ tiến
hành thanh toán thẻ tín dụng trên mạng nhƣ CyberCard hay PaymentNet,... Dịch
vụ thanh toán này cung cấp phần mềm định vị trên máy chủ dịch vụ an toàn tới
dịc vụ thực hiện thanh toán. Dịch vụ thực hiện thanh toán xác nhận thông qua
thẻ tín dụng để có thể hoàn tất giao dịch với khách hàng. Sau đó chuyển đến bộ
phận xác nhận. Dịch vụ thanh toán bằng thẻ tín dụng đảm bảo rằng tiền đƣợc
thực hiện ở tài khoản ngân hàng. Để tiến hành sử dụng dịch vụ thanh toán bằng
thẻ tín dụng trên Website cần đăng ký một tài khoản giao dịch Internet với ngân
hàng (acquier). Hiện tại không phải ngân hàng nào cũng cung cấp dịch vụ tài
khoản giao dịch trên Internet. Tài khoản giao dịch Internet đƣợc thiết kế cho
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
13
phép nhà kinh doanh thực hiện giao dịch thanh toán qua thẻ tín dụng trên
Internet thông qua dịch vụ thẻ tín dụng trên mạng.

Thanh toán vi điện tử (Electronic Cash MicroPayment): Đƣợc sử dụng cho
những giao dịch quá nhỏ đối với yêu cầu thanh toán qua thẻ tín dụng (dƣới 10
USD). Micropayment vi thanh toán đƣợc duy trì qua biên nhận điện tử, khách
hàng mở tài khoản với máy cung cấp biên nhận điện tử tự động. Máy cung cấp
biên nhận điện tử tự động. Máy cung cấp biên nhận điện tử tự động sẽ cấp cho
khách hàng tiền kỹ thuật số (digital money), do đó khách hàng có thể mua trực
tiếp từ Website. Trƣớc khi khách hàng thanh toán tiền kỹ thuật số đến ngƣời
bán, nó xác nhận cả ngƣời mua và máy bán hàng tự động để đảm bảo rằng tiền
đi đến đúng nơi cung cấp tiền điện tử Cyberrcash.

Chi phiếu điện tử (Electronic Check) : Đây là một dịch vụ cho phép khách hàng
trực tiếp chuyển tiền điện tử từ ngân hàng đến ngƣời bán hàng. Chi phiếu điện tử
đƣợc sử dụng thanh toán hoá đơn định kỳ. Các công ty nhƣ điện, nƣớc, ga, điện
thoại... đƣa ra hình thức thanh toán này để cải thiện tỉ lệ thu, giảm chi phí và dễ
dàng hơn cho khách hàng trong việc quản lý hoá đơn. Từ triển vọng của khách
hàng khi một khách hàng đăng kí với nhà cung cấp thì khách hàng sẽ nhận đƣợc
thông tin thanh toán (số tài khoản, ngân hàng...). Khách hàng với tên đăng kí sử
dụng và mật khẩu họ có thể truy nhập vào Website của công ty phát hành chi
phiếu để kiểm tra số dƣ của họ. Khách hàng cũng có thể nhận những hoá đơn
điện tử và gửi thƣ điện tử thông báo đã nhận đƣợc hoá đơn điện tử từ công ty
cung cấp gửi đến. Khi khách hàng truy cập hoá đơn của mình trên Internet sau
khi xem xét tất cả các hoá đơn khách hàng có thể chọn để thanh toán từ tiền của
mình trong tài khoản tại ngân hàng. Quá trình thanh toán đƣợc thực hiện thông
qua dịch vụ nhƣ dịch vụ thanh toán chi phiếu điện tử trên Cybercash’s Paynow
(thanh toán nhanh) của Cybercash.

Thƣ điện tử (Email): Có thể dùng để cho phép đối tác kinh doanh nhận
thanh toán từ tài khoản khách hàng hoặc để lập tài khoản với nhà cung cấp.

Với những lợi ích nêu trên, tăng cƣờng khả năng thanh toán điện tử sẽ là
một giải pháp cắt giảm đáng kể các chi phí hoạt động. Theo tính toán của các
ngân hàng thì việc giao dịch bằng tiền và séc rất tốn kém, do đó họ tìm kiếm các
giải pháp khác với chi phí thấp hơn. Hiện nay ở Mỹ thì các giao dịch bằng tiền
mặt chiếm khoảng 54% và bằng séc là 29% các giao dịch điện tử chiếm khoảng
17%. Dự báo con số này sẽ tăng lên trong thời gian tới.

6. Công nghệ thanh toán điện tử

Các công nghệ thanh toán điện tử bắt đầu phát triển với dịch vụ chuyển
tiền bằng điện tử ví dụ nhƣ dịch vụ chuyển tiền của Western Union giúp một cá
nhân có thể chuyển tiền cho ngƣời nào đó ở địa điểm khác thông qua lệnh
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
14
chuyển tiền của họ từ một quầy cung cấp dịch vụ của Western Union. Tiền chỉ
có thể chuyển giao cho khách hàng sau khi đáp ứng đƣợc các yêu cầu nhận điện.
Trong trƣờng hợp này, không có sự tham gia của bất kỳ ngân hàng nào cả,
Western chỉ đơn thuần là một công ty điện tín. Sự an toàn phụ thuộc vào khả
năng tài chính của hãng, và sự an toàn của dịch vụ này đƣợc kiểm soát qua các
thông điệp gửi đi trong từng giao dịch riêng lẻ. Các thông tin này không đƣợc
công bố rộng rãi mà chỉ khách hàng và ngƣời nhận đƣợc biết khoản tiền đƣợc
chuyển. Chữ ký đƣợc sử dụng nhƣ một công cụ xác nhận nhằm mục đích cho
biết quá trình chuyển giao đã hoàn thành khi khách hàng nhận đƣợc tiền.
Các sáng kiến trong thanh toán điện tử hiện nay đều nhằm mục đích tạo ra
một cách thức đơn giản, thuận lợi cho khách hàng trong giao dịch thanh toán và
mang tính tức thời. Trong một giao dịch điện tử, các khâu kiểm tra hối đoái, tiến
hành thủ tục thanh toán sẽ diễn ra ngay lập tức khi khách hàng gửi lệnh yêu cầu
chuyển tiền để thanh toán cho một giao dịch mua bán trên mạng.
Hệ thống thanh toán điện tử dành cho khách hàng phát triển rất nhanh chóng.

7. Quy trình thanh toán điện tử

Một quy trình thanh toán điện tử bao gồm có 6 công đoạn cơ bản sau:
1. Khách hàng, từ một máy tính tại một nơi nào đó, điền những thông tin
thanh toán và địa chỉ liên hệ vào đơn đặt hàng (Order Form) của Website bán
hàng. Doanh nghiệp nhận đƣợc yêu cầu mua hàng hoá hay dịch vụ của khách
hàng và phản hồi xác nhận tóm tắt lại những thông tin cần thiết nhƣ mặt hàng đã
chọn, địa chỉ giao nhận và số phiếu đặt hàng…
2. Khách hàng kiểm tra lại các thông tin và click chọn “đặt hàng”, để gởi
thông tin trả về cho Doanh nghiệp.
3. Doanh nghiệp nhận và lƣu trũ thông tin đặt hàng đồng thời chuyển tiếp
thông tin thanh toán (số thẻ tín dụng, ngày đáo hạn, chủ thẻ…) đã đƣợc mã hoá
đến máy chủ (Server, thiết bị xử lý dữ liệu) của Trung tâm cung cấp dịch vụ xử
lý thẻ trên mạng Internet. Với quá trình mã hoá các thông tin thanh toán của
khách hàng đƣợc bảo mật an toàn nhằm chống gian lận trong các giao dịch
(ngay cả doanh nghiệp sẽ không biết đƣợc thông tin về thẻ tín dụng của khách
hàng).
4. Khi Trung tâm xử lý thẻ tín dụng nhận đƣợc thông tin thanh toán, sẽ giải
mã thông tin và xử lý giao dịch đằng sau tƣờng lửa (Fire Wall) và tách rời mạng
Internet (off the Internet), nhằm mục đích bảo mật tuyệt đối cho các giao dịch
thƣơng mại, định dạng lại giao dịch và chuyển tiếp thông tin thanh toán đến
Ngân hàng của Doanh nghiệp (Acquirer) theo một đƣờng dây thuê bao riêng
(một đƣờng truyền số liệu riêng biệt).
5. Ngân hàng của Doanh nghiệp gởi thông điện điện tử yêu cầu thanh toán
(authorization request) đến ngân hàng hoặc Công ty cung cấp thẻ tín dụng của
khách hàng (Issuer). Và tổ chức tài chính này sẽ phản hồi là đồng ý hoặc từ chối
thanh toán đến trung tâm xử lý thẻ tín dụng trên mạng Internet.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
15
6. Trung tâm xử lý thẻ tín dụng trên Internet sẽ tiếp tục chuyển tiếp những
thông tin phản hồi trên đến doanh nghiệp và tuỳ theo đó doanh nghiệp thông báo
cho khách hàng đƣợc rõ là đơn đặt hàng sẽ đƣợc thực hiện hay không.
ch- ¬ng II : hÖ mËt m·, m· kho¸ ®èi xøng m· kho¸
c«ng khai, ch÷ ký sè
i. tæng quan vÒ c¸c hÖ mËt m·
Mật mã học là một linh vực liên quan vói các kỹ thuật ngôn ngữ và toán
học để đảm bảo an toàn thông tin, cụ thể là thông tin liên lạc. Về phƣơng diện
lịch sử, mật mã học gắn liền với quá trình mã hóa; điều này có nghĩa là nó gắn
với các cách thức để chuyển đổi thông tin từ dạng này sang dạng khác nhƣng ở
đây là từ dạng thông thƣòng có thể nhận thức đƣợc thành dạng không thể nhận
thức đƣợc, làm cho thông tin trở thành dạng không thể đọc đƣợc nếu nhƣ không
có các kiến thức bí mật. Quá trình mã hoá đƣợc sử dụng chủ yếu để đảm bảo
tính bí mật của các thông tin quan trọng , chẳng hạn trong công tác tình báo,
quân sự hay ngoại giao cũng nhƣ các bí mật về kinh tế, thƣơng mại. Trong
những năm gần đây, lĩnh vực hoạt động củ mật mã hoá đã dƣợc mở rộng; mật
mã hoá hiện đại cung cấp cơ chế nhiều hoạt đông hơn là chỉ duy nhất việc giữ bí
mật và có một loạt các ứng dụng nhƣ : chứng thực khoá công khai, chữ ký số,
bầu cử điện tử hay tiền điện tử. Ngoài ra những ngƣời không có nhu cầu thiết
yếu đặc biệt về tính bí mật cũng sử dụng các công nghệ mật mã hoá, thông
thƣờng đƣợc thiết kế và tạo lập sẵn trong các cơ sở hạ tầng của công nghệ tính
toán và liên lạc viễn thông.
Mật mã học là một nghành có lịch sử từ hàng nghìn năm nay. Trong phần
lớn thời gian phát triển của mình ( ngoại trừ vài thập kỉ trở lại đây ), lịch sử mật
mã học chính là lịch sử của những phƣơng pháp mật mã học cổ điển – các
phƣơng pháp mật mã hoá với bút và giấy, đôi khi có hỗ trợ từ những dụng cụ cơ
khí đơn giản. Vào đầu thế kỉ 20, sự xuất hiện của các cơ cấu cơ khí và điện cơ,
chẳng hạn nhƣ máy Enigma, đã cung cấp những những cơ chế phức tạp và hiệu
quả hơn cho việc mật mã hoá. Sự ra đời và phát triển mạnh mẽ của ngành điên
tử và máy tính trong thập niên gần đây đã tạo điều kiện để mạt mã học phát triển
nhảy vọt lên một tầm cao mới.
1. Mật mã học cổ điển
Những bằng chứng sớm nhất về sử dụng mật mã học là các chữ tƣơng hình
không tiêu chuẩn tìm thấy trên các bức tƣờng Ai Cập cổ đại (cách đây khoảng
4500). Những kí hiệu tỏ ra không phải để phục vụ mục đích truyền thông tin bí
mật mà có vẻ nhƣ là nhằm mục đích gợi nên những điều thần bí, trí tò mò hoặc
thậm trí để tạo sự thích thú cho ngƣời xem. Ngoài ra còn rất nhiều ví dụ khác về
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
16
những ứng dụng của mật mã học hoặc là những điều tƣơng tự. Muộn hơn, các
học giả về tiếng Hebrew có sử dụng một phƣng pháp mã hoá thay thế bảng chữ
cái đơn giản chẳng hạn nhƣ mật mã hoá Atbash ( khoảng năm 500 đến năm
600). Mật mã học từ lâu đã đƣợc sử dụng trong các tác phẩm tôn giáo để che
giấu thông tin với chính quyền hoặc nền văn hoá thống trị. Ví dụ tiêu chuẩn nhất
là “số chỉ kẻ thù của chúa” (Tiếng Anh number of the beast) xuất hiện trong
kinh Tân Ƣớc của cơ đốc giáo. ở đây số 666 có thể là cách mã hoá để chỉ đến đế
chế La Mã hoặc là đến hoàng đế nero của đế chế này. Việc không đề cập trực
tiếp sẽ đỡ gây rắc rối khi chính sách bị chính quyền chú ý. Đối với cơ độc giáo
chính thống thi việc che dấu này kết thúc khi constantine cải đạo và chấp nhận
đạo cơ đốc là chính thống của đế chế.


Hình 1: Scytale, một thiết bị mật mã hóa cổ đại
Ngƣời Hy Lạp cổ đại cũng đƣợc biết đến là sử dụng các kỹ thuật mật mã (chẳng
hạn nhƣ mật mã scytale ). Cũng có những bằng chứng tỏ ngƣời La Mã nắm đƣợc
các kĩ thuật mật mã (mật mã caesar và các biện thể). Thậm trí đã có những đề
cập đến một cuốn sách nói về mật mã trong quân đội La Mã, tuy nhiên cuốn
sách này đã thất truyền.
2. Mật mã học hiện đại
Nhiều ngƣời cho rằng kỷ nguyên của mật mã học hiện đại đƣợc bắt đầu
với Claude Shannon, ngƣời đƣợc coi là cha đẻ của mật mã toán học. Năm 1949
ông dã công bố bài lý thuyết về truyền trhống trong các hệ thống bảo mật
(Communication Theory of secrecy system ) trên tập san bell system technical
journal _ tập san kỹ thuật của hệ thống bell_ và một thời gian ngắn sau đó, trong
cuốn mathematical theory of communication _ lý thuyết toán học trong truyền
thông _ cùng với tác giả warren weaver. Những công trình này, cùng với nhũng
công trình nghiên cứu khác của ông về lí thuyết về tin học và truyền thông (
information and communication theory), đã thiết lập một nền tảng lí thuyết cơ
bản cho mật mã học và thám mã học. Với ảnh hƣởng đó, mật mã học hầu nhƣ bị
thâu tóm bởi các cơ quan truyền thông mật của chính phủ, chẳng hạn nhƣ NSA,
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
17
và biến mất khỏi tầm hiểu biết của công chúng. Rất ít các công trình đƣợc tiếp
tục công bố, cho đến thời kì giữa thập niên 1970, khi mọi sự đƣợc thay đổi.

3. Thuật ngữ
Việc nghiên cứu tìm các phƣơng thức để phá vỡ việc sử dụng mật mã
đƣợc gọi là phân tích mật mã, hay phá mã. Mật mã hoá và phân tích mật mã đôi
khi đƣợc nhóm lại cùng nhau dƣới tên gọi chung mật mã học, nó bao bọc toàn
bộ các chủ đề liên quan đến mật mã. Trong thực tế, thuật ngữ mật mã hoá thông
thƣờng đƣợc sử dụng để nói đến ngành này một cách tổng thể.
Trong một số ngôn ngữ nhƣ tiếng anh nó là cryptography, có nguồn gốc
từ tiếng Hy Lạp kryptos tức là "ẩn" và graphein, "viết ra". Việc sử dụng từ
"cryptography" lần đầu tiên có lẽ diễn ra trong bài diễn thuyết của Sir Thomas
Browne năm 1658 có tên gọi The garden of cyrus: "The strange cryptography of
gaffarel in his starrie booke of heaven".
Mật mã hoá là quá trình chuyển đổi các thông tin thông thƣờng (văn bản
thƣờng hay văn bản rõ ) thành dạng không đọc trực tiếp đƣợc, là văn bản mã.
Giải mật mã, là quá trình ngƣợc lại, phục hồi lại văn bản thƣơng từ văn bản mã.
Mật mã là thuật toán để mật mã hoá và giải mật mã. Hoạt động chính xác của
mật mã thông thƣờng đựoc kiểm soát bởi khoá _ một đoạn thông tin bí mật nào
đó cho phép tuỳ biến cách thức tạo ra văn bản mã. Các giao thức mật mã chỉ rõ
các chi tiết về việc mật mã (và các nền tảng mật mã hoá khác) đƣợc sử dụng nhƣ
thế nào để thu đƣợc các nhiệm vụ cụ thể. Một bộ các giao thức, thuật toán, cách
thức quản lý khoá và các hành động quy định trứơc bởi ngƣời sử dụng thi hành
cùng nhau nhƣ một hệ thống tạo ra hệ thống mật mã.
Trong cách nói thông thƣờng, "mã" bí mật thông thƣờng đƣợc sử dụng
đồng nghĩa với "mật mã". Trong mật mã học, thuật ngữ này có ý nghĩa kỹ thuật
đặc biệt: Các mã là các phƣơng pháp lịch sử tham gia vào việc thay thế các đơn
vị văn bản lớn hơn, thông thƣờng là các từ hay câu (ví dụ, "qua tao" thay thế cho
"tan cong luc rang dong"). Ngƣợc lại, mật mã hoá cổ điển thong thƣờng thay thế
hoạc sắp xếp lại các chữ riêng biệt (hoặc một nhóm nhỏ các chữ cái) ví dụ, "tan
cong luc rang dong" trở thành "ubo dpoh mvd sboh epoh" bằng cách thay thế.
Thám mã: Mục tiêu của thám mã (phá mã ) là tìm những điểm yếu hoặc
không an toàn trong phƣơng thứ mật mã hoá. Thám mã có thể đƣợc thực hiện
bởi những kẻ tấn công ác ý, nhằm làm hỏng hệ thống; hoặc bởi những ngƣời
thiết kế ra hệ thống (hoặc những ngƣời khác ) với ý định đánh giá độ an toàn của
hệ thống.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
18
Có rất nhiều loại hình tấn công thám mã, và chung có thể đƣợc phân loại
theo nhiều cách khác nhau. Một trong những đặc điểm liên quan là những ngƣời
tấn công có thể biết và làm những gì để hiểu đƣợc thông tin bí mật. Ví dụ,
những ngƣời thám mã chỉ truy cập đƣợc văn bản mã hoá không ? hoặc thậm chí:
Anh ta có chọn lựa các văn bản ngẫu nhiên để mã hoá ? Các kịch bản này tƣơng
ứng với tấn công văn bản mã, tấn công biết bản rõ và tấn công chọn lựa bản rõ.
Trong công việc thám mã thuần tuý sử dụng các điểm yếu trong các thuật
toán mật mã hoá, những cuộc tấn công khác lại dựa trên sự thi hành, đƣợc biết
đến nhƣ là các tấn công side _channel. Nếu ngƣời thám mã biết lƣợng thời gian
mà thuật toán cần để mã hoá một lƣợng bản rõ nào đó, anh ta có thể sử dụng
phƣơng thức tấn công thời gian để mã hoá mà nếu không thì chúng chịu đƣợc
phép thám mã. Ngƣời tấn công cũng có thể nghiên cứu các mẫu và độ dài của
thông điệp để rút ra các thông tin hữu ích cho việc phá mã; điều này đƣợc biết
đến nhƣ là thám mã lƣu thông.
Nếu nhƣ hệ thống mật mã sử dụng khoá xuất phát từ mật khẩu, chúng có
nguy sơ bị tấn công kiểu duyệt toàn bộ (brute force ), vì kích thƣớc không đủ lớn
cũng nhƣ thiếu tính ngẫu nhiên của mật khẩu. Đây là điểm yếu chung trong hệ
thông mật mã. Đối với các ứng dụng mạng, giao thức thoả thuận khoá chứng
thực mật khẩu có thể giảm đi một số các giới hạn của mật khẩu. Đối với các ứng
dụng độc lập, hoặc là biện pháp an toàn để lƣu trữ các dữ liệu chứa mật khẩu
và/hoặc các cụm từ kiểm soat truy cập thông thƣờng đƣợc gợi ý nên sử dụng.
Thám mã tuyến tính và Thám mã vi phân là các phƣơng pháp chung cho
mật mã hoá khoa đối xứng. Khi mật mã hoá dựa vào các vấn đề toán tin nhƣ độ
khó NP, giống nhƣ trong trƣờng hợp của thuật toán khoá đối xứng, các thuật
toán nhƣ phân tích ra thừa số nguyên tố trở thành công cụ tiềm năng cho thám
mã.
4. Tiêu chuẩn mật mã
Thời kỳ giữa thập niên kỷ 1970 đƣợc chứng kiến hai tiến bộ cong chính
lớn ( công khai ). Đầu tiên là sự công đề xuất tiêu chuẩn mật mã hoá dữ liệu
(data encryption standard) trong "công báo liên bang " ( federal register ) ở nƣớc
Mỹ vào ngày 17 tháng 3 năm 1975. Với đề cử của cục tiêu chuẩn quốc gia
(national bureau of standards _NBS ), (hiện là NIST ), bản đề xuất DES đƣợc
công ty IBM ( international business machines ) đệ trình trở thành một trong
những cố gắng trong việc xây dựng các công cụ tiện ích cho thƣơng mại,nhƣ
cho các nhà băng và cho các tổ chức tài chính lớn. Sau nhƣng chỉ đạo và thay
đổi của NSA, vào năm 1977, nó đã đƣợc chấp thuận và đƣợc phát hành dƣới cái
tên bản công bố về tiêu chuẩn xử lý thông tin của liên bang (federal information
processing standard publication _FIPS) (phiên bản hiện nay là FIPS 46_3). DES
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
19
là phƣơng thức mật mã công khai đầu tiên đƣợc một cơ quan quốc gia nhƣ NSA
"tôn sùng". Sự phát hành bản đặc tả của nó bởi NBS đã khuyến khích sự quan
tâm chú ý của công chúng cũng nhƣ của các tổ chức nghiên cứu về mật mã học.
Năm 2001, DES đã chính thức đƣợc thay thế bởi AES ( viết tắt của advanced
encryption standard _ tiêu chuẩn mã hoá tiên tiến) khi NIST công bố phiên bản
FIPF 197. Sau một cuộc thi tổ chức công khai, NIST đã chọn Rijndael, do hai
nhà mật mã ngƣời Bỉ đệ trình, và nó trở thành AES và một số biến thể của nó
nhƣ tam phần DES (Triple Des), vẫn còn đƣợc sử dụng, do trƣớc đây nó đƣợc
gắn liền với nhiều tiêu chuẩn quốc gia và các tổ chức. với chiều dài khoá chỉ là
56 bit, nó đã đƣợc chứng minh là không đủ sức chống lại những tấn công kiểu
vét cạn (brute force attack- tấn công dùng bạo lực). Một trong những kiểu tấn
công loại này đƣợc thực hiện bởi nhóm “ nhân quyền cyber” (cyber civil- rights
group) tên là tổ chức tiền tuyến điện tử (electronic frontier foundation) vào năm
1997, và đã phá mã thành công trong 56 tiếng đồng hồ- câu truyện này đƣợc
nhắc đến trong cuốn cracking DES( phá vỡ DES), đƣợc suất bản bởi “ O’reilly
and Associates”. Do kết quả này mà hiện nay việc sử dụng phƣơng pháp mật mã
hoá DES nguyên dạng, có thể đƣợc khẳng định một cách không nghi ngờ, là một
việc làm mạo hiểm, không an toàn và những thông điệp ở dƣới sự bảo vệ của
những hệ thống mã hoá trƣớc đây dùng DES, cũng nhƣ tất cả các thông điệp
đƣợc truyền gửi từ năm 1976 trở đi sử dụng DES, đều ở tronh tình trạng rất đáng
lo ngại. Bất chấp chất lƣợng vốn có của nó, một số sự kiện sảy ra trong năm
1976, đặc biệt là sự kiện công khai nhất của Whitfield Diffie, chỉ ra rằngchiều
dài khoá mà DES sử dụng (56-bit) là một khoá quá nhỏ). Đã có một số nghi ngờ
xuất hiện nói rằng mọt số các tổ chức của chính phủ, ngay tại thời điểm bấy giờ,
cũng đã có đủ công suất máy tính để phá mã các thông diệp dùng DES; rõ ràng
là những cơ quan khác cũng đã có khả năng làm việc nay rồi.
Mật mã hoá đƣợc sử dụng để đảm bảo an toàn cho thông tin liên lạc.Các
thuộc tính đƣợc yêu cầu là:
 Tính bí mật: chỉ có ngƣời nhận đã xác thực có thể lấy ra đƣợc nội dung của
thông tin chứa đựng trong dạng đã mật mã hoá của nó. Nói khác đi, nó không
thẻ cho phép thu lƣợm đƣợc bất kì thông tin đáng kể nào về nội dung của
thông điệp.
- Nguyên vẹn: ngƣời nhân cần có khả năng xác định đƣợc thông tin có bị thay
đổi trong quá trình truyền hay không.
- Tính xác thực: ngƣời nhận cần có khả năng xác định ngƣời gửi và kiểm tra
xem ngƣời gửi có thực sự gửi tin đi hay không.
- Không bị từ chối: ngƣời gửi không bị (không thể) từ chối việc đã gửi thông
tin đi.
- Chống lặp lại: không cho phép bên thứ ba copy lại văn bản và gửi nhiều lần
đến ngƣời nhận mà ngƣời gửi không hề hay biết.
Mật mã học có thể cung cấp cơ chế để giúp đỡ thực hiện điều này.Tuy nhiên,
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
20
một số mục tiêu không phải bao giờ cũng là cần thiết, trong nghĩa cảnh của thực
tế hay mong muốn. Ví dụ, ngƣời gửi thông tin có thể mong muốn giữ mình là
nặc danh; trong trƣờng hợp này sự không từ chối thực hiện rõ ràng là không
thích hợp.
ii. c¸c ph- ¬ng ph¸p m· ho¸

1. Mã hoá đối xứng (mã hoá khoá bí mật)
1.1. Định nghĩa
Thuật toán đối xứng hay là thuật toán mà tại đó khoá mã hoá có thể tính toán
ra đƣợc từ khoá giải mã.Trong rất nhiều trƣờng hợp, khoá mã hoá và khoá giải
mã là giống nhau. Thuật toán này còn có nhiều tên gọi khác nhƣ thuật toán khoá
bí mật, thuật toán khoá đơn giản, thuật toán một khoá. Thuật toán này yêu cầu
ngƣời gửi và ngƣời nhận phải thoả thuận một khoá trƣớc khi thông báo đƣợc gửi
đi, và khoá này phải đƣợc cất giữ bí mật. Độ an toàn của thuật toán này phụ
thuộc vào khoá, nếu để lộ ra khoá này nghĩa là bất kì ngƣời nào cũng có thể mã
hoá và giải mã thông báo trong hệ thống mã hoá. Sự mã hoá và giải mã của thuật
toán đối xứng biểu thị bởi:
E
K
(K) = C và D
K
(C ) = P


H×nh2: M· ho¸ víi kho¸ m· vµ gi¶i m· gièng nhau
1.2. Các vấn đề đối với phƣơng pháp mã hóa đối xứng
Phƣơng mã hóa đối xứng đòi hỏi ngƣời mã hóa và ngƣời giải mã phải
cùng chung một khóa. Khi đó khóa phải đƣợc giữ bí mật tuyệt đối, do vậy ta dễ
dàng xác định một khóa nếu biết khóa kia.
Hệ mã hóa đối xứng không an toàn nếu khóa bị lộ với xác suất cao. Trong
hệ này, khóa phải đƣợc gửi đi trên kênh an toàn.
Vấn đề quản lý và phân phối khóa là khó khăn và phức tạp khi sử dụng hệ
mã hóa đối xứng. Ngƣời gửi và nhận phải luôn thống nhất với nhau về khóa.
Việc thay đổi khóa là rất khó và dễ bị lộ
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
21
Khuynh hƣớng cung cấp khoá dài mà nó phải đƣợc thay đổi thƣờng xuyên
cho mọi ngƣời trong khi vẫn duy trì cả tính an toàn lẫn hiệu quả chi phí sẽ cản
trở rất nhiều tới hệ mật mã này.


1.3 chuẩn mã hoá dữ liệu DES.
a, Giới thiệu
Ngày 15.5.1973. uỷ ban tiêu chuẩn quốc gia Mỹ đẫ công bố một khuyến
nghị cho các hệ trong Hồ sơ quản lý liên bang. Điều này cuối cùng đã dẫn đến
sự phát triển của chuẩn mã dữ liệu (ĐES) và nó đã trở thành một hệ mật đƣợc sử
dụng rộng rãi nhất trên thế giới. DES đƣợc IBM phát triển và đƣợc xem nhƣ là
một cái biên của hệ mật LUCIPHER. Lần đầu tiên DES đƣợc công bố trong Hồ
sơ liên bang vào ngày 17.3.1975. Sau nhiều cuộc tranh luận công khai, DES đẫ
đƣợc chấp nhận làm chuẩn cho các ứng dụng không đƣợc coi là mật vào
5.1.197. Kể từ đó cứ 5 năm một lần,DES lại đƣợc uỷ ban tiêu chuẩn quốc gia
xem xét lại.
DES là thuật toán mã hoá khối (block algorithm), nó mã hoá một khối dữ
liệu 64 bit bằng một khoá 56 bit. Một khối bản rõ 64 bit đƣa vào thực hiện, sau
khi mã hoá dữ liệu ra là một khối bản mã 64 bit. Cả mã hoá và giải mã đều sử
dụng cùng một thuật toán và khoá.
Nền tảng để xây dựng khối của DES là sự kết hợp đơn giản của các kỹ thuật
thay thế và hoán vị bản rõ dựa trên khoá, đó là các vòng lặp. DES sử dụng 16
vòng lặp áp dụng cùng một kiểu kết hợp các kỹ thuật trên khối bản rõ.
Thuật toán chỉ sử dụng các phép toán số học và lôgic thông thƣờng trên các
số 64 bit, vì vậy nó rễ ràng thự hiện vào những năm 1970 trong điều kiện về
công nghệ lúc bấy giờ. Ban đầu, sự thực hiên các phần mềm kiểu này rất thô sơ,
nhƣng hiện tại việc đó đã tốt hơn, và với đặc tính lặp đi lặp lại của thuật toán đã
tạo nên ý tƣởng sử dụng chip với mục đích này đặc biệt này.
b. Mô tả
Mô tả đầy đủ của DES đƣợc nêu trong công bố số 64 về các chuẩn xử lý
thông tin liên bang (Mỹ) vào 15.1.1977. DES mã hoá một sâu bit x của rõ độ dài
64 bằng một khoá 56 bit. Bản mã nhận đƣợc cũng là một xâu bit có độ dài 64.
Trƣớc hết ta mô tả ở mức cao của hệ thống.
Thuật toán tiến hành theo 3 giai đoạn:
1. Với bản rõ trƣớc x, một sâu bit x
0
sẽ đƣợc xây dựng bằng cách hoán vị các
bit của x theo phép hoán vị cố định ban đầuIP.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
22
Ta viêt:x
0
= IP (X)= L
0
R
0
, trong đó L
0
gồm 32 bit đầu và R
0
là 32 bit cuối.
2. sau đó tính toán 16 lần lặp theo một hàm xác định.
Ta sẽ tính L
1
R
1
,1s i s 16 theo qui tắc sau:
L
1
=R
i-1

R
1
= L
i-1 ©
f(R
i-1
,K
i
)

Trong đó © kí hiệu phép hoặc loại trừ của hai xâu bit ( cộng theo modun 2). F là
một hàm ta xẽ mô tả ở sau, còn K
1
,K
2
,...,K
16
là các sâu bit độ dài 48 đƣợc tính
nhƣ hàm của khoá Ki là một phép chọn hoán vị bít trong K). K
1
,K
2
,...,K
16
sẽ tạo
thành bảng khoá. Một vòng của phép mã hoá đƣợc mô tả trên hình 2.
3. áp dụng phép hoán vị IP
-1
(R
16
L
16
). Chú ý thứ tự đã đƣợc đảo của R
16
va L
16
.



Hình 3 : Một vòng của DES

Hàm f có hai biến vào : biến thứ nhất A là xâu bit độ dài 32, biến thứ hai j là
một xâu bit độ dài 48. đầu ra của f là một xâu bit độ dài 32.
Các bước thực hiện:
Biến thứ nhất A đƣợc mở rộng thành một xâu bit độ dài 48 theo một hàm mở
rộng cố định E. E9A) gồm 32 bit của A (đƣợc hoán vị theo cách cố định ) với 16
bit xuất hiên hai lần.
L i-1 Li-1
f
i
-
1
i
-
1
+
Ri Li-1

K i
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
23
Tính E(A) ©j và viết kết quả thành một chuỗi 8 xâu 6 bit = B
1
B
2
B
3
B
4
B
5
B
6
B
7
B
8

Bƣớc tiếp theo dùng 8 bảng S
1
,S
2
,…,S
8
( đƣợc gọi tắt là cái hộp S). Với mỗi Si
là một bảng 4×6 cố định có các hàng là các số nguyên từ 0 đến 15. Với xâu bit
có độ dài 6 (Kí hiệu B
1
= b
1
b
2
b
3
b
4
b
5
b
6
), ta tính Si(Bi) nhƣ sau: Hai bit b
1
b
2
xác
định biểu diễn
nhị phân của hàng r của S
i
( 0 s r s 3) và 4 bit (b
2
b
3
b
4
b
5
) xác định biểu diễn nhị
phân của cột c của S
i
(0 s c s 15) . Khi đó S
i
(B
i
) sẽ xác định phần tử S
i
(r,c);
phần tử này viết dƣới dạng nhị phân là một xaau bit có độ dài 4. (Bởi vậy , mỗi
Si có thể đƣợc coi là một hàm mã mà đầu vào là một xâu bit có độ dài 2 và một
xâu bit có độ dài 4, còn đầu ra là một xâu bit có độ dài4). Bằng cách tƣơng tự
tính các Ci = S
i
(B
i
) , 1 s i s 8 .
Xâu bit C = C
1
C
2
…C
8
có độ dài 32 đƣợc hoán vị theo phép hoán vị cố định P.
Xâu kết quả là P(C) đƣợc xác định là f(A,J).
Hàm f đƣợc mô tả trong hình 1.3. Chủ yếu nó gồm một phép thế (sử dụng hộp
S), tiếp sau đó là phép hoán vị P .

Hình 4: .Hàm f của DES
Cuối cùng ta cần mô tả việc tính toán bảng khoá từ khoá K. Trên thực tế , K là
một xâu bit độ dài 64 , tring đó 56 bit là khoá và 5 bit để kiểm tra tính chẵn lẻ
nhằm phat hiện sai. Các bit ở các vị trí 8, 16, ….,64 đƣợc xác định sao cho mỗi
byte chứa một số lẻ các số ª1ª . Bởi vậy một sai sót đơn lẻ có thể phát hiện đƣợc
trong mỗi nhóm 8 bit.
Các bit kiểm trabị bỏ qua trong quá trình tính toán bảng khoá.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
24
1. Với một khoá K 64 bit cho trƣớc , ta loại bỏ các bit kiểm tra tính chẵn lẻ và
hoán vị cá bit còn lại của K theo phép hoán vị cố định PC-1 (K) = C0D0.
2. Với i thay đổi từ 1 đến 16:
C
i
= LS
i
(C
i-1
)
D
i
= LS
i
(D
i-1
)
Và K
i
= PC-2 (C
i
D
i
). LSi thể hiện sự dịch sang trái 1 hoặc 2 bit , phụ thuộc vào
giá trị của i:dịch 1vị trs nếu i = 1,2,9 hoặc 16 và dịch 2 vị trí trong các trƣờng
hợp còn lại . PC-2 là một hoán vị cố định khác.
Việc tính bảng khoá đƣợc mô tả trên hình 1.4

Hình 5: Tính bảng khoá DES
c. Giải mã DES
Sau khi thay đổi , hoán vị ,©, và dịch vòng , bạn có thể nghĩ rằng thuật toán
giải mã hoàn toàn khác và phức tạp , khó hiểu nhƣ thuật toán mã hoá . Trái lại ,
DES sử dụng cùng thuật toán làm việc cho cả mã hoá và giải mã.
Với DES , có thể sử dụng cùng chức năng để giải mã hoá một khối. Chỉ có sự
khác nhau đó là các khoá phải đƣợc sử dụng theo thứ tự ngƣợc lại . Nghĩa là ,
nếu các khoá mã hoá cho mỗi vòng là k
1
,k
2
,k
3
,….,k
15
,k
16
thì các khoá giải là
k
16
,k
15
,….,k
3
,k
2
,k
1
. Thuật tóan ding để sinh khoá đƣợc sử dụng cho mỗi vòng
theo kiểu vòng quanh . Khoá đƣợc dịch phải , và số những vị trí đƣợc đƣợc tính
tứ cuối của bảng lên, thay vì từ trên xuống .
d. Tranh luận về DES
Khi DES đƣợc đề xuất nhƣ một chuẩn mật mã , đã có rất nhiều ý kiến phê
phán . Một lý do phản đối DES có liên quan đến các hộp S . Mọi tính toán liên
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
25
quan đến DES ngoại trừ các hộp S đều tuyến tính , tức việc tính phép hoặc loại
trừ của hai đầu ra cũng giống nhƣ phép hoặc loại trừ của hai đầu vào rồi tính
toán đầu ra . Các hộp S- chứa đựng thành phần phi tuyến của của hệ mật là yếu
tố quan trọng nhất đối với độ mật của hệ thống. Tuy nhiên tiêu chuẩn xây dựng
các hộp S không đƣợc biết đầy đủ. Một số ngƣời đã gợi ý là các hộp S phải chứa
các “cửa sập” đƣợc dấu kín, cho phép Cụ An ninh quốc gia Mỹ (NSA) giải mãs
đƣợc các thông báo nhƣng vẫn giữ đƣơc mức độ an toàn của DES. Dĩ nhiên ta
không thể bác bỏ đƣợc khẳng định này, tuy nhiên không có một chứng cớ nào
đƣợc đƣa ras để chứng tỏ rằng trong thực tế có các cửa sập nhƣ vậy.
Năm 1976 NSA đã khẳng định rằng, tính chất sau của hộp S là tiêu chuẩn thiết
kế:
Mỗi hàng trong mỗi họp S là một hoán vị của các số nguyên 0, 1, …15.
Không một hộp S nào là một hàm Affine hoặc tuyến tính các đầu vào của nó.
Việc thay đổi một bit vào của S phải tạo nên sự thay đổi ít nhất là hai bit ra.
Đối với hộp S bất kỳ với đầu vào x bất kì S (s) và S(x © 001100) phải khác
nhau tối thiểu là hai bit (trong đó x là xâu bit độ dai 6).
Hai tính chất khác nhau sau đây của các hộp S có thể coi là đƣợc rút ra từ tiêu
chuẩn thiết kế của NSA.
Với hộp S bất kì, đầu vào x bất kì với e, f e {0,1}:
S(x) = S(x © 11 ef00).
Với hộp S bất kì, nếu cố định một bit vào và xem xét giá trị của một bit đầu ra
cố định thì các mẫu vào để bit ra này bằng 0 sẽ xấp xỉ bằng số mẫu ra để bit đó
bằng 1. (Chú ý rằng, nếu cố định giá trị bit vào thứ nhất hoặc bit vào thứ 6 thì có
16 mẫu vào làm một bit ra cụ thể bằng 0 và có 16 mẫu vào làm cho bit này bằng
1. Với các bit vào từ bít thứ hai đến bit thứ 5 thì điều này không còn dúng nữa.
Tuy nhiên phân bố kết quả vẫn gần với phân bố đều. Chính xác hơn, với một
hộp S bất kì, nếu ra cố định giá trị của một bit vào bất kì thì số mẫy vào làm cho
một bit ra cố định nào đó có giá trị 0 hoặc luôn nằm trong khoảng 13 đến 19).
Ngƣời ta không biếts rõ là liệu còn một chuẩn thiết kế bào đầy đủ hơn đƣợc
dùng trong việc xây dựng hộp S hay không.
Sự phản đối xác đáng nhất về DES chính là kích thƣcớ của không gian khoá :
2
56
là quá nhỏ để đảm bảo an toàn thực sự. Nhiều thiết bị chuyên dụng đã đƣợc
đề xuất nhằm phục vụ cho việc tấn công với bản rõ đã biết. Phép tấn công này
chủ yếu thực hiện tìm khoá theo phƣơng pháp vét cạn. Tức cới bản rõ x64 bít và
bản mã y tƣơng ứng, mỗi khoá đều có thể đƣợc kiểm tra cho tới khi tìm đƣợc
một khoá K thoả mãns e
k
(x) = y. Cần chú ý là có thể nhiều hơn một khoá K nhƣ
vậy.
Ngay từ năm 1977, Diffie và Hellman đã gợi ý rằng có thể xây dựng một
chíp VLSI (mạch tích hợp mật độ lớn) có khả năng kiểm tra đƣợc 10
6
khoá/giây.
Một máy có thể tìm toàn bộ không gian khoá cỡ 10
6
trong khoảng 1 ngày. Họ
ƣớc tính chi phí để tạo một máy nhƣ vậy khoảng 2.10
7
$.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
26
Trong cuộc hội thảo tại hội nghị CRYPTO’93, Michael Wiener đã đƣa ra
một thiết kế rất cụ thể về máy tìm khoá. Máy này xây dựng trên một chíp tìm
khoá, có khả năng thực hiện đồng thời 16 phép mã và tốc độ tới 5.10
7
khoá/giây.
Với công nghệ hiện nay, chi phí chế tạo khoảng 10,5$/ chip. Giá của một khung
máy chứa 5760 chíp vào khoảng 100.000$ và nhƣ vậy nó có khả năng tìm ra
một khoá của DES trong khoảng 1,5v ngày. Một thiết bị dùng 10 khung máy
nhƣ vậy có giá chừng 10
6
$ sẽ giảm thời gian tìm kiếm khoá trung bình xuống
còn 3,5 giờ.
e. Ứng dụng của DES
Mặc dù việc mô tả DES khá dài song ngƣời ta có thể thực hiện DES rất hữu
hiệu bằng cả phần cứng lẫn phần mềm. Các phép toán duy nhất cần đƣợc thực
hiện là phép hoặc loại trừ xâu bit. Hàm mở rộng E, các hộp S, các hoán vị IP và
P và việc tính toán các giá trị K
1
…., K
16
đều có thể thực hiện đƣợc cùng lúc
bằng tra bảng (trong phần mềm) hoặc bằng cách nối cứng chúng thành một
mạch.
Các ứng dụng phần cứng hiện thời có thể đạt đƣợc tốc độ mã hoá cực nhanh.
Năm 1991 đã có 45s ứng dụng phần cứng và chƣơng trình cơ sở của DES đƣợc
uỷ ban tiêu chuẩn quốc gia Mỹ (NBS) chấp thuận.
Một ứng dụng quan trọngs của DES là trong giao dịch ngân hàng Mỹ -
(ABA) DES đƣợc dùng để mã hoá các số định danh cá nhân (PIN) và việc
chuyển khoản bằng mảy thủ quỹ tự động (ATM). DES cũng đƣợc hệ thông chi
trả giữa các nhà băng của ngân hàng hối đoái (CHIPS) dùng để xác thực các
giao dịch. DES còn đƣợc sử dụng rộng rãi trong các tổ chức chính phủ. Chẳng
hạn nhƣ bộ năng lƣợng, Bộ tƣ pháp và Hệ thống dự trữ liên bang.

1.4. Hệ mã hóa AES

Trong mật mã học, AES ( viết tắt của từ tiếng Anh: Advanced Encryption
Standard, hay tiêu chuẩn mã hóa tiên tiến) là một thuật toán mã hóa khối đƣợc
chính phủ Hoa Kỳ áp dụng làm tiêu chuẩn mã hóa. Giống nhƣ tiêu chuẩn tiền
nhiện DES, AES đƣợc kỳ vọng áp dụng trên phạm vi thế giới và đã đƣợc nghiên
cứu rất kỹ lƣỡng. AES đƣợc chấp thuận làm tiêu chuẩn liên bang bởi viện tiêu
chuẩn và công nghệ quốc gia Hoa Kỳ (NIST ) sau một quá trình tiêu chuẩn hóa
kéo dài 5 năm.
Thuật toán đƣợc thiết kế bởi hai nhà mật mã học ngƣời Bỉ: Joan Daemen
và Vincent Rijmen (lấy tên chung là “Rijnadael” khi tham gia cuộc tthiết kế
AES).
Thông tin chung
Tác giả Vincent Rijmen và Joan Daemen
Năm công bố 1998
Phát triển từ Square (mã hóa)
Các thuật toán dựa trên Crypton (mã hóa), Anubis (mã
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
27
hóa),GRAND CRU
Chi tiết thuật toán
Khối dữ liệu 128 bit
Độ dài khóa 128,192 hoặc 256 bit
Cấu trúc Mạng thay thế- hoán vị
Số chu trình 10,12 hoặc 14 (tùy theo độ dài khóa)

Thuật toán đƣợc dựa vào bảng thiết kế Square có trƣớc của Daemen và
Rijmen; còn Square lại đƣợc thiết kế dựa trên Shark.
Khác với DES sử dụng mạng Feistel, Rijndael sử dụng mạng thay thế- hoán
vị, AES có thể dễ dàng thực hiện vớ tố độ cao bằng phần mềm hoặc phần cứng
và không đòi hỏi nhiều bộ nhớ. Do AES là một tiêu chuẩn mã hóa mới, nó đang
đƣợc sử dụng rộng rãi trong nhièu ứng dụng.
Mô tả thuật toán


Trong bƣớc addRoundKey, mỗi byte đƣợc thiết kế với một byte trong khóa
con của chu trình sử dụng phép toán XOR ().

Trong bƣớc Subyte, mỗi byte đƣợc thay thế bằng một byte theo bang tra, S; b
ij
=
S(a
ij
)

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
28

Trong bƣớc ShiftRows, các byte trong mõi hàng đƣợc dịch vòng trái. Số vị trí
dịch chuyển tùy thuộc từng bảng.

Trong bƣớc MixColumns, mỗi cột đƣợc nhân với hệ số cố định c(x)
Mặc dù 2 tên AES và Rijndael vẫn thƣờng đƣợc thay thế cho nhau nhƣng
trên thực tế thì 2 thuật toán không hoàn toàn giống nhau. AES chỉ làm việc với
khối dữ liệu 128 bít và khóa có độ dài 128, 192 hoặc 256 bít trong khi Rijndael
có thể làm việc với khối dữ liệu và khóa có độ dài bất kì là bội số của 32 bít nằm
trong khoảng từ 128 tới 256 bít.
Các khóa con sử dụng trong các chu trình đƣợc tạo ra bởi quá trình tạo
khóa con Rijndael.
Hầu hết các phép toán trong thuật toán AES đều đựơc thực hiện trong một
trƣờng hữu hạn.
AES làm việc với từng khối dữ liệu 4×4 byte (tiếng Anh: state, khối trong
Rijndael có thể thêm một cột). Quá trình mã hóa bao gồm 4 bƣớc:
1. AddRoundKey __mỗi byte của khối đƣợc kết hợp với khóa con, các
khóa con này đƣợc tạo ra từ quá trình tạo khóa con Rijndael.
2. SubBytes __đây là phép thế (phi tuyến) trong đó mỗi byte sẽ đƣợc thế
bằng một byte khác theo bảng tra (Rijndael-box).
3. ShiftRows __đổi chỗ, các hàng trong khối đƣợc dịch vòng.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
29
4. MixColumns __quá trình trộn làm việc theo các cột trong khối theo một
phép biến đổi tuyến tính.
Tại chu trình cuối thì bƣớc MixColumns đƣợc thay thế bằng bƣớc
AddRoundKey.
Bƣớc AddRoundKey
Tại bƣớc này, khóa con đƣợc kết hợp với các khối. Khóa con trong mỗi chu
trình đƣợc tạo ra từ khóa chính với quá trình tạo khóa con Rijndael; mỗi khóa
con có đọ dài giống nhƣ các khối. Quá trình kết hợp đƣợc thực hiện bằng cách
XOR từng bít của khóa con với khối dữ liệu.
Bƣớc SubBytes
Các bƣớc đƣợc thế thông qua bảng tra S-box. Đây chính là quá trình phi
tuyến của thuật toán. Hộp S-box này đƣợc tạo ra từ một phép nghịch đảo trong
trƣờng hữu hạn GF (2
8
) có tính chất phi tuyến. Để chống lại các tấn công dựa
trên các đặc tính đại số, hộp S-box này đƣợc tạo nên bằng cách kết hợp phép
nghịch đảo với một phép biến đổi khả nghịch. Hộp S-box này cũng đƣợc chọn
để tránh các điểm cố định (fixed point).
Bƣớc ShiftRows
Các hàng đƣợc dịch vòng một số vị trí nhất định. Đối với AES, hàng đầu
đƣợc giữ nguyên. Mỗi byte của hàng thứ 2 đƣợc dịch trái một vị trí. Tƣơng tự
các hàng thứ 3 và 4 đƣợc dịch 2 và 3 vị trí. Do vậy, mỗi cột khối đầu ra của
bƣớc này sẽ bao gồm các byte ở đủ 4 cột khối đầu vào. Đối với Rijndael với độ
dài khối khác nhau thì số vị trí dịch chuyển cũng khác nhau.
Bƣớc MixColumns
Mỗi cột đƣợc kết hợp lại theo một phép biến đổi tuyến tính khả nghịch. Mỗi
khối 4 byte đầu vào sẽ cho một khối 4 byte đầu ra với tính chất là mỗi byte ở
đầu vào đều ảnh hƣởng tới cả 4 byte đầu ra. Cùng với bƣớc ShiftRows,
MixColumns đã tạo ra tính chất khuyến tán cho thuật toán. Mỗi cột đƣợc xem
nhƣ một đa thức trong trƣờng hữu hạn và đƣợc nhân (modun x
4
+1) với đa thức
c(x) = 3x
3
+ x
2
+ x + 2. Vì thế, bƣớc này có thể đƣợc xem là phép nhân ma trận
trong trƣờng hữu hạn.
Tối ƣu hóa
Đối với các hệ thống 32 bít hoặc lớn hơn, ta có thể tăng tốc độ thực hiện
thuật toán bằng cách chuyển đổi các bƣớc Subbytes, ShiftRows và MixColumns
thành dạng bảng. Mỗi bứoc sẽ tƣơng ứng với 4 bảng với 256 mục, mỗi mục là 1
từ 32 bít và chiếm 4096 byte trong bộ nhớ. Khi đó, mỗi chu trình sẽ đƣợc bao
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
30
gồm 16 lần tra bảng và 12 lần thực hiện phép XOR 32 bít cùng với 4 phép XOR
trong bƣớc AddRoundKey.
Trong trƣờng hợp kích thƣớc các bảng vẫn lớn hơn so với thiết bị thực hiện
thì các bƣớc tra bảng sẽ thực hiện lần lƣợt với từng bảng theo vòng tròn.





2. Mã hóa không đối xứng (Mã hóa khóa công khai)
2.1. Định nghĩa
Thuật toán mã hóa công khai là thuật toán đƣợc thiết kế sao cho khóa mã
hóa là khác so với khóa giải mã. Mà khóa giải mã hóa không thể tính toán đƣợc
từ khóa mã hóa .Khóa mã hóa gọi là khóa công khai (public key ), khóa giải mã
đƣợc gọi là khóa riêng (private key)











Hình 6: Mã hóa với khóa mã và giải mã khác nhau

Đặc trƣng nổi bật của hệ mã hóa công khai là cả khóa công khai (public key
) và bản tin mã hóa (ciphertext) đều có thể gửi đi trên một kênh thông tin không
an toàn

2.2.Các điều kiện của một hệ mã hóa công khai

Việc tính toán ra cặp khóa công khai K
B
và bí mật k
B
dựa trên cơ sở các
điều kiện ban đầu phải đƣợc thực hiện một cách dễ dàng, nghĩa là thực hiện
trong thời gian đa thức .
Ngƣời gửi A có đƣợc khóa công khai của ngƣời nhận B và có bản tin P
cần gửi đi có thể dễ dàng tạo ra đƣợc bản mã C.
C =E
KB
(P) = E
B
(P)
Công việc này cũng trong thời gian đa thức .
Ngƣời nhận B khi nhận đƣợc bản tin mã hóa C với khóa bí mật k
B
thì có
thể giải mã bản tin trong thời gian đa thức
B¶n râ

Gi¶i m· B¶n râ
Khãa m· Khãa gi¶i
B¶n m·
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
31
P =D
kB
(C) = D
B
[E
B
(M)]
Nếu kẻ địch biết khóa công khai K
B
cố gắng tính toán khóa bí mật thì khi
đó chúng phải đƣơng đầu với trƣờng hợp nan giải, trƣờng hợp này đòi hỏi nhiều
yêu cầu không khả thi về thời gian
Nếu kẻ địch biết đƣợc cặp (K
B,
C) và cố gắng tính toán ra bản rõ P thì giải
quyết bài toán khó với số phép thử vô cùng lớn, do đó không khả thi




2.3. Thuật toán mã hóa RSA

a. Khái niệm hệ mã hóa RSA

Khái niệm hệ mật mã RSA đã đƣợc ra đời năm 1976 bởi các tác giả
R.RivetsK,A.Shamir , và L.Adleman. Hệ mã hóa này dựa trên cơ sở của hai bài
toán
 Bài toán Logarith rời rạc
 Bài toán phân tích thành thừa số
Trong hệ mã hóa RSA các bản rõ, các bản mã và các khóa (public key và
private key) là thuộc tập số nguyên Z
N
={1,…,N-1}. Trong đó tập Z
N
với N
=pxq là các số nguyên tố khác nhau cùnh với phép cộng, phép nhân mođun N
tạo ra mođun số học N
Khóa mã hóa E
KB
là cặp số nguyên (N, K
B
) và khóa giải mã D
kB
là cặp số
nguyên (N, k
B
), các số là rất lớn, số N có thể lên tới hàng trăm chữ số
Các phƣơng pháp mã hóa và giải mã hóa là rất dễ dàng.
Công việc mã hóa là sự biến đổi bản rõ P (Plaintext) thành bản mã C
(ciphertext) dựa trên cặp khóa công khai K
B
và bản rõ P theo công thức sau đây
C = E
KB
(P) = p
KB
(mod N) (1)
Công việc giảI ma là sự biến đổi ngƣợc lại bản mã C thành bản rõ P dựa
trên cặp khóa bí mật k
B
, mođun N theo công thức sau :
P =D
kB
(C) =C
kB
(mod N) (2)
Dễ thấy rằng, bản rõ ban đầu cần đƣợc biến đổi một cách thích hợp thành
bản mã, sau đó để có thể tái tạo lại bản rõ ban đầu từ chính bản mã đó:
P =D
kB
(E
KB
(P)) (3)
Thay thế (1) vào (2) ta có:
( P
KB
)
kB
=P (mod N) (4)
Ta thấy N =pxq với p, q là số nguyên tố. Trong toán học đã chứng minh
đƣợc rằng, nếu N là số nguyên tố thì công thức (4) sẽ có lời giải khi và chỉ khi:
K
B
.k
B
÷1 (modo (N)) (5)
Trong đó o (N) =LCM(p-1, q-1 ).
(Lest Common Multiple) là bội số chung nhỏ nhất .
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
32
Nói một cách khác, đầu tiên ngƣời nhận B lựa chọn một khóa công khai K
B

một cách ngẫu nhiên. Khi đó khóa bí mật k
B
đƣợc tính ra bằng công thức (5).
Điều này hoàn toàn tính đƣợc vì khi B biết đƣợc cặp số nguyên tố (p, q) thì sẽ
tính đƣợc o (N).

Hình
H×nh 7: Sơ đồ các bƣớc thực hiện mã hóa theo thuật toán RSA

Ví dụ:
N=11413=101x113, o (N) =100x112 =11200 =2
6
x5
2
x7. K
B
phải chọn sao cho
không chia hết cho 2,5, 7. Chọn, chẳng hạn K
B
=3533 khi đó k
B
=K
B
-1

=6579mod11200. Và ta có khóa công khai là (N,K
B
)=(11413,3533) khóa bí mật
là 6759. Phép lập mã và giải mã là
E
KB
(P) =P
KB
(mod N) =P
3533
(mod 11413)
D
kB
(C) =C
kB
(mod N) =C
6579
(mod 11413)
Chẳng hạn với PC =9726, ta có C =5761

b. Độ an toàn của hệ RSA
Một nhận định chung là tất cả các cuộc tấn công giải mã đều mang mục
đích không tốt. Tính bảo mật của RSA chủ yếu dựa vào việc giữ bí mật khóa
giải mã hay giữ bí mật các thừa số p, q của N. Ta thử xét một vài phƣơng thức
Chän khãa k
B
B¶n m· c
B¶n râ P
K
B
k
B
TÝnh N=pxq
Chän p vµ q
C=P
KB
(mod N)
Chän khãa K
B
TÝnh o (N)
B¶n râ gèc
P=
B
k
c (mod N)

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
33
tấn công điển hình của kẻ địch nhằm giải mã trong thuật toán này (nhằm xâm
phạm tới các yếu tố bí mật đó).
Trƣờng hợp 1: chúng ta xét đếnơtrƣờng hợp khi kẻ địch nào đó biết đƣợc mođun
N, khóa công khai K
B
và bản tin mã hóa C, khi đó kể địch sẽ tìm ra bản tin gốc



(Plaintext) nhƣ thế nào. Để làm đƣợc điều đó kẻ địch thƣờng tấn côngvào hệ
thống mật mã bằng hai phƣơng thức sau đây:

Phƣơng thức thứ nhất:
Trƣớc tiên dựa vào phân tích thừa số mô đun N. Tiếp theo sau chúng sẽ tìm
cách tính toán ra hai số nguyên tố p và q, và có khả năng thành công khi đó sẽ
tính đƣợc ÷(N) + (p-1) (q-1) và khoá bí mật K
B
. Ta thấy N cần phải là tích của
hai số nguyên tố, vì nếu N là tích của hai số nguyên tố thì thuật toán phân tích
thừa số đơn giản cần tối đa N
1/2
bƣớc, bởi vì có một số nguyên tố nhỏ hơn N
1/2
.
Mặt khác, nếu N là tích của n số nguyên tố, thì thuật toán phân tích thừa số đơn
giản cần tối đa N
1/n
bƣớc.

Phƣơng thức thứ hai:
Phƣơng thức tấn công thứ hai vào hệ mã hóa RSA là có thể khởi đầu bằng
cách giải quyết trƣờng hợp thích hợp của bài toán logarit rời rạc. Trƣờng hợp
này kẻ địch đã có trong tay bản mã C và khóa công khai K
B
tức là có cặp (K
B
,
C).

Trƣờng hợp 2: Chúng ta xét trƣờng hợp khi kẻ địch nào đó biết đƣợc mođun N
và ÷(N), khi đó kẻ địch sẽ tìm ra bản tin gốc (Plaintext) bằng cách sau:
Biết ÷(N) thì có thể tính p, q theo hệ phƣơng trình:
P * q = N, (p -1) (q-1) = ÷(N)
Do đó p và q là nghiệm của phƣơng trình bậc hai:
x
2
- (n - ÷(N) +1 ) + n = 0.
Ví dụ: n = 84773093, và biết ÷(N) = 84754668. Giải phƣơng trình bậc hai tƣơng
ứng ta sẽ đƣợc hai nghiệm p = 9539 và q = 8887.

c. Một số tính chất của hệ RSA
Trong các hệ mật mã RSA, một bản tin có thể được mã hóa trong thời thời
gian tuyến tính.
Đối với các bản tin dài, độ dài của các số đƣợc dùng cho các khóa có thể
đƣợc coi nhƣ là hằng. Tƣơng tự nhƣ vậy, nâng một số lên lũy thừa đƣợc thực
hiện trong thời gian hằng. Thực ra tham số này che dấu nhieeuf chi tiết cài đặt
có liên quan đến việc tính toán với các con số dài, chi phí của các phép toán thực
sự là một yếu tố ngăn cản sự phổ biến ứng dụng của phƣơng pháp này. Phần
quan trọng nhất của việc tính toán có liên quan đến việc mã hoá bản tin. Nhƣng
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
34
chắc chắn là sẽ không có hệ mã hoá nào hết nếu không tính ra đƣợc các khóa
của chúng là các số lớn.
Các khóa cho hệ mã hóa RSA có thể được tạo ra mà không phải tính toán quá
nhiều.
Một lần nữa, ta lại nói đến các phƣơng pháp kiểm tra số nguyên tố. Mỗi số
nguyên tố lớn có thể đƣợc phát sinh bằng cách đầu tiên tạo ra một số ngẫu nhiên
lớn, sau đó kiểm tra các số kế tiếp cho tới khi tìm đƣợc một số nguyên tố. Một
phƣơng pháp đơn giản thực hiện một phép tính trên một con số ngẫu nhiên, với
xác suất 1/2 sẽ chứng minh rằng số đƣợc kiểm tra không phải nguyên tố. Bƣớc
cuối cùng là tính p dựa vào thuật toán Euclid.
Nhƣ phần trên đã trình bày trong hệ mã hóa công khai thì khóa giải mã
(Privatekey) K
B
và các thừa số p, q là đƣợc giữ bí mật và sự thành công của
phƣơng pháp là tuỳ thuộc vào kẻ địch có khả năng tìm ra đƣợc giá trị của K
B
hay
không nếu cho trƣớc N và K
B
. Rất khó có thể tìm ra đƣợc K
B
từ K
B
, cần biết về
p và q. Nhƣ vậy cần phân tích N ra thành thừa số để tính p và q. Nhƣng việc
phân tích ra thừa số là một việc làm tốn rất nhiều thời gian, với kỹ thuật hiện đại
ngày nay thì cần tới hàng triệu năm để phân tích một số có 200 chữ số ra thừa
số.
Độ an toàn của thuật toán RSA dựa trên cơ sở những khó khăn của việc xác
định các thừa số nguyên tố của một số lớn. Bảng dƣới đây cho biết các thời gian
dự đoán, giả sử rằng mỗi phép toán thực hiện trong một micro giây.

Số các chữ số trong
số đƣợc phân tích
Thời gian phân tích
50 4 giờ
75 104 giờ
100 74 năm
200 4.000.000 năm
300 5 * 10
15
năm
500 4 *10
25
năm

Bảng: Thời gian dự đoán thực hiện phép tính.
d. ứng dụng của RSA.
Hệ mã hóa RSA đƣợc ứng dụng rộng rãi chủ yếu cho web và các chƣơng
trình email. Ngày nay, RSA còn đƣợc sử dụng rộng rãi trong các công nghệ bảo
mật sử dụng cho thƣơng mại điện tử (ví dụ nhƣ công nghệ bảo mật SSL v).

2.4. Hàm băm.
Chúng ta có thể thấy rằng các sơ đồ chữ kí nói chung chỉ cho phép kí các
bức điện nhỏ. Thông thƣờng khi sử dụng một sơ đồ chữ ký, chữ ký đƣợc sinh ra
có độ dài lớn hơn so với văn bản ký, do vậy kích thƣớc văn bản sau khi ký sẽ
tăng lên rất nhiều. Và trên thực tế ta cần ký trên các bức điện rất dài, chẳng hạn,
một tài liệu về pháp luật có thể dài nhiều Megabyte.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
35
Một cách đơn giản để giải bài toán này là chia các bức điện dài thành nhiều
đoạn sau đó kí lên các đoạn đó độc lập nhau. Điều này cũng tƣơng tự nhƣ mã
hóa một chuỗi dài bản rõ bằng cách mã hóa mỗi kí tự bản rõ độc lập nhau sử
dụng cùng một bản khóa. (Ví dụ: Chế độ ECB trong mã hóa).
Biện pháp này có một số vấn đề trong việc tạo ra các chữ kí số. Trƣớc hết,
với một bức điện dài, ta kết thúc bằng một chữ kí rất lớn. Nhƣợc điểm khác là
các sơ đồ chữ kí “an toàn” lại chậm vì chúng dùng các phƣơng pháp số học
phức tạp nhƣ số mũ modulo. Tuy nhiên, vấn đề nghiêm trọng hơn với phép toán
này là bức điện đã kí có thể bị sắp xếp lại các đoạn khác nhau, hoặc một số đoạn
trong chúng có thể bị loại bỏ và bức điện nhận đƣợc vẫn xác minh đƣợc. Ta cần
bảo vệ sự nguyên vẹn của toàn bộ bức điện và điều này không thể thực hiện
đƣợc bằng cách kí độc lập từng mẩu nhỏ của chúng.
Giải pháp cho tất cả các vấn đề này là dùng hàm HASH mã hóa khóa công
khai nhanh. Hàm này lấy một bức điện có độ dài tuỳ ý và tạo ra một bản tóm
lƣợc thông báo có kích thƣớc quy định (ví dụv: 160 bít với DSS) sau đó bản tóm
lƣợc thônng báo sẽ đƣợc kí thay vì kí trực tiếp trên văn bản gốc.
Khi Bob muốn kí bức điện x, trƣớc tiên anh ta xây dựng một bản tóm lƣợc
thông báo z = h(x) và sau đó tính y = sig
k
(z). Bob truyền cặp (x,y) trên kênh. Xét
thấy có thể thực hiện xác minh (bởi ai đób) bằng cách trƣớc hết khôi phục bản
tóm lƣợc thông báo z = h(x) bằng hàm h công khai và sau đó kiểm tra xem
ver
k
(x,y) có = true, hay không.

Bức điện X có độ dài bất kì











Hình 8: Ký một bản tóm lƣợc thông báo

Bản tóm lƣợc (giá trị của hàm băm) còn đƣợc gọi là đại diện văn bản (Message
digest). Một message digest là có chiều dài cố định với các đặc điểm nhƣ sau:
- Giá trị trả lại của hàm băm duy nhất đối với mỗi giá trị đầu vào. Bất
kỳ sự thay đổi nào của dữ liệu vào cũng đều dẫn đến một kết quả
sai.
Bản tóm lƣợc thông báo z = h(x)
Chữ ký y = sig
k
(z)
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
36
- Từ đại diện văn bản không thể suy ra đƣợc dữ liệu gốc là gì, chính
vì điều này mà ngƣời ta gọi là one -way.
Nhƣ đã đề cập trong phần mã hóa khóa khóa công khai, nó có thể sử dụng khóa
bí mật của bạn cho việc mã hóa và khóa khóa công khai cho việc giải mã. Cách
sử dụng cặp khóa nhƣ vậy không đƣợc dùng khi cần có sự bí mật thông tin, mà
chủ yếu nó dùng để “ký” cho dữ liệu. Thay vào việc đi mã hóa dữ liệu, các phần
mềm kí tạo ra message digest của dữ liệu và sử dụng khóa bí mật để mã hóa đại
diện đó. Hình 1.8 đƣa ra mô hình đơn giản hóa việc chữ kí số đƣợc sử dụng nhƣ
thế nào để kiểm tra tính toàn vẹn của dữ liệu đƣợc ký.
Trong hình 1.8 có hai phần đƣợc gửi cho ngƣời nhận: Dữ liệu gốc và chữ kí
số. Để kiểm tra tính toàn vẹn của dữ liệu, ngƣời nhận trƣớc tiên sử dụng khóa
khóa công khai của ngƣời kí để giải mã đại diện văn bản (Message digest) đã
đƣợc mã hóa và khóa bí mật của ngƣời ký. Dựa vào thông tin về thuật toán băm
trong chữ ký số, ngƣời nhận sẽ tạo ra đại diện văn bản từ dữ liệu gốc và mới.
Nếu các đại diện này giống nhau tức là dữ liệu không bị thay đổi từ lúc đƣợc ký.
Nếu không giống nhau có nghĩa là dữ liệu đã bị giả mạo điều này cũng có thể
xảy ra khi sử dụng hai khóa khoá khóa công khai và khóa bí mật không tƣơng
ứng.







Compare
K K




a, Using conventional encryption







Compare
K
private
K
public



M
e
s
s
a
g
e

M
e
s
s
a
g
e

M
e
s
s
a
g
e

E

H
D
H
M
e
s
s
a
g
e

M
e
s
s
a
g
e

M
e
s
s
a
g
e

E


H
D
H
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
37




b, Using public-key encryption
Hình 9: Sử dụng chữ ký số để kiểm tra tính toàn vẹn của dữ liệu.

Nếu nhƣ hai đại diện văn bản giống nhau, ngƣời nhận có thể chắc chắn rằng
khóa khóa công khai đƣợc sử dụng để giải mã chữ ký số là tƣơng ứng với khóa
bí mật đƣợc sử dụng để tạo ra chữ ký số. Để xác thực định danh của một đối
tƣợng cũng cần phải xác thực khóa khóa công khai của đối tƣợng đó.
Trong một vài trƣờng hợp, chữ ký số đƣợc đánh giá là có thể thay thế chữ ký
bằng tay. Chữ ký số chỉ có thể đảm bảo khi khóa bí mật không bị lộ. Khi khóa bí
mật bị lộ thì ngƣời sở hữu chữ ký không thể ngăn chặn đƣợc việc bị giả mạo chữ
ký.

iii. CHỮ KÍ Sè

chữ kí của một ngƣời trên một tài liệu (thƣờng đặt ở cuối bản tin ) để xác
nhận nguồn gốc hay trách nhiệm với tài liệu đó.
Với tài liệu “số hoá” (điện tử),nếu chữ kí cũng đặt ở cuối bản tin, thì việc
sao chép lại “chữ kí số” là hoàn toàndễ dàng và không thể phân biệt dƣợc bản
gốc với bản saovì chữ kí số là các số 0,1.
Vậy một “chữ kí số” đặt cuối “tài liệu loại số” không thể chịu trách
nhiệm đối với toàn bộ nội dung văn bản . “Chữ kí số” thể hiện trách nhiệm đối
với toàn bộ tài liệu phải là chữ kí trên từng bit của tài liệu đó.
Trong chƣơng này, em trình bày các vấn đề cơ bản nhất về chữ kí số, các
khái niệm, các tính chất, các sơ đồ kí hiện đang đƣợc sử dụng.
Chúng ta không thể kí trên bất kì tài liệu nào với độ dài tuỳ ý, vì nhƣ vậy
chữ kí sẽ có đọ dài rất lớn, ít nhất cũng dài bằng độ dài của tài liệu đƣợc kí. Với
tài liệu dài, ngƣời ta kí trên đại diện của nó. Đại diện của bản tin đƣợc thiét lập
qua Hàm băm.

1. Chữ kí số

Với chữ kí thông thƣờng, nó là một phần vật lí của tài liệu.Tuy nhiên, một
chữ kí số không gắn theo kiểu vật lí vào bức điện nên thuật toán đƣợc dùng phải
“không nhìn thấy” theo cách nào đố trên bức điện.
Thứ hai là vấn đề về kiểm tra .Chữ kí thông thƣờng đƣợc kiểm tra bằng
cách so sánh nó với các chữ kí xác thực khác. Ví dụ, ai đó kí một tấm séc để
mua hàng,nƣời bán phải so sánh chữ kí trên mảnh giấy với chữ kí nằm ở mặt su
của thẻ tín dụng để kiểm tra .Dĩ nhiên, đây không phải là phƣơng pháp an toànvì
nó dễ dàng giả mạo. Mặt khác,các chữ kí số có thể đƣợc kiểm tra nhờ dùng một
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
38
thuật toán kiểm tra công khai. Nhƣ vậy, bất kì ai cũng có thể kiểm tra đƣợc chữ
kí số. Việc dùng một sơ đồ chữ kí an toàn có thể sẽ ngăng chặn đƣợc khả năng
giả mạo.
Sự khác biệt cơ bản giữa chữ kí số và chữ kí thông thƣờng bản copy tài
liệu đƣợc kí bằg chữ kí số đồng nhất với bản gốc , còn copy tài liệu có chữ kí
trên giấy thƣờng có thể khác với bản gốc.Điều này có nghĩa là phải cẩn thận
ngăn chặn một bức kí số khỏi bị dùng lại. Ví dụ. Bob kí một bức điện xác nhận
Ailice có khả năng làm một điều đó một lần. Vì thế, bản thân bức điện cần chứa
thông tin (chẳng hạn nhƣ ngày tháng)để ngăn nó khỏi bị dùng lại.
Một sơ đồ chữ kí số thƣờng chứa hai thành phần: thuật toán kí và thuật
toán xác minh. Bob có thể kí điện x dùng thuật toán kí an toàn . Chữ kí sig(x)
nhận đƣợc có thể kiểm tra bằng thuật toán kí an toàn . Chữ kí sig(x) nhận đƣợc
có thể kiểm tra bằng thuật toán xác minh công khai ver. Khi cho trƣớc cặp (x,y),
thuật toán xác minh có giá trị TRUE hay FALSE tuỳ thuộc vào chữ kí đƣợc thực
nhƣ thế nào . Dƣới đây là định nghĩa hình thức của chữ kí:
Định nghĩa: một sơ đồ chữ kí số là bộ 5(P,A,K,S,C) trong đó :
1.P Là tập hữu hạn các bức điện (thông điệp) có thể .
2.A là tập hữu hạn các chữ kí có thể.
3.K không gian khoá là tập hữu hạn các khoá có thể.
4.Với mỗi K thuộc K tồn tại một thuật toán kí sig
k
eS và là một thuật toán xác
định Ver
k
e V. Mỗi sig
k
:P÷A vàVer
k
: P×A ÷{ true,false} là hàm sao cho mỗi
thông điệp xe P và chữ kí ye A thoảmãn phƣơng tình dƣới đây.

Ver
k
= True nếu y=sing(x)
False nếu y= sing(x)


Với mỗi k thuộc K hàm sig
k
,Ver
k
là các hàm có thời gian đa thức .Ver
k
sẽ
là hàm công khai , sig
k
là bí mật. không thể dễ dàng tính toán để giả mạo chữ kí
của Bob trên thông điệp x .Nghĩa là x cho trƣớc ,chỉ có Bob mới có thể tính
đƣợc y để Ver
k
= true . Một sơ đồ chữ kí không thể an toàn vô điều kiện vì
Oscar có thể kiểm tra tất cả các chữ số y có thể có trên thông điệp x nhờ dùng
thuật toán ver
k
công khai cho đến khi anh ta tìm thấy một chữ kí đúng.Vì thế ,
nếu có đủ thời gian ,Oscar luôn luôn có thẻ giả mạo chữ kí của Bob .Nhƣ vậy ,
giống nhƣ trƣờng hợp hệ thống mã khoá công khai , mục đích của chúng ta là
tìm các sơ đồ chữ kí số an toàn về mặt tính toán.

2. Phân loại các sơ đồ chữ kí số

Cơ chế chữ kí điện tử đƣợc chia làm hai 2 lớp , lớp chũ kí kèm thông điệp
(message appendix)và lớp chữ kí khôi phục thông điệp (message recovery).

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
39
- Chữ kí kèm thông điệp: đòi hỏi thông điệp ban đầu là đầu vào giải thuật
kiểm tra .

- Chữ kí khôi phục thông điệp: thông điệp ban đầu đƣợc sinh ra từ bản thân
chữ kí.


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
40

Hình 10: Hình biểu diễn phân loại ở mức tổng quan về chữ kí điện tử




s








2.1. Sơ đồ chữ kí kèm thông điệp
Sơ đồ chữ kí kèm thông điệp là sơ đồ đƣợc sử dụng nhiều nhất trong thực
tế. Nó dựa trên các hàm băm mã hoá đơn là dựa trên các hàm băm bất kì và ít bị
lỗi khi bị tấn công theo kiểu giả mạo.Chúng ta có thể định nghiã chính xác sơ đồ
chữ kí này nhƣ sau :

Định nghĩa :Một sơ đồ kí đòi hỏi thông điệp đầu vào là một tham số cho quá
trình xác nhận chữ kí là sơ đồ kí kèm thông điệp .Ví dụ EIGamal,DSA,Schonor.

a. Giải thuật sinh khoá:

Mỗi một thực thể tạo một khoá riêng để cho thông điệp cần khoá và một
khóa công khai tƣơng ứng để các thực thể khác xác nhận chữ kí
.
- Mỗi thựcthể A phải chọn một khoá riêng cùng với việc xác định
không gian khoá S
A,k
:k thuộc R ,của dạng chuyển đổi.
- S
A,k
xác định một anhhs xạ 1-1 từ không gian M
h
vào khong gian
khoá S gọi là dạng chuyển đổi chữ kíhay cào là thuật toán kí số.
- S
A
tƣơng ứng (corresponding mapping)V
A
từ không gian M
h
× S
vào tập hợp { false,true} có nghĩa là :

 V
A
(m,s*)=true nếu S
A,k
(m)=s*
 V
A
(m,s*)=false trong các trƣờng hợp khác.
V
a
là khoá công khai của A ,S
A
là khoá riêng của A




ngẫu nhiên
Khôi phục thông
diệp Xác định
chữ kí điện tử
ngẫu nhiên
Kèm thông điệp
Xác định
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
41

b. Giải thuật sinh và xác nhận chữ kí:

Thực thể A tạo một chữ kí s vào án xạ M và đƣợc xác nhận bởi thực thể B.

Quá trình sinh chữ kí

- Chọn một chữ kí k thuộc R
- Tính hàm băm m’=h(m) và s*=S
A,k
(m’)
- Chữ kí của A cho m là s*.Cặp m’ và s* dùng để xác nhận
-
Quá trình xác nhận chữ kí

- Nhận khoá công khai định danh choA và v
A

- Tính hàm băm m’=h(m)và u=v
A
(m’,s*)
- Chấp nhận chữ kí của A cho m là s* nếu u=TRUE.



2.2. Sơ đồ chữ kí khôi phục thông điệp
Đặc trƣng cho sơ đồ này là thông điệp có thể đƣợc khôi phục từ chính bản
thân chữ kí .Trong thực tế sơ đồ kiểu này thƣờng đƣợc kí cho các thông điệp
ngắn .
M
m


m
S
A,k
M
h
h s
a) TiÕn tr×nh ký th«ng ®iÖp
M
h
x S V
A
TRU
E
FALSE
b) TiÕn tr×nh x¸c nhËn ch÷ ký
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
42
Định nghĩa

Một sơ đồ kí đƣợc gọi là có khôi phục thông điệpkhi và chỉ khi nó là sơ đồ
mà với nó mức độ hiểu biết về thông diệp là không đòi hỏi trong quá trình xác
nhận chữ kí .Ví dụ về các sơ đồ chữ kí có khôi phục thông điệp trong thực tế là
:RSA,Rabin ,Nyber –Rueppel với khoá chung .
a. Thuật toán sinh khoá
Mỗi một thực thể A phải chọn một tập hợp S
A
={S
A,k
:k thuộc R} mỗi S
A,k
xác
định một ánh xạ 1-1 tù không gian M
h
vao không gian khoá S goi là dang
chuyển đổi chữ ký.
- S
A
xác định một ánh xạ tƣơng ứng(corresponding mapping) VA sao cho
VA* S
A,k
ánh xạ xác định MS cho tất cả k thuộc R.
- V
A
là khoá công khai của A, S
A
là khoá riêng của A.
b. Thuật toán sinh chữ ký và xác nhận chữ ký
Tiến trình sinh chữ ký: Thực thể phảI làm theo các bƣớc sau:
• Chọn một số k e R
• Tính m' = R(m) và s * = S
A,k
(m'). (R là hàm redundancy)
• Chữ ký của A là s *
Tiến trình xác nhận chữ ký: Thực thể B phảI làm nhƣ sau:
• Nhận khoá công khai của A là V
A

• Tính m' = V
A
(s*)
• Xác nhận m' e M
R
(Nếu m' e M
R
thì từ chối chữ ký)
• Khôi phục m từ m' bằng cách tính R
-1
(m')




S
A,k

R





Hình 12: Sơ đồ chữ ký khôi phục thông điêp
3. Một số sơ đồ chữ ký cơ bản
Sau đây chúng ta sẽ nghiên cứu các sơ đồ chữ ký cơ bản nhất và có ứng
dụng rộng rãi cũng nhƣ đáng tin cậy nhất hiện nay .
3.1. Sơ đồ chữ ký RSA
Chúng ta sẽ nghiên cứu đến sơ đồ chữ ký RSA và các sơ đồ tƣơng tự .
Đặc điểm của các sơ đồ chữ ký này là mức độ tính toán phụ thuộc hoàn toàn vào
độ lớn của giải thuật giải quyết các bài toán nhân số nguyên – bài toán luỹ thừa .
Sơ đồ chữ ký bao gồm cả hai loại kèm thông điệp và khôi phục thông điệp . Sơ






S

s*=S
A,k
(m'
)
M

m'
M

m'

M
R


m'
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
43
đồ chữ ký RSA đƣợc phát minh bởi 3 nhà nghiên cứu Rivest, Shamir và
Adleman, đây là sơ đồ có ứng dụng thực tế rộng rãi nhất dựa trên công nghệ sử
dụng khoá chung. Các phƣơng pháp tấn công RSA đầu tiên (multicative
property) và các vấn đề khác liên quan tới chữ ký RSA đƣợc đƣa ra bởi Davia,
Jonge và Chaum.

a. Thuật toán sinh khoá:
Thực thể A tạo khoá công khai RSA và khoá riêng tƣơng ứng theo phƣơng thức
sau:
• Sinh ra hai số nguyên tố lớn ngẫu nhiên p và q cùng kích thƣớc bit
• Tính n = p.q và o = (p-1)(q-1)
• Chọn một số tự nhiên ngẫu nhiên a thoả mãn điều kiện sau: 1< a <o và
USCLN (a, o) = 1 hay ae Z*
P
.
• Sử dụng giải thuật mở rộng Euclidean để tính toán số tự nhiên duy nhất b
sao cho 1 < b < o và ab ÷ 1 (mod o)
• Khoá công khai của A là K’ = (n, a) khoá riêng của A là K” = b
b. Thuật toán sinh và xác định chữ ký
Thực thể A ký trên thông điệp m . Thực thể B có thể xác định đƣợc chữ
ký của A và khôi phục lại thông điệp từ chữ ký.
Sinh chữ ký: Thực thể A làm theo các bƣớc sau:
• Tính m' = H(m) , là một số nguyên trong khoảng | 0,n-1 |
• Tính s = m'
d
mod n
• Chữ ký của A cho m là s
Xác nhận chữ ký: Thực thể B làm theo các bƣớc sau:
• Nhận khoá công khai của A là (n, b)
• Tính m' = s
b
mod n
• Kiểm tra m' e M
R
nếu không sẽ không chấp nhận chữ ký
• Lấy lại thông điệp m từ m = H
-1
(m')
c. Tóm tắt lược đồ ký theo RSA:

Cho n = p.q với p và q là các số nguyên tố
Cho P = A =Z
n
và định nghĩa
p = {(n,p,q,a,b)'' n = p.q, p và q nguyên tố, ab ÷ 1 mod o (n) }
Các giá trị n, b là công khai. Định nghĩa
Sig
k
(x) = x
a
mod n và
Ver
k
(x,y) = true · x ÷ y
b
(mod n) với x,y eZ
n
Nếu độ dài thông diệp x lớnN, ta sử dụng hàm băm.

Ví dụ: Ví dụ sau đây sử dụng sơ đồ ký RSA, với thông điệp lớn
Sinh khoá:
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
44
Thực thể A chọn số nguyên tố p =7927 và q =6997. Tính n =pq =5546521 và
o =7926.6996 =55450296.
A chọn a =5 và giải ab =5.b÷1 (mod 55450296) đƣợc b = 44360237.
Sinh chữ ký:
Để ký thông điệp m =31229978, A tính m

1
=H(m) =31229978.
Chữ ký s = m
1
’b
=mod n =31229978
4430237
mod 55465219 =30729435
Xác nhận chữ ký:
B tính m
2

= s
a
mod n = 30729435
5
mod 55465219 =31229978
B chấp nhận chữ ký vì m
2

= m
1
’.


3.2. Sơ đồ chữ ký DSA (Digital Signature Standard)

Trong phần này nội dung chính là nghiên cứu các sơ đồ chữ ký điện tử
DSA và lớp các chữ ký tƣơng tự, đặc điểm của những giải thuật này là đều sử
dụng chữ ký theo kiểu chọn lựa ngẫu nhiên. Tất cả các sơ đồ DSA kèm thông
điệp đều có thể cải biến thành các sơ đồ ký khôi phục thông điệp .Đặc biệt, sẽ đi
sâu vào chuẩn chữ ký điện tử DSS(Digital Signature Standard) do khả năng cài
đặt thực tế của nó
a. Giới thiệu
Sơ đồ chữ ký DSS dựa trên giảI thuật ký điện tử DSA (Digital Signature
Algorithm). Chữ ký dạng DSS là một dạng chữ ký kèm thông điệp, điều đó có
nghĩa là chữ ký phải đƣợc gửi kèm với thông điệp mà bản thân chữ ký không
chứa (hoặc không sinh ra) thông điệp, thông thƣờng nhƣng chữ ký dạng này
đều đòi hỏi có một hàm băm trên thông điệp (do nội dung thông điệp có độ dài
không xác định). Hàm băm này đƣợc sử dụng trong quá trình sinh chữ ký để xây
dựng một dạng nén của dữ liệu (condensed version of data). Dữ liệu này gọi là
đại diện văn bản (message digest). Phần đại diện văn bản này là đầu vào của giải
thuật sinh chữ ký. Ngƣời xác nhận chữ ký cũng sử dụng hàm băm này để xây
dựng phƣơng pháp xác nhận chữ ký. Đối với sơ đồ chữ ký DSS hàm băm là
security Hash Algorithm (SHA) đƣợc miêu tả trong FIPS 186, hàm băm này tạo
ra một giá trị số nguyên 160 bít đặc trƣng cho một thông điệp, điều này làm hạn
chế một trong các giá trị tham số của DSS phảI là 160 bit. Ngoài ra, chuẩn này
yêu cầu việc sinh chữ ký phải sử dụng một khóa riêng cho mỗi ngƣời ký, ngƣợc
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
45
lại để xác nhận chữ ký, ngƣời xác nhận phải có một khóa công khai tƣơng ứng
với khóa riêng của ngƣời gửi


Hình 13: Chữ ký DSA
b. Các giải thuật cơ bản của DSA
Thuật toán sinh khóa
Mỗi thực thể tạo một khóa công khai và một khóa mật tƣơng ứng theo cách sau:
1. Chọn một số nguyên tố q sao cho 2
159
< q < 2
160
2. Chọn một số nguyên tố p sao cho 2
511+64t
< p < 2
512+64t
ở đó t e[0,8]
3. Chọn số o nhƣ sau:
• Chọn g là một số nguyên bất kỳ nhỏ hơn p, o =g
(p-1)/q
mod p
• o khác 1
4. Chọn số nguyên a sao cho: 1 1 ÷ s s q a
5. Tính
a
o | = mod p
6. Khóa riêng của thực thể là a, khóa công khai là bộ (p,q, o | )
Thuật toán sinh chữ ký
Khi cần sinh chữ ký cho một thông điệp x thực thể phảI làm những việc
nhƣ sau:
1. Chọn một số nguyên mật k, 0 < k <q-1
2. T ính ¸ =(a
k
mod p ) mod q.
3. Tính k
-1
mod q.
4. Tính o =k
-1
(h(x)+a¸ ) mod q
5. Chữ ký của thực thể cho x là cặp (o , ¸ )
Thuật toán xác nhận chữ ký

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
46
Khi cần xác nhận chữ kí cho một thông điệp m thực thể phải làm những
việc nhƣ sau:
1. Dành lấy khoá công khai của thực thể kí (p, q, a, ò)
2. Nếu điều kiện: 0 < d,? < q không thoả mãn thì từ chối chữ kí
3. Tính w = d
-1
mod q và h(x)
4. Tính e
1
= w.h(x) mod q và e
2
=?w mod q
5. Tính v = (a
e1

e2
mod p) mod q
6. Nếu v = ? thì chấp nhận chữ kí ngoài ra thì từ chối.
c. Tóm tắt lƣợc đồ chữ kí số DSS


















Ví dụ:
Gỉa sử q = 101, p = 78q + 1 = 7879
3 là phần tử nguyên thuỷ trong Z
7879
nên ta có thể lấy: a = 3
78
mod 7879 = 170
Gỉa sử a = 75, khi đó ò = a
a
mod 7879 = 4576
Muốn kí bức điện x = 1234, ta chọn số ngãu nhiên k = 50
Vì thế có k
-1
mod 101 = 99, khi đó có:
? = (170
30
mod 7879) mod 101
= 2518 mod 101
= 94
Và d = (1234 + 75*94)*99 mod 101 = 96
Chữ kí (94, 97) trên bức điện 1234 đƣợc xác minh bằng các tính toán sau:
d
-1
= 97
-1
mod 101 = 25
e
1
= 1234*25 mod 101 = 45
e
2
= 94*25 mod 101 = 27
Có (170
45
.4567
27
mod 7879) mod 101 = 2518 mod 101 = 94
Giả sử p là số nguyên tố 512 bít sao cho bài toán logarit rời rạc trong Z
p
là khó
giải.
Cho p là số nguyên tố160 bít là ƣớc của (p-1).
Gỉa thiết a? Z
p
là căn bậc q của một modulo p
Cho p thuộc Z
p
và a = Z
q
ì Z
p
và định nghĩa:
A = {(p, q , a, a, ò ): ò trùng a
a
(mod p)}
Các số p, q , a, ò công khai, có a mật.
Với K = (p, q , a, a, ò ) và với một số ngẫu nhiên (mật) k, 1 = k = q -1, ta định
nghĩa:
Qúa trình kí số sig
k
(x, k) = (?,dδ) trong đó:
? = (a
k
mod p) mod q và
d = (x + a ?)k
-1
mod q với x? Z
p
và?, d ? Z
q

Qúa trình xác minh sẽ hoàn thành sau các tính toán:
e
1
= xd
-1
mod q
e
2
=?d
-1
mod q
ver(x, g, d) = true · (a
e1
ò
e2
mod p) mod q =?

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
47
Vì thế chữ kí hợp lệ.

d. Tính chất của chữ kí DSA
Độ an toàn
Độ an toàn của chữ kí phụ thuộc vào độ bí mật của khoá riêng. Ngƣời
sử dụng phải đƣợc bảo vệ trƣớc về khoá riêng của mình. Nếu khoá riêng đảm
bảo an toàn tuyệt đối thì chữ kí cũng có mức độ an toàn hầu nhƣ tuyệt đối. Mặt
khác, với khoá riêng là công khai, chữ kí DSA là an toàn khi từ khoá công khai
không thể tìm đƣợc khoá riêng. Thật vậy, ta có:
Cho p là một số nguyên tố rất lớn, phƣơng trình toán học sau là không
thể giải đƣợc: y = a
x
mod p (1) với y, a = g
(p-1)/q
và khác 1. Để xem xét điều này
trƣớc hết ta nhận xét phƣơng trình (1) có nghiệm x duy nhất thuộc khoảng [1,
q]. Thật vậy, giả sử có hai nghiệm x
1
và x
2
, từ (1) ta có:
y = a
x1
mod p và y = a
x2
mod p
Không mất tính tổng

quát ta giả sử x
1
< x
2
từ đây ta suy ra:
- a
x1
chia hết cho p (không thoả mãn do p nguyên tố)
- Tồn tại k nhỏ hơn p sao cho a
k
÷ 1 (mod p). Với giá trị a có dạng
a = g
(p-1)/q
thì điều này không thể xảy ra khi g < p.
Trong nhiều trƣờng hợp, thông điệp có thể mã và giải mã chỉ một lần nên
nó phù hợp cho việc dùng với hệ mật bất kì (an toàn tại thời điểm đƣợc
mã). Song trên thực tế, nhiều khi một bức điện đƣợc làm một tài liệu đối
chứng, chẳng hạn nhƣ bản hợp đồng hay một chúc thƣ và vì thế cần xác
minh chữ kí sau nhiều năm kể từ khi bức điện đƣợc kí. Bởi vậy, điều quan
trọng là có phƣơng án dự phòng liên quan đến sự an toàn của sơ đồ chữ kí
khi đối mặt với hệ thống mã. Vì sơ đồ Elgamal không an toàn hơn bài toán
logarithm rời rạc nên cần dùng modulo p lớn hơn chẳng hạn 512 bit trở lên.
Tuy nhiên độ dài chữ kí theo sơ đồ Elgamal là gấp đôi số bit của p mà với
nhiều ứng dụng dùng thẻ thông minh thì cần chữ kí ngắn hơn nên giải pháp
sửa đổi là: một mặt dùng p với độ dài biểu diễn từ 512 đến 1024 bit, mặt
khác trong chữ kí (?,dδ), các số?, d có độ dài biểu biễn ngắn, chẳng hạn là
160 bit – Khi đó độ dài chữ kí là 320 bit. Điều này thực hiện bằng cách
dùng nhóm con Cyclic Z
q
* của Z
p
* thay cho chính bản thân Z
p
*, do đó mọi
tính toán vẫn đƣợc thực hiện trong Z
p
* nhƣng dữ liệu và thành phần chữ kí
lại thuộc Z
q
*.
Tính hợp lệ:
Tính hợp lệ của chữ kí DSA dựa trên hai định lí sau:
Định lí 1: Cho p, q là hai số nguyên tố thoả mãn điều kiện q \ (p - 1).
h là một số nguyên dƣơng bất kì thoả mãn h < p. Nếu:
g ÷ h
(p - 1) / q
mod p thì g
q
÷ 1 mod p
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
48
Thật vậy g
q
÷ (h
(p - 1)/q
)q ÷ h
p – 1
mod p (theo định lí Fecma nhỏt).
Định lí 2: Với g, p, q xác định nhƣ trên ta luôn có:
nếu m ÷ n mod p thì g
m
÷ g
n
mod p.
Thật vậy không mất tính tổng quát ta đặt m = n + kq
Thì g
m
÷ g
n + kq
÷ (g
n
mod p).(g
kq
mod p) ÷ g
n
mod p
¬ điều phải chứng minh.

Nhƣợc điểm:
Một ý kiến cho rằng, việc xử lí lựa chọn của NIST là không công khai.
Tiêu chuẩn đã đƣợc cục an ninh quốc gia phát triển mà không có sự tham gia
của khối công nghiệp Mỹ. Còn những chỉ trích về mặt kĩ thuật thì chủ yếu là về
kích thƣớc modulo p cố định = 512 bít. Nhiều ngƣời đã muốn kích thƣớc này có
thể thay đổi đƣợc nếu cần, có thể dùng kích cỡ lớn hơn. Đáp ứng những điều
kiện này, NIST đã chọn tiêu chuẩn cho phép có nhiều kích cỡ modulo bất kì
chia hết cho 64 trong phạm vi từ 512 đến 1024 bít.
Một phàn nàn nữa về DSA là chữ kí đƣợc tạo ra nhanh hơn việc xác minh
nó. Trong khi đó, nếu dùng RSA làm sơ đồ chữ kí với số mũ xác minh công khai
nhỏ hơn (chẳng hạn = 3) thì có thể xác minh nhanh hơn nhiều so với việc lập
chữ kí. Điều này dẫn đến hai vấn đề liên quan đến những ứnh dụng của sơ đồ
chữ kí:
- Bức điện chỉ đƣợc kí một lần, xong nhiều khi lại phải xác minh chữ kí
nhiều lần trong nhiều năm. Điều này tạo gợi ý nhu cầu có thuật toán xác
minh nhanh hơn.
- Những kiểu máy tính nào có thể dùng để kí và xác minh? Nhiều ứng
dụng, chẳng hạn các thẻ thông minh có khả năng xử lí hạn chế liên lạc với
máy tính nhanh hơn. Vì thế có nhu cầu nhƣng thiết kế một sơ đồ để có thể
thực hiện trên thẻ một số tính toán. Tuy nhiên có một số tình huống cần
hệ thống minh tạo chữ kí, trong những tình huống khác lại cần thẻ thông
minh xác minh chữ kí. Vì thế có thể đƣa ra giải pháp xác định ở đây.
Sự đáp ứng của NIST đối với yêu cầu về số lần tạo xác minh chữ kí thực
ra không có yêu cầu gì ngoài yêu cầu về tốc độ, miễn là cả hai thể thực hiện
nhanh.
4. Các sơ đồ chữ kí số khả thi
Trong các sơ đồ chữ kí điện tử ngƣời ta thƣờng sử dụng hai sơ đồ chữ kí
là DSA và RSA bởi vì một số nguyên nhân sau:
- Cả hai sơ đồ đều đƣợc chính phủ Mỹ thông qua trong Chuẩn chữ kí số
(DSS) . Cả hai giải thuật DSA và RSA đều đƣợc công bố trong Hồ sơ
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
49
trong liên bang (FIPS) vào ngày 19/5/94 và đƣợc đƣa ra làm chuẩn chính
thức của chữ kí điện tử vào 1/12/94 mặc dù nó đã đƣợc đề xuất từ 8/91.
- Các sơ đồ chữ kí này đều là cá sơ đồ chữ kí dựa trên các phƣơng pháp mã
hoá khoá khoá công khai vadf đều có độ bảo mật rát cao.
- Các bộ số liệu để kiểm nghiệm sự đúng đắn trong việc cài đặt các chữ kí
này đều đƣợc công khai. Nếu trong quá trình thử nghiệm các chữ kí này
đều đảm bảo đúng với bộ số liệu thì chữ kí đƣợc coi là an toàn.
- Cả hai sơ đồ chữ kí đều có thể chuyển đổi từ các chữ kí kèm thông điệp
thành chữ kí khôi phục thông điệp không mấy khó khăn với việc tích hợp
thêm các hàm có độ dƣ R (Redundancy Function).
- Trong thực tế khi đƣa ra hệ thống CA server, phía đối tác quyết định lựa
chọn sơ đồ chữ ki DSA là chữ kí chính thức cho toàn bộ các giao dịch.
- Thời gian xác nhận chữ kí của cả hai loại chữ kí này đều ngắn và chấp
nhận đƣợc trong môi trƣờng mạng công cộng.
5. Các cách tấn công chữ kí điện tử
Khi nói đến chữ kí điện tử chúng ta luôn đặt mục tiêu an toàn lên hàng
đầu, một chữ kí điện tử chỉ thực sự đƣợc áp dụng trong thực tế nếu nhƣ nó
đƣợc chứng minh là không hề giả mạo. Mục tiêu lớn nhất của những kẻ tấn
công các sơ đồ chữ kí là giả mạo chữ, điều này có nghĩa là kẻ tấn công sinh
ra đƣợc chữ kí của ngƣời kí lên thông điệp mà chữ kí này sẽ đƣợc chấp nhận
bởi ngƣời xác nhận. Trong thực tế các hành vi tấn công chữ kí điện tử rất đa
dạng, để dễ dàng phân tích một sơ đồ chữ kí là an toàn hay không ngƣời ta
tiến hành kiểm nghiệm độ an toàn của chữ kí trƣớc các sự tấn công sau:
Tolal break (tấn công toàn bộ): Một kẻ giả mạo không những tính đƣợc thông
tin về khoá riêng (private key) mà còn có thể sử dụng một thuật toán sinh chữ
kí tƣơng ứng tạo ra đƣợc chữ kí cho thông điệp.
- Selective forgert (giả mạo có lựa chọn) : Kẻ tấn công có khả năng tạo ra
đựơc một tập hợp các chữ kí cho một lớp các thông điệp nhất định, các
thông điệp này đƣợc kí mà không cần phải có khoá mật của ngƣời kí.
- Existential forgert (giả mạo với thông điệp biết trƣớc): Kẻ tấn công có
khae năng giả mạo chữ kí cho một thopong điệp, kẻ tấn công không thể
hoặc có ít nhất khả năng kiểm soát thông điệp đƣợc giả mạo này.
- Ngoài ra, hầu hết các chữ kí điện tử đều dựa vào cơ chế mã hoá khoá công
khai, các chữ kí điện tử dựa trên cơ chế này có thể bị tấn công theo các
phƣơng thức sau:
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
50
- Key – only attacks (tấn công với khoá): Kẻ tấn công chỉ biết khoá chung
của ngƣời kí.
- Message attacks (tấn công vào thông điệp): ở đay kẻ tấn công có khả năng
kiểm tra các chữ kí khác hau có phù hợp với thông điệp có trƣớc hay
không. Đây là kiểu tấn công rất thông dụng, trong thực tế nó thƣờng đƣợc
chia làm ba lớp:
o Known – message attack (tấn công với thông điệp đã biết): Kẻ tấn
công có chữ kí cho một lớp các thông điệp.
o Chosen – message attack (tấn công lựa chọn thông điệp): Kẻ tấn
công dành đƣợc các chữ kí đúng cho một danh sách các sthông điệp
trƣớc khi tiến hành hoath động phá huỷ chữ kí, cách tấn công này là
non – adaptive (không mang tính phù hợp) bởi vì thông điệp đƣợc
chọn trƣớc khi bất kì môth chữ kí nào đƣợc gửi đi.
o Adaptive – chosen message attack (tấn công lựa chọn thông điệp
chủ động): Kẻ tấn công đƣợc phép sử dụng ngƣời kí nhƣ là một bên
đáng tin cậy, kẻ tấn công có thể yêu cầu chữ kí cho các thông điệp
mà các thông điệp này phụ thuộc vào khoá công khai của ngƣời kí,
nhƣ vậy kẻ tấn công có thể yêu cầu chữ kí của các thông điệp phụ
thuộc vào chữ kí và thông điệp dành đƣợc trrƣớc đây và qua đó tính
đƣợc chữ kí.




















Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
51



CHƢƠNG III
b¶o mËt vµ an toµn th«ng tin trong tm®t

i. vÊn ®Ò an toµn th«ng tin

Ngày nay, với sự phát triển mạnh mẽ của công nghệ thông tin việc ứng dụng
công nghệ mạng máy tính trở nên vô cùng phổ cập và cần thiết. Công nghệ
mạng máy tính đã mang lại lợi ích to lớn.Sự xuất hiện mạng Internet cho phép
mọi ngƣời có thể truy cập, chia sẻ và khai thác thông tin một cách dễ dàng và
hiệu quả. Sự phát triển mạnh mẽ của Internet xét về mặt bản chất chính là việc
đáp ứng lại sự gia tăng không ngừng của nhu cầu giao dịch trực tuyến trên hệ
thống mạng toàn cầu. Các giao dịch trực tuyến trên Internet phát triển từ những
hình thức sơ khai nhƣ trao đổi thông tin ( email, message, v.v…), quảng bá (
web-publishing) đến những giao dịch phức tạp thể hiện qua các hệ thống chính
phủ điện tử, thƣơng mại điện tử ngày càng phát triển mạnh mẽ trên khắp thế
giới.
Tuy nhiên lại nảy sinh các vấn đề an toàn thông tin, Internet có những kỹ thuật
cho phép mọi ngƣời truy nhập, khai thác, chia sẻ thông tin. Nhƣng nó cũng là
nguy cơ chính dẫn đến việc thông tin của bạn bị hƣ hỏng hoặc phá huỷ hoàn
toàn. Sở dĩ có lý do đó là vì việc truyền thông tin qua mạng Internet hiện nay
chủ yếu sử dụng giao thức TCP /IP. TCP/IP cho phép các thông tin đƣợc gửi từ
một máy tính này tới một máy tính khác mà đi qua một loạt các máy tính trung
gian hoặc mạng riêng biệt trƣớc khi nó có thể đi tới đƣợc đích. Chính vì điểm
này, giao thức TCP /IP đã tạo cơ hội cho "bên thứ ba" có thể thực hiện các hành
động gây mất mát an toàn thông tin trong giao dịch.

Theo số liệu của CERT (Computer Emegency Response Team - "Đội cấp
cứu máy tính"), số lƣợng các vụ tấn công trên internet đƣợc thông báo cho tổ
chức này là ít hơn 200 vào năm 1989, khoảng 400 vào năm 1991, 1400 vào năm
1993, và 2241 vào năm 1994. Những vụ tấn công này nhằm vào tất cả các máy
tính có mặt trên Internet, các máy tính của tất cả các công ty lớn nhƣ AT &T,
IBM, các trƣờng đại học, các cơ quan nhà nƣớc, các tổ chức quân sự nhà băng…
Một số vụ tấn công có quy mô khổng lồ (có tới 100.000 máy tính bị tấn công).
Hơn nữa, những con số này chỉ là phần nổi của tảng băng. Một phần rất lớn các
vụ tấn công không đƣợc thông báo, vì nhiều lý do, trong đó có thể kể đến nỗi lo
bị mất uy tín, hoặc đơn giản những ngƣời quản trị hệ thống không hề hay biết
những cuộc tấn công nhằm vào hệ thống của họ.

Không chỉ số lƣợng các cuộc tấn công tăng lên nhanh chóng, mà các
phƣơng pháp tấn công cũng liên tục đƣợc hoàn thiện. Điều đó một phần do các
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
52
nhân viên quản trị hệ thống đƣợc kết nối với Internet ngày càng đề cao cảnh
giác. Cũng theo CERT, những cuộc tấn công thời kỳ 1988-1989 chủ yếu đoán
tên ngƣời sử dụng – mật khẩu (UserID-password) hoặc sử dụng một số lỗi của
các chƣơng trình và hệ điều hành (security hole) làm vô hiệu hóa hệ thống bảo
vệ, tuy nhiên các cuộc tấn công vào thời gian gần đây bao gồm cả các thao tác
nhƣ giả mạo địa chỉ IP, theo dõi thông tin truyền qua mạng, chiếm các phiên làm
việc từ xa (telnet hoặc rlogin). Một số vấn đề an toàn đối với nhiều mạng hiện
nay:

- Nghe trộm (Eavesdropping): Thông tin không hề bị thay đổi, nhƣng sự bí
mật của nó thì không còn. Ví dụ, một ai đó có thể biết đƣợc số thẻ tín dụng, hay
các thông tin cần bảo mật của bạn.

- Giả mạo (Tampering): Các thông tin trong khi truyền trên mạng bị thay
đổi hay bị thay đổi trƣớc khi đến ngƣời nhận. Ví dụ, một ai đó có thể sửa đổi nội
dung của một đơn đặt hàng hoặc thay đổi lý lịch của một cá nhân trƣớc khi các
thông tin đó đi đến đích.

- Mạo danh (Impersonation): Một cá nhân có thể dựa vào thông tin của
ngƣời khác để trao đổi với một đối tƣợng. Có hai hình thức mạo danh sau:

o Bắt trƣớc (Spoofing): Một cá nhân có thể giả vờ nhƣ một ngƣời
khác. Ví dụ, dùng địa chỉ mail của một ngƣời khác hoặc giả mạo một tên miền
của một trang Wed.

o Xuyên tạc (Misrepresentation): Một cá nhân hay một tổ chức có thể
giả vờ nhƣ một đối tƣợng, hay đƣa ra những thông tin về mình mà không đúng
nhƣ vậy. Ví dụ, có một trang chuyên về thiết bị nội thất mà có sử dụng thẻ tín
dụng, nhƣng thực tế là một trang chuyên đánh cắp thẻ tín dụng.

- Chối cãi nguồn gốc: Một cá nhân có thể chối là đã không gửi tài liệu khi
xảy ra tranh chấp. Ví dụ, khi gửi email thông thƣờng, ngƣời nhận sẽ không thể
khẳng định ngƣời gửi là chính xác.

Để vừa đảm bảo tính bảo mật của thông tin lại không làm giảm sự phát triển của
việc trao đổi thông tin quảng bá trên toàn cầu thì chúng ta cần có các giải pháp
phù hợp. Hiện tại có rất nhiều giải pháp cho vấn đề an toàn thông tin trên mạng
nhƣ mã hoá thông tin, chữ ký điện tử (chứng chỉ khoá khoá công khai) … Sau
đây chúng ta lần lƣợt tìm hiểu các khái niệm căn bản về mã hoá thông tin và đi
sâu vào viềc sử dụng chữ ký số cho việc xác thực trên mạng.

Các bí mật bảo đảm an toàn cho giao dịch điện tử

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
53
Thế nào là một hệ thống an toàn thông tin? An toàn trƣớc các cuộc tấn công là
một vấn đề mà các hệ thống giao dịch trực tuyến cần giải quyết. Thông tin
truyền trên mạng gặp rất nhiều rủi ro và nguy cơ bị mất thông tin là thƣờng
xuyên. Chẳng hạn việc thanh toán bằng thẻ tín dụng thông qua dịch vụ wed sẽ
gặp một số rủi ro sau:

o Thông tin từ trình duyệt wed của khách hàng ở dạng thuần văn bản nên
có thể bị lọt vào tay kẻ tấn công.

o Trình duyệt wed của khách hàng không thể xác định đƣợc máy chủ mà
mình trao đổi thông tin có phải là thật hay một wed giả mạo.

o Không ai có thể đản bảo dữ liệu truyền đi có bị thay đổi hay không.

Vì vậy các hệ thống cần phải có một cơ chế đảm bảo an toàn trong quá trình
giao dịch điện tử. Một hệ thống thông tin trao đổi dữ liệu an toàn phải đáp ứng
một số yêu cầu sau:

o Hệ thống phải đảm bảo dữ liệu trong quá trìmh truyền đi là không bị
đánh cắp.

o Hệ thống phải có khả năng xác thực, tránh trƣờng hợp giả danh, giả
mạo.

Do vậy, cần tập trung vào việc bảo vệ các tài sản khi chúng đƣợc chuyển tiếp
giữa máy khách và máy chủ từ xa. Việc cung cấp kênh thƣơng mại an toàn đồng
nghĩa với việc đảm bảo tính toàn vẹn của thông báo và tính sẵn sàng của kênh.
Thêm vào đó, một kế hoạch an toàn đầy đủ còn bao gồm cả tính xác thực.

Các kỹ thuật đảm bảo cho an toàn giao dịch điện tử chính là sử dụng các hệ
mật mã, các chứng chỉ số và sử dụng chữ ký số trong quá trìmh thực hiện các
giao dịch.

II. chøng chØ sè vµ c¬ chÕ m· ho¸

1. Giới thiệu về chứng chỉ số

Việc sử dụng mã hóa hay kí số chỉ giải quyết đuợc vấn đề bảo mật thông điệp
và xác thực. Tuy nhiên không có thể đảm bảo rằng đối tác không thể bị giả
mạo, trong nhiều trƣờng hợp cần thiết phải “chứng minh” bằng phƣơng tiện
điện tử danh tính của ai đó.
Chứng chỉ số là một tệp tin điện tử đƣợc sử dụng để nhận diện một cá nhân, một
máy dịch vụ, một tổ chức, …nó gắn định danh của đối tƣợng đó với một khóa
công khai, giống nhƣ bằng lái xe, hộ chiếu, chứng minh thƣ.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
54
Có một nơi có thể chứng nhận các thông tin của bạn là đúng, đƣợc gọi là cơ
quan xác thực chứng chỉ (Certificate Authority-CA).Đó là một đơn vị có thẩm
quyền xác nhận định danh và cấp các chứng chỉ số.CA có thể là một đối tác thứ
ba đứng độc lập hoặc có các tổ chức tự vận hành một hệ thống tự cấp các chứng
chỉ cho nội bộ của họ.Các phƣơng pháp để xác định định danh phụ thuộc vào
các chính sách mà CA đặt ra.Chính sách lập ra phải đảm bảo việc cấp chứng chỉ
số phải đúng đắn, ai đƣợc cấp và mục đích dùng vào việc gì.Thông thƣờng,
trƣớc khi cấp một chứng chỉ số, CA sẽ công bố các thủ tục cần thiết phải thực
hiện cho các loại chứng chỉ số.
Trong chứng chỉ số chứa một khóa công khai đƣợc gắn với một tên duy nhất của
một đối tƣợng (nhƣ tên của một nhân viên hoặc máy dịch vụ).Các chứng chỉ số
giúp ngăn chặn việc sử dụng khóa công khai cho việc giả mạo.Chỉ có khóa công
khai đƣợc chứng thực bởi chứng chỉ số sẽ làm việc với khóa bí mật tƣơng ứng,
nó đƣợc sở hữu bởi đối tƣợng có định danh nằm trong chứng chỉ số.
Ngoài khóa công khai, chứng chỉ số còn chứa thông tin về đối tƣợng nhƣ tên mà
nó nhận diện.hạn dùng, tên của CA cấp chứng chỉ số, mã số…Điều quan trọng
nhất là chứng chỉ số phải có chữ ký số của CA đã cấp chứng chỉ số đó.Nó cho
phép chứng chỉ số nhƣ đã đƣợc đóng dấu để ngƣời sử dụng có thể kiểm tra.

2. Xác thực định danh

Việc giao tiếp trên mạng điển hình là giữa một máy khách (Client – nhƣ trình
duyệt trên máy cá nhân) và một máy dịch vụ (Server – nhƣ máy chủ
Website).Việc chứng thực có thể đƣợc thực hiện ở cả hai phía.Máy dịch vụ có
thể tin tƣởng vào máy khách và ngƣợc lại.
Việc xác thực ở đây không chỉ có ý nghĩa một chiều đối với ngƣời gửi, tức là
ngƣời gửi muốn ngƣời nhận tin tƣởng vào mình.Khi một ngƣời đã gửi thông
điệp có kèm theo chữ ký số của mình (cùng vối chứng chỉ số), thì không thể
chối cãi: đó không phải là thông điệp của anh ta.
Có hai hình thức xác thực máy khách:
- Xác thực dựa trên tên truy nhập và mật khẩu (Username và Password).Tất cả
các máy dịch vụ cho phép ngƣời dùng nhập mật khẩu, để có thể truy nhập vào
hệ thống.Máy dịch vụ sẽ quản lý danh sách các Username và Password này.
- Xác thực dựa trên chứng chỉ số.Đó là một phần của giao thức bảo mật
SSL.Máy khách ký số vào dữ liệu, sau đó gửi cả chữ ký số và cả chứng chỉ số
qua mạng.Máy dịch vụ sẽ dùng kỹ thuật mã hóa khóa công khai để kiểm tra chữ
ký và xác định tính hợp lệ của chứng chỉ số.

Xác thực dựa trên mật khẩu.
Khi xác thực ngƣời dùng theo phƣơng pháp nàyK, ngƣời dùng đã quyết định tin
tƣởng vào máy dịch vụ (có thể không có bảo mật theo giao thức SSLc).Máy dịch
vụ phải xác thực ngƣời sử dụng trƣớc khi cho phép họ truy nhập tài nguyên của
hệ thống.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
55















Hình 14: Sử dụng mật khẩu xác thực máy khách kết nối tới máy dịch vụ.
Các bước trong hình trên như sau:
Bƣớc 1: Để đáp lại yêu cầu xác thực từ máy dịch vụ, máy khách sẽ hiện hộp
thoại yêu cầu nhập mật khẩu.Ngƣời phải dùng nhập mật khẩu cho mỗi máy dịch
vụ khác nhau trong cùng một phiên làm việc.
Bứơc 2: Máy khách gửi mật khẩu qua mạng, không cần một hình thức mã hóa
nào.
Bƣớc 3: Máy dịch vụ tìm kiếm mật khẩu trong cơ sở dữ liệu.
Bƣớc 4: Máy dịch vụ xác định xem mật khẩu đó có quyền truy cập vào những
tài nguyên nào của hệ thống.
Khi sử dụng loại xác thực này, ngƣời dùng phải nhập mật khẩu cho mỗi
máy dịch vụ khác nhau, nó lƣu lại dấu vết của các mật khẩu này cho mỗi ngƣời
dùng.
Xác thực dựa trên chứng chỉ số.
Chứng chỉ số có thể thay thế 3 bƣớc đầu chứng thực bằng mật khẩu với cơ chế
cho phép ngƣời dung chỉ phải nhập mật khẩu một lần và không phải truyền qua

mạng, ngƣời quản trị có thể điều khiển quyền truy nhập một cách tập trung.











M¸y kh¸ch
1.Ng- êi dïng nhËp tªn vµ mËt
khÈu cho x¸c thùc.
3.M¸y dÞch vô dïng mËt khÈu ®Ó
x¸c nhËn ®Þnh danh ng- êi dïng
1.Ng- êi dïng nhËp tªn vµ
mËt khÈu cho x¸c thùc.

M¸y kh¸ch

4.M¸y dÞch vô dïng mËt khÈu
®Ó x¸c nhËn ®Þnh danh ng- êi
dïng

5..M¸y dÞch vô
x¸c nhËn quyÒn
truy nhËp vµo
nh÷ng tµi nguyªn
nµo chong- êi
dïng.

M¸y dÞch vô

3.M¸y kh¸ch göi chøng chØ vµ
ch÷ kÝ qua m¹ng.

M¸y dÞch vô

2.M¸y kh¸ch göi tªn vµ mËt
khÈu qua m¹ng.
4.M¸y dÞch vô x¸c nhËn
quyÒn truy nhËp vµo
nh÷ng tµi nguyªn nµo
cho ng- êi dïng.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
56

Hình 15: Chứng chỉ số chứng thực cho may khách kết nối tới máy dịch vụ.

Giao dịch ở hình trên có dùng giao thức bảo mật SSL.Máy khách phải có chứng
chỉ số để cho máy dịch vụ nhận diện.Sử dụng chứng chỉ số để chứng thực có lợi
thế hơn khi dùng mật khẩu.Bởi vì nó dựa trên những gì mà ngƣời sử dụng có:
Khóa bí mật và mật khẩu để bảo vệ khóa bí mật.
Điều cần chú ý là chỉ có chủ máy khách mới đƣợc phép truy nhập vào máy
khách, phải nhập mật khẩu để vào cơ sở dữ liệu của chƣơng trình có sử dụng
khóa bí mật (mật khẩu này có thể phải nhập lại trong khoảng thời gian định kì
cho trƣớc).
Cả hai có chế xác thực trên đều phỉa truy nhập mức vật lý tới các máy cá
nhân.Mã hóa khóa công khai chỉ có thể kiểm tra việc sử dụng khóa bí mật tƣơng
ứng với khóa công khjai trong chứng chỉ số.Nó không đảm nhận trách nhiệm
bảo vệ mức vật lý và mật khẩu sử dụng khóa bí mật.Trách nhiệm này thuộc về
ngƣời dùng.

Các bước trong hình trên như sau:

Bƣớc 1: Phần mềm máy khách(ví dụ nhƣ Communicator) quản lý cơ sở dữ liệu
về các cặp khóa bí mật và khóa công khai.Máy khách sẽ yêu cầu nhập mật khẩu
để truy nhập vào cơ sở dữ liệu này chỉ một lần hoặc theo định kỳ.
Khi máy khách truy nhập vào máy dịch vụ có sử dụng SSL, để xác thực máy
khách dựa trên chứng chỉ số, ngƣòi dùng chỉ phải nhập mật khẩu một lần, họ
không phải nhập lại khi cần truy cập lần thứ hai.
Bƣớc 2: Máy khách dùng khóa bí mật tƣơng ứng với khóa công khai ghi trong
chứng chỉ, và kí lên dữ liệu đƣợc tạo ra ngẫu nhiên cho mục đích chứng thực từ
cả phía máy khách và máy dịch vụ.Dữ liệu này và chữ kí số thiết lập một bằng
chứng để xác định tính hợp lệ của khóa bí mật.Chữ kí số có thể đựoc kiểm tra
bằng khóa công khai tƣơng ứng với khóa bí mật đã dùng để kí, nó là duy nhất
trong mỗi phiên làm việc của giao thức SSL.
Bƣớc 3: Máy khách gửi cả chứng chỉ và bằng chứng (một phần dữ liệu đƣợc tạo
ngẫu nhiên và đƣợc kí) qua mạng.
Bƣớc 4: Máy dịch vụ sử dụng chứng chỉ số và bằng chứng đó để xác thực ngƣời
dùng.
Bƣớc 5: Máy dịch vụ có thể thực hiện tùy chọn các nhiệm vụ xác thực khác, nhƣ
vieẹc xem chứng chỉ của máy khách có trong cơ sở dữ liệu để lƣu trữ và quản lý
các chứng chỉ số.Máy dịch vụ tiếp tục xác định xem ngƣời sử dụng có quyền gì
đối với tài nguyên của hậ thống.

3. Chứng chỉ khóa công khai

Giới thiệu chứng chỉ khóa công khai
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
57
Khi một ngƣời muốn dùng kĩ thuật mã hóa khóa công khai để mã hóa một thông
điệp và gửi cho ngƣời nhận, ngƣời gửi cần một bản sao khóa công khai của
ngƣòi nhận.Khi một thành viên bất kỳ muốn kiểm tra chữ ký số, anh ta cần có
một bản sao khóa công khai của thành viên ký.Chúng ta gọi cả hai thành viên
mã hóa thông điệp và thành viên kiểm tra chữ kí số là những ngƣời sử dụng
khóa công khai.
Khi khóa công khai đƣợc gửi đến cho ngƣơì sử dụng, thì không cần thiết
phải giữ bí mật khóa công khai này.Tuy nhiên, ngƣời dùng khóa công khai phải
đảm bảo rằng khóa công khai đƣợc dùng, đúng là dành cho thành viên khác (có
thể là ngƣời nhận thông điệp có chủ định hoặc bộ sinh chữ ký số đƣợc yêu
cầu).Nếu kẻ phá hoại dùng khóa công khai khác thay thế khóa công khai hợp lệ,
nội dung các thông điệp đã mã hóa có thể bị lộ.Nhƣ vậy những thành viên không
chủ định khác sẽ biết đựoc các thông điệp hay các chữ ký số có thể bị làm
giả.Nói cách khác, cách bảo vệ (đƣợc tạo ra từ các kĩ thuật này) sẽ bị ảnh hƣởng
nếu kẻ truy nhập thay thế các khóa công khai không xác thực.
Đối với các nhóm thành viên nhỏ yêu cầu này có thể đƣợc thỏa mãn dễ dàng.Ví
dụ trƣờng hai ngƣời quen biết nhau, khi ngƣời này muốn truyền thông an toàn
với ngƣời kia, họ có thể đƣợc bản sao khóa công khai của nhau bằng cách trao
đổi các đĩa nhớ có ghi các khóa công khai của từng ngƣời.Nhƣ vậy đảm bảo
rằng các khóa công khai đƣợc lƣu giữ an toàn trên mỗi hệ thống cục bộ của từng
ngƣời.Đây chính là hình thức phân phối khóa công khai thủ công.
Tuy nhiên hình thức phân phối khóa công khai kiểu này bị coi là không thực tế
hoặc không thỏa đáng trong phần lớn các lĩnh vực ứng dụng khóa công khai, đặc
biệt khi số lƣợng sử dụng trở nên quá lớn hoặc ở phân tán.Các chứng chỉ khóa
công khai giúp cho việc phân phối khóa công khai trở nên có hệ thống.
Hệ thống cấp chứng chỉ khóa công khai làm việc như sau:
Một CA phát hành các chứng chỉ cho những ngƣời nắm giữ các cặp khóa công
khai và khóa riêng.Một chứng chỉ gồm khóa công khai và thông tin để nhận
dạng duy nhất chủ thể (Subject) của chứng chỉ.Chủ thể của chứng chỉ có thể là
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
58
một ngƣời, thiết bị, hoặc một thực thể khác có nắm giữ khóa riêng tƣơng
ứng.Khi chủ thể của chứng chỉ là một ngƣời hoặc một thực thể hợp pháp nào đó,
chủ thể thƣờng đƣợc nhắc đến nhƣ là một thực thể (Subscriber) của CA.Chứng
chỉ đƣợc CA kí bằng khóa riêng của họ.


















Hình 16: Chứng chỉ khóa công khai dựa trên CA

Một khi hệ thống các chứng chỉ đƣợc thiết lập, công việc của ngƣời dùng công
khai rất đơngiản.Ngƣời dùng cần khóa công khai của một trong các thuê bao của
CA, họ chỉ cần lấy bản sao chứng chỉ của CA, lấy ra khóa công khai, kiểm tra
chữ kí của CA có trên chứng chỉ hay không.Ngƣời dùng khóa công khai sử dụng
các chứng chỉ nhƣ trên đƣợc coi là thành viên tin cậy.Kiểu hệ thống này tƣơng
đối đơn giản và kinh tế khi thiết lập trên diện rộng và theo hình thức tự động bởi
vì một trong các đặc tính quan trọng của chứng chỉ là:
“Các chứng chỉ có thể được phát hành mà không cần phải bảo vệ thông qua các
dịch vụ an toàn truyền thông để đảm bảo sự tin cẩn xác thực và toàn vẹn”.
Chúng ta không cần giữ bí mật khóa công khai, nhƣ vậy các chúng chỉ
không phải là bí mật.Hơn nữa, ở đây không đòi hỏi các yêu cầu về tính xác thực
và toàn vẹn do các chứng chỉ tự bảo vệ (chữ kí số của CA có trong chứng chỉ
cung cấp bảo vệ xác thực và toàn vẹn).Một kẻ truy nhập trái phép định làm giả
chứng chỉ khi nó này đang đƣợc phát hành cho những ngƣời sử dụng khóa công
khai, những ngƣời dùng này sẽ phát hiện ra việc làm giả vì chữ kí số của CA
Khãa riªng cña CA
Sinh ch÷ kÝ sè
Th«ng tin ®èi t- îng
Khãa c«ng khai
cña ®èi t- îng
Tªn CA
Chữ kí CA
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
59
đƣợc kiểm tra chính xác.Chính vì thế các chứng chỉ khóa công khai đƣợc phát
hành theo cách không an toàn, ví dụ nhƣ: thông qua các máy chủ, hệ thống thƣ
mục, các giao thức truyền thông không an toàn.
Lợi ích cơ bản của hệ thống cấp chứng chỉ là: một ngƣời sử dụng khóa
công khai có thể có đƣợc số lƣợng lớn khóa công khai của các thành viên khác
một cách tin cậy, nhờ khóacông khai của CA.Lƣu ý rằng chứng chỉ số chỉ hữu
ích khi ngƣời dùng khóa công khai tin cậy CA phát hành các chứng chỉ hợp lệ.

4. Mô hình CA

Nếu việc thiết lập một CA (có thể phát hành các chứng chỉ khoá công khai cho
tất cả những ngƣời nắm giữ cặp khóa công khai và khóa riêng trên thế giới) là
khả thi và khi tất cả những ngƣời sử dụng khóa công khai tin cậy vào các chứng
chỉ đƣợc CA này phát hành thì ta giải quyết vấn đề phân phối khóa công khai.
Rất tiếc là điều này không thể thực hiện đƣợc.Đơn giản vì nó không thực tế đối
với một CA.Một CA không thể có đầy đủ thông tin và các mối quan hệ với các
thuê bao để có thể phát hành các chứng chỉ đƣợc tất cả những ngƣời dùng khóa
công khai chấp nhận.Vì vậy, chúng ta cần chấp nhận sự tồn tại của nhiều CA
trên thế giới.
Giả thiết khi có nhiều CA, một ngƣời dùng nắm giữ khoá công khai của một CA
xác định (CA này đã phát hành chứng chỉ cho thành viên mà ngời sử dụng khóa
công khai muốn truyền thông an toàn) một cách bí mật là không thực tế. Tuy
nhiên, để có đƣợc khóa công khai của CA, ngƣời dùng có thể tìm và sử dụng
một chứng chỉ khác, nó chứa khóa công khai của CA này nhƣng do CA khác
phát hành khóa công khai của CA này đƣợc ngƣời sử dụng nắm dữ an toàn.

5. Một số giao thức bảo mật ứng dụng trong TMĐT

Các vấn đề bảo mật ứng dụng Web

Word Wide Web có cơ sở ứng dụng là client/sever chạy trên Internet và
các mạng Intranet với giao thức ICP/IP. Những thách thức mới đối với bảo mật
Web đã trở thành cần thiết hơn bao giờ hết nhất là trong cách mạng bối cảnh các
mạng máy tính và các dịch vụ sử dụng Web ngày càng phát triển.
Internet nhƣ con dao hai lƣỡi. Không giống những môi trƣờng truyền
thống nhƣ những hệ thống điện tín, đàm thoại, fax, các Web sever luôn có nguy
cơ phải hứng chịu các cuộc tấn công trên toàn bộ mạng Internet.
Có nhiều giải pháp cho vấn đề bảo mật ứng dụng Web cũng nhƣ các Web
sever liên quan đều rất dễ sử dụng, cấu hình hoặc quản lí. Nội dung của các web
side này cũng ngày càng phong phú, phản ánh tính đa dạng của thông tin, và tất
nhiên không loại trừ những webside không trƣớc đƣợc bởi chúng ẩn dƣới những
lớp vỏ đƣợc che chắn một cách khéo léo. Lịch sử ngắn ngủi của Web đƣợc phản
ánh bởi những hệ thống đƣợc nâng cấp và phát triển mới mà ở đó vẫn có những
nguy cơ bị tấn công vào các lỗ hổng bảo mật.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
60
Có nhiều giải pháp cho vấn đề bảo mật đã đƣợc đua ra, các nhà nghiên
cứu chủ yếu tập trung vào việc nghiên cứu và xem xét nhằm cải tiến các dịch vụ
đã cung cấp và các kĩ thuật đã đƣợc sử dụng, nhƣng với một cách tiếp cậ mới
trong giới hạn của giao thức ICP/IP. Hình 3.1a cho ta thấy sự khác biệt này, đó
chính là việc cung cấp cơ chế bảo mật cho IP. Tiến bộ này của IPSec thể hiện ở
chỗ nó tạo một kênh thông suốt, kênh sạch,giữa ngƣời sử dụng cuối với ứng
dụng nhƣ là một giải pháp thông nhất.Hơn nữa,IPSec còn chứa một bộ lọc đặc
biệt để lựa chọn tuyến giao vận tránh hiện tƣợng tràn bộ nhớ trong quá trình xử
lý của IPSec.







(b) Transport Level (a)Network Level (c) Application
Level

Hình 17: Vị trí của các phƣơng tiện bảo mật trong cấu trúc của giao thức
TCP/IP
Một giải pháp nữa là cải tiến cơ chế bảo mật trên giao thức TCP, một
trong những ý tƣởng dẫn dắt đến sự ra đời của giao thức Secure Sockets layer
(SSL) và Transprot layer Security (TLS). Ở tầng này, có hai sự lựa chọn là SSL
hoặc là TLS, SSL đƣợc cung cấp nhƣ là một giao thức hỗ trợ nên có hoàn toàn
có thể bảo mật bất kì giao thức ứng dụng nào đƣợc xếp trên lớp TCP một cách
trong suốt.Ngoài ra, SSL còn có thể đƣợc gắn vào các ứng dụng nhƣ một gói đặc
biệt, ví dụ nhƣ các trình duyệt IE và Netscape đều đƣợc trang bị SSL, các Web
server cũng đều đã đƣợc bổ sung giao thức này.
Một đặc trƣng khác của các dịch vụ bảo mật là việc chúng đƣợc gắn bên
trong các dịch vụ bảo mật , hình 3.1c là một ví dụ cho kiến trúc dạng này. Sự
thay đổi mới này thể hiện ở chỗ các dịch vụ có thể thích úng với các thành phần
cần thiết nhất định của úng dụng. Trong bối cảnh chung của vấn đề bảo mật úng
dụng web, SET(Secure Electrolic Transaction) là một ví dụ tiêu biểu cho cách
tiếp cận này.
5.2 SSL và TLS
Nhƣ đã đề cập ở trên, hai giao thức bảo mật quan trọng lớp vận chuyển
(Layer Transport) có tầm quan trọng rất lớn đối với sự bảo mật của các trình úng
dụng trên web đó là SSL và TLS .
Cho đến nay, đã có 3 phiên bản của SSL:
- SSL 1.0: Đƣợc sử dụng nội bộ chỉ bởi Netcape Communications 1.0. Nó
chứa một số khuyết điểm nghiêm trọng và không bao giờ đƣợc tung ra
bên ngoài.
HTT
P
FTP SMTP
00
TCP

IP/IPSPec
SMTP HTTP
TCP
IP
TCP
Kerbero
s
S/MINE PGP SET
IP
HTT
P
SMT
P
FPT

SSL or TLS
UDP
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
61
SSL
Ghandshaks
protocol
SSl change
Cipher Spec
protocol
SSL,
Aliert
protocol

HTTR
SSl Record Layer
TCP
LDAP
cac
- SSL 2.0: Đƣợc kết nhập vào Netscape Communications 1.0 đến 2.x. Nó
có một số điểm yếu liên quan đến sự hiện thân cụ thể của cuộc tấn công
của đối tƣợng trung gian.Trong một nỗ lực nhằm dùng sự không chắc
chắn của công chúng về bảo mật của SSL. Microsoft cũng đã giớ thiệu
giao thức PCT (Private Communication Technology) cạnh trang trong lần
tung ra Internet Explorer đầu tiên của nó vào năm 1996.
- SSL 3.0: Netscape Communications đã phản ứng lại sự thách thức PCT
của Microsoft bằng cách giới thiệu SSL 3.0. Vốn giải quyết các vấn đề
trong SSL 2.0 và thêm một số tính năng mới. Vào thời điểm này
Microsoft nhƣợng bộ và đồng ý hỗ trợ trong tất cả các phiên bản phần
mềm dựa vào TCP/IP của nó.

5.2.1 Kiến trúc của SSL

Cấu trúc của SSL và giao thức của SSL tƣơng ứng đƣợc minh họa trong
hình 1.1. Theo hình này, SSL ám chỉ một lớp ( bảo mật) trung gian giữa lớp vận
chuyển (Transport Layer) và lớp ứng dụng (Applycation Layer). SSL đƣợc xếp
lớp lên trên một dịch vụ vận chuyển định hƣớng nối kết và đáng tin cậy, chẳng
hạn nhƣ đƣợc cung cấp bởi TCT. Về khả năng nó có thể cung cấp các dịch vụ
bảo mật cho các giao thức ứng dụng tùy ý dựa vào TCP chứ không phải chỉ
HTTP. Thực tế, một ƣu điểm chính của các giao thức bảo mật lớp vận chuyển
(Transport Layer) nói chung và giao thức SSL nói riêng là chúng độc lập với
ứng dụng theo nghĩa là chúng có thể đƣợc sử dụng để bảo vệ bất kỳ giao thức
ứng dụng đƣợc xếp lớp lên trên TCP một cách trong suốt. Hình 2.2 minh họa
một số giao thức ứng dụng điểm hình bao gồm NSIIOP, HTTP, FTP, Telnet,
IMAP, IRC, POP3. Tất cả chúng có thể đƣợc bảo vệ bằng cách xếp lớn chúng
trên SSL (mẫu tự S đƣợc thêm vào trong các kỳ ghép giao thức tƣơng ứng chỉ
định việc sử dụng SSL). Tuy nhiên chú ý rằng SSL có môt định hƣớng Client-
sever mạnh mẽ và thật sự không đáp ứng các yêu cầu của các giao thức ứng
dụng ngang hàng.


HTTP SMTP
Application
Layer
……………………………………………………………………………………
…………

Transport
Layer
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
62
IP
…………………………………………….............................................................
..............
Internet
Layer
……………………………………………………………………………………
………...

Network
Layer

Hình 18: Kiến trúc của SSL

Tóm lại, giao thức SSL cung cấp sự bảo mật truyền thông vốn có 3 đặc tính
cơ bản
1. Các bên giao tiếp (nghĩa là Client và server) có thể xác thực nhau bằng
cách sử dụng mật mã khóa chung.
2. Sự bí mật của lƣu lƣợng dữ liệu đƣợc bảo vệ vì nối kết đƣợc mã hóa trong
suốt sau khi một sự thiết lập quan hệ ban đầu và sự thƣơng lƣợng khóa
session đã xảy ra.
3. Tính xác thực và tính toàn vẹn của lƣu lƣợng dự liệu cũng đƣợc bảo vệ vì
các thông báo đƣợc xác thực và đƣợc kiểm tra tính toán toàn vẹn một cách
trong suốt bằng cách sử dụng MAC.
Tuy nhiên điều quan trọng cần lƣu ý là SSL không ngăn các cuộc tấn
công phân tích lƣu lƣợng.ví dụ: bằng cách xem xét các địa chỉ IP nguồn và đích
không đƣợc mã hoá và các số cổng TCP, hoặc xem xét lƣợng dữ liệu đƣợc
truyền, một ngƣời vẫn phân tích lƣu lƣợng vẫn có thể xác định các bên nào dang
tƣơng tác, các loại dịch vụ nào đang đƣợc sử dụng, và đôi khi ngay cả khi dành
đƣợc thông tin về các mối quan hệ doanh nghiệp hoặc cá nhân. Hơn nữa SSL
không ngăn các cuộc tấn công có định hƣớng dựa vào phần thực thi TCP chẳng
hạn nhƣ các cuộc tấn công làm tràn ngập TCP SYN hoạc cƣỡng đoạt sesion. Để
sử dụng sự bảo vệ của SSL cả client lẫn server phải biết rằng phía bên kia đang
sử dụng SSL. Nói chung có ba khả năng giải quyết vấn đề này :
1. Sử dụng các sổ cổng chuyên dụng đƣợc dành riêng bởi internet asigned
numbers Authority (IANA) .Trong trƣờng hợp này một số cổng riêng biệt phải
đƣợc gán cho mọi iao thức ứn dụng vốn sử dụng SSL.
2. Sử dụng số cổng chuẩn cho mọi giao thức ứng dụng và để thƣơng lƣợng
các tuỳ chọn bảo mật nhƣ là một phần của giao thức ứng dụng .
3. sử dụng một tuỳ chọn TCP để thƣơng lƣợng việc sử dụng một giao thức
bảo mật, chẳng hạn nhƣ SSL trong suốt giai đoạn thiết lập nối kểt TCP thông
thƣờng.
Sự thƣơng lƣợng dành riêng cho ứng dụng của các tùy chọn bảo mật
(nghĩa là khả năng thứ hai) coá khuyết điểm là đòi hỏi mọi giao thức ứng dụng
đƣợc chỉnh sửa để hiểu tiến trình thƣơng lƣợng. Ngoài ra, việc xác định một tuỳ
chọn TCP (nghĩa là khả năng thứ 3) là một giải pháp tốt, nhƣng nó không đƣợc
Network Access
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
63
thảo luận nghiêm túc cho đến bây giờ. Thực tế, các số cổng riêng biệt đã đƣợc
dành riêng và đƣợc gán bởi IANA cho mọi giao thức ứng dụng vốn có thể chạy
trên SSL hoặc TLS (nghĩa là khả năng thứ nhất). Tuy nhiên, háy chú ý việc sử
dụng các số cổng riêng biệt cũng có khuyết điểm là đòi hỏi hai nối kết TCP nếu
client không biết những gì mà server hỗ trợ. Trƣớc tiên, client phải nối kết với
cổng an toàn và sau đó với cổng không an toàn và ngƣợc lại. Rất có thể các giao
thức sau này sẽ huỷ bỏ phƣơng pháp này và tìm khả năng thứ hai. Ví dụ, SALS
(Simple Authentication và Security Layer) xác định một phù hợp để thêm sự hỗ
trợ xác thực vào các giao thức ứng dụng dựa vào kết nối. Theo thông số kỹ thuật
SALS, việc sö dụng các cơ chế xác thực có thể thƣơng lƣợng giữa client và
server của một giao thức ứng dụng đã cho.
Sè cæng ®-îc g¸n bëi IANA cho các giao thức ứng dụng vốn vốn chạy
trên SSL/TLS đƣợc tóm tẳt trong bảng 2.1. Ngày nay, ”S” chØ định việc sử
dụng SSL đƣợc thêm (hậu tố) nhất quán vào các từ ghép của các giao thức ứng
dụng tƣơng ứng (trong một số thuật ngữ ban đầu, S đƣợc sử dụng và đƣợc thêm
tiền tố một cách không nhất quán và một số từ ghép).
Bảng 2.1 : Các số cổng đƣợc gán cho các giao thức ứng dụng chạy trên
TLS/SSL

Từ khoá Cổng Mô tả
Nsiiop 261 Dịch vụ tên IIOP trên TLS/SSL
Https 443 HTTP trên TLS/SSL
Smtps 465 SMTP trên TLS/SSL
Nntps 563 SMTP trên TLS/SSL
Ldaps 636 LDAP trên TLS/SSL
Ftps-data 989 FTP (dữ liệu) trên TLS/SSL
Ftps 990 FTP (Điều khiển) trên TLS/SSL
Tenets 992 TELNET trên TLS/SSL
Imaps 994 INC trên TLS/SSL
Pop3s 995 POP3 trên TLS/SSL

Nói chung, một session SSL có trạng thái và giao thức SSL phải khởi
tạo và duy trì thông tin trạng thái ở một trong hai phía của sesion. Các phần tử
thông tin trạng thái sesion tƣơng ứng bao gồm một session ID, một chứng nhận
ngang hàng, một phƣơng pháp nén, một thông số mật mã, một khoá mật chính
và một cờ vốn chỉ định việc sesion có thể tiếp tục lại hay không, đƣợc tóm tát
trong bảng 2.2. Một session SSL có thể đƣợc sử dụng trong một số kết nối và
cácthành phần thông tin trạng thái nối kết tƣơng ƣng đƣợc tóm tắt trong bảng
2.3 .chúng bao gồm các tham số mật mã, chẳng hạn nhƣ các chuỗi byte ngẫu
nhiên server và client các khoá mật MAC ghi server và client, các khoá ghi
server và client, một vector khởi tạo và một số chuỗi. Ở trong hai trƣờng hợp,
điều quan träng cÇn lƣu ý là các phía giao tiếp cÇn sử dụng nhiều session SSL
đồng thời và các session có nhiều nối kết đồng thời
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
64





Bảng 2.2 : Các thành phần thông tin trạng thái Session SSL

Thành phần Mô tả
Session ID Định dạng đƣợc chọn bởi server để nhận dạng một
trạng thái session hoạt động hoặc có thể tiếp tục
lại.
Peer certificate Chứng nhận X.509 phiên bản 3 của thực thể ngang
hàng.
Compression
method
Thuật toán dùng để nén dữ liệu trƣớc khi mã hõa.
Ciphr spec Thông số của các thuật toán mã hoá dữ liệu và
MAC.
Mater sercet Khoá mật 48 - byte đƣợc chia sẻ giữa client và
server.
Is resumable Cờ vốn biểu thị session có thể đƣợc sử dụng để bắt
đầu các nối kết mới hay không.

Bảng 2.3: Các thành phần thông tin trạng thái nối kết SSL.

Thành phần Mô tả
Ngẫu nhiên
server và client
Các chuỗi byte đƣợc chọn bởi server và client cho
mỗi nối kết.
Khoá mật Khoá mật đƣợc sử dụng cho các hoạt động MAC
trên dữ liệu.
MAC ghi
server
Đƣợc ghi bởi server.
Khoá mật
MAC ghi client
Khoá mật đƣợc sử dụng cho các hoạt động MAC
trên dữ liệu đƣợc ghi bởi client.
Khoá ghi
server
Khoá đƣợc sử dụng cho việc mã hoá dữ liệu bởi
server và giải mã bởi client.
Khoá ghi client Khoá đƣợc sử dụng cho việc mã hoá dữ liệu bởi
client và giải mã bởi server.
Initialization
vector
Trạng thái khởi tạo cho một mật mã khổitong chế độ
CBC.Trƣờng này đƣợc khởi tạo đầu tiên bởi SSL
Handshake player. Sau đó khối đoạn văn bản mật
mã sau cùng từ mỗi bản ghi đƣợc dành riêng để sử
dụng với bản ghi sau đó.
Sè chuçi Mỗi phía duy trì các số chuỗi riêng biệt cho các
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
65
thông báo đƣợc chuyền và đƣợc nhận cho mỗi nối
kết.

Giao thức con SSL quan träng nhất là SSL Handshake protocol. Lần
lƣợt giao thức này là một giao thức xác thực và trao ®æi khoá vốn có thể đƣợc
sử dụng để thƣơng lƣợng. Khởi tạo và đồng bộ hoá các tham số bảo mật và
thông tin trạng thái tƣơng ứng đƣợc ®Æt ở trong một hai điểm cuối của một
session hoặc nối kết SSL.
Sau khi SSL Handshake protocol đã hoàn tất dữ liệu ứng dụng có thể
đƣợc gửi và đƣợc nhận bằng cách sử dụng SSL Record protocol và các tham số
bảo mật đƣợc thƣơng lƣợng và các thành phần thông tin trạng thái.

5.2.2 SSL Record protocol :


Hình 19: Các bƣớc SSL Record protocol

SSL Record Protocol nhận dử liệu từ các dao thức con SSL lớp cao hơn và sử lý
việc phân đoạn, nén, xác thực và mã hoá dữ liệu. Chính xác, giao thức này lấy
một khối dữ liệu có kích cỡ tuỳ ý làm dữ liệu nhập và toạ một loạt các đoạn dữ
liệu nhập và tao một loạt các đoạn dữ liệu SSL làm dữ liệu xuất (hoặc còn đƣợc
gọi là các bản ghi) nhỏ hơn hoặc bằng 16,83 byte.
Các bƣớc khác nhau của SSL Record Protocol vốn đi từ một đoạn
dữ liệu thô đến một bản ghi SSL Plaintext (bƣớc phân đoạn), SSL Compressed
(bƣớc nén) và SSL ciphertext (bƣớc mã hoá) đƣợc minh hoạ trong hình 2.3. Sau
cùng, mỗi bản SSL chứa các bản thông tin sau đây:
Application layer
Change
Cipher
Spec
SSL
Alert
Protocol
SSL
Handshake
Protocol

SSL Record protocol
TCP protocol

IP protocol

SSL 3.0
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
66
 Loại nội dung: xác định giao thức lớp cao hơn vốn ophải đƣợc sử dụng để
sau đó xử lý độ lớn dữ liệu bản ghi SSL (sau khi giải nens và giải mã hoá
thích hợp).
 Số phiên bản của giao thức: xác định phiên bản SSL đang sử dụng
(thƣờng là version 3.0)
 Độ dài;
 Độ lớn dữ liệu (đƣợc nến và đƣợc mã hoá tuỳ ý): độ lớn dữ liệu bản ghi
SSL đƣợc nén và đƣợc mã hoá theo phƣơng thức nén hiện hành và thông
số mật mã đƣợc xác định cho session SSL.
 MAC.
Lúc đầu mỗi session SSL,phƣơng pháp nén và thông số mật mã thƣờng
đƣợc xác định là rỗng. Cả hai đƣợc xác lập trong xuốt quá trình thực thi ban đầu
SSL Handshake Protocol.Sau cùng MAC đƣợc thêm vào các bản ghi SSL. Nó
cung cấp các dich vụ xác thực nguồn gốc thông ban\ó c\và tính toàn vẹn dữ liệu.
Tƣơng tự nhƣ thuật toán mã hoá, thuật toán vốn đƣợc sử dụng để tính và xác
nhận MAC đƣợc xác định trong thông số mật mã của trạng thái session hiện
hành. Theo mặc định,SSL Record Protocol sử dụng một cấu trúc MAC vốn
tƣơng tự nhƣng vẫn khác với cấu trúc HMAC hơn. Có ba điểm khác biệt chính
giữa cấu trúc SSL MAC và cấu trúc HMAC:
1. Cấu trúc SSL MAC có một số chuỗi trong thông báo trƣớc khi hash để
ngăn các hình thức tấn công xem lại riêng biệt.
2. Cấu trúc SSL MAC có chiều dài bản ghi.
3. Cấu trúc SSL MAC sử dụng các toán tử ghép, trong khi cấu trúc MAC sử
dụng module 2.
Tất cả các điểm khác biệt này hiện hữu chủ yếu vì cấu trúc SSL MAC
đựoc sử dụng trƣớc cấu trúc HMAC cũng đƣợc sử dụng cho thông số ki thuật
giao thức bảo mật Internet. Cấu trúc HMAC cũng đƣợc sử dụng cho thông số kĩ
thuật giao thức TSL gần đây hơn.
Nhƣ đƣợc minh hoạ trong hình 2.3 một số giao thức con SSL đƣợc xếp
lớp trên SSL Record Protocol. Mỗi giao thức con có thể tham chiếu có thể thông
báo đến các loại thông báo cụ thể vốn đƣợc gửi bằng cách sử dụng SSL Record
Protocol. Thông số kĩ thuật SSL 3.0 xác định ba giao thức SSL sau đây:
 Alert Protocol;
 Handshake Protocol;
 ChangeCipherpec Protocol;
Tóm lại, SSL Alert Protocol đƣợc sử dụng để chuyển các cảnh báo thông
qua SSL Record Protocol. Mỗi cảnh báo gồm 2 phần, một bức ảnh báo và một
mô tả cảnh báo.
SSL Handshake Protocol là giao thức con SSl chính đƣợc sử dụng để
hỗ trợ xác thực client và server và để trao đổi một khoá session. Do đó SSL
Handshake Protocol trình bày tổng quan và đƣợc thảo luận trong phần tiếp theo.
Sau cùng, SSL ChangeCipherpec Protocol đƣợc sử dụng để thay đổi
giữa một thông số mật mã này và một thông số mật mã khác. Mặc dù thông số
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
67
mật mã thƣờng đƣợc thay đổi ở cuối một sự thiết lập quan hệ SSL, nhƣng nó
cũng có thể đƣợc thay đổi vào bất kỳ thời điểm sau đó.
Ngoài những giao thức con SSL này, một SSL Application Data
Protocol đƣợc sử dụng đê chuyển trực tiếp dữ lệu ứng dụng đến SSL Record
Protocol.
5.2.3 SSL Handshake Protocol
SSL Handshake Protocol là giao thức con SSL chính đƣợc xếp lớp trên
SSL Record Protocol. Kết quả, các thông báo thiết lập quan hệ SSL đƣợc cung
cấp cho lớp bản ghi SSL nơi chúng đƣợc bao bọc trong một hoặc nhiều bản ghi
SSL vốn đƣợc xử lý và đƣợc chuyển nhƣ đƣợc xác định bởi phƣơng pháp nén và
thông số mật mã của session SSL hiện hành và các khoá mật mã của nối kết SSL
tƣơng ứng. Mục đích của SSL Handshake Protocol là yêu cầu một slient và
server thiết lập và duy trì thông tin trạng thái vốn đƣợc sử dụng để bảo vệ các
cuộc liên lạc. Cụ thể hơn, giao thức phải yêu cầ slient và server chấp thuận một
phiên bản giao thức SSL chung, chọn phƣơng thức nén và thông phức nén và
thông số mật mã, tuỳ ý xác thực nhau và tạo một khoá mật chính mà từ đó các
khoá ssession khác nhau dành cho viêc xác thực và mã hoá thông báo có thể
đƣợc dẫn xuất từ đó.
Tóm lại, việc thực thi SSL Handshake Protocol giữa một slient C và một
server S có thể đƣợc tóm tắt nhƣ sau (các thông báo đƣợc đặt trong các dấu
ngoặc vuông thì tuỳ ý):


Client Server
Client Hello
Server Hello
Server Certificate
Server Hello Done
Client Key Exchange
Change Cipher specification
Hình 20:
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
68
Handshake Finished
Change Cipher specifications

Khi Client C muốn kết nối với server S, nó thiết lập một nối kết TCP với
cổng HTTPS (vốn không đƣợc đƣa vào phần mô tả giao thức) và gởi một thông
báo CLIENTHELLO đến server ở bƣớc 1 của sự thực thi SSL Handshake
Protocol. Client cngx có thể gởi một thông báo CLIENT HELLO nhằm phản hồi
lại một thông báo HELLOREQUEST hoặc chủ động thƣơng lƣợng lại các tham
số bảo mật của một nối kết hiện có. Thông báo CLIENTHELLO bao gồm các
trƣờng sau đây:
 Số của phiên bản SSL cao nhất đƣợc biểu hiện bởi client (thƣờng là
3.0t).
 Một cấu trúc ngẫu nhiên do client tạo ra gồm một tem thời gian 32 bit
có dạng UNIX chuẩn và một giá trị 28 byte đƣợc tạo ra bởi một bộ tạo số giả
ngẫu nhiên.
 Một định danh session mà client muốn sử dụng cho nối kết này.
 Một danh sách các bộ mật mã client hỗ trợ.
 Một danh sách các phƣơng pháp nén mà client hỗ trợ.
Chú ý rằng trƣờng session identity (định danh session) nên rỗng nếu
session SSL hiện không tồn tại hoặc nếu client muốn ạo clientáclient ham số bao
mật mới. ở một trong hai trƣờng hợp, một trƣờng session identity không rỗng là
xáclient định một session SSL hiệ có giữa client và server (nghĩa là một session
có các tham số bảo mật mà client muốn sử dụng lại). Định danh session có thể
bắt nguồn từ một nối kết trƣớc đó, nối kết này hoăc một nối kết đang hoạt động.
Cũng chú ý rằng danh sách các bộ mật mã đƣợc hỗ trợ, đƣợc chuyển từ client
đến server trong thông báo CLIENTHELLO, chứa các tổ hợp thuật toán mật mã
đƣợc hỗ trợ bởi client theo thứ tự ƣu tiên. Mỗi bộ mật mã xác định một thuật
toán trao đổi và một thuật toán trao đổi khoá và một thông báo mật mã. Server
sẽ chọn một bộ mật mã hoặc nếu các lựa chọn có thể chấp nhận đƣợc không
đƣợc trình bày, trả về một thông báo lỗi và đóng nối kết một cách phù hợp. Sau
khi đã gởi thông báo CLIENTHELLO. Client đợi một thông báo SERVER
HELLO. Bất kì thông báo khác đƣợc trả về bởi server ngoại trừ một thông báo
HELLOREQUEST đƣợc xem nhƣ là một lỗi vào thời điểm này.
ở bƣớc 2, server sử lí thông báo CLIENTHELLO và đáp ứng bằng một
thông báo lỗi hoặc thông báo SERVER HELLO. Tƣơng tự nhƣ thông báo
CLIENTHELLO, thông báo SERVER HELLO có các trƣờng sau đây:
 Một số phiên bản server chứa phiên bản thấp hơn của phiên bản đƣợc
đề nghị bởi client trong thông báo CLIENTHELLO và đƣợc hỗ trợ cao nhất bởi
Server.
 Một cấu trúc ngẫu nhiên do server tạo ra cũng gồm một tem thời gian
32 bit có dạng UNIX chuẩn và một giá trị 28 bit đƣợc tạo ra bởi một bộ tạo số
ngẫu nhiên.
 Một đinh danh session tƣơng ứng với kết nối này.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
69
 Một bộ mật mã đƣợc chọn bởi server từ danh sách các bộ mật mã đƣợc
hỗ trợ bởi client.
 Một phƣơng pháp nén đƣợc chọn bởi server từ danh sách các thật toán
nén đƣợc hỗ trợ bởi client.
Nếu định danh session trong thông báo CLIENTHELLO không rỗngN,
server tìm trong cache session của nó nhằm tìm ra một mục tƣơng hợp. Nếu mục
tƣơng hợp đƣợc tìm thấy và server muốn thiết lập nối kết bằng cách sử dụng
trạng thái session tƣơng ứng, server đáp ứng bằng cùng một giá trị nhƣ đƣợc
cung cấp bởi client . Chỉ định này là một session đƣợc tiếp tục lại và xác định
rằng cả hai phía phải tiến hành trực tiếp với các thông báo
CHANGECIPHESPEC và FINISHED đƣợc trình bày thêm bên dƣới. Nếu
không, trƣờng này chứa một giá trị khác nhận biết một session mới. Server cũng
có thể trả về một trƣờng đnhjdanh session rỗng đễ biểu thị rằng session sẽ không
đƣợc lƣu trữ và do đó không thể đƣợc tiếp tục sau đó. Cũng chú ý rằng thông
báo SERVERHELLO, server đƣợc chọn một bộ mật mã và một phƣơng pháp
nén từ các danh sách đƣợc cung cấp bởi client trong thông báo CLIENTHELLO
. Các thuật tón trao đổi khoá, xác thực, mã hoá và xác thực thông báo đƣợc xác
định bởi bộ mã đƣợc chọn bởi server và đƣợc làm lộ ra trong thông báo
SERVERHELLO. Các bộ mật mã vốn đã đựoc xác định trong giao thức SSL về
cơ bản giống nhƣ bộ mật mã đã xác định cho TLS
Ngoài thông báo SERVERHELLO, server cũng phải gởi các thông báo
khác đến client. Ví dụ, nếu server đƣợc sử dụng sự xác thực dựa vào chứng
nhân, server gởi chứng nhận site cả nó đến client trong một thông báo
CERTIFICATE tƣơng ứng. Chứng nhận phải thích hợp cho thuật toán trao đôI
kháo cua bộ mật mã đƣợc chọn và thƣờng là một chứng nhận X 509v3. cùng
loại thông báo server đƣợc sử dụng sau đó cho sự đáp ứng của client đối với
thông báo CERTIDICATERequest của server . Trong trƣờng hợp các chứng
nhận X 509v3, một chứng nhận có thể thực sự tham chiếu đén toàn bộ mỗi chuỗi
các chứng nhận, đƣợc sắp xếp theo thứ tự với chứng nhận ca đối tƣợng gởi trƣớc
tiên theo sau là bất kỳ chứng nhận CA tiến hành theo tnhf tự hƣớng đến một CA
gốc (vốn đƣợc chấ nhận bởi clientv).
Tiếp theo, server có thể gửi thông báo SERVERKEYEXCHANGE đến client nế
nó không có chứng nhận, vốn có đƣợc sử dụng chỉ để xác định các chữ ký kĩ
thuật số hoặc sử dụng thuật toán trao đổi khoá dựa vào token FORITEZZA
(KEA). Rõ ràng thông báo này không đƣợc yêu cầu nếu chứng nhân site gồm
một khoá chung RSA vốn có thể đƣợc sử dụng trong việc mã hoá.Ngoài ra một
server không nặc danh có thể tuỳ ý yêu cầu một chứng nhận cá nhân để xác nhận
client. Do đó, nó gửi một thông báo CERTIFFICATATERequest đến client.
Thông báo này chứa một danh sách các loại chứng nhận đuợc yêu cầu,
đƣợc phân loại theo thứ tự ƣu tiên của server cũng nhƣ một danh sách các tên
đyựơc phân biệt cho các CA có thể chấp nhận. Ở cuối bƣớc 2, server gửi một
thông báo SERVERHELLODone đến client để chỉ định sự kết thúc
SERVERRHLLO và các thông báo kèm.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
70
Sau khi nhận SERVERHELLO và các thông tin đi kèm, client xác nhận
rằng chứng nhận site server (nếu đƣợc cung cấp) là hợp lệ và kiểm tra nhằm bảo
đảm các thông số bảo mạt đƣợc cung cấp trong thông báo SERVERHELLO có
thể đƣợc chấp nhận. Nếu server yêu cầu sự xác thực client, client gửi một thông
báo CERTIFICATE vốn chúa một chứn nhận cá nhân cho khoá chung của ngƣời
dùng đến server ở bƣớc 3.
Tiếp theo, client gửi một thông báo CLIENTKEYEXCHANGE có dạng phụ
thuộc vào thuật toán cho mỗi khoá chọn bởi server.
Nếu RSA đƣợc sử dụng cho việc xác thực server và trao đổi khoá, client
tạo một khoá mật tiềnchính 48 byte, mã hoá nó bằng mã chung đƣợc tìm thấy
trong chứng nhận site hoặc khoá RSA tạm thời từ thông báo
SERVERKEYEXCHSNGE và gửi kết quả troqr về trong thông báo
CLIENTKEYEXCHANGE. lần lƣợt server sử dụng khoá đơn để giả mã khoá
mật chính.
Nếu các token FORTEZZA đƣợc sử dụng để trao đổi khoá, client dẫn
xuất một khoá mã hoá token (TEK) bằng cách sử dụng KEA. Cách tìm KEA của
client sử dụng khoá chung từ chứng nhận server cùng với một số tham số riêng
trong token của client. Client gửi các tham số chung cần thiết cho server để cũng
tạo TEK, sử dụng các tham số riêng của nó. Nó tạo một khoá mật chính, bao bọc
nó bằng cách sử dụng TEK và gửi kết quả cùng với một số vector khởi tạo đến
server nhƣ là một phần của thông báo CLIENTKEYEXCHANGE. Lần lƣợt
server có thể giải mã khoá mật chính một cách thích hợp. Thuật toán trao đổi
khoá này không đƣợc sử dụng rộng rãi.
Nêu s sự xác thực client đƣợc yêu cầu, client cũng gửi một thông báo
CERTIFICATEVERIFY đến server. Thông báo này đƣợc sử dụng đẻ cung cấp
sự xác thực rõ ràng định danh cua ngƣời dựa vào chứng nhận các nhân. Nó chỉ
đƣợc gửi theo sau một chứng chỉ client vốn có khả năng tạo chữ kí (tất cả các
chứng nhận ngoại trừ các chứng nhận chứa các tham số Diffehallman cố định).
Sau cùng, client hoàn tất bƣớc 3 bằng cách guỉ 1 thông báo
CHAGECIPHERSPEC và một thông báo FINIHED tƣơng ứng tới server. Thông
báo FINIHED luôn đƣợc guỉƣ ngay lập tức sau thông báo
CHANGERCIPERSPEC để xác nhận rằng các tiến trình trao đổi khoá và xác
thực đã thành công. Thực tế thông báo FINISHED là thong báo đầu tiên vốn
đƣợc bảo vệ bằng các thuật toán mới đuợc thƣơng lƣợng và các khoá session.
Nó chỉ có thể đƣợc tạo và đƣợc xác nhận nếu nhƣng khoá này đƣợc cài đặt một
cách phù hợp ở cả hai phía. Không đòi hỏi sự báo nhận thông báo FINISHED;
các phía có thể bắt đầu gửi dữ liệu đƣợc mã hoá ngay lập tức sau khi đã gởi
thông báo FINISHED. Việc thực thi SSL Handshake Protocol hàn tất bằng việc
cũng yêu câỳu server gơI một thông báo SERVERKEYEXCHANGE và một
thông váo FINISHED tƣơng ứng đến client ở bƣớc 4.
Sau khi thiết lập SSL hoàn tất, một nối kết an toàn đƣợc thiết lập giữa các
client và server . nối kết này bây giờ có thể đƣợc sử dụng để gởi dữ liệu ứng
dụng vốn đƣợc bao bọc bởi SSL Record Protocol. Chính xác hơn, dữ liệu ứng
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
71
dụng có thể đƣợc phân đoạn, đƣợc nén, hoặc đợc mã hoá và đƣợc xác thực theo
SSL Record Protocol cũng nhƣ thông tin trạng tháI session và nối kết vốn bây
giờ đƣợc thiết lập (tuỳ thuộc việc thực thi SSL Handshake Protocolt)
SSL Handshake Protocol có thể đƣợc rút ngắn nếu client và server quyết
định tiếp tục lại một session SSL đƣợc thiết lập trƣớc đó (và vẫn đƣợc lƣ trữv)
hoặc lặp lại một session SSL hiện có. Trong trƣờng hợp này, chỉ ba dòng thông
báo và tông cộng sáu thông báo đƣợc yêu cầu, Các dòng thông báo tƣơng ƣng có
thể tóm tắt nhƣ sau:
1: C -> S: CLIENTHELLO
2: S-> C: SERVERHELLO
CHANECIPHERSPEC
FINISHES
3: S-> CHANECIPHERSPEC INISHES
ở bƣớc một, client gởi một thông báo CLIENTHELLO đến server vốn có
mặc định danh session cần đƣợc tiếp tục lại. Lần lƣợt các server kiểm tra cache
session của nó để tìm một mục tƣơng hợp. Nếu một mục tƣơng hợp đƣợc tìm
thấy, server muốn tiếp tục lại nối kết bên dƣới trạng tháI session đã xác định, nó
trả về một thông báo SERVERHELLO với cùng một định danh session ở bƣớc
2. Vào thời điểm này, cả client lẫn server phảogởi các thông báo
CHANECIPHERSPEC và FINISHES đến nhau ở bƣớc 2 và 3. Một khi việc tái
thiết lập session hoàn tất, client và server có thể bắt đầu dữ liệu ứng dụng.
5.3. Bảo mật giao dịch điện tử ( Secure Electronic Transaction – SET)
SET là một phƣơng pháp bảo mật đƣợc xây dựng nhằm bảo đảm an toàn
các giao dịch trên internet bằng thể tín dụng. Phiên bản hiện tại, SET v1, đƣợc
chọn làm tiêu chuân bảo mật cho các thẻ tín dụng nhƣ Matercard và Visa vào
tháng 1 năm 1996. Rất nhiều công ty đã tập chung phát triển và xây dựng tong
đó có IBM, Microsoft, Netscape, RSA, Tesia và Versign. Từ năm 1998 các sản
phẩm đầu tiên sử dụng SET đã đƣợc triển khai.
Bản thân SET không phải là một hệ thống thanh toán, mà thực chất nó là
tập hợp các giao thức bảo mật và định dạng cho phép ngƣời dùng sử dụng các
thiết bị làm việc với thẻ tín dụng trên hệ thống mạng nhƣ internet theo nguyên
tắc bảo mật. Về cơ bản, SET cung cấp ba dịch vụ:
- Cung cấp một kênh truyền thông an toàn tuyệt đối với tất cả các thành
viền trong quá trình giao dịch.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
72
- Sử dụng tiêu chuẩn chứng thực số X.509v3 để đảm bảo an toàn.
- Giữ gìn sự riêng tƣ bởi các thông tin chỉ cung cấp cho các thành viên
trong giao dịch diễn ra vào thời điểm hay địa điểm cần thiết.
5.3.1.Tổng quan về SET
Các yêu cầu: Trƣớc tiên ta xem xét các yêu cầu trong thƣơng mại mà
SET cần có cũng nhƣ các thành phần khác tham gia trong các giao dịch sử dụng
SET, các yêu cầu thƣơng mại đảm bảo an toàn cho các chi trả với thẻ tín dụng
trên Internet cũng nhƣ các mạng khác bao gồm:
- Cung cấp sự tin cậy cho các thông tin chi trả và thanh toán: Điều này
cần thiết để đảm bảo ngƣời dùng thể giữ gìn an toàn các thông tin của mình
cũng nhƣ các thông tin đến đƣợc với ngƣời nhận đƣợc mong đợi. Sự tin cậy này
cũng sẽ giảm bớt các rủi ro đôI với các gian lận trong giao dịch với đối tác cũng
nhƣ các thành viên thứ ba không mong muốn. SET sử dụng mã hoá các cung
cấp tin cậy này.
- Đảm bảo tính toán toàn vẹn đối với mọi dữ liệu đƣợc truyền đ: Nghĩa là
đảm bảo không có nội dung nào bị thay đổi trong suốt quá trình giao dịch sử
dụng SET. Chữ ký số đƣợc sử dụng để cung cấp các toàn vẹn này.
- Cung cấp chứng thực đối với ngƣời sử dụng thẻ là ngƣời sử dụng tài
khoản thẻ tín dụng hợp pháp: Một cơ chế liên kết ngƣời dùng thể tới số tài
khoản xác định nhằm giảm thiểu các gian lận đối với một quá trình mua bán chi
trả. Chữ ký số và cơ chế chứng nhận đƣợc sử dụng để xác nhận ngƣời dùng thẻ
là ngƣời sở hữu tài khoản hợp lệ.
- Cung cấp các chứng thực cho phép các nhà knh doanh có thế chấp nhận
các giao dịch sử dụng thể tín dụng thông qua mối quan hệ với một tổ chức tài
chính: Đây là sự bổ sung cho các yêu cầu có trƣớc. Ngƣời sử dụng thể cần nhận
biết đƣợc đâu là các nhà kinh doanh có đủ tƣ cách đảm bảo an toàn cho các giao
dịch. Một lần nữa, chữ ký số và các cơ chế chứng nhận đƣợc sử dụng.
- Đảm bảo việc sử dụng một cách tốt nhất các kỹ thuật xây dựng hệ
thống và độ an toàn thực tế để bảo vệ tất cả các thành viên hợp pháp trong toàn
bộ quá trình giao dịch: SET là một sự kiểm nghiệm tốt dựa trên các thuật toán và
các giao thức mã hoá an toàn cao.
- Xây dựng một giao thức mà không phụ thuộc vào các cơ chế bảo mật
giao dịch cũng nhƣ các cơ chế ngăn chặn khác đã dùng: SET có thể thực thi an
toàn trên stack của TCP /IP “thô”. Tuy nhiên, SET không gây trở ngại khi sử
dụng các cơ chế bảo mật khác chẳng hạn nhƣ IPSec và SSL /TLS.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
73
- Tạo điều kiện và khuyến khích khả năng giữa phần mềm và các nhà
cung cấp dịch vụ mạnh: Các giao thức và định dạng SET độc lập với hạ tầng
thiết bị phần cứng, hệ điều hành và phần mềm Wed.
Các đặc trƣng cơ bản của SET: Sau khi để cập tới yêu cầu cần có ta thấy
SET bao gồm các đặc trƣng cơ bản sau:
- Thông tin cậy: Thông tin tài khoản và các thông tin cho việc
chi trả đƣợc bảo vệ khi nó đƣợc truyền đI trong mạng. Một điều thú vị và quan
trọng nhất ở đặc trƣng này của SET là nó ngăn không cho nhà kinh doanh bết
đƣợc số thẻ tín dụng của ngƣời sử dụng, mà điều này chỉ đƣợc cung cấp cho các
ngân hàng phát hành. Quy ƣớc mã hoá này đƣợc DES dùng để cung cấp các tin
cậy.
- Toàn vẹn dữ liệu: Thông tin chi trả từ ngƣời sử dụng thể tới các nhà
kinh doanh bao gồm các thông tin thanh toán, dữ liệu cá nhân và các liệu cho
việc chi trả. SET đảm bảo việc các nội dung của thông điệp không bị biến đổi
trong khi gửi đi. Chữ ký số RSA, sử dụng mã băm SHA -1, sẽ đảm bảo tính
toàn vẹn các thông điệp này. Các thông điệp này cũng có thể đƣợc đảm bảo bởi
HMAC sử dụng SHA -1.
- Chứng thực các nhà kinh doanh: SET cho phép ngƣời sử dụng thẻ
xác nhận một nhà kinh doanh có quan hệ với một tôt choc tài chính có khả năng
chấp nhận các thẻ chi trả. Trong trƣờng hợp này SET có sử dụng chứng nhận số
X.509v3 và chữ ký số RAS.
Chú ý rằng SET không giống nhƣ IPSec và SSL /TLS, nó chỉ cung cấp một chọn
lựa ứng với mỗi thuật toán mã hoá. Đây là một sự khôn ngoan bởi SET là một
ứng dụng đơn độc lập với mộ tập hợp các yêu cầu riêng, mà ở đó có IPSec và
SSL /TLS đóng vai trò hỗ trợ ở một phạm vi nào đó của các ứng dụng.
5.3.2.Các thành phần tham gia sử dụng SET.













Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
74







- Ngƣời dùng thẻ (cardholder): trong môi trƣờng điện tử, khách hàng hay
một nhóm khách hàng có ảnh hƣởng tới các nhà kinh doanh từ những
chiếc máy tính cá nhân thông qua internet. Một ngƣời sử dụng thẻ là
ngƣời có quyền nắm giữ thẻ thanh toán đƣợc cung cấp bởi những nhà phát
hành.
- Nhà kinh doanh(Merchant): Một nhà kinh doanh có thể là một cá nhân
hay một tổ chức có các dịch vụ bán hàng cho ngƣời dùng thẻ. Các dịch vụ
này đƣợc tiến hành thông qua các website hoặc thƣ điện tử. Một nhà kinh
doanh chấp nhận đƣợc các thẻ thanh toán thì buộc phải có quan hệ với
một nhà trung gian(Acquirer).
- Nhà phát hành(issuer): Đây là một tổ chức tài chính, chẳng hạn nhƣ ngân
hàng, cung cấp tài khoản ngƣời dùng cùng với thẻ thanh toán. Các tài
khoản đƣợc sử dụng thông qua các imail cá nhân. Về cơ bản, các nhà phát
hành chịu trách nhiệm chi trả các khoản tiền chƣa trả của ngƣời dùng thẻ.
- Nhà trung gian – Ngân hàng của doanh nghiệp (Acquirer): Đây là tổ chức
tài chính thực hiện việc thiết lập một tài khoản đối với nhà kinh doanh và
chứng thực các quá trình chi trả bằng thẻ. Các nhà kinh doanh thƣờng
chấp nhận nhiều hơn một loại thẻ nhƣng lại không muốn quan tâm đến
nhiều tổ chức cũng nhƣ nhiều cá nhân cung cấp thẻ nào. Trng khi đó nhà
trung gian sẽ cung cấp việc chứng thực nhà kinh doanh bằng cách đƣa ra
cho họ một thẻ tài khoản tiện lợi và giới hạn quyền đối với các loại thẻ
này. Nhà trung gian cũng cung cấp các luân chuyển điện tử cho việc chi
trả đối với các tài khoản của các nhà kinh doanh. Sau cùng, nhà kinh
doanh sẽ đƣợc hoàn lại số tiền mà các nhà phát hành có đƣợc từ quỹ luân
chuyển điện tử trên mạng chi trả.
- Cổng chi trả (payment gateway): Đây là một chức năng thực hiện bởi Nhà
trung gian hoặc đƣơc xây dựng một thành viên thứ ba nhằm xử lí các
thông tin chi trả của nhà kinh doanh. Nhà trung gian trao đổi các thông
điệp SET với cổng chi trả thông qua internet, trong khi đó cổng chi trả
hƣớng vào hay kết nối mạng tới hệ thống sử lí tài chính của nhà trung
gian.
- Quyền chứng nhận (Certification Authority- CA): Đây là một thực thể
đƣợc tin cậy để cung cấp các chức nhận khoá công khai X.509V3 cho
ngƣời sử dụng thẻ, các nhà kinh doanh và các công chi trả. Thành công
của SET sẽ phụ thuộc vào sự tồn tại của một hạ tầng CA có giá trị.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
75
Dƣới đây là mô tả lƣợc đồ bao gồm cho các sự kiện đƣơc diễn ra trong một giao
dịch thƣơng mại điện tử:
1. Khách hàng mở một tài khoản: khách hàng có đƣợc ở thẻ tín dụng nhƣ
MasteerCard hay Visa với một ngân hàng có khả năng hỗ trợ chi trả điện
tử và STE.
2. Khách hàng nhận một chứng nhận: Sau khi nhận dạng hoàn tất, khách
hàng nhận đƣợc một chứng nhận số X.509V3, Đƣợc kí bởi ngân
hàng.chứng nhận này xác minh công khai RSA của khách hàng và hạn sử
dụng của nó. Nó sẽ thiết lập một quan hệ, đƣợc bảo đảm bởi ngân hang,
chiếc cặp khoả của khách hàng và thẻ tín dụng của anh ta.
3. Nhà kinh doanh có riêng các chứng nhận của họ: Một nhà kinh doanh
muốn chấp nhận nhiều loại thẻ thì buộc phải sở hữu hai chứng nhận đối
với hai khoá công khai riêng của họ: Một cho kí nhận thông điêp và một
cho trao đổi khoá. Nhà kinh doanh cùng cần có một bả sao chứng nhận
khoá công khai của cổng chi trả.
4. Khách hàng đặt một thanh toán: Đây là một quá trình bao gồm việc lựa
chọn mặt hàng trên webside của nhà kinh doanh và xác định giá cả.
Khách hàng gửi tới nhà kinh doanh một danh sách các mặt hàng muốn
mua, họ nhận đƣợc một mẫu thanh toán bao gồm danh sách mặt hàng, giá
cả, tổng tiền và số hoá đơn.
5. Nhà kinh doanh được xác nhận: Thêm vào mỗi thanh toán, nhà kinh
doanh gửi một bản sao chứng nhận nó, vì vậy khách hàng có thể tin tƣởng
rằng anh ta có quan hệ với một nhà kinh doanh hợp pháp.
6. Việc thanh toán và chi trả được gửi đi: Khách hàng gửi tới nhà kinh
doanh các thông tin thanh toán và chi trả cùng với chứng nhận khách
hàng: Thông tin thanh toán bao gồm các mặt hàng đã đặt trong mẫu hoá
đơn; thông tin chi trả chứa nội dung chi tiết của thẻ tín dụng. Nó đã đƣợc
mã hoá do vậy nhà kinh doanh không thể biết đƣợc; chứng nhận khách
hàng cho phép nhà kinh doanh xác nhận khách hàng.
7. Nhà kinh doanh yêu cầu chứng thực các chi trả: nhà kinh doanh chuyển
các thông tin tới cổng chi trả, yêu cầu xác thực thông tin thẻ tín dụng của
khách hàng có phù hợp với việc mua các sản phẩm đã đặt hay không.
8. Nhà kinh doanh xác nhận thanh toán: nhà kinh doanh gửi xác nhận
thanh toán tới khách hàng.
9. Nhà kinh doanh cung cấp các mặt hàng dịch vụ: nhà kinh doanh chuyển
hàng hoặc cung cấp dịch vụ tới khách hàng.
10. Nhà kinh doanh yêu cầu chi trả: yêu cầu này đƣợc gửi tới cổng chi trả
(Quả lý tất cả quá trình chi trả).






Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
76





CHƢƠNG IV
cµi ®Æt b¶o mËt vµ an toµn th«ng tin trªn website
mua b¸n c¸c linh kiÖn m¸y tÝnh trªn m¹ng internet

I. C¸c chøc n¨ng c¬ b¶n vµ ho¹t ®éng cña hÖ thèng website

Nhƣ đã trình bày trong chƣơng 1, chƣơng 2 và chƣơng 3 của luận văn khi
nghiên cứu về các hệ mật mã khoá đới xứng và khoá công khai căn bản cũng
nhƣ việc nghiên cứu các giao thức và cơ chế bảo mật thƣơng mại điện tử sử
dụng SSL/TLS, SET, tác giả đã quyết định lựa chọn hệ mật mã cơ bản nhất là
DES và giải thuật chữ ký số DSA cho phần cài đặt ứng dụng của mình.
Trong luận văn này, em không đi sâu vào việc trình bày về quá trình phân
tích hệ thống cho việc xây dựng website bán hàng trực tuyến mà chỉ trình bày ý
nghĩa của các phần hệ thống đã đƣợc xây dựng bao gồm các chức năng thông
thƣờng cũng nhƣ các chức năng bảo mật đƣợc cài đặt. Các mô tả quá trình
chứng thực, bảo mật lớp cơ sở dữ liệu cũng nhƣ quá trình tƣơng tác giữa các đối
tƣợng trong quá trình chứng thực khách hàng đƣợc mô tả trong sơ đồ sau:





1. Tổ chức dữ liệu
- Website bao gồm có các trang:
- Trang chủ
- Trang thông tin nhóm hàng: ví dụ Máy tính sách tay, thiết bị văn phòng…
- Trang thông tin chi tiết sản phẩm: hiển thị các thông tin chi tiết về một sản
phẩm, qua đó khách hàng thực hiện các thao tác khác nhƣ: chọn mua hàng
- Trang thông tin đơn hàng: sau khi khách hàng lựa chọn một hoặc nhiều
sản phẩm cần mua, gồm các thông tin nhƣ: mã sản phẩm, tên sản phẩm,
số lƣợng cần mua… sẽ lập thành một đơn hàng. Trên trang đơn hàng này,
khách hàng thực hiện các chức năng khác nhƣ :
o Tiếp tục mua hàng: tiếp tục chọn thêm các sản phẩm khác muốn
mua
Đặt hàng
Chứng thực
khách hàng
Khách hàng
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
77
o Chấp nhận mua hàng: gửi thông tin về đơn hàng lên hệ thống, xác
nhận nhu cầu mua hàng
o Hủy đơn hàng: xóa bỏ tất cả các sản phẩm đã lựa chọn, từ đó chọn
lại các sản phẩm mới
o Cập nhật đơn hàng: lựa chọn lại số lƣợng mỗi sản phẩm trong đơn
hàng, từ đó hệ thống tính lại giá tiền cho tổng cộng các sản phẩm
đã chọn
2. Quản trị thông tin
- Ngƣời quản trị hệ thống cập nhật các thông tin về sản phẩm lên website,
từ đó khác hàng có thể lựa chọn xem, mua
- Mỗi sản phẩm gồm các thông tin quan trọng là: Mã sản phẩm, giá bán.
Các thông tin khác chỉ có ý nghĩa cung cấp hiểu biết cho khách hàng
3. Mã hóa RSA và áp dụng trong hệ thống
Đăng ký thành viên
- Mỗi ngƣời truy cập vào hệ thống, muốn thực hiện việc mua hàng, đăng ký
mua hàng đều phải đăng ký trở thành thành viên của website. Quá trình
này chính là việc cấp cho khách hàng một “tên đăng nhập”, “mật khẩu
đăng nhập” và “cặp khóa công khai – khóa bí mật theo thuật toán RSA”.
Với đầy đủ các thông tin này, khách hàng có thể thực hiện đƣợc giao dịch
mua hàng trên website
- Chi tiết các bƣớc đăng ký thành viên gồm các bƣớc nhƣ sau:
o Đăng ký thành viên: cung cấp các thông tin nhƣ: tên đăng nhập, địa
chỉ hòm thƣ, mật khẩu…
o Hệ thống kiểm tra tính duy nhất của Tên đăng nhập & địa chỉ thƣ.
Nếu đã đƣợc sử dụng trong hệ thống, khách hàng phải lựa chọn một
tên khác
o Nếu quá trình cung cấp thông tin hoàn tất và không gặp lỗi nào, hệ
thống thực hiện “tạo” cặp khóa bí mật – công khai theo thuật toán
RSA, sau đó gửi khóa bí mật dƣới dạng file đính kèm về địa chỉ thƣ
mà khách hàng đã cung cấp. Khóa công khai đƣợc lƣu trữ trong
CSDL
o Cặp khóa bí mật – công khai này bảo đảm tính duy nhất, không
trùng lặp giữa tất cả các thành viên của hệ thống
o Khách hàng sau khi kiểm tra địa chỉ thƣ, nhận đƣợc đầy đủ các
thông tin cần phải thực hiện thao tác “xác nhận” trƣớc khi thực hiện
đƣợc bất kỳ giao dịch nào. Thao tác này là cần thiết, để tránh
trƣờng hợp mạo danh, sử dụng email của ngƣời khác một cách
không hợp lệ.
o Sau khi thao tác này hoàn thành, khách hàng đƣợc quyền thực hiện
các giao dịch của mình, theo những chức năng mà hệ thống đã cung
cấp.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
78
4. Thực hiện mua hàng
- Khách hàng thực hiện việc mua hàng, cũng hoàn toàn giống các bƣớc
chọn hàng trong siêu thị, nhƣng khác là trên một hệ thống điện tử, siêu thị
trực tuyến
Thao tác 1: Xem hàng và chọn hàng. Khách hàng lƣớt web, xem hệ thống
cung cấp những mặt hàng nào, chủng loại nào, nếu tìm đƣợc hàng phù hợp
thì thực hiện thao tác chọn mua hàng. Sau thao tác này, mặt hàng đƣợc chọn
sẽ nằm trong một “đơn hàng”, và khách hàng có thể thay đổi lại đơn hàng
theo các thao tác nhƣ: không chọn sản phẩm nào đó, thay đổi số lƣợng cần
mua của mỗi sản phẩm, hủy toàn bộ đơn hàng
Thao tác 2: Chấp nhận mua hàng. Sau khi chọn xong các sản phẩm, khách
hàng thực hiện thao tác “Chấp nhận mua hàng”. Chức năng này thực hiện cập
nhập dữ liệu về hàng hóa của khách hàng vào hệ thống các đơn hàng chờ
đƣợc xử lý. Nếu khách hàng chƣa thực hiện đăng nhập, hệ thống không xác
định đƣợc định danh ngƣời dùng đang truy cập là ai, từ đó website sẽ chuyển
hƣớng đến trang đăng nhập. Trong trang này, khách hàng cần cung cấp các
thông tin gồm: Tên đăng nhập và Mật khẩu, nếu các thông tin này đúng hoặc
đã đăng nhập thành công trƣớc đó, hệ thống sẽ tự động chuyển đến trang xử
lý đặt mua hàng và thông báo cho khách hàng. Sau thao tác này, khách hàng
nhận đƣợc email thông báo tình trạng đơn hàng, và đƣờng dẫn duy nhất để
thực hiện kích hoạt đơn hàng.
Thao tác 3: Kích hoạt đơn hàng. Khi đơn hàng chƣa đƣợc kích hoạt, dữ liệu
về các sản phẩm, hàng hóa đặt mua đã đƣợc mã hóa theo thuật toán RSA, sử
dụng khóa chung để mã hóa các thông tin đơn hàng, bảo đảm thông tin đƣợc
bảo mật và không bị tiết lộ nếu không có khóa bí mật hợp lệ để giải mã.
Khách hàng thực hiện kích hoạt theo đƣờng dẫn đã cung cấp trong email, tiếp
đó hệ thống sẽ yêu cầu cung cấp khóa bí mật bằng cách khách hàng browse
để chọn file chứa khóa bí mật, file này đã đƣợc hệ thống cung cấp khi thực
hiện đăng ký. Hệ thống sẽ sử dụng khóa bí mật này (chỉ lƣu trong bộ nhớ
RAM máy tính) để giải mã các thông tin mã hóa ở trên, để tìm ra số sản
phẩm đã mua, số lƣợng tƣơng ứng với mỗi sản phẩm, để từ đó, tính giá trị
đơn hàng và chuyển dữ liệu cho module xử lý khấu trừ tiền trong tài khoản.
Nếu một ngƣời nào đó nhận đƣợc đƣờng dẫn này và cũng thực hiện kích hoạt
đơn hàng, nhƣng không có khóa bí mật hợp lệ, thì sẽ không thể thực hiện
đƣợc việc giải mã và mua hàng.
5, Các thức thực hiện mã hóa và giải mã
5.1 Mã hóa đơn hàng
- Các sản phẩm trong một đơn hàng đƣợc đặc trƣng bởi: Mã sản phẩm, số
lƣợng cần mua. Các thông tin khác nhƣ: giá bán, tên hàng… đều đƣợc lƣu
trữ trong CSDL của website, không cần thiết phải đƣa vào xâu ký tự cần
mã hóa.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
79
- Từ đó plain text cần mã hóa gồm: PT = {Mã-hàng-hóa}/{Số-lƣợng-cần-
mua}[^]. Từ đó, khi khách hàng chọn mua 5 sản phẩm thì xâu ký tự cần
thực hiện mã hóa sẽ là: PT = sp01/3^sp12/9^sp32/1^sp45/8^sp983/2, diễn
giải ra sẽ là: mua Sản phẩm có mã là sp01 số lƣợng 3 chiếc (cái), sản
phẩm có mã sp12 số lƣợng 9, sản phẩm có mã là sp32 số lƣợng 1, sản
phẩm có mã sp45 số lƣợng 8, sản phẩm có mã 983 số lƣợng 2. Hàm thực
hiện mã hóa sẽ mã hóa PT thành ET (encoded text), sử dụng khóa công
khai của ngƣời đã đặt mua hàng. Xâu ET này sẽ không thể có ý nghĩa nếu
không đƣợc giải mã, việc giải mã đòi hỏi phải có khóa riêng của khách
hàng
5.2 Giải mã đơn hàng
- Xâu ký tự đã mã hóa ET đƣợc hàm giải mã thực hiện decode (giải mã) sau
khi khách hàng cung cấp một khóa riêng hợp lệ. Nếu quá trình giải mã
thành công, hệ thống sẽ nhận đƣợc xâu PT nhƣ trƣớc khi thực hiện mã
hóa, từ đó chứng tỏ ngƣời kích hoạt đơn hàng là hợp lệ, và tiến hành
thanh toán, trừ tiền trong tài khoản bình thƣờng
Ví dụ khi thực hiện mã hóa/giải mã
Khóa bí mật và công khai
Thành viên của hệ thống là anhtuan, sau khi đăng ký sẽ đƣợc hệ thống cung
cấp các khóa công khai, khóa bí mật nhƣ sau:
PrivateKey:
YTozOntpOjA7czozMjoiEwUyThq8gAfqCKXW2F/gjMYjOPo6J34rmP6b8
vY+TMoiO2k6MTtzOjMyOiIBv4wLNs8ExGUG+mvRNP2p+2cjRKAH0Dt
mFTE0lebYQyI7aToyO3M6NzoicHJpdmF0ZSI7fQ==
PublicKey:
YTozOntpOjA7czozMjoiEwUyThq8gAfqCKXW2F/gjMYjOPo6J34rmP6b8
vY+TMoiO2k6MTtzOjM6IgEAASI7aToyO3M6NjoicHVibGljIjt9
Nhìn vào hai khóa này, chắc chắn mỗi chúng ta đều không biết ý nghĩa của
nó, nhƣng nó đƣợc sinh ra khi ta sử dụng mã hóa theo thuật toán RSA
II. cµi ®Æt c¸c chøc n¨ng b¶o mËt vµ an toµn th«ng tin trªn web
site mua b¸n linh kiÖn m¸y tÝnh

1. Thủ tục đăng kí thành viên
Thủ tục này đƣợc xây dựng cùng với chức năng đăng ký thành viên, sau khi
khách hàng điều đầy đủ các thông tin cá nhân cần thiết nhƣ email, mật khẩu, tên
đầy đủ, địa chỉ…và form này đƣợc đệ trình, khi đó Server sẽ tiến hành việc cập
nhật các thông tin này vào cơ sở dữ liệu, trƣớc khi cập nhật, mật khẩu khách
hàng sẽ đƣợc mã hoá bằng phƣơng pháp mã hoá DES (hoặc có thể là Triple –
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
80
DES, AES hay bất kỳ hệ mật mã khoá đối xứng nào khác để đảm bảo rằng mật
khẩu của khách hàng đƣợc giữ kín).


Nếu khách hàng đăng kí thành công thì hệ thống website sẽ gửi cho khách hàng
một thông báo vào địa chỉ email mà khách hàng đã đăng kí kèm theo một khoá
riêng private key dƣới dạng một file văn bản tex khách hàng phải lƣu giữ khoá
riêng này nhƣ chữ kí số của riêng mình thông báo nhƣ sau:
















Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
81

2. Khách hàng lựa chọn mua hàng trên website
Sau khi đã đăng kí là thành viên của website khách hàng mới có quyền chọn
hàng và mua hàng trên trang giới thiệu các mặt hàng của website.












Khách hàng lƣớt web, xem hệ thống cung cấp những mặt hàng nào, chủng loại
nào, nếu tìm đƣợc hàng phù hợp thì thực hiện thao tác chọn mua hàng. Sau thao
tác này, mặt hàng đƣợc chọn sẽ nằm trong một “đơn hàng”, và khách hàng có
thể thay đổi lại đơn hàng theo các thao tác nhƣ: không chọn sản phẩm nào đó,
thay đổi số lƣợng cần mua của mỗi sản phẩm, hủy toàn bộ đơn hàng






Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
82

















Sau khi chọn xong các sản phẩm, khách hàng thực hiện thao tác “Chấp nhận
mua hàng”. Chức năng này thực hiện cập nhập dữ liệu về hàng hóa của khách
hàng vào hệ thống các đơn hàng chờ đƣợc xử lý. Hệ thống website sẽ gửi cho
khách hàng một thông báo về hoá đơn các mặt hàng mà khách hàng vừa chọn
kèm theo các thông tin về giá cả và địa chỉ nhận hàng nhƣ sau:













Khách hàng thực hiện kích hoạt theo đƣờng dẫn đã cung cấp trong email, tiếp đó
hệ thống sẽ yêu cầu cung cấp khóa bí mật bằng cách khách hàng browse để chọn
file chứa khóa bí mật, file private key này đã đƣợc hệ thống cung cấp khi thực
hiện đăng ký. Hệ thống website sẽ xác thực khách hàng bằng khoá private key




Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
83
và gửi lại cho khách hàng một thông báo có chứa đầy đủ hoá đơn mua hàng của
khách hàng và tổng số tiền mà khách hàng phải trả từ tài khoản của mình.





















Kết thúc quá trình giao dịch mua bán máy tính thông qua dịch vụ INTERNET
và tài khoản của cá nhân tại các ngân hàng
















Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
84
kÕt luËn

Với sự phát triển mang tính toàn cầu của mạng Internet và TMĐT, con
ngƣời có thể giao tiếp dễ dàng trong một cộng đồng rộng lớn. Tuy nhiên đối với
các giao dịch mang tính nhạy cảm, cần phải có cơ chế đảm bảo an toàn trong
phiên giao dịch đó. Cần thiết hơn cả đó là mỗi bên cần xác định chính xác ngƣời
mình đang giao tiếp có đúng là đối tác mong đợi hay không. Trong luận văn
này, em đã đề cập đến hai kỹ thuật chính trong an toàn thông tin đó là mã hoá và
ký số cùng với những vấn đề liên quan đến bảo mật ứng dụng Web. Hai kỹ thuật
này cũng đƣợc áp dụng phần nào trong việc xác thực đối tác trong mỗi phiên
giao dịch.
Về kỹ thuật mã hoá, có hai phƣơng pháp: Mã hoá đối xứng và mã hoá khoá
khoá công khai. Mã hoá đảm bảo an toàn về thông tin giao tiếp nhƣng không đảm
bảo liệu thông tin có bị giả mạo hoặc có bị mạo danh hay không. Vấn đề chủ yếu
nằm ở việc quản lý khoá mã hoá và giải mã ở cả hai phƣơng pháp mã hoá.
Đối với phƣơng pháp ký số, dựa vào chữ ký cùng cặp khoá riêng và công
khai, chúng ta có thể xác định chính xác đối tác trong giao dịch. Em cũng đã tìm
hiểu hai loại chữ ký: Chữ ký kèm thông điệp và chữ ký sinh thông điệp cùng hai
sơ đồ ký đƣợc chấp nhận và sử dụng rộng rãi: RSA, DSS.
Có một vấn đề đặt ra đối với chữ ký số, liệu chúng ta có đảm bảo chính xác
chữ ký hoặc khoá khoá công khai là thuộc đối tác hay không. Có rất nhiều cách
tấn công vào chữ ký số, trong đó phổ biến là phƣơng pháp mạo danh chữ ký.
Giải pháp khắc phục đƣa ra là sử dụng chứng chỉ số cho khoá khoá công khai
nhằm đảm xác thực tính đúng đắn của đối tác trong giao dịch. Tuy nhiên, do
điều kiện về mặt thời gian còn hạn chế, em không thể nghiên cứu kỹ lƣỡng về
chứng chỉ số cho khoá công khai mà tập trung vào việc tìm hiểu một số các giao
thức bảo mật ứng dụng web, cụ thể là cài đặt một số quy trình giao dịch sử dụng
tới các phƣơng pháp mã hoá thông tin cũng nhƣ ký số. Em cũng đã cố gắng hết
sức để phát triển ứng dụng theo mô hình thƣơng mại điện tử sử dụng SET,
nhƣng do thực tế ở Việt Nam hiện nay không tồn tại một cách đầy đủ các thành
phần tham gia SET, vì vậy ứng dụng sẽ gặp khó khăn khi triển khai trong thực
tiễn.
Trong thời gian tới, em sẽ tiếp tục phát triển đề tài với phƣơng hƣớng cụ
thể nhƣ sau:
Tiếp tục tìm hiểu hơn và thực nghiệm với một số phƣơng pháp mã hoá
khoá đối xứng nhƣ Triple – DES, RC4, IDEA; các phƣơng pháp mã hoá khoá
công khai nhƣ Elgamal, Rabin, Knapsack, Eliptic Curve.
Cải tiến và nâng cao hiệu quả của các module đã cài đặt trên webssite cũng
nhƣ các kỹ thuật cài đặt khác.

Môc lôc Néi dung Lêi nãi ®Çu................................................................................................ I. Nội dung nghiên cứu của đề tài ......................................................... 1. Mục tiêu và nhiệm vụ nghiên cứu của đề tài..................................... 2. ý nghĩa khoa học của đề tài................................................................. 3. Phƣơng pháp nghiên cứu.................................................................... 4. Phạm vi nghiên cứu............................................................................. 5. Các kết quả nghiên cứu dự kiến cần đạt đƣợc.................................. II. Bố cục của luận văn............................................................................
Chƣơng I : CÁC KHÁI NIỆM VÒ TMĐT VÀ CÁC ĐẶC TRƢNG CỦA TMĐT

Trang 2 3 3 3 3 3 4 5 6 6 6 8 9 10 11 12 14

1. Khái niệm về TMĐT........................................................................... 2. Lợi ích của thƣơng mại điện tử........................................................... 3. Các đặc trƣng cơ bản của TMĐT....................................................... 4. Các loại thị trƣờng điện tử.................................................................. 5. Các hệ thống thanh toán trong TMĐT.............................................. 6. Công nghệ thanh toán điện tử............................................................ 7. Quy trình thanh toán điện tử.............................................................

Ch-¬ng II : hÖ mËt m·, m· kho¸ ®èi xøng, m· kho¸ c«ng khai, ch÷ ký sè I. tæng quan vÒ c¸c hÖ mËt m·.................................................................. 14

1. Mật mã học cổ điển.............................................................................. 2. Mật mã học hiện đại............................................................................ 3. Thuật ngữ............................................................................................ 4. Tiêu chuẩn mật mã.............................................................................

14 15 16 17 ii. c¸c ph-¬ng ph¸p m· ho¸ 19 1. Mã hoá đối xứng (mã hoá khoá bí mật)............................................ 19 2. Mã hóa không đối xứng (Mã hóa khóa công khai)........................... 29 iii. CHỮ KÝ Sè 36 1. Chữ kí số.............................................................................................. 36 2. Phân loại các sơ đồ chữ kí số.............................................................. 37 3. Một số sơ đồ chữ ký cơ bản................................................................. 40 3.1. Sơ đồ chữ ký RSA............................................................................. 40 3.2. Sơ đồ chữ ký DSA (Digital Signature Standard)............................. 42 4. Các sơ đồ chữ kí số khả thi................................................................. 46
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

2

Néi dung

Trang

5. Các cách tấn công chữ kí điện tử........................................................ 47 Ch-¬ng III : b¶o mËt vµ an toµn th«ng tin trong tm®t 49 i. vÊn ®Ò an toµn th«ng tin.......................................................................... 49 II. chøng chØ sè vµ c¬ chÕ m· ho¸..................................................... 51 1. Giới thiệu về chứng chỉ số................................................................... 51 2. Xác thực định danh............................................................................. 52 3. Chứng chỉ khóa công khai................................................................... 54 4. Mô hình CA.......................................................................................... 57 5. Một số giao thức bảo mật ứng dụng trong TMĐT........................... 57 CHƢƠNG IV: cµi ®Æt b¶o mËt vµ an toµn th«ng tin trªn 74
website mua b¸n c¸c linh kiÖn m¸y tÝnh trªn m¹ng internet I. C¸c chøc n¨ng c¬ b¶n vµ ho¹t ®éng cña hÖ thèng website

74 1. Tổ chức dữ liệu.................................................................................... 74 2. Quản trị thông tin............................................................................... 75 3. Mã hóa RSA và áp dụng trong hệ thống........................................... 75 4. Thực hiện mua hàng........................................................................... 75 5.Cách thức thực hiện mã hóa và giải mã.............................................. 76 II. cµi ®Æt c¸c chøc n¨ng b¶o mËt vµ an toµn th«ng tin trªn 77
web site mua b¸n linh kiÖn m¸y tÝnh

1. Thủ tục đăng kí thành viên ................................................................ 2. Khách hàng lựa chọn và mua hàng trên website............................. kÕt luËn................................................................................................. Tµi liÖu tham kh¶o.............................................................................

77 79 82 83

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

http://www.lrc-tnu.edu.vn

3

lêi nãi ®Çu Với sự phát triển mang tính toàn cầu của mạng Internet và TMĐT, con ngƣời có thể mua bán hàng hoá và dịch vụ thông qua mạng máy tính toàn cầu một cách dễ dàng trong mọi lĩnh vực thƣơng mại rộng lớn . Tuy nhiên đối với các giao dịch mang tính nhạy cảm này cần phải có những cơ chế đảm bảo bảo mật và an toàn vì vậy vấn đề bảo mật và an toàn thông tin trong thƣơng mại điện tử là một vấn đề hết sức quan trọng. Đề tài sẽ đề cập đến các kỹ thuật chính của lĩnh vực Bảo mật và an toàn thông tin trong thƣơng mại điện tử. Hiện nay vấn đề Bảo mật và an toàn thông tin trong TMĐT đã và đang đƣợc áp dụng phổ biến và rộng rãi ở Việt Nam và trên phạm vi toàn cầu. Vì thế vấn đề Bảo mật và an toàn đang đƣợc nhiều ngƣời tập trung nghiên cứu và tìm mọi giải pháp để đảm bảo Bảo mật và an toàn cho các hệ thống thông tin trên mạng. Tuy nhiên cũng cần phải hiểu rằng không có một hệ thống thông tin nào đƣợc bảo mật 100% bất kỳ một hệ thống thông tin nào cũng có những lỗ hổng về bảo mật và an toàn mà chƣa đƣợc phát hiện ra Vấn đề bảo mật và an toàn thông tin trong TMĐT phải đảm bảo bốn yêu cầu sau đây: - Đảm bảo tin cậy : Các nội dung thông tin không bị theo dõi hoặc sao chép bởi những thực thể không đƣợc uỷ thác. - Đảm bảo toàn vẹn : Các nội dung thông tin không bị thay đổi bởi những thực thể không đƣợc uỷ thác - Sự chứng minh xác thực : Không ai có thể tự trá hình nhƣ là bên hợp pháp trong quá trình trao đổi thông tin - Không thể thoái thác trách nhiệm : Ngƣời gửi tin không thể thoái thác về những sự việc và những nội dung thông tin thực tế đã gửi đi Xuất phát từ những khả năng ứng dụng trong thực tế và những ứng dụng đã có từ các kết quả của nghiên cứu trƣớc đây về lĩnh vực Bảo mật và an toàn trong TMĐT. Đề tài sẽ đi sâu nghiên cứu các kỹ thuật và các phƣơng pháp Bảo mật và an toàn thông tin trong thƣơng mại điện tử

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

http://www.lrc-tnu.edu.vn

4

Các cơ chế phân bố khoá tự động.vn 5 . Mật mã. các thuật toán mã hoá đối xứng DES và và bất đối xứng nhƣ mã khoá công khai RSA. Tìm hiểu các giao dịch trong thƣơng mại điện tử của một số Website trong và ngoài nƣớc. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.. Chữ ký số.Áp dụng các kết quả đã nghiên cứu để triển khai hệ thống Bảo mật và an toàn trong TMĐT 2. Nội dung nghiên cứu của đề tài 1. Bảo toàn dữ liệu. Bảo mật. kỹ thuật ngăn ngừa các rui ro trong TMĐT. và các nhà cung cấp dịch vụ giao dịch trực tuyến cũng nhƣ các ISP đảm bảo đƣợc những thông tin của khách hàng giao dịch trên mạng đƣợc an toàn. Phạm vi nghiên cứu   Các vấn đề về bảo mật chứng thực trong thƣơng mại điện tử Hàm băm..edu. phân tích các tài liệu và những thông tin liên quan đến đề tài. Phương pháp nghiên cứu    Thu thập.. . các giao thức bảo mật trên mạng nhƣ: SSL. 3. Các kỹ thuật sử dụng và các phƣơng pháp kết hợp các hệ mật mã trong bảo mật.. sử dụng chữ ký số DSA và RSA. TLS. giải quyết tốt vấn đề bảo mật và an toàn trong TMĐT sẽ mang lại ý nghĩa hết sức to lớn nhƣ: Làm cho khách hàng tin tƣởng khi thực hiện các giao dịch trên mạng. Vấn đề Bảo mật và an toàn trên mạng là một trong những vấn đề nóng hổi trong hoạt động thực tiễn của TMĐT.Đề tài nghiên cứu các kỹ thuật và phƣơng pháp để thực hiện nhiệm vụ Bảo mật và an toàn trong thƣơng mại điện tử. SET. Mục tiêu và nhiệm vụ nghiên cứu của đề tài . quá trình thực hiện và các kiến thức khoa học và thuật toán liên quan nhƣ: Xác thực. góp ý của thầy hƣớng dẫn để hoàn thành nội dung nghiên cứu 4. thu thập các thông tin về bảo mật các giao dịch thƣơng mại điện tử đã có. Kết hợp các nghiên cứu đã có trƣớc đây của các tác giả trong nƣớc cùng với sự chỉ bảo.lrc-tnu. ý nghĩa khoa học của đề tài   Áp dụng các kết quả đã nghiên cứu để xây dựng các kỹ thuật Bảo mật và an toàn trong thƣơng mại điện tử với một số tính năng cơ bản nhƣ: Hệ thống chứng thực. Mã hoá các thông tin cần thiết.I.

edu. Do có những hạn chế nhất định về cơ sở vật chất và điều kiện tiếp cận thực tế với lĩnh vực an toàn và bảo mật trong thƣơng mại điện tử nên việc cài đặt các ứng dụng chủ yếu mang tính thử nghiệm. sử dụng chữ ký số.lrc-tnu. Các kỹ thuật sử dụng và các phƣơng pháp kết hợp các hệ mật mã trong bảo mật. Các kết quả nghiên cứu dự kiến cần đạt được   Các vấn đề về bảo mật chứng thực trong thƣơng mại điện tử. Cài đặt thử nghiệm vấn đề về bảo mật và an toàn trong thƣơng mại điện tử đã nghiên cứu. 5. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 6 .

Cơ chế mã hoá 3. CHỮ KÝ Sè I. chøng thùc sè ho¸.Cơ chế bảo mật SSL và TSL . Bố cục của luận văn Chƣơng I : CÁC KHÁI NIỆM VÒ TMĐT VÀ CÁC ĐẶC TRƢNG CỦA TMĐT 1. Một số giao thức bảo mật ứng dụng trong TMĐT . Lợi ích của thƣơng mại điện tử 3. Các loại thị trƣờng điện tử. MÃ KHOÁ CÔNG KHAI. Khái niệm về TMĐT 2. tạo khoá. Tổng quan về các hệ mật mã 1.Các vấn đề bảo mật ứng dụng WEB .Cơ chế bảo mật SET Chƣơng IV: CÀI ĐẶT VÀ PHÁT TRIỂN CÁC ỨNG DỤNG .vn 7 . Chứng thực số hoá 4. Khái niệm chữ ký số 2.II. 5. Các hệ thống thanh toán trong TMĐT 6.lrc-tnu. Mã hoá khoá đối xứng: Thuật toán và quá trình tạo khoá 2. MÃ KHOÁ ĐỐI XỨNG. ch÷ ký sè trên WEBSITE mua b¸n m¸y tÝnh trªn m¹ng INTERNET Kết luận Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.edu. Đánh giá tính an toàn của các sơ đồ chữ ký số Chƣơng III : BẢO MẬT VÀ AN TOÀN TRONG TMĐT 1. Quy trình thanh toán điện tử Chƣơng II : HỆ MẬT MÃ. Một số sơ đồ chữ ký số cơ bản 4. Mã hoá khoá công khai: Hoạt động. Chữ ký số 1. Công nghệ thanh toán điện tử 7. An toàn thông tin 2. Các đặc trƣng cơ bản của TMĐT 4. Phân loại chữ ký số 3. giải mã. mã hoá. chuyển đổi văn bản rõ II.Cài đặt ứng dụng bảo mật và an toàn thông tin.

Các hoạt động truyền thống nhƣ chăm sóc sức khoẻ. tài chính). đường sắt hoặc đường bộ” Nhƣ vậy. đại diện hoặc đại lý thương mại. xây dựng các công trình. thoả thuận khai thác hoặc tô nhượng. có thể thấy rằng phạm vi của Thƣơng mại điện tử rất rộng. Thƣơng mại điện tử đƣợc thực hiện đối với cả thƣơng mại hàng hoá (ví dụ nhƣ hàng tiêu dùng. Lợi ích của TMĐT Xuất phát từ những kinh nghiệm thực tế trong quá trình hoạt động của thƣơng mại điện tử thì TMĐT đã mang lại cho con ngƣời và xã hội các lợi ích sau: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. ngân hàng. Các quan hệ mang tính chất thương mại bao gồm các giao dịch sau đây: Bất cứ giao dịch nào về thương mại nào về cung cấp hoặc trao đổi hàng hoá hoặc dịch vụ. TMĐT theo nghĩa rộng đƣợc định nghĩa trong luật mẫu về thƣơng mại điện tử của Uỷ ban LHQ về luật thƣơng mại quốc tế: “Thuật ngữ thương mại cần được diễn giải theo nghĩa rộng để bao quát các vấn đề phát sinh từ mọi quan hệ mang tính chất thương mại dù có hay không có hợp đồng. liên doanh các hình thức khác về hợp tác công nghiệp hoặc kinh doanh. vận đơn đơn điện tử.vn 8 . bao quát hầu hết các lĩnh vực hoạt động kinh tế. cấp vốn. cho thuê dài hạn. thoả thuận phân phối. giao nhận các nội dung kỹ thuật số trên mạng. tiếp thị trực tuyến tới ngƣời tiêu dùng và các dịch vụ sau bán hàng. 2.edu. hợp tác thiết kế. tài nguyên mạng.ch-¬ng i : c¸c kh¸i niÖm vÒ TM§T vµ c¸c ®Æc tr-ng cña TM§T 1. mua sắm công cộng.lrc-tnu. uỷ thác hoa hồng. đầu tư. dịch vụ pháp lý. đường không. bảo hiểm. Thƣơng mại điện tử đang trở thành một cuộc cách mạng làm thay đổi cách thức mua săm của con ngƣời. các thiết bị y tế chuyên dụng) và thƣơng mại dịch vụ (ví dụ nhƣ dịch vụ cung cấp thông tin. mua bán cổ phiếu điện tử. kỹ thuật công trình. tư vấn. Trên thực tế chính các hoạt động thƣơng mại thông qua mạng Internet đã làm phát sinh thuật ngữ Thƣơng mại điện tử. việc mua bán hàng hoá và dịch vụ chỉ là một trong hàng ngàn lĩnh vực áp dụng của Thƣơng mại điện tử. đấu giá thƣơng mại. chuyển tiền điện tử. Thƣơng mại điện tử gồm các hoạt động mua bán hàng hoá và dịch vụ qua phƣơng tiện điện tử. Theo nghĩa hẹp TMĐT chỉ gồm các hoạt động thƣơng mại đƣợc tiến hành trên mạng máy tính mở nhƣ Internet. Khái niệm về TMĐT Thƣơng mại điện tử là hình thức mua bán hàng hoá và dịch vụ thông qua mạng máy rính toàn cầu. giáo dục và các hoạt động mới (nhƣ siêu thị ảo). chuyên chở hàng hoá hay hành khách bằng đường biển.

Giảm chi phí bán hàng. Giảm chi phí sản xuất TMĐT giúp giảm chi phí sản xuất. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 9 . giảm chi phí tiếp thị và giao dịch. Xây dựng quan hệ đối tác Thƣơng mại điện tử tạo điều kiện cho việc thiết lập và củng cố mối quan hệ giữa các thành viên tham gia quá trình thƣơng mại thông qua mạng Internet các thành viên tham gia có thể giao tiếp trực tiếp (liên lạc trực tuyến) và liên tục với nhau. TMĐT qua Internet / Web giúp ngƣời tiêu thụ và các doanh nghiệp giảm đáng kể thời gian và chi phí giao dịch. Theo số liệu của hãng General Electricity của Mỹ tiết kiệm trên lĩnh vực này đạt tới 30 %. Thu thập được nhiều thông tin TMĐT giúp cho mỗi cá nhân khi tham gia thu đƣợc nhiều thông tin về thị trƣờng. các bạn hàng mới. catalogue điện tử trên web phong phú hơn nhiều so với catalogue in ấn chỉ có khuôn khổ giới hạn và luôn luôn lỗi thời. chi phí thanh toán điện tử qua Internet chỉ bằng 10% đến 20% chi phí thanh toán theo lối thông thƣờng. nhờ đó sự hợp tác và quản lý đều đƣợc tiến hành nhanh chóng một cách liên tục. sẽ đƣa đến những lợi ích to lớn lâu dài. trong khi đó catalogue điện tử trên web đƣợc cập nhật thƣờng xuyên. rút ngắn thời gian sản xuất.1. với góc độ chiến lƣợc là các nhân viên có năng lực đƣợc giải phóng khỏi nhiều công đoạn sự vụ và có thể tập trung vào nghiên cứu phát triển. Thời gian giao dịch qua Internet chỉ bằng 7% thời gian giao dịch qua FAX. tiếp thị và giao dịch TMĐT giúp giảm thấp chi phí bán hàng và chi phí tiếp thị. có cảm giác nhƣ không có khoảng cách về địa lý và thời gian nữa.edu. 2. Điều quan trọng hơn. tạo dựng và củng cố quan hệ bạn hàng. Điều này đặc biệt có ý nghĩa đối với các doanh nghiệp vừa và nhỏ. nhờ đó có thể xây dựng đƣợc chiến lƣợc sản xuất và kinh doanh thích hợp với xu thế phát triển của thị trƣờng trong nƣớc. trong khu vực và quốc tế.5 phần nghìn thời gian giao dịch qua bƣu điện chuyển phát nhanh.lrc-tnu. và bằng khoảng 0.2. Các văn phòng không giấy tờ chiếm diện tích nhỏ hơn rất nhiều. hiện nay đang đƣợc nhiều nƣớc quan tâm coi là một trong những động lực phát triển kinh tế. đối tác. chi phí tìm kiếm chuyển giao tài liệu giảm nhiều lần trong đó khâu in ấn gần nhƣ bỏ hẳn.4. các cơ hội kinh doanh mới đƣợc phát hiện nhanh chóng trên phạm vi toàn thế giới và có nhiều cơ hội để lựa chọn hơn. 2. 2. Bằng phƣơng tiện Internet / Web một nhân viên bán hàng có thể giao dịch với rất nhiều khách hàng.3. Các doanh nghiệp nắm đƣợc các thông tin phong phú về kinh tế thị trƣờng.2. trƣớc hết là chi phí văn phòng.

Trong TMĐT ngoài các chủ thể tham gia quan hệ giao dịch giống nhƣ giao dịch thƣơng mại truyền thống đã xuất hiện một bên thứ 3 đó là nhà cung cấp dịch vụ mạng. trong đó có một bên không thể thiếu được là người cung cấp dịch vụ mạng. các cơ quan chứng thực..2. là những ngƣời tạo môi trƣờng cho các giao Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.. Trong thƣơng mại truyền thống các bên thƣờng gặp gỡ nhau trực tiếp để tiến hành giao dịch. Lợi ích này có một ý nghĩa lớn đối với các nƣớc đang phát triển.. gửi báo cáo. Các đặc trƣng cơ bản của TMĐT So với các hoạt động thƣơng mại truyền thống. 3. Các phƣơng tiện viễn thông nhƣ: Fax. mà không hề phải bƣớc ra khỏi nhà. telex. Đức và Chi lê. Thƣơng mại điện tử cho phép tất cả mọi ngƣời cùng tham gia từ các vùng xa xôi hẻo lánh đến các khu vực đô thị rộng lớn. Thương mại điện tử trực tiếp tác động tới môi trường cạnh tranh toàn cầu. nếu không nhanh chóng tiếp cận nền kinh tế tri thức thì sau khoảng một thập kỷ nữa nƣớc đang phát triển có thể bị bỏ rơi hoàn toàn.2. séc. 3.5. một công việc trƣớc kia phải mất nhiều năm. còn thương mại điện tử được thực hiện trong một thị trường không có biên giới (thị trường thống nhất toàn cầu). vận đơn. Thƣơng mại điện tử càng phát triển thì máy tính cá nhân trở thành cửa sổ cho doanh nghiệp hƣớng ra thị trƣờng trên khắp thế giới.. hoá đơn.. Khía cạnh lợi ích này mang tính chiến lƣợc công nghệ và tính chính sách phát triển cần cho các nƣớc công nghiệp hoá. tạo điều kiện cho tất cả mọi ngƣời ở khắp mọi nơi đều có cơ hội ngang nhau tham gia vào thị trƣờng giao dịch toàn cầu và không đòi hỏi nhất thiết phải có mối quen biết với nhau. chỉ đƣợc sử dụng để chao đổi số liệu kinh doanh. 3..1. Trong hoạt động giao dịch TMĐT đều có sự tham gia của ít nhất ba chủ thể.. TMĐT có một số các đặc trƣng cơ bản sau: 3.3. các cơ quan chứng thực.edu. Tuy nhiên việc sử dụng các phƣơng tiện điện tử trong thƣơng mại truyền thống chỉ để chuyển tải thông tin một cách trực tiếp giữa 2 đối tác của cùng một giao dịch.lrc-tnu.vn 10 . Các giao dịch đƣợc thực hiện chủ yếu theo nguyên tắc vật lý nhƣ chuyển tiền. Các giao dịch thương mại truyền thống được thực hiện với sự tồn tại của khái niệm biên giới quốc gia. Tạo điều kiện sớm tiếp cận kinh tế tri thức Trƣớc hết TMĐT sẽ kích thích sự phát triển của nghành CNTT tạo cơ sở cho phát triển kinh tế tri thức. Các bên tiến hành giao dịch trong thương mại điện tử không tiếp xúc trực tiếp với nhau và không đòi hỏi phải biết nhau từ trước.. Với TMĐT một doanh nhân dù mới thành lập đã có thể kinh doang ở Nhật Bản.

Sau khi làn sóng lạc quan về TMĐT của những năm 1990 qua đi. còn đối với TMĐT thì mạng lưới thông tin chính là thị trường Thông qua TMĐT nhiều loại hình kinh doanh mới đƣợc hình thành.4. đồng thời họ cũng xác nhận độ tin cậy của các thông tin trong giao dịch TMĐT. Một thị trƣờng ngang tập trung vào một quy trình kinh doanh riêng lẻ nhất định. 4. Nhà cung cấp dịch vụ mạng và cơ quan chứng thực có nhiệm vụ chuyển đi. các siêu thị ảo đƣợc hình thành để cung cấp hàng hoá và dịch vụ trên mạng máy tính. lƣu giữ các thông tin giữa các bên tham gia giao dịch TMĐT. Ngƣợc lại thị trƣờng dọc mô phỏng nhiều quy trình kinh doanh khác nhau của một nghành duy nhất hay một nhóm ngƣời dùng duy nhất. Thêm vào đó là xu hƣớng kết nối nhiều thông tin chào hàng khác nhau thông qua các giao diện lập trình ứng dụng để thành lập một thị trƣờng chung có mật độ chào hàng cao. Thị trƣờng mở là những thị trƣờng mà tất cả mọi ngƣời có thể đăng ký và tham gia. C2B hay C2C.vn 11 . 3. B2C.edu. Ví dụ: Các dịch vụ gia tăng giá trị trên mạng máy tính hình thành nên các nhà trung gian ảo làm các dịch vụ môi giới cho giới kinh doanh và tiêu dùng. công nghệ để thực hiện một thị trƣờng điện tử đã rẻ đi rất nhiều. Tại một thị trƣờng đóng chỉ có một số thành viên nhất định đƣợc mời hay cho phép tham gia. Ngoài ra các thị trƣờng độc lập trƣớc đây còn đƣợc tích hợp ngày càng nhiều bằng các giải pháp phần mềm cho một cổng Web toàn diện.lrc-tnu. Ngày nay tình hình đã khác hăn đi. Đối với thương mại truyền thống thì mạng lưới thông tin chỉ là phương tiện để trao đổi dữ liệu. ví dụ nhƣ lĩnh vực cung cấp: nhiều doanh nghiệp có thể từ các nghành khác nhau tham gia nhƣ là ngƣời mua và liên hệ với một nhóm nhà cung cấp. Thế nhƣng bên cạnh đó là ngày càng nhiều những thị trƣờng chuyên môn nhỏ. thời gian mà đã xuất hiện nhiều thị trƣờng điện tử. Các loại thị trƣờng điện tử Tuỳ thuộc vào đối tác kinh doanh mà ngƣời ta gọi đó là thị trƣờng B2B.dịch thƣơng mại điện tử. Các chủ cửa hàng thông thƣờng ngày nay cũng đang đua nhau đƣa thông tin lên Web để tiến tới khai thác mảng thị trƣờng rộng lớn trên Web bằng cách mở cửa hàng ảo. ngƣời ta cho rằng sau một quá trình tập trung chỉ có một số ít thị trƣờng lớn là sẽ tiếp tục tồn tại. Thƣơng mại điện tử đƣợc phân loại theo tƣ cách của ngƣời tham gia giao dịch nhƣ sau: • Ngƣời tiêu dùng: C2C (Consumer – To – Consumer): Ngƣời tiêu dùng với ngƣời tiêu dùng C2B (Consummer – To – Business): Ngƣời tiêu dùng với doanh nghiệp C2G (Consumer – To – Government): Ngƣời tiêu dùng với chính phủ Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.

Hiện tại không phải ngân hàng nào cũng cung cấp dịch vụ tài khoản giao dịch trên Internet. trả tiền mua hàng bằng thẻ tín dụng. Hiểu một cách khái quát thì thanh toán điện tử là một quá trình thanh toán tiền giữa ngƣời mua và ngƣời bán. nhà trung gian và các bên tham gia hoạt động thƣơng mại. Điều cần thiết là Website bán hàng cần phải tạo ra đƣợc các hình thức thanh toán trên mạng.• Doanh nghiệp: B2C (Bussiness – To – Consumer): Doanh nghiệp với ngƣời tiêu dùng B2B (Bussiness – To – Business ): Doanh nghiệp với doanh nghiệp B2G (Bussiness – To – Government): Doanh nghiệp với chính phủ B2E (Bussiness – To – Employee): Doanh nghiệp với nhân viên • Chính phủ G2C (Government – To – Consumer): Chính phủ với ngƣời tiêu dùng G2B (Government – To – Business): Chính phủ với doanh nghiệp G2G (Government – To – Government): Chính phủ với chính phủ 5. Để tiến hành sử dụng dịch vụ thanh toán bằng thẻ tín dụng trên Website cần đăng ký một tài khoản giao dịch Internet với ngân hàng (acquier). với một số lợi ích nhƣ giảm chi phí xử lý. chi phí công nghệ và tăng cƣờng thƣơng mại trực tuyến. Các hệ thống thanh toán trong TMĐT Thanh toán điện tử là một khâu quan trọng trong TMĐT. Hệ thống thanh toán phổ biến hiện nay trên mạng là thanh toán bằng thẻ tín dụng.. Việc trả lƣơng bằng cách chuyển tiền vào tài khoản ngân hàng. bằng thẻ mua hàng. hoặc tiền điện tử) giữa ngân hàng. Một số thẻ tín dụng phổ biến hiện nay là Visa. Dịch vụ thanh toán này cung cấp phần mềm định vị trên máy chủ dịch vụ an toàn tới dịc vụ thực hiện thanh toán. Hình thức thanh toán điện tử có một số hệ thống thanh toán cơ bản sau: Thanh toán bằng thẻ tín dụng: Thực tế cho thấy. Để tiến hành giao dịch thẻ tín dụng từ Website bán hàng cần thiết phải liên kết tới một dịch vụ tiến hành thanh toán thẻ tín dụng trên mạng nhƣ CyberCard hay PaymentNet... MasterCard. séc điện tử. Điểm cốt lõi của vấn đề này là việc ứng dụng các công nghệ thanh toán tài chính (ví dụ nhƣ mã hoá số thẻ tin dụng. American Express.vn 12 . JBC. khách hàng trên mạng không thể trả tiền hoặc séc để thanh toán. Các ngân hàng và tổ chức tín dụng hiện nay sử dụng các phƣơng pháp này nhằm mục đích nâng cao hiệu quả hoạt động trong bối cảnh phát triển của nền kinh tế số. Sau đó chuyển đến bộ phận xác nhận.edu.. Dịch vụ thanh toán bằng thẻ tín dụng đảm bảo rằng tiền đƣợc thực hiện ở tài khoản ngân hàng. Thanh toán điện tử là việc trả tiền thông qua các thông điệp điện tử thay vì trao tay trực tiếp..lrc-tnu. Tài khoản giao dịch Internet đƣợc thiết kế cho Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Dịch vụ thực hiện thanh toán xác nhận thông qua thẻ tín dụng để có thể hoàn tất giao dịch với khách hàng. thực chất cũng là những ví dụ đơn giản của thanh toán điện tử.

edu. giảm chi phí và dễ dàng hơn cho khách hàng trong việc quản lý hoá đơn. điện thoại. Với những lợi ích nêu trên. Quá trình thanh toán đƣợc thực hiện thông qua dịch vụ nhƣ dịch vụ thanh toán chi phiếu điện tử trên Cybercash’s Paynow (thanh toán nhanh) của Cybercash.vn 13 . Chi phiếu điện tử (Electronic Check) : Đây là một dịch vụ cho phép khách hàng trực tiếp chuyển tiền điện tử từ ngân hàng đến ngƣời bán hàng.. tăng cƣờng khả năng thanh toán điện tử sẽ là một giải pháp cắt giảm đáng kể các chi phí hoạt động. Chi phiếu điện tử đƣợc sử dụng thanh toán hoá đơn định kỳ.. Máy cung cấp biên nhận điện tử tự động. do đó họ tìm kiếm các giải pháp khác với chi phí thấp hơn.phép nhà kinh doanh thực hiện giao dịch thanh toán qua thẻ tín dụng trên Internet thông qua dịch vụ thẻ tín dụng trên mạng.. ga. Từ triển vọng của khách hàng khi một khách hàng đăng kí với nhà cung cấp thì khách hàng sẽ nhận đƣợc thông tin thanh toán (số tài khoản. 6. Khách hàng với tên đăng kí sử dụng và mật khẩu họ có thể truy nhập vào Website của công ty phát hành chi phiếu để kiểm tra số dƣ của họ. Công nghệ thanh toán điện tử Các công nghệ thanh toán điện tử bắt đầu phát triển với dịch vụ chuyển tiền bằng điện tử ví dụ nhƣ dịch vụ chuyển tiền của Western Union giúp một cá nhân có thể chuyển tiền cho ngƣời nào đó ở địa điểm khác thông qua lệnh Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Máy cung cấp biên nhận điện tử tự động sẽ cấp cho khách hàng tiền kỹ thuật số (digital money). Theo tính toán của các ngân hàng thì việc giao dịch bằng tiền và séc rất tốn kém. Các công ty nhƣ điện. do đó khách hàng có thể mua trực tiếp từ Website. Khách hàng cũng có thể nhận những hoá đơn điện tử và gửi thƣ điện tử thông báo đã nhận đƣợc hoá đơn điện tử từ công ty cung cấp gửi đến. Dự báo con số này sẽ tăng lên trong thời gian tới.). ngân hàng. Thanh toán vi điện tử (Electronic Cash MicroPayment): Đƣợc sử dụng cho những giao dịch quá nhỏ đối với yêu cầu thanh toán qua thẻ tín dụng (dƣới 10 USD). Trƣớc khi khách hàng thanh toán tiền kỹ thuật số đến ngƣời bán. khách hàng mở tài khoản với máy cung cấp biên nhận điện tử tự động. Hiện nay ở Mỹ thì các giao dịch bằng tiền mặt chiếm khoảng 54% và bằng séc là 29% các giao dịch điện tử chiếm khoảng 17%. Khi khách hàng truy cập hoá đơn của mình trên Internet sau khi xem xét tất cả các hoá đơn khách hàng có thể chọn để thanh toán từ tiền của mình trong tài khoản tại ngân hàng. đƣa ra hình thức thanh toán này để cải thiện tỉ lệ thu. Thƣ điện tử (Email): Có thể dùng để cho phép đối tác kinh doanh nhận thanh toán từ tài khoản khách hàng hoặc để lập tài khoản với nhà cung cấp.lrc-tnu.. nó xác nhận cả ngƣời mua và máy bán hàng tự động để đảm bảo rằng tiền đi đến đúng nơi cung cấp tiền điện tử Cyberrcash. Micropayment vi thanh toán đƣợc duy trì qua biên nhận điện tử. nƣớc.

tiến hành thủ tục thanh toán sẽ diễn ra ngay lập tức khi khách hàng gửi lệnh yêu cầu chuyển tiền để thanh toán cho một giao dịch mua bán trên mạng. 5. Quy trình thanh toán điện tử Một quy trình thanh toán điện tử bao gồm có 6 công đoạn cơ bản sau: 1. Tiền chỉ có thể chuyển giao cho khách hàng sau khi đáp ứng đƣợc các yêu cầu nhận điện.lrc-tnu. định dạng lại giao dịch và chuyển tiếp thông tin thanh toán đến Ngân hàng của Doanh nghiệp (Acquirer) theo một đƣờng dây thuê bao riêng (một đƣờng truyền số liệu riêng biệt). để gởi thông tin trả về cho Doanh nghiệp. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 14 . Và tổ chức tài chính này sẽ phản hồi là đồng ý hoặc từ chối thanh toán đến trung tâm xử lý thẻ tín dụng trên mạng Internet. Khi Trung tâm xử lý thẻ tín dụng nhận đƣợc thông tin thanh toán. điền những thông tin thanh toán và địa chỉ liên hệ vào đơn đặt hàng (Order Form) của Website bán hàng. Chữ ký đƣợc sử dụng nhƣ một công cụ xác nhận nhằm mục đích cho biết quá trình chuyển giao đã hoàn thành khi khách hàng nhận đƣợc tiền. Hệ thống thanh toán điện tử dành cho khách hàng phát triển rất nhanh chóng. Với quá trình mã hoá các thông tin thanh toán của khách hàng đƣợc bảo mật an toàn nhằm chống gian lận trong các giao dịch (ngay cả doanh nghiệp sẽ không biết đƣợc thông tin về thẻ tín dụng của khách hàng). Western chỉ đơn thuần là một công ty điện tín.edu. địa chỉ giao nhận và số phiếu đặt hàng… 2. 4. Khách hàng. 7. không có sự tham gia của bất kỳ ngân hàng nào cả. Sự an toàn phụ thuộc vào khả năng tài chính của hãng. Doanh nghiệp nhận và lƣu trũ thông tin đặt hàng đồng thời chuyển tiếp thông tin thanh toán (số thẻ tín dụng. Doanh nghiệp nhận đƣợc yêu cầu mua hàng hoá hay dịch vụ của khách hàng và phản hồi xác nhận tóm tắt lại những thông tin cần thiết nhƣ mặt hàng đã chọn. ngày đáo hạn.chuyển tiền của họ từ một quầy cung cấp dịch vụ của Western Union. 3. Khách hàng kiểm tra lại các thông tin và click chọn “đặt hàng”. nhằm mục đích bảo mật tuyệt đối cho các giao dịch thƣơng mại. sẽ giải mã thông tin và xử lý giao dịch đằng sau tƣờng lửa (Fire Wall) và tách rời mạng Internet (off the Internet). Trong trƣờng hợp này. Ngân hàng của Doanh nghiệp gởi thông điện điện tử yêu cầu thanh toán (authorization request) đến ngân hàng hoặc Công ty cung cấp thẻ tín dụng của khách hàng (Issuer). chủ thẻ…) đã đƣợc mã hoá đến máy chủ (Server. từ một máy tính tại một nơi nào đó. các khâu kiểm tra hối đoái. Trong một giao dịch điện tử. Các thông tin này không đƣợc công bố rộng rãi mà chỉ khách hàng và ngƣời nhận đƣợc biết khoản tiền đƣợc chuyển. Các sáng kiến trong thanh toán điện tử hiện nay đều nhằm mục đích tạo ra một cách thức đơn giản. và sự an toàn của dịch vụ này đƣợc kiểm soát qua các thông điệp gửi đi trong từng giao dịch riêng lẻ. thuận lợi cho khách hàng trong giao dịch thanh toán và mang tính tức thời. thiết bị xử lý dữ liệu) của Trung tâm cung cấp dịch vụ xử lý thẻ trên mạng Internet.

điều này có nghĩa là nó gắn với các cách thức để chuyển đổi thông tin từ dạng này sang dạng khác nhƣng ở đây là từ dạng thông thƣòng có thể nhận thức đƣợc thành dạng không thể nhận thức đƣợc.vn 15 . thƣơng mại. đôi khi có hỗ trợ từ những dụng cụ cơ khí đơn giản. ch-¬ng II : hÖ mËt m·. Trong phần lớn thời gian phát triển của mình ( ngoại trừ vài thập kỉ trở lại đây ). đã cung cấp những những cơ chế phức tạp và hiệu quả hơn cho việc mật mã hoá.6. trí tò mò hoặc thậm trí để tạo sự thích thú cho ngƣời xem. làm cho thông tin trở thành dạng không thể đọc đƣợc nếu nhƣ không có các kiến thức bí mật.edu. thông thƣờng đƣợc thiết kế và tạo lập sẵn trong các cơ sở hạ tầng của công nghệ tính toán và liên lạc viễn thông. mật mã học gắn liền với quá trình mã hóa. quân sự hay ngoại giao cũng nhƣ các bí mật về kinh tế. Sự ra đời và phát triển mạnh mẽ của ngành điên tử và máy tính trong thập niên gần đây đã tạo điều kiện để mạt mã học phát triển nhảy vọt lên một tầm cao mới. Vào đầu thế kỉ 20. m· kho¸ ®èi xøng m· kho¸ c«ng khai. tæng quan vÒ c¸c hÖ mËt m· Mật mã học là một linh vực liên quan vói các kỹ thuật ngôn ngữ và toán học để đảm bảo an toàn thông tin. Về phƣơng diện lịch sử. Trung tâm xử lý thẻ tín dụng trên Internet sẽ tiếp tục chuyển tiếp những thông tin phản hồi trên đến doanh nghiệp và tuỳ theo đó doanh nghiệp thông báo cho khách hàng đƣợc rõ là đơn đặt hàng sẽ đƣợc thực hiện hay không. Ngoài ra những ngƣời không có nhu cầu thiết yếu đặc biệt về tính bí mật cũng sử dụng các công nghệ mật mã hoá. 1. Ngoài ra còn rất nhiều ví dụ khác về Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. sự xuất hiện của các cơ cấu cơ khí và điện cơ. chẳng hạn trong công tác tình báo. Mật mã học cổ điển Những bằng chứng sớm nhất về sử dụng mật mã học là các chữ tƣơng hình không tiêu chuẩn tìm thấy trên các bức tƣờng Ai Cập cổ đại (cách đây khoảng 4500). Trong những năm gần đây. Quá trình mã hoá đƣợc sử dụng chủ yếu để đảm bảo tính bí mật của các thông tin quan trọng . Mật mã học là một nghành có lịch sử từ hàng nghìn năm nay. Những kí hiệu tỏ ra không phải để phục vụ mục đích truyền thông tin bí mật mà có vẻ nhƣ là nhằm mục đích gợi nên những điều thần bí. lĩnh vực hoạt động củ mật mã hoá đã dƣợc mở rộng. chữ ký số. lịch sử mật mã học chính là lịch sử của những phƣơng pháp mật mã học cổ điển – các phƣơng pháp mật mã hoá với bút và giấy. ch÷ ký sè i.lrc-tnu. chẳng hạn nhƣ máy Enigma. cụ thể là thông tin liên lạc. bầu cử điện tử hay tiền điện tử. mật mã hoá hiện đại cung cấp cơ chế nhiều hoạt đông hơn là chỉ duy nhất việc giữ bí mật và có một loạt các ứng dụng nhƣ : chứng thực khoá công khai.

ở đây số 666 có thể là cách mã hoá để chỉ đến đế chế La Mã hoặc là đến hoàng đế nero của đế chế này. Đối với cơ độc giáo chính thống thi việc che dấu này kết thúc khi constantine cải đạo và chấp nhận đạo cơ đốc là chính thống của đế chế. Ví dụ tiêu chuẩn nhất là “số chỉ kẻ thù của chúa” (Tiếng Anh number of the beast) xuất hiện trong kinh Tân Ƣớc của cơ đốc giáo. Hình 1: Scytale. Muộn hơn. Năm 1949 ông dã công bố bài lý thuyết về truyền trhống trong các hệ thống bảo mật (Communication Theory of secrecy system ) trên tập san bell system technical journal _ tập san kỹ thuật của hệ thống bell_ và một thời gian ngắn sau đó. trong cuốn mathematical theory of communication _ lý thuyết toán học trong truyền thông _ cùng với tác giả warren weaver. cùng với nhũng công trình nghiên cứu khác của ông về lí thuyết về tin học và truyền thông ( information and communication theory). 2. Việc không đề cập trực tiếp sẽ đỡ gây rắc rối khi chính sách bị chính quyền chú ý. Mật mã học từ lâu đã đƣợc sử dụng trong các tác phẩm tôn giáo để che giấu thông tin với chính quyền hoặc nền văn hoá thống trị.vn 16 .lrc-tnu. mật mã học hầu nhƣ bị thâu tóm bởi các cơ quan truyền thông mật của chính phủ.edu. Cũng có những bằng chứng tỏ ngƣời La Mã nắm đƣợc các kĩ thuật mật mã (mật mã caesar và các biện thể). chẳng hạn nhƣ NSA.những ứng dụng của mật mã học hoặc là những điều tƣơng tự. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. đã thiết lập một nền tảng lí thuyết cơ bản cho mật mã học và thám mã học. Với ảnh hƣởng đó. Thậm trí đã có những đề cập đến một cuốn sách nói về mật mã trong quân đội La Mã. tuy nhiên cuốn sách này đã thất truyền. một thiết bị mật mã hóa cổ đại Ngƣời Hy Lạp cổ đại cũng đƣợc biết đến là sử dụng các kỹ thuật mật mã (chẳng hạn nhƣ mật mã scytale ). Những công trình này. ngƣời đƣợc coi là cha đẻ của mật mã toán học. các học giả về tiếng Hebrew có sử dụng một phƣng pháp mã hoá thay thế bảng chữ cái đơn giản chẳng hạn nhƣ mật mã hoá Atbash ( khoảng năm 500 đến năm 600). Mật mã học hiện đại Nhiều ngƣời cho rằng kỷ nguyên của mật mã học hiện đại đƣợc bắt đầu với Claude Shannon.

Mật mã hoá là quá trình chuyển đổi các thông tin thông thƣờng (văn bản thƣờng hay văn bản rõ ) thành dạng không đọc trực tiếp đƣợc. có nguồn gốc từ tiếng Hy Lạp kryptos tức là "ẩn" và graphein. thuật ngữ này có ý nghĩa kỹ thuật đặc biệt: Các mã là các phƣơng pháp lịch sử tham gia vào việc thay thế các đơn vị văn bản lớn hơn. mật mã hoá cổ điển thong thƣờng thay thế hoạc sắp xếp lại các chữ riêng biệt (hoặc một nhóm nhỏ các chữ cái) ví dụ.lrc-tnu. Trong một số ngôn ngữ nhƣ tiếng anh nó là cryptography. nó bao bọc toàn bộ các chủ đề liên quan đến mật mã. Trong thực tế. Mật mã hoá và phân tích mật mã đôi khi đƣợc nhóm lại cùng nhau dƣới tên gọi chung mật mã học. Giải mật mã. Hoạt động chính xác của mật mã thông thƣờng đựoc kiểm soát bởi khoá _ một đoạn thông tin bí mật nào đó cho phép tuỳ biến cách thức tạo ra văn bản mã. 3. hay phá mã. hoặc bởi những ngƣời thiết kế ra hệ thống (hoặc những ngƣời khác ) với ý định đánh giá độ an toàn của hệ thống. Thám mã: Mục tiêu của thám mã (phá mã ) là tìm những điểm yếu hoặc không an toàn trong phƣơng thứ mật mã hoá. thuật ngữ mật mã hoá thông thƣờng đƣợc sử dụng để nói đến ngành này một cách tổng thể. Mật mã là thuật toán để mật mã hoá và giải mật mã. thông thƣờng là các từ hay câu (ví dụ.vn 17 . "tan cong luc rang dong" trở thành "ubo dpoh mvd sboh epoh" bằng cách thay thế. cho đến thời kì giữa thập niên 1970. Rất ít các công trình đƣợc tiếp tục công bố.và biến mất khỏi tầm hiểu biết của công chúng. Một bộ các giao thức. Trong mật mã học. "viết ra". Thuật ngữ Việc nghiên cứu tìm các phƣơng thức để phá vỡ việc sử dụng mật mã đƣợc gọi là phân tích mật mã. Thám mã có thể đƣợc thực hiện bởi những kẻ tấn công ác ý. Việc sử dụng từ "cryptography" lần đầu tiên có lẽ diễn ra trong bài diễn thuyết của Sir Thomas Browne năm 1658 có tên gọi The garden of cyrus: "The strange cryptography of gaffarel in his starrie booke of heaven". nhằm làm hỏng hệ thống. "qua tao" thay thế cho "tan cong luc rang dong"). Trong cách nói thông thƣờng. Các giao thức mật mã chỉ rõ các chi tiết về việc mật mã (và các nền tảng mật mã hoá khác) đƣợc sử dụng nhƣ thế nào để thu đƣợc các nhiệm vụ cụ thể. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. "mã" bí mật thông thƣờng đƣợc sử dụng đồng nghĩa với "mật mã". là văn bản mã. là quá trình ngƣợc lại. khi mọi sự đƣợc thay đổi. thuật toán. cách thức quản lý khoá và các hành động quy định trứơc bởi ngƣời sử dụng thi hành cùng nhau nhƣ một hệ thống tạo ra hệ thống mật mã.edu. phục hồi lại văn bản thƣơng từ văn bản mã. Ngƣợc lại.

edu. Trong công việc thám mã thuần tuý sử dụng các điểm yếu trong các thuật toán mật mã hoá. vì kích thƣớc không đủ lớn cũng nhƣ thiếu tính ngẫu nhiên của mật khẩu. Khi mật mã hoá dựa vào các vấn đề toán tin nhƣ độ khó NP. giao thức thoả thuận khoá chứng thực mật khẩu có thể giảm đi một số các giới hạn của mật khẩu.nhƣ cho các nhà băng và cho các tổ chức tài chính lớn. DES Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Tiêu chuẩn mật mã Thời kỳ giữa thập niên kỷ 1970 đƣợc chứng kiến hai tiến bộ cong chính lớn ( công khai ). những ngƣời thám mã chỉ truy cập đƣợc văn bản mã hoá không ? hoặc thậm chí: Anh ta có chọn lựa các văn bản ngẫu nhiên để mã hoá ? Các kịch bản này tƣơng ứng với tấn công văn bản mã.vn 18 .lrc-tnu. Nếu ngƣời thám mã biết lƣợng thời gian mà thuật toán cần để mã hoá một lƣợng bản rõ nào đó. Thám mã tuyến tính và Thám mã vi phân là các phƣơng pháp chung cho mật mã hoá khoa đối xứng. các thuật toán nhƣ phân tích ra thừa số nguyên tố trở thành công cụ tiềm năng cho thám mã. Ví dụ. những cuộc tấn công khác lại dựa trên sự thi hành. Với đề cử của cục tiêu chuẩn quốc gia (national bureau of standards _NBS ). (hiện là NIST ). nó đã đƣợc chấp thuận và đƣợc phát hành dƣới cái tên bản công bố về tiêu chuẩn xử lý thông tin của liên bang (federal information processing standard publication _FIPS) (phiên bản hiện nay là FIPS 46_3). Đây là điểm yếu chung trong hệ thông mật mã. đƣợc biết đến nhƣ là các tấn công side _channel. Một trong những đặc điểm liên quan là những ngƣời tấn công có thể biết và làm những gì để hiểu đƣợc thông tin bí mật. 4. chúng có nguy sơ bị tấn công kiểu duyệt toàn bộ (brute force ). giống nhƣ trong trƣờng hợp của thuật toán khoá đối xứng. Sau nhƣng chỉ đạo và thay đổi của NSA. điều này đƣợc biết đến nhƣ là thám mã lƣu thông. anh ta có thể sử dụng phƣơng thức tấn công thời gian để mã hoá mà nếu không thì chúng chịu đƣợc phép thám mã. tấn công biết bản rõ và tấn công chọn lựa bản rõ. Nếu nhƣ hệ thống mật mã sử dụng khoá xuất phát từ mật khẩu. hoặc là biện pháp an toàn để lƣu trữ các dữ liệu chứa mật khẩu và/hoặc các cụm từ kiểm soat truy cập thông thƣờng đƣợc gợi ý nên sử dụng. Đối với các ứng dụng mạng. Đối với các ứng dụng độc lập.Có rất nhiều loại hình tấn công thám mã. và chung có thể đƣợc phân loại theo nhiều cách khác nhau. Ngƣời tấn công cũng có thể nghiên cứu các mẫu và độ dài của thông điệp để rút ra các thông tin hữu ích cho việc phá mã. bản đề xuất DES đƣợc công ty IBM ( international business machines ) đệ trình trở thành một trong những cố gắng trong việc xây dựng các công cụ tiện ích cho thƣơng mại. vào năm 1977. Đầu tiên là sự công đề xuất tiêu chuẩn mật mã hoá dữ liệu (data encryption standard) trong "công báo liên bang " ( federal register ) ở nƣớc Mỹ vào ngày 17 tháng 3 năm 1975.

có thể đƣợc khẳng định một cách không nghi ngờ. đƣợc suất bản bởi “ O’reilly and Associates”. DES đã chính thức đƣợc thay thế bởi AES ( viết tắt của advanced encryption standard _ tiêu chuẩn mã hoá tiên tiến) khi NIST công bố phiên bản FIPF 197. Năm 2001. Một trong những kiểu tấn công loại này đƣợc thực hiện bởi nhóm “ nhân quyền cyber” (cyber civil. một số sự kiện sảy ra trong năm 1976. không an toàn và những thông điệp ở dƣới sự bảo vệ của những hệ thống mã hoá trƣớc đây dùng DES. với chiều dài khoá chỉ là 56 bit. nó không thẻ cho phép thu lƣợm đƣợc bất kì thông tin đáng kể nào về nội dung của thông điệp.  Tính xác thực: ngƣời nhận cần có khả năng xác định ngƣời gửi và kiểm tra xem ngƣời gửi có thực sự gửi tin đi hay không. đều ở tronh tình trạng rất đáng lo ngại.  Nguyên vẹn: ngƣời nhân cần có khả năng xác định đƣợc thông tin có bị thay đổi trong quá trình truyền hay không.rights group) tên là tổ chức tiền tuyến điện tử (electronic frontier foundation) vào năm 1997. Mật mã hoá đƣợc sử dụng để đảm bảo an toàn cho thông tin liên lạc.edu. Đã có một số nghi ngờ xuất hiện nói rằng mọt số các tổ chức của chính phủ. chỉ ra rằngchiều dài khoá mà DES sử dụng (56-bit) là một khoá quá nhỏ). do hai nhà mật mã ngƣời Bỉ đệ trình. rõ ràng là những cơ quan khác cũng đã có khả năng làm việc nay rồi.câu truyện này đƣợc nhắc đến trong cuốn cracking DES( phá vỡ DES). Mật mã học có thể cung cấp cơ chế để giúp đỡ thực hiện điều này. NIST đã chọn Rijndael. vẫn còn đƣợc sử dụng.tấn công dùng bạo lực). Nói khác đi.  Chống lặp lại: không cho phép bên thứ ba copy lại văn bản và gửi nhiều lần đến ngƣời nhận mà ngƣời gửi không hề hay biết. cũng nhƣ tất cả các thông điệp đƣợc truyền gửi từ năm 1976 trở đi sử dụng DES. do trƣớc đây nó đƣợc gắn liền với nhiều tiêu chuẩn quốc gia và các tổ chức.Tuy nhiên. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.Các thuộc tính đƣợc yêu cầu là:  Tính bí mật: chỉ có ngƣời nhận đã xác thực có thể lấy ra đƣợc nội dung của thông tin chứa đựng trong dạng đã mật mã hoá của nó. và nó trở thành AES và một số biến thể của nó nhƣ tam phần DES (Triple Des). ngay tại thời điểm bấy giờ. Sau một cuộc thi tổ chức công khai. Sự phát hành bản đặc tả của nó bởi NBS đã khuyến khích sự quan tâm chú ý của công chúng cũng nhƣ của các tổ chức nghiên cứu về mật mã học.  Không bị từ chối: ngƣời gửi không bị (không thể) từ chối việc đã gửi thông tin đi. Bất chấp chất lƣợng vốn có của nó. nó đã đƣợc chứng minh là không đủ sức chống lại những tấn công kiểu vét cạn (brute force attack.vn 19 .lrc-tnu. Do kết quả này mà hiện nay việc sử dụng phƣơng pháp mật mã hoá DES nguyên dạng. cũng đã có đủ công suất máy tính để phá mã các thông diệp dùng DES.là phƣơng thức mật mã công khai đầu tiên đƣợc một cơ quan quốc gia nhƣ NSA "tôn sùng". và đã phá mã thành công trong 56 tiếng đồng hồ. đặc biệt là sự kiện công khai nhất của Whitfield Diffie. là một việc làm mạo hiểm.

Ví dụ. c¸c ph-¬ng ph¸p m· ho¸ 1. ii. ngƣời gửi thông tin có thể mong muốn giữ mình là nặc danh. do vậy ta dễ dàng xác định một khóa nếu biết khóa kia. Trong hệ này. và khoá này phải đƣợc cất giữ bí mật. Thuật toán này còn có nhiều tên gọi khác nhƣ thuật toán khoá bí mật.1.2. trong trƣờng hợp này sự không từ chối thực hiện rõ ràng là không thích hợp. Độ an toàn của thuật toán này phụ thuộc vào khoá.edu. Ngƣời gửi và nhận phải luôn thống nhất với nhau về khóa. trong nghĩa cảnh của thực tế hay mong muốn. khóa phải đƣợc gửi đi trên kênh an toàn. Sự mã hoá và giải mã của thuật toán đối xứng biểu thị bởi: EK (K) = C và DK (C ) = P H×nh2: M· ho¸ víi kho¸ m· vµ gi¶i m· gièng nhau 1. Các vấn đề đối với phƣơng pháp mã hóa đối xứng Phƣơng mã hóa đối xứng đòi hỏi ngƣời mã hóa và ngƣời giải mã phải cùng chung một khóa. thuật toán một khoá. Thuật toán này yêu cầu ngƣời gửi và ngƣời nhận phải thoả thuận một khoá trƣớc khi thông báo đƣợc gửi đi.vn 20 .một số mục tiêu không phải bao giờ cũng là cần thiết. Hệ mã hóa đối xứng không an toàn nếu khóa bị lộ với xác suất cao. Vấn đề quản lý và phân phối khóa là khó khăn và phức tạp khi sử dụng hệ mã hóa đối xứng. khoá mã hoá và khoá giải mã là giống nhau. Việc thay đổi khóa là rất khó và dễ bị lộ Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.Trong rất nhiều trƣờng hợp. thuật toán khoá đơn giản. Định nghĩa Thuật toán đối xứng hay là thuật toán mà tại đó khoá mã hoá có thể tính toán ra đƣợc từ khoá giải mã.lrc-tnu. Mã hoá đối xứng (mã hoá khoá bí mật) 1. nếu để lộ ra khoá này nghĩa là bất kì ngƣời nào cũng có thể mã hoá và giải mã thông báo trong hệ thống mã hoá. Khi đó khóa phải đƣợc giữ bí mật tuyệt đối.

Nền tảng để xây dựng khối của DES là sự kết hợp đơn giản của các kỹ thuật thay thế và hoán vị bản rõ dựa trên khoá. đó là các vòng lặp. a.lrc-tnu.197. DES mã hoá một sâu bit x của rõ độ dài 64 bằng một khoá 56 bit.3. Bản mã nhận đƣợc cũng là một xâu bit có độ dài 64. b.Khuynh hƣớng cung cấp khoá dài mà nó phải đƣợc thay đổi thƣờng xuyên cho mọi ngƣời trong khi vẫn duy trì cả tính an toàn lẫn hiệu quả chi phí sẽ cản trở rất nhiều tới hệ mật mã này. sau khi mã hoá dữ liệu ra là một khối bản mã 64 bit.5. Giới thiệu Ngày 15. 1. DES đƣợc IBM phát triển và đƣợc xem nhƣ là một cái biên của hệ mật LUCIPHER. và với đặc tính lặp đi lặp lại của thuật toán đã tạo nên ý tƣởng sử dụng chip với mục đích này đặc biệt này.DES lại đƣợc uỷ ban tiêu chuẩn quốc gia xem xét lại. Kể từ đó cứ 5 năm một lần. vì vậy nó rễ ràng thự hiện vào những năm 1970 trong điều kiện về công nghệ lúc bấy giờ.1975. Ban đầu. một sâu bit x0 sẽ đƣợc xây dựng bằng cách hoán vị các bit của x theo phép hoán vị cố định ban đầuIP. Với bản rõ trƣớc x.1. Điều này cuối cùng đã dẫn đến sự phát triển của chuẩn mã dữ liệu (ĐES) và nó đã trở thành một hệ mật đƣợc sử dụng rộng rãi nhất trên thế giới. Một khối bản rõ 64 bit đƣa vào thực hiện.3 chuẩn mã hoá dữ liệu DES.1. sự thực hiên các phần mềm kiểu này rất thô sơ. Trƣớc hết ta mô tả ở mức cao của hệ thống. Lần đầu tiên DES đƣợc công bố trong Hồ sơ liên bang vào ngày 17. DES sử dụng 16 vòng lặp áp dụng cùng một kiểu kết hợp các kỹ thuật trên khối bản rõ. Thuật toán chỉ sử dụng các phép toán số học và lôgic thông thƣờng trên các số 64 bit. Sau nhiều cuộc tranh luận công khai. DES là thuật toán mã hoá khối (block algorithm). Thuật toán tiến hành theo 3 giai đoạn: 1. Mô tả Mô tả đầy đủ của DES đƣợc nêu trong công bố số 64 về các chuẩn xử lý thông tin liên bang (Mỹ) vào 15.vn 21 . Cả mã hoá và giải mã đều sử dụng cùng một thuật toán và khoá. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. DES đẫ đƣợc chấp nhận làm chuẩn cho các ứng dụng không đƣợc coi là mật vào 5. uỷ ban tiêu chuẩn quốc gia Mỹ đẫ công bố một khuyến nghị cho các hệ trong Hồ sơ quản lý liên bang.1973.edu.1977. nó mã hoá một khối dữ liệu 64 bit bằng một khoá 56 bit. nhƣng hiện tại việc đó đã tốt hơn.

K16 sẽ tạo thành bảng khoá... Li-1 L i-1 Li-1 f i + 1 i 1 Ri Ki Hình 3 : Một vòng của DES Hàm f có hai biến vào : biến thứ nhất A là xâu bit độ dài 32.edu..1  i  16 theo qui tắc sau: L1=Ri-1 R1 = Li-1  f(Ri-1. K1.vn 22 ... Chú ý thứ tự đã đƣợc đảo của R16 va L16 . còn K1...K2. 3. Các bước thực hiện: Biến thứ nhất A đƣợc mở rộng thành một xâu bit độ dài 48 theo một hàm mở rộng cố định E. Ta sẽ tính L1R1. F là một hàm ta xẽ mô tả ở sau. E9A) gồm 32 bit của A (đƣợc hoán vị theo cách cố định ) với 16 bit xuất hiên hai lần.lrc-tnu. 2. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. trong đó L0 gồm 32 bit đầu và R0 là 32 bit cuối.. đầu ra của f là một xâu bit độ dài 32. Một vòng của phép mã hoá đƣợc mô tả trên hình 2.K16 là các sâu bit độ dài 48 đƣợc tính nhƣ hàm của khoá Ki là một phép chọn hoán vị bít trong K).Ta viêt:x0 = IP (X)= L0R0. áp dụng phép hoán vị IP-1(R16L16). biến thứ hai j là một xâu bit độ dài 48.K2. sau đó tính toán 16 lần lặp theo một hàm xác định.Ki) Trong đó  kí hiệu phép hoặc loại trừ của hai xâu bit ( cộng theo modun 2).

Hình 4: . Các bit ở các vị trí 8..64 đƣợc xác định sao cho mỗi byte chứa một số lẻ các số 1 . Hàm f đƣợc mô tả trong hình 1.edu.3. ta tính Si(Bi) nhƣ sau: Hai bit b1b2 xác định biểu diễn nhị phân của hàng r của Si ( 0  r  3) và 4 bit (b2b3b4b5) xác định biểu diễn nhị phân của cột c của Si (0  c  15) . Xâu bit C = C1C2…C8 có độ dài 32 đƣợc hoán vị theo phép hoán vị cố định P. Xâu kết quả là P(C) đƣợc xác định là f(A. Khi đó Si (Bi) sẽ xác định phần tử Si(r. 16.….J).c). 1  i  8 . Chủ yếu nó gồm một phép thế (sử dụng hộp S).vn 23 .Hàm f của DES Cuối cùng ta cần mô tả việc tính toán bảng khoá từ khoá K. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Với mỗi Si là một bảng 4×6 cố định có các hàng là các số nguyên từ 0 đến 15. K là một xâu bit độ dài 64 . (Bởi vậy .S2. còn đầu ra là một xâu bit có độ dài4). Với xâu bit có độ dài 6 (Kí hiệu B1 = b1b2b3b4b5b6). mỗi Si có thể đƣợc coi là một hàm mã mà đầu vào là một xâu bit có độ dài 2 và một xâu bit có độ dài 4.lrc-tnu.Tính E(A)  j và viết kết quả thành một chuỗi 8 xâu 6 bit = B1B2B3B4B5B6B7B8 Bƣớc tiếp theo dùng 8 bảng S1. Bằng cách tƣơng tự tính các Ci = Si (Bi) . tiếp sau đó là phép hoán vị P .S8 ( đƣợc gọi tắt là cái hộp S). Bởi vậy một sai sót đơn lẻ có thể phát hiện đƣợc trong mỗi nhóm 8 bit. Các bit kiểm trabị bỏ qua trong quá trình tính toán bảng khoá. tring đó 56 bit là khoá và 5 bit để kiểm tra tính chẵn lẻ nhằm phat hiện sai. …. Trên thực tế . phần tử này viết dƣới dạng nhị phân là một xaau bit có độ dài 4.

khó hiểu nhƣ thuật toán mã hoá . Một lý do phản đối DES có liên quan đến các hộp S .k2. ta loại bỏ các bit kiểm tra tính chẵn lẻ và hoán vị cá bit còn lại của K theo phép hoán vị cố định PC-1 (K) = C0D0. và số những vị trí đƣợc đƣợc tính tứ cuối của bảng lên. phụ thuộc vào giá trị của i:dịch 1vị trs nếu i = 1.k3.k15.edu. Với i thay đổi từ 1 đến 16: Ci = LSi(Ci-1) Di = LSi (Di-1) Và Ki = PC-2 (CiDi). có thể sử dụng cùng chức năng để giải mã hoá một khối. Nghĩa là . Mọi tính toán liên Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.2. nếu các khoá mã hoá cho mỗi vòng là k1.k3. d. Khoá đƣợc dịch phải .….lrc-tnu..vn 24 . Với một khoá K 64 bit cho trƣớc . Tranh luận về DES Khi DES đƣợc đề xuất nhƣ một chuẩn mật mã . 2. thay vì từ trên xuống .9 hoặc 16 và dịch 2 vị trí trong các trƣờng hợp còn lại .1. Việc tính bảng khoá đƣợc mô tả trên hình 1.…. Chỉ có sự khác nhau đó là các khoá phải đƣợc sử dụng theo thứ tự ngƣợc lại ..k2. bạn có thể nghĩ rằng thuật toán giải mã hoàn toàn khác và phức tạp .k1. Thuật tóan ding để sinh khoá đƣợc sử dụng cho mỗi vòng theo kiểu vòng quanh .. và dịch vòng . Trái lại . LSi thể hiện sự dịch sang trái 1 hoặc 2 bit .k15. PC-2 là một hoán vị cố định khác. Giải mã DES Sau khi thay đổi . Với DES . DES sử dụng cùng thuật toán làm việc cho cả mã hoá và giải mã.k16 thì các khoá giải là k16.4 Hình 5: Tính bảng khoá DES c. hoán vị . đã có rất nhiều ý kiến phê phán .

Cần chú ý là có thể nhiều hơn một khoá K nhƣ vậy. Một số ngƣời đã gợi ý là các hộp S phải chứa các “cửa sập” đƣợc dấu kín. Hai tính chất khác nhau sau đây của các hộp S có thể coi là đƣợc rút ra từ tiêu chuẩn thiết kế của NSA. Ngƣời ta không biếts rõ là liệu còn một chuẩn thiết kế bào đầy đủ hơn đƣợc dùng trong việc xây dựng hộp S hay không. Diffie và Hellman đã gợi ý rằng có thể xây dựng một chíp VLSI (mạch tích hợp mật độ lớn) có khả năng kiểm tra đƣợc 10 6 khoá/giây.edu. Nhiều thiết bị chuyên dụng đã đƣợc đề xuất nhằm phục vụ cho việc tấn công với bản rõ đã biết. mỗi khoá đều có thể đƣợc kiểm tra cho tới khi tìm đƣợc một khoá K thoả mãns ek (x) = y. nếu cố định giá trị bit vào thứ nhất hoặc bit vào thứ 6 thì có 16 mẫu vào làm một bit ra cụ thể bằng 0 và có 16 mẫu vào làm cho bit này bằng 1. Việc thay đổi một bit vào của S phải tạo nên sự thay đổi ít nhất là hai bit ra. tuy nhiên không có một chứng cớ nào đƣợc đƣa ras để chứng tỏ rằng trong thực tế có các cửa sập nhƣ vậy. 1. nếu cố định một bit vào và xem xét giá trị của một bit đầu ra cố định thì các mẫu vào để bit ra này bằng 0 sẽ xấp xỉ bằng số mẫu ra để bit đó bằng 1. Một máy có thể tìm toàn bộ không gian khoá cỡ 10 6 trong khoảng 1 ngày.vn 25 .1}: S(x)  S(x  11 ef00). nếu ra cố định giá trị của một bit vào bất kì thì số mẫy vào làm cho một bit ra cố định nào đó có giá trị 0 hoặc luôn nằm trong khoảng 13 đến 19). Chính xác hơn. Phép tấn công này chủ yếu thực hiện tìm khoá theo phƣơng pháp vét cạn. Sự phản đối xác đáng nhất về DES chính là kích thƣcớ của không gian khoá : 56 2 là quá nhỏ để đảm bảo an toàn thực sự. …15. tức việc tính phép hoặc loại trừ của hai đầu ra cũng giống nhƣ phép hoặc loại trừ của hai đầu vào rồi tính toán đầu ra . cho phép Cụ An ninh quốc gia Mỹ (NSA) giải mãs đƣợc các thông báo nhƣng vẫn giữ đƣơc mức độ an toàn của DES. Với các bit vào từ bít thứ hai đến bit thứ 5 thì điều này không còn dúng nữa. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.chứa đựng thành phần phi tuyến của của hệ mật là yếu tố quan trọng nhất đối với độ mật của hệ thống.lrc-tnu. Với hộp S bất kì. (Chú ý rằng. Với hộp S bất kì. Ngay từ năm 1977. Tuy nhiên phân bố kết quả vẫn gần với phân bố đều. tính chất sau của hộp S là tiêu chuẩn thiết kế: Mỗi hàng trong mỗi họp S là một hoán vị của các số nguyên 0.quan đến DES ngoại trừ các hộp S đều tuyến tính . Tuy nhiên tiêu chuẩn xây dựng các hộp S không đƣợc biết đầy đủ. Năm 1976 NSA đã khẳng định rằng. Tức cới bản rõ x64 bít và bản mã y tƣơng ứng. đầu vào x bất kì với e. f  {0.107$. với một hộp S bất kì. Họ ƣớc tính chi phí để tạo một máy nhƣ vậy khoảng 2. Đối với hộp S bất kỳ với đầu vào x bất kì S (s) và S(x  001100) phải khác nhau tối thiểu là hai bit (trong đó x là xâu bit độ dai 6). Không một hộp S nào là một hàm Affine hoặc tuyến tính các đầu vào của nó. Dĩ nhiên ta không thể bác bỏ đƣợc khẳng định này. Các hộp S.

Anubis (mã Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. AES ( viết tắt của từ tiếng Anh: Advanced Encryption Standard.5 giờ. Chẳng hạn nhƣ bộ năng lƣợng. DES còn đƣợc sử dụng rộng rãi trong các tổ chức chính phủ. Michael Wiener đã đƣa ra một thiết kế rất cụ thể về máy tìm khoá. các hộp S.vn 26 .Trong cuộc hội thảo tại hội nghị CRYPTO’93.000$ và nhƣ vậy nó có khả năng tìm ra một khoá của DES trong khoảng 1. có khả năng thực hiện đồng thời 16 phép mã và tốc độ tới 5. Các ứng dụng phần cứng hiện thời có thể đạt đƣợc tốc độ mã hoá cực nhanh. Máy này xây dựng trên một chíp tìm khoá. Thuật toán đƣợc thiết kế bởi hai nhà mật mã học ngƣời Bỉ: Joan Daemen và Vincent Rijmen (lấy tên chung là “Rijnadael” khi tham gia cuộc tthiết kế AES). chi phí chế tạo khoảng 10. e. Một ứng dụng quan trọngs của DES là trong giao dịch ngân hàng Mỹ (ABA) DES đƣợc dùng để mã hoá các số định danh cá nhân (PIN) và việc chuyển khoản bằng mảy thủ quỹ tự động (ATM). hay tiêu chuẩn mã hóa tiên tiến) là một thuật toán mã hóa khối đƣợc chính phủ Hoa Kỳ áp dụng làm tiêu chuẩn mã hóa.10 7 khoá/giây.lrc-tnu. Một thiết bị dùng 10 khung máy nhƣ vậy có giá chừng 106$ sẽ giảm thời gian tìm kiếm khoá trung bình xuống còn 3. DES cũng đƣợc hệ thông chi trả giữa các nhà băng của ngân hàng hối đoái (CHIPS) dùng để xác thực các giao dịch. Hệ mã hóa AES Trong mật mã học.edu. Hàm mở rộng E. AES đƣợc chấp thuận làm tiêu chuẩn liên bang bởi viện tiêu chuẩn và công nghệ quốc gia Hoa Kỳ (NIST ) sau một quá trình tiêu chuẩn hóa kéo dài 5 năm. Năm 1991 đã có 45s ứng dụng phần cứng và chƣơng trình cơ sở của DES đƣợc uỷ ban tiêu chuẩn quốc gia Mỹ (NBS) chấp thuận. Ứng dụng của DES Mặc dù việc mô tả DES khá dài song ngƣời ta có thể thực hiện DES rất hữu hiệu bằng cả phần cứng lẫn phần mềm. các hoán vị IP và P và việc tính toán các giá trị K1…. AES đƣợc kỳ vọng áp dụng trên phạm vi thế giới và đã đƣợc nghiên cứu rất kỹ lƣỡng. Các phép toán duy nhất cần đƣợc thực hiện là phép hoặc loại trừ xâu bit. K16 đều có thể thực hiện đƣợc cùng lúc bằng tra bảng (trong phần mềm) hoặc bằng cách nối cứng chúng thành một mạch. Bộ tƣ pháp và Hệ thống dự trữ liên bang. Thông tin chung Tác giả Vincent Rijmen và Joan Daemen Năm công bố 1998 Phát triển từ Square (mã hóa) Các thuật toán dựa trên Crypton (mã hóa). Giá của một khung máy chứa 5760 chíp vào khoảng 100.5v ngày. 1. Với công nghệ hiện nay.5$/ chip. Giống nhƣ tiêu chuẩn tiền nhiện DES.4..

S.vn 27 .lrc-tnu. còn Square lại đƣợc thiết kế dựa trên Shark. AES có thể dễ dàng thực hiện vớ tố độ cao bằng phần mềm hoặc phần cứng và không đòi hỏi nhiều bộ nhớ. nó đang đƣợc sử dụng rộng rãi trong nhièu ứng dụng. Trong bƣớc Subyte.hoán vị 10.hoán vị.edu.12 hoặc 14 (tùy theo độ dài khóa) Thuật toán đƣợc dựa vào bảng thiết kế Square có trƣớc của Daemen và Rijmen. Khác với DES sử dụng mạng Feistel. Mô tả thuật toán Trong bƣớc addRoundKey. mỗi byte đƣợc thiết kế với một byte trong khóa con của chu trình sử dụng phép toán XOR (). mỗi byte đƣợc thay thế bằng một byte theo bang tra. Rijndael sử dụng mạng thay thế.192 hoặc 256 bit Mạng thay thế. Do AES là một tiêu chuẩn mã hóa mới. b ij= S(aij ) Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.hóa).GRAND CRU Chi tiết thuật toán Khối dữ liệu Độ dài khóa Cấu trúc Số chu trình 128 bit 128.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. AES làm việc với từng khối dữ liệu 4×4 byte (tiếng Anh: state. Hầu hết các phép toán trong thuật toán AES đều đựơc thực hiện trong một trƣờng hữu hạn. Trong bƣớc MixColumns. các byte trong mõi hàng đƣợc dịch vòng trái. Số vị trí dịch chuyển tùy thuộc từng bảng. khối trong Rijndael có thể thêm một cột). AES chỉ làm việc với khối dữ liệu 128 bít và khóa có độ dài 128. các khóa con này đƣợc tạo ra từ quá trình tạo khóa con Rijndael. các hàng trong khối đƣợc dịch vòng. AddRoundKey __mỗi byte của khối đƣợc kết hợp với khóa con. ShiftRows __đổi chỗ. SubBytes __đây là phép thế (phi tuyến) trong đó mỗi byte sẽ đƣợc thế bằng một byte khác theo bảng tra (Rijndael-box).edu.Trong bƣớc ShiftRows.vn 28 . Quá trình mã hóa bao gồm 4 bƣớc: 1. Các khóa con sử dụng trong các chu trình đƣợc tạo ra bởi quá trình tạo khóa con Rijndael. 3.lrc-tnu. mỗi cột đƣợc nhân với hệ số cố định c(x) Mặc dù 2 tên AES và Rijndael vẫn thƣờng đƣợc thay thế cho nhau nhƣng trên thực tế thì 2 thuật toán không hoàn toàn giống nhau. 192 hoặc 256 bít trong khi Rijndael có thể làm việc với khối dữ liệu và khóa có độ dài bất kì là bội số của 32 bít nằm trong khoảng từ 128 tới 256 bít. 2.

MixColumns __quá trình trộn làm việc theo các cột trong khối theo một phép biến đổi tuyến tính. Bƣớc ShiftRows Các hàng đƣợc dịch vòng một số vị trí nhất định.edu. MixColumns đã tạo ra tính chất khuyến tán cho thuật toán.vn 29 . ta có thể tăng tốc độ thực hiện thuật toán bằng cách chuyển đổi các bƣớc Subbytes. Đối với AES. Hộp S-box này đƣợc tạo ra từ một phép nghịch đảo trong trƣờng hữu hạn GF (28) có tính chất phi tuyến. Bƣớc SubBytes Các bƣớc đƣợc thế thông qua bảng tra S-box. hộp S-box này đƣợc tạo nên bằng cách kết hợp phép nghịch đảo với một phép biến đổi khả nghịch. Bƣớc AddRoundKey Tại bƣớc này. hàng đầu đƣợc giữ nguyên. Quá trình kết hợp đƣợc thực hiện bằng cách XOR từng bít của khóa con với khối dữ liệu. Cùng với bƣớc ShiftRows.4. khóa con đƣợc kết hợp với các khối. Khóa con trong mỗi chu trình đƣợc tạo ra từ khóa chính với quá trình tạo khóa con Rijndael. Mỗi byte của hàng thứ 2 đƣợc dịch trái một vị trí. mỗi mục là 1 từ 32 bít và chiếm 4096 byte trong bộ nhớ. Hộp S-box này cũng đƣợc chọn để tránh các điểm cố định (fixed point). Tối ƣu hóa Đối với các hệ thống 32 bít hoặc lớn hơn. Do vậy.lrc-tnu. Tại chu trình cuối thì bƣớc MixColumns đƣợc thay thế bằng bƣớc AddRoundKey. mỗi chu trình sẽ đƣợc bao Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Mỗi bứoc sẽ tƣơng ứng với 4 bảng với 256 mục. mỗi khóa con có đọ dài giống nhƣ các khối. bƣớc này có thể đƣợc xem là phép nhân ma trận trong trƣờng hữu hạn. Bƣớc MixColumns Mỗi cột đƣợc kết hợp lại theo một phép biến đổi tuyến tính khả nghịch. Khi đó. Đối với Rijndael với độ dài khối khác nhau thì số vị trí dịch chuyển cũng khác nhau. Mỗi khối 4 byte đầu vào sẽ cho một khối 4 byte đầu ra với tính chất là mỗi byte ở đầu vào đều ảnh hƣởng tới cả 4 byte đầu ra. mỗi cột khối đầu ra của bƣớc này sẽ bao gồm các byte ở đủ 4 cột khối đầu vào. Đây chính là quá trình phi tuyến của thuật toán. Mỗi cột đƣợc xem nhƣ một đa thức trong trƣờng hữu hạn và đƣợc nhân (modun x 4 +1) với đa thức c(x) = 3x3 + x2 + x + 2. ShiftRows và MixColumns thành dạng bảng. Để chống lại các tấn công dựa trên các đặc tính đại số. Tƣơng tự các hàng thứ 3 và 4 đƣợc dịch 2 và 3 vị trí. Vì thế.

lrc-tnu.1. Mà khóa giải mã hóa không thể tính toán đƣợc từ khóa mã hóa . Ngƣời gửi A có đƣợc khóa công khai của ngƣời nhận B và có bản tin P cần gửi đi có thể dễ dàng tạo ra đƣợc bản mã C. Trong trƣờng hợp kích thƣớc các bảng vẫn lớn hơn so với thiết bị thực hiện thì các bƣớc tra bảng sẽ thực hiện lần lƣợt với từng bảng theo vòng tròn. C =EKB(P) = EB (P) Công việc này cũng trong thời gian đa thức . Mã hóa không đối xứng (Mã hóa khóa công khai) 2. Ngƣời nhận B khi nhận đƣợc bản tin mã hóa C với khóa bí mật kB thì có thể giải mã bản tin trong thời gian đa thức Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 30 . 2.gồm 16 lần tra bảng và 12 lần thực hiện phép XOR 32 bít cùng với 4 phép XOR trong bƣớc AddRoundKey.Khóa mã hóa gọi là khóa công khai (public key ).Các điều kiện của một hệ mã hóa công khai Việc tính toán ra cặp khóa công khai KB và bí mật kB dựa trên cơ sở các điều kiện ban đầu phải đƣợc thực hiện một cách dễ dàng. Định nghĩa Thuật toán mã hóa công khai là thuật toán đƣợc thiết kế sao cho khóa mã hóa là khác so với khóa giải mã. khóa giải mã đƣợc gọi là khóa riêng (private key) B¶n râ B¶n m· Gi¶i m· B¶n râ Khãa m· Khãa gi¶i Hình 6: Mã hóa với khóa mã và giải mã khác nhau Đặc trƣng nổi bật của hệ mã hóa công khai là cả khóa công khai (public key ) và bản tin mã hóa (ciphertext) đều có thể gửi đi trên một kênh thông tin không an toàn 2.2.edu. nghĩa là thực hiện trong thời gian đa thức .

Công việc mã hóa là sự biến đổi bản rõ P (Plaintext) thành bản mã C (ciphertext) dựa trên cặp khóa công khai KB và bản rõ P theo công thức sau đây C = EKB(P) = pKB (mod N) (1) Công việc giảI ma là sự biến đổi ngƣợc lại bản mã C thành bản rõ P dựa trên cặp khóa bí mật kB .lrc-tnu.P =DkB (C) = DB [EB(M)] Nếu kẻ địch biết khóa công khai KB cố gắng tính toán khóa bí mật thì khi đó chúng phải đƣơng đầu với trƣờng hợp nan giải. KB) và khóa giải mã DkB là cặp số nguyên (N. và L. các số là rất lớn. Trong đó tập ZN với N =pxq là các số nguyên tố khác nhau cùnh với phép cộng. q là số nguyên tố.N-1}. Khái niệm hệ mã hóa RSA Khái niệm hệ mật mã RSA đã đƣợc ra đời năm 1976 bởi các tác giả R.edu. số N có thể lên tới hàng trăm chữ số Các phƣơng pháp mã hóa và giải mã hóa là rất dễ dàng. sau đó để có thể tái tạo lại bản rõ ban đầu từ chính bản mã đó: P =DkB (EKB(P)) (3) Thay thế (1) vào (2) ta có: ( PKB)kB =P (mod N) (4) Ta thấy N =pxq với p. q-1 ). mođun N theo công thức sau : P =DkB(C) =CkB (mod N) (2) Dễ thấy rằng. (Lest Common Multiple) là bội số chung nhỏ nhất . kB).Adleman. Trong toán học đã chứng minh đƣợc rằng. trƣờng hợp này đòi hỏi nhiều yêu cầu không khả thi về thời gian Nếu kẻ địch biết đƣợc cặp (KB. phép nhân mođun N tạo ra mođun số học N Khóa mã hóa EKB là cặp số nguyên (N.….RivetsK. Hệ mã hóa này dựa trên cơ sở của hai bài toán  Bài toán Logarith rời rạc  Bài toán phân tích thành thừa số Trong hệ mã hóa RSA các bản rõ. do đó không khả thi 2.vn 31 . nếu N là số nguyên tố thì công thức (4) sẽ có lời giải khi và chỉ khi: KB. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. bản rõ ban đầu cần đƣợc biến đổi một cách thích hợp thành bản mã.C) và cố gắng tính toán ra bản rõ P thì giải quyết bài toán khó với số phép thử vô cùng lớn. các bản mã và các khóa (public key và private key) là thuộc tập số nguyên ZN ={1.3.kB  1 (mod  (N)) (5) Trong đó  (N) =LCM(p-1.Shamir . Thuật toán mã hóa RSA a.A.

Và ta có khóa công khai là (N. chẳng hạn KB =3533 khi đó kB =KB-1 =6579mod11200. ta có C =5761 b. q của N. Độ an toàn của hệ RSA Một nhận định chung là tất cả các cuộc tấn công giải mã đều mang mục đích không tốt. Tính bảo mật của RSA chủ yếu dựa vào việc giữ bí mật khóa giải mã hay giữ bí mật các thừa số p. q) thì sẽ tính đƣợc  (N). Phép lập mã và giải mã là EKB(P) =PKB (mod N) =P3533 (mod 11413) DkB(C) =CkB (mod N) =C6579 (mod 11413) Chẳng hạn với PC =9726.3533) khóa bí mật là 6759. Ta thử xét một vài phƣơng thức Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.vn 32 .  (N) =100x112 =11200 =26x52x7. Điều này hoàn toàn tính đƣợc vì khi B biết đƣợc cặp số nguyên tố (p.Nói một cách khác. Chän p vµ q TÝnh N=pxq TÝnh  (N) KB Chän khãa KB B¶n râ P C=PKB (mod N) kB Chän khãa kB B B¶n m· c P= c k (mod N) B¶n râ gèc Hình H×nh 7: Sơ đồ các bƣớc thực hiện mã hóa theo thuật toán RSA Ví dụ: N=11413=101x113. Chọn.lrc-tnu. 7.5. KB phải chọn sao cho không chia hết cho 2. Khi đó khóa bí mật kB đƣợc tính ra bằng công thức (5).KB)=(11413. đầu tiên ngƣời nhận B lựa chọn một khóa công khai K B một cách ngẫu nhiên.edu.

Thực ra tham số này che dấu nhieeuf chi tiết cài đặt có liên quan đến việc tính toán với các con số dài.lrc-tnu. thì thuật toán phân tích thừa số đơn giản cần tối đa N1/n bƣớc. Tiếp theo sau chúng sẽ tìm cách tính toán ra hai số nguyên tố p và q. Tƣơng tự nhƣ vậy. Một số tính chất của hệ RSA Trong các hệ mật mã RSA. Đối với các bản tin dài. Ta thấy N cần phải là tích của hai số nguyên tố. Trƣờng hợp này kẻ địch đã có trong tay bản mã C và khóa công khai KB tức là có cặp (KB. Trƣờng hợp 2: Chúng ta xét trƣờng hợp khi kẻ địch nào đó biết đƣợc mođun N và (N). khi đó kể địch sẽ tìm ra bản tin gốc (Plaintext) nhƣ thế nào.(N) +1 ) + n = 0. và biết (N) = 84754668. c. Giải phƣơng trình bậc hai tƣơng ứng ta sẽ đƣợc hai nghiệm p = 9539 và q = 8887.vn 33 . bởi vì có một số nguyên tố nhỏ hơn N1/2. vì nếu N là tích của hai số nguyên tố thì thuật toán phân tích thừa số đơn giản cần tối đa N1/2 bƣớc. Mặt khác. nâng một số lên lũy thừa đƣợc thực hiện trong thời gian hằng. C). (p -1) (q-1) = (N) Do đó p và q là nghiệm của phƣơng trình bậc hai: x2. nếu N là tích của n số nguyên tố. Để làm đƣợc điều đó kẻ địch thƣờng tấn côngvào hệ thống mật mã bằng hai phƣơng thức sau đây: Phƣơng thức thứ nhất: Trƣớc tiên dựa vào phân tích thừa số mô đun N.tấn công điển hình của kẻ địch nhằm giải mã trong thuật toán này (nhằm xâm phạm tới các yếu tố bí mật đó).(n . một bản tin có thể được mã hóa trong thời thời gian tuyến tính. Phần quan trọng nhất của việc tính toán có liên quan đến việc mã hoá bản tin. q theo hệ phƣơng trình: P * q = N.edu. khóa công khai KB và bản tin mã hóa C. và có khả năng thành công khi đó sẽ tính đƣợc (N) + (p-1) (q-1) và khoá bí mật KB. Trƣờng hợp 1: chúng ta xét đếnơtrƣờng hợp khi kẻ địch nào đó biết đƣợc mođun N. Phƣơng thức thứ hai: Phƣơng thức tấn công thứ hai vào hệ mã hóa RSA là có thể khởi đầu bằng cách giải quyết trƣờng hợp thích hợp của bài toán logarit rời rạc. Ví dụ: n = 84773093. Nhƣng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. độ dài của các số đƣợc dùng cho các khóa có thể đƣợc coi nhƣ là hằng. khi đó kẻ địch sẽ tìm ra bản tin gốc (Plaintext) bằng cách sau: Biết (N) thì có thể tính p. chi phí của các phép toán thực sự là một yếu tố ngăn cản sự phổ biến ứng dụng của phƣơng pháp này.

Nhƣng việc phân tích ra thừa số là một việc làm tốn rất nhiều thời gian. giả sử rằng mỗi phép toán thực hiện trong một micro giây. Mỗi số nguyên tố lớn có thể đƣợc phát sinh bằng cách đầu tiên tạo ra một số ngẫu nhiên lớn. chẳng hạn.4. q là đƣợc giữ bí mật và sự thành công của phƣơng pháp là tuỳ thuộc vào kẻ địch có khả năng tìm ra đƣợc giá trị của KB hay không nếu cho trƣớc N và KB.000.000 năm 5 * 1015 năm 4 *1025 năm Bảng: Thời gian dự đoán thực hiện phép tính.vn 34 . Thông thƣờng khi sử dụng một sơ đồ chữ ký. Nhƣ vậy cần phân tích N ra thành thừa số để tính p và q. với xác suất 1/2 sẽ chứng minh rằng số đƣợc kiểm tra không phải nguyên tố. Một lần nữa.edu. ứng dụng của RSA. một tài liệu về pháp luật có thể dài nhiều Megabyte. d. Hệ mã hóa RSA đƣợc ứng dụng rộng rãi chủ yếu cho web và các chƣơng trình email.lrc-tnu. Số các chữ số trong số đƣợc phân tích 50 75 100 200 300 500 Thời gian phân tích 4 giờ 104 giờ 74 năm 4. Rất khó có thể tìm ra đƣợc KB từ KB. với kỹ thuật hiện đại ngày nay thì cần tới hàng triệu năm để phân tích một số có 200 chữ số ra thừa số. RSA còn đƣợc sử dụng rộng rãi trong các công nghệ bảo mật sử dụng cho thƣơng mại điện tử (ví dụ nhƣ công nghệ bảo mật SSL v). Và trên thực tế ta cần ký trên các bức điện rất dài. do vậy kích thƣớc văn bản sau khi ký sẽ tăng lên rất nhiều. Nhƣ phần trên đã trình bày trong hệ mã hóa công khai thì khóa giải mã (Privatekey) KB và các thừa số p. Độ an toàn của thuật toán RSA dựa trên cơ sở những khó khăn của việc xác định các thừa số nguyên tố của một số lớn. chữ ký đƣợc sinh ra có độ dài lớn hơn so với văn bản ký. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. 2. sau đó kiểm tra các số kế tiếp cho tới khi tìm đƣợc một số nguyên tố. Một phƣơng pháp đơn giản thực hiện một phép tính trên một con số ngẫu nhiên. Chúng ta có thể thấy rằng các sơ đồ chữ kí nói chung chỉ cho phép kí các bức điện nhỏ. Bảng dƣới đây cho biết các thời gian dự đoán. Các khóa cho hệ mã hóa RSA có thể được tạo ra mà không phải tính toán quá nhiều. Hàm băm. cần biết về p và q. Bƣớc cuối cùng là tính p dựa vào thuật toán Euclid. ta lại nói đến các phƣơng pháp kiểm tra số nguyên tố. Ngày nay.chắc chắn là sẽ không có hệ mã hoá nào hết nếu không tính ra đƣợc các khóa của chúng là các số lớn.

vn 35 . với một bức điện dài. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. trƣớc tiên anh ta xây dựng một bản tóm lƣợc thông báo z = h(x) và sau đó tính y = sigk(z). Điều này cũng tƣơng tự nhƣ mã hóa một chuỗi dài bản rõ bằng cách mã hóa mỗi kí tự bản rõ độc lập nhau sử dụng cùng một bản khóa. vấn đề nghiêm trọng hơn với phép toán này là bức điện đã kí có thể bị sắp xếp lại các đoạn khác nhau.y) trên kênh. Khi Bob muốn kí bức điện x. hay không. Xét thấy có thể thực hiện xác minh (bởi ai đób) bằng cách trƣớc hết khôi phục bản tóm lƣợc thông báo z = h(x) bằng hàm h công khai và sau đó kiểm tra xem verk(x. Một message digest là có chiều dài cố định với các đặc điểm nhƣ sau:  Giá trị trả lại của hàm băm duy nhất đối với mỗi giá trị đầu vào. Ta cần bảo vệ sự nguyên vẹn của toàn bộ bức điện và điều này không thể thực hiện đƣợc bằng cách kí độc lập từng mẩu nhỏ của chúng. Bức điện X có độ dài bất kì Bản tóm lƣợc thông báo z = h(x) Chữ ký y = sigk(z) Hình 8: Ký một bản tóm lƣợc thông báo Bản tóm lƣợc (giá trị của hàm băm) còn đƣợc gọi là đại diện văn bản (Message digest). Giải pháp cho tất cả các vấn đề này là dùng hàm HASH mã hóa khóa công khai nhanh. Nhƣợc điểm khác là các sơ đồ chữ kí “an toàn” lại chậm vì chúng dùng các phƣơng pháp số học phức tạp nhƣ số mũ modulo.lrc-tnu. Hàm này lấy một bức điện có độ dài tuỳ ý và tạo ra một bản tóm lƣợc thông báo có kích thƣớc quy định (ví dụv: 160 bít với DSS) sau đó bản tóm lƣợc thônng báo sẽ đƣợc kí thay vì kí trực tiếp trên văn bản gốc. Biện pháp này có một số vấn đề trong việc tạo ra các chữ kí số. hoặc một số đoạn trong chúng có thể bị loại bỏ và bức điện nhận đƣợc vẫn xác minh đƣợc. Trƣớc hết.y) có = true. (Ví dụ: Chế độ ECB trong mã hóa).Một cách đơn giản để giải bài toán này là chia các bức điện dài thành nhiều đoạn sau đó kí lên các đoạn đó độc lập nhau. Bất kỳ sự thay đổi nào của dữ liệu vào cũng đều dẫn đến một kết quả sai. Tuy nhiên.edu. ta kết thúc bằng một chữ kí rất lớn. Bob truyền cặp (x.

edu. các phần mềm kí tạo ra message digest của dữ liệu và sử dụng khóa bí mật để mã hóa đại diện đó.lrc-tnu.8 đƣa ra mô hình đơn giản hóa việc chữ kí số đƣợc sử dụng nhƣ thế nào để kiểm tra tính toàn vẹn của dữ liệu đƣợc ký. Nếu các đại diện này giống nhau tức là dữ liệu không bị thay đổi từ lúc đƣợc ký. mà chủ yếu nó dùng để “ký” cho dữ liệu. Trong hình 1.vn 36 . ngƣời nhận trƣớc tiên sử dụng khóa khóa công khai của ngƣời kí để giải mã đại diện văn bản (Message digest) đã đƣợc mã hóa và khóa bí mật của ngƣời ký. Nhƣ đã đề cập trong phần mã hóa khóa khóa công khai. Để kiểm tra tính toàn vẹn của dữ liệu. Message Message Message H H Compare K K D E a. Dựa vào thông tin về thuật toán băm trong chữ ký số. Nếu không giống nhau có nghĩa là dữ liệu đã bị giả mạo điều này cũng có thể xảy ra khi sử dụng hai khóa khoá khóa công khai và khóa bí mật không tƣơng ứng. Using conventional encryption Message Message Message H H Compare Kprivate E Kpublic D Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. nó có thể sử dụng khóa bí mật của bạn cho việc mã hóa và khóa khóa công khai cho việc giải mã. Thay vào việc đi mã hóa dữ liệu.8 có hai phần đƣợc gửi cho ngƣời nhận: Dữ liệu gốc và chữ kí số. chính vì điều này mà ngƣời ta gọi là one -way. Từ đại diện văn bản không thể suy ra đƣợc dữ liệu gốc là gì. ngƣời nhận sẽ tạo ra đại diện văn bản từ dữ liệu gốc và mới. Cách sử dụng cặp khóa nhƣ vậy không đƣợc dùng khi cần có sự bí mật thông tin. Hình 1.

các sơ đồ kí hiện đang đƣợc sử dụng. Chúng ta không thể kí trên bất kì tài liệu nào với độ dài tuỳ ý.các chữ kí số có thể đƣợc kiểm tra nhờ dùng một Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.edu. một chữ kí số không gắn theo kiểu vật lí vào bức điện nên thuật toán đƣợc dùng phải “không nhìn thấy” theo cách nào đố trên bức điện.nƣời bán phải so sánh chữ kí trên mảnh giấy với chữ kí nằm ở mặt su của thẻ tín dụng để kiểm tra . Mặt khác.lrc-tnu. em trình bày các vấn đề cơ bản nhất về chữ kí số. Chữ kí số Với chữ kí thông thƣờng. nó là một phần vật lí của tài liệu. Thứ hai là vấn đề về kiểm tra . ngƣời nhận có thể chắc chắn rằng khóa khóa công khai đƣợc sử dụng để giải mã chữ ký số là tƣơng ứng với khóa bí mật đƣợc sử dụng để tạo ra chữ ký số. thì việc sao chép lại “chữ kí số” là hoàn toàndễ dàng và không thể phân biệt dƣợc bản gốc với bản saovì chữ kí số là các số 0. ngƣời ta kí trên đại diện của nó.Dĩ nhiên. ít nhất cũng dài bằng độ dài của tài liệu đƣợc kí. iii.1.Chữ kí thông thƣờng đƣợc kiểm tra bằng cách so sánh nó với các chữ kí xác thực khác. Đại diện của bản tin đƣợc thiét lập qua Hàm băm. “Chữ kí số” thể hiện trách nhiệm đối với toàn bộ tài liệu phải là chữ kí trên từng bit của tài liệu đó. Ví dụ. Với tài liệu dài. ai đó kí một tấm séc để mua hàng. các khái niệm. Với tài liệu “số hoá” (điện tử). Để xác thực định danh của một đối tƣợng cũng cần phải xác thực khóa khóa công khai của đối tƣợng đó. Nếu nhƣ hai đại diện văn bản giống nhau. Trong một vài trƣờng hợp.nếu chữ kí cũng đặt ở cuối bản tin. các tính chất. Khi khóa bí mật bị lộ thì ngƣời sở hữu chữ ký không thể ngăn chặn đƣợc việc bị giả mạo chữ ký.b. Using public-key encryption Hình 9: Sử dụng chữ ký số để kiểm tra tính toàn vẹn của dữ liệu.vn 37 .Tuy nhiên. Chữ ký số chỉ có thể đảm bảo khi khóa bí mật không bị lộ. chữ ký số đƣợc đánh giá là có thể thay thế chữ ký bằng tay. đây không phải là phƣơng pháp an toànvì nó dễ dàng giả mạo. CHỮ KÍ Sè chữ kí của một ngƣời trên một tài liệu (thƣờng đặt ở cuối bản tin ) để xác nhận nguồn gốc hay trách nhiệm với tài liệu đó. vì nhƣ vậy chữ kí sẽ có đọ dài rất lớn. Vậy một “chữ kí số” đặt cuối “tài liệu loại số” không thể chịu trách nhiệm đối với toàn bộ nội dung văn bản . 1. Trong chƣơng này.

thuật toán kiểm tra công khai. Phân loại các sơ đồ chữ kí số Cơ chế chữ kí điện tử đƣợc chia làm hai 2 lớp .Oscar luôn luôn có thẻ giả mạo chữ kí của Bob .edu. Sự khác biệt cơ bản giữa chữ kí số và chữ kí thông thƣờng bản copy tài liệu đƣợc kí bằg chữ kí số đồng nhất với bản gốc .P Là tập hữu hạn các bức điện (thông điệp) có thể .Với mỗi K thuộc K tồn tại một thuật toán kí sigk  S và là một thuật toán xác định Verk  V. sigk là bí mật.C) trong đó : 1.Nhƣ vậy . Vì thế. Bob có thể kí điện x dùng thuật toán kí an toàn . nếu có đủ thời gian .S. còn copy tài liệu có chữ kí trên giấy thƣờng có thể khác với bản gốc.Nghĩa là x cho trƣớc . Khi cho trƣớc cặp (x. Việc dùng một sơ đồ chữ kí an toàn có thể sẽ ngăng chặn đƣợc khả năng giả mạo.K. Bob kí một bức điện xác nhận Ailice có khả năng làm một điều đó một lần. bản thân bức điện cần chứa thông tin (chẳng hạn nhƣ ngày tháng)để ngăn nó khỏi bị dùng lại. Một sơ đồ chữ kí không thể an toàn vô điều kiện vì Oscar có thể kiểm tra tất cả các chữ số y có thể có trên thông điệp x nhờ dùng thuật toán verk công khai cho đến khi anh ta tìm thấy một chữ kí đúng. giống nhƣ trƣờng hợp hệ thống mã khoá công khai . Ví dụ. lớp chũ kí kèm thông điệp (message appendix)và lớp chữ kí khôi phục thông điệp (message recovery). 2.Điều này có nghĩa là phải cẩn thận ngăn chặn một bức kí số khỏi bị dùng lại. 2. 3.vn 38 . Verk= True nếu y=sing(x) False nếu y  sing(x) Với mỗi k thuộc K hàm sigk . 4.Verk là các hàm có thời gian đa thức . Chữ kí sig(x) nhận đƣợc có thể kiểm tra bằng thuật toán xác minh công khai ver.Verk sẽ là hàm công khai .A.lrc-tnu.Vì thế . Dƣới đây là định nghĩa hình thức của chữ kí: Định nghĩa: một sơ đồ chữ kí số là bộ 5(P. Chữ kí sig(x) nhận đƣợc có thể kiểm tra bằng thuật toán kí an toàn .K không gian khoá là tập hữu hạn các khoá có thể. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Mỗi sigk:P  A vàVerk : P  A  { true. Nhƣ vậy.y). không thể dễ dàng tính toán để giả mạo chữ kí của Bob trên thông điệp x . Một sơ đồ chữ kí số thƣờng chứa hai thành phần: thuật toán kí và thuật toán xác minh. bất kì ai cũng có thể kiểm tra đƣợc chữ kí số.chỉ có Bob mới có thể tính đƣợc y để Verk= true .false} là hàm sao cho mỗi thông điệp x  P và chữ kí y A thoảmãn phƣơng tình dƣới đây.A là tập hữu hạn các chữ kí có thể. mục đích của chúng ta là tìm các sơ đồ chữ kí số an toàn về mặt tính toán. thuật toán xác minh có giá trị TRUE hay FALSE tuỳ thuộc vào chữ kí đƣợc thực nhƣ thế nào .

 Chữ kí khôi phục thông điệp: thông điệp ban đầu đƣợc sinh ra từ bản thân chữ kí. Chữ kí kèm thông điệp: đòi hỏi thông điệp ban đầu là đầu vào giải thuật kiểm tra .lrc-tnu.edu.vn 39 . Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.

true} có nghĩa là :  VA(m.Chúng ta có thể định nghiã chính xác sơ đồ chữ kí này nhƣ sau : Định nghĩa :Một sơ đồ kí đòi hỏi thông điệp đầu vào là một tham số cho quá trình xác nhận chữ kí là sơ đồ kí kèm thông điệp .của dạng chuyển đổi.  SAtƣơng ứng (corresponding mapping)VA từ không gian Mh  S vào tập hợp { false.  SA.1.vn 40 .s*)=false trong các trƣờng hợp khác.DSA. Nó dựa trên các hàm băm mã hoá đơn là dựa trên các hàm băm bất kì và ít bị lỗi khi bị tấn công theo kiểu giả mạo.k :k thuộc R .k(m)=s*  VA(m. a.s*)=true nếu SA.edu.Hình 10: Hình biểu diễn phân loại ở mức tổng quan về chữ kí điện tử ngẫu nhiên Khôi phục thông diệp Xác định s chữ kí điện tử ngẫu nhiên Kèm thông điệp Xác định 2. Sơ đồ chữ kí kèm thông điệp Sơ đồ chữ kí kèm thông điệp là sơ đồ đƣợc sử dụng nhiều nhất trong thực tế. Va là khoá công khai của A .k xác định một anhhs xạ 1-1 từ không gian Mh vào khong gian khoá S gọi là dạng chuyển đổi chữ kíhay cào là thuật toán kí số.Schonor.  Mỗi thựcthể A phải chọn một khoá riêng cùng với việc xác định không gian khoá SA.lrc-tnu.Ví dụ EIGamal. Giải thuật sinh khoá: Mỗi một thực thể tạo một khoá riêng để cho thông điệp cần khoá và một khóa công khai tƣơng ứng để các thực thể khác xác nhận chữ kí .SA là khoá riêng của A Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.

M m  h Mh SA.vn 41 .edu. Giải thuật sinh và xác nhận chữ kí: Thực thể A tạo một chữ kí s vào án xạ M và đƣợc xác nhận bởi thực thể B.k s m a) TiÕn tr×nh ký th«ng ®iÖp Mh x S VA TRU E FALSE b) TiÕn tr×nh x¸c nhËn ch÷ ký 2. Quá trình sinh chữ kí  Chọn một chữ kí k thuộc R  Tính hàm băm m’=h(m) và s*=SA.lrc-tnu.s*)  Chấp nhận chữ kí của A cho m là s* nếu u=TRUE.k(m’)  Chữ kí của A cho m là s*.Cặp m’ và s* dùng để xác nhận  Quá trình xác nhận chữ kí  Nhận khoá công khai định danh choA và vA  Tính hàm băm m’=h(m)và u=vA(m’. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.2.Trong thực tế sơ đồ kiểu này thƣờng đƣợc kí cho các thông điệp ngắn . Sơ đồ chữ kí khôi phục thông điệp Đặc trƣng cho sơ đồ này là thông điệp có thể đƣợc khôi phục từ chính bản thân chữ kí .b.

 VA là khoá công khai của A.Nyber –Rueppel với khoá chung .k ánh xạ xác định MS cho tất cả k thuộc R.lrc-tnu. Sơ đồ chữ ký bao gồm cả hai loại kèm thông điệp và khôi phục thông điệp .k xác định một ánh xạ 1-1 tù không gian Mh vao không gian khoá S goi là dang chuyển đổi chữ ký. Sơ Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.k MR M m' m' S s*=SA. Một số sơ đồ chữ ký cơ bản Sau đây chúng ta sẽ nghiên cứu các sơ đồ chữ ký cơ bản nhất và có ứng dụng rộng rãi cũng nhƣ đáng tin cậy nhất hiện nay . Thuật toán sinh khoá Mỗi một thực thể A phải chọn một tập hợp SA={SA. 3. Đặc điểm của các sơ đồ chữ ký này là mức độ tính toán phụ thuộc hoàn toàn vào độ lớn của giải thuật giải quyết các bài toán nhân số nguyên – bài toán luỹ thừa .  SA xác định một ánh xạ tƣơng ứng(corresponding mapping) VA sao cho VA* SA. SA là khoá riêng của A.Ví dụ về các sơ đồ chữ kí có khôi phục thông điệp trong thực tế là :RSA.vn 42 . b.edu.k(m').Rabin .k(m' ) Hình 12: Sơ đồ chữ ký khôi phục thông điêp 3. (R là hàm redundancy) • Chữ ký của A là s * Tiến trình xác nhận chữ ký: Thực thể B phảI làm nhƣ sau: • Nhận khoá công khai của A là VA • Tính m' = VA(s*) • Xác nhận m'  MR (Nếu m'  MR thì từ chối chữ ký) • Khôi phục m từ m' bằng cách tính R -1(m') M m' R SA. a.1. Sơ đồ chữ ký RSA Chúng ta sẽ nghiên cứu đến sơ đồ chữ ký RSA và các sơ đồ tƣơng tự . Thuật toán sinh chữ ký và xác nhận chữ ký Tiến trình sinh chữ ký: Thực thể phảI làm theo các bƣớc sau: • Chọn một số k  R • Tính m' = R(m) và s * = S A.Định nghĩa Một sơ đồ kí đƣợc gọi là có khôi phục thông điệpkhi và chỉ khi nó là sơ đồ mà với nó mức độ hiểu biết về thông diệp là không đòi hỏi trong quá trình xác nhận chữ kí .k:k thuộc R} mỗi SA.

q. đây là sơ đồ có ứng dụng thực tế rộng rãi nhất dựa trên công nghệ sử dụng khoá chung. ab  1 mod  (n)  Các giá trị n. Ví dụ: Ví dụ sau đây sử dụng sơ đồ ký RSA.p. ) = 1 hay a Z*P . Thuật toán sinh và xác định chữ ký Thực thể A ký trên thông điệp m .edu. p và q nguyên tố. Thuật toán sinh khoá: Thực thể A tạo khoá công khai RSA và khoá riêng tƣơng ứng theo phƣơng thức sau: • Sinh ra hai số nguyên tố lớn ngẫu nhiên p và q cùng kích thƣớc bit • Tính n = p. Shamir và Adleman. Tóm tắt lược đồ ký theo RSA: Cho n = p.y Zn Nếu độ dài thông diệp x lớnN. b) • Tính m' = sb mod n • Kiểm tra m'  MR nếu không sẽ không chấp nhận chữ ký • Lấy lại thông điệp m từ m = H-1(m') c. Jonge và Chaum.y) = true  x  yb (mod n) với x.lrc-tnu.q và  = (p-1)(q-1) • Chọn một số tự nhiên ngẫu nhiên a thoả mãn điều kiện sau: 1< a < và USCLN (a. a. Thực thể B có thể xác định đƣợc chữ ký của A và khôi phục lại thông điệp từ chữ ký.vn 43 . với thông điệp lớn Sinh khoá: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. b là công khai. Sinh chữ ký: Thực thể A làm theo các bƣớc sau: • Tính m' = H(m) .n-1  • Tính s = m'd mod n • Chữ ký của A cho m là s Xác nhận chữ ký: Thực thể B làm theo các bƣớc sau: • Nhận khoá công khai của A là (n. Định nghĩa Sigk (x) = xa mod n và Verk(x.q. • Sử dụng giải thuật mở rộng Euclidean để tính toán số tự nhiên duy nhất b sao cho 1 < b <  và ab  1 (mod ) • Khoá công khai của A là K’ = (n. Các phƣơng pháp tấn công RSA đầu tiên (multicative property) và các vấn đề khác liên quan tới chữ ký RSA đƣợc đƣa ra bởi Davia. ta sử dụng hàm băm. a) khoá riêng của A là K” = b b. là một số nguyên trong khoảng  0.a.đồ chữ ký RSA đƣợc phát minh bởi 3 nhà nghiên cứu Rivest.q với p và q là các số nguyên tố Cho P = A =Zn và định nghĩa p = (n.b) n = p.

Tất cả các sơ đồ DSA kèm thông điệp đều có thể cải biến thành các sơ đồ ký khôi phục thông điệp . Phần đại diện văn bản này là đầu vào của giải thuật sinh chữ ký. chuẩn này yêu cầu việc sinh chữ ký phải sử dụng một khóa riêng cho mỗi ngƣời ký. Chữ ký dạng DSS là một dạng chữ ký kèm thông điệp. Tính n =pq =5546521 và  =7926. đặc điểm của những giải thuật này là đều sử dụng chữ ký theo kiểu chọn lựa ngẫu nhiên.b  1 (mod 55450296) đƣợc b = 44360237.Đặc biệt. Ngƣời xác nhận chữ ký cũng sử dụng hàm băm này để xây dựng phƣơng pháp xác nhận chữ ký.Thực thể A chọn số nguyên tố p =7927 và q =6997. điều này làm hạn chế một trong các giá trị tham số của DSS phảI là 160 bit.6996 =55450296. Sinh chữ ký: Để ký thông điệp m =31229978. Giới thiệu Sơ đồ chữ ký DSS dựa trên giảI thuật ký điện tử DSA (Digital Signature Algorithm). 3. sẽ đi sâu vào chuẩn chữ ký điện tử DSS(Digital Signature Standard) do khả năng cài đặt thực tế của nó a. Ngoài ra.lrc-tnu.2. A tính m’1 =H(m) =31229978. thông thƣờng nhƣng chữ ký dạng này đều đòi hỏi có một hàm băm trên thông điệp (do nội dung thông điệp có độ dài không xác định). Hàm băm này đƣợc sử dụng trong quá trình sinh chữ ký để xây dựng một dạng nén của dữ liệu (condensed version of data). Chữ ký s = m1’b =mod n =312299784430237 mod 55465219 =30729435 Xác nhận chữ ký: B tính m2’= sa mod n = 307294355 mod 55465219 =31229978 B chấp nhận chữ ký vì m2’= m1’. Sơ đồ chữ ký DSA (Digital Signature Standard) Trong phần này nội dung chính là nghiên cứu các sơ đồ chữ ký điện tử DSA và lớp các chữ ký tƣơng tự. điều đó có nghĩa là chữ ký phải đƣợc gửi kèm với thông điệp mà bản thân chữ ký không chứa (hoặc không sinh ra) thông điệp. ngƣợc Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.edu. Dữ liệu này gọi là đại diện văn bản (message digest). Đối với sơ đồ chữ ký DSS hàm băm là security Hash Algorithm (SHA) đƣợc miêu tả trong FIPS 186. hàm băm này tạo ra một giá trị số nguyên 160 bít đặc trƣng cho một thông điệp.vn 44 . A chọn a =5 và giải ab =5.

q. 3. ngƣời xác nhận phải có một khóa công khai tƣơng ứng với khóa riêng của ngƣời gửi Hình 13: Chữ ký DSA b.8] 3.  ) Thuật toán xác nhận chữ ký Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Tính  =k-1 (h(x)+a  ) mod q 5.   ) Thuật toán sinh chữ ký Khi cần sinh chữ ký cho một thông điệp x thực thể phảI làm những việc nhƣ sau: 1. Chọn số nguyên a sao cho: 1  a  q 1 5.  =g(p-1)/q mod p •  khác 1 4. Chọn một số nguyên tố q sao cho 2159 < q < 2160 2. 4. Tính k -1 mod q. Chữ ký của thực thể cho x là cặp (  . khóa công khai là bộ (p.vn 45 . Chọn một số nguyên tố p sao cho 2511+64t < p < 2512+64t ở đó t  [0.lrc-tnu. T ính  =(akmod p ) mod q. Các giải thuật cơ bản của DSA Thuật toán sinh khóa Mỗi thực thể tạo một khóa công khai và một khóa mật tƣơng ứng theo cách sau: 1. Chọn số  nhƣ sau: • Chọn g là một số nguyên bất kỳ nhỏ hơn p.lại để xác nhận chữ ký. 0 < k <q-1 2. Tính    a mod p 6. Chọn một số nguyên mật k. Khóa riêng của thực thể là a.edu.

Gỉa thiết a? Zp là căn bậc q của một modulo p Cho p thuộc Zp và a = Zq ì Zp và định nghĩa: A = {(p. ta định nghĩa: Qúa trình kí số sigk (x. Dành lấy khoá công khai của thực thể kí (p.vn 46 .h(x) mod q và e2 =?w mod q 5. a. khi đó ò = aa mod 7879 = 4576 Muốn kí bức điện x = 1234. Tính v = (ae1 . Nếu v = ? thì chấp nhận chữ kí ngoài ra thì từ chối. 1 = k = q -1. Tóm tắt lƣợc đồ chữ kí số DSS Giả sử p là số nguyên tố 512 bít sao cho bài toán logarit rời rạc trong Zp là khó giải.456727 mod 7879) mod 101 = 2518 mod 101 = 94 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. d) = true  (ae1 òe2 mod p) mod q =? Ví dụ: Gỉa sử q = 101.dδ) trong đó: ? = (ak mod p) mod q và d = (x + a ?)k-1 mod q với x? Zp và?.lrc-tnu. ò) 2. c. a. g. a. Cho p là số nguyên tố160 bít là ƣớc của (p-1). Với K = (p. ò ): ò trùng a a (mod p)} Các số p. q . d ? Zq Qúa trình xác minh sẽ hoàn thành sau các tính toán: e1 = xd-1 mod q e2 =?d-1 mod q ver(x. a. Tính w = d-1 mod q và h(x) 4.? < q không thoả mãn thì từ chối chữ kí 3.edu. p = 78q + 1 = 7879 3 là phần tử nguyên thuỷ trong Z7879 nên ta có thể lấy: a = 378 mod 7879 = 170 Gỉa sử a = 75. k) = (?. a. khi đó có: ? = (17030 mod 7879) mod 101 = 2518 mod 101 = 94 Và d = (1234 + 75*94)*99 mod 101 = 96 Chữ kí (94. 97) trên bức điện 1234 đƣợc xác minh bằng các tính toán sau: d-1 = 97-1 mod 101 = 25 e1 = 1234*25 mod 101 = 45 e2 = 94*25 mod 101 = 27 Có (17045. ò ) và với một số ngẫu nhiên (mật) k.òe2 mod p) mod q 6. q . có a mật. q . ò công khai.Khi cần xác nhận chữ kí cho một thông điệp m thực thể phải làm những việc nhƣ sau: 1. ta chọn số ngãu nhiên k = 50 Vì thế có k -1 mod 101 = 99. q. a. Tính e1 = w. Nếu điều kiện: 0 < d.

Vì thế chữ kí hợp lệ.

d. Tính chất của chữ kí DSA Độ an toàn Độ an toàn của chữ kí phụ thuộc vào độ bí mật của khoá riêng. Ngƣời sử dụng phải đƣợc bảo vệ trƣớc về khoá riêng của mình. Nếu khoá riêng đảm bảo an toàn tuyệt đối thì chữ kí cũng có mức độ an toàn hầu nhƣ tuyệt đối. Mặt khác, với khoá riêng là công khai, chữ kí DSA là an toàn khi từ khoá công khai không thể tìm đƣợc khoá riêng. Thật vậy, ta có: Cho p là một số nguyên tố rất lớn, phƣơng trình toán học sau là không thể giải đƣợc: y = ax mod p (1) với y, a = g(p-1)/q và khác 1. Để xem xét điều này trƣớc hết ta nhận xét phƣơng trình (1) có nghiệm x duy nhất thuộc khoảng [1, q]. Thật vậy, giả sử có hai nghiệm x1 và x2 , từ (1) ta có: y = ax1 mod p và y = ax2 mod p Không mất tính tổng quát ta giả sử x1 < x2 từ đây ta suy ra:  ax1 chia hết cho p (không thoả mãn do p nguyên tố)  Tồn tại k nhỏ hơn p sao cho ak  1 (mod p). Với giá trị a có dạng a = g(p-1)/q thì điều này không thể xảy ra khi g < p. Trong nhiều trƣờng hợp, thông điệp có thể mã và giải mã chỉ một lần nên nó phù hợp cho việc dùng với hệ mật bất kì (an toàn tại thời điểm đƣợc mã). Song trên thực tế, nhiều khi một bức điện đƣợc làm một tài liệu đối chứng, chẳng hạn nhƣ bản hợp đồng hay một chúc thƣ và vì thế cần xác minh chữ kí sau nhiều năm kể từ khi bức điện đƣợc kí. Bởi vậy, điều quan trọng là có phƣơng án dự phòng liên quan đến sự an toàn của sơ đồ chữ kí khi đối mặt với hệ thống mã. Vì sơ đồ Elgamal không an toàn hơn bài toán logarithm rời rạc nên cần dùng modulo p lớn hơn chẳng hạn 512 bit trở lên. Tuy nhiên độ dài chữ kí theo sơ đồ Elgamal là gấp đôi số bit của p mà với nhiều ứng dụng dùng thẻ thông minh thì cần chữ kí ngắn hơn nên giải pháp sửa đổi là: một mặt dùng p với độ dài biểu diễn từ 512 đến 1024 bit, mặt khác trong chữ kí (?,dδ), các số?, d có độ dài biểu biễn ngắn, chẳng hạn là 160 bit – Khi đó độ dài chữ kí là 320 bit. Điều này thực hiện bằng cách dùng nhóm con Cyclic Zq* của Zp* thay cho chính bản thân Zp*, do đó mọi tính toán vẫn đƣợc thực hiện trong Zp* nhƣng dữ liệu và thành phần chữ kí lại thuộc Zq*. Tính hợp lệ: Tính hợp lệ của chữ kí DSA dựa trên hai định lí sau: Định lí 1: Cho p, q là hai số nguyên tố thoả mãn điều kiện q \ (p - 1). h là một số nguyên dƣơng bất kì thoả mãn h < p. Nếu: g  h(p - 1) / q mod p thì gq  1 mod p
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

47

Thật vậy gq  (h(p - 1)/q)q  hp – 1 mod p (theo định lí Fecma nhỏt). Định lí 2: Với g, p, q xác định nhƣ trên ta luôn có: nếu m  n mod p thì gm  gn mod p. Thật vậy không mất tính tổng quát ta đặt m = n + kq Thì gm  gn + kq  (gn mod p).(gkq mod p)  gn mod p  điều phải chứng minh. Nhƣợc điểm: Một ý kiến cho rằng, việc xử lí lựa chọn của NIST là không công khai. Tiêu chuẩn đã đƣợc cục an ninh quốc gia phát triển mà không có sự tham gia của khối công nghiệp Mỹ. Còn những chỉ trích về mặt kĩ thuật thì chủ yếu là về kích thƣớc modulo p cố định = 512 bít. Nhiều ngƣời đã muốn kích thƣớc này có thể thay đổi đƣợc nếu cần, có thể dùng kích cỡ lớn hơn. Đáp ứng những điều kiện này, NIST đã chọn tiêu chuẩn cho phép có nhiều kích cỡ modulo bất kì chia hết cho 64 trong phạm vi từ 512 đến 1024 bít. Một phàn nàn nữa về DSA là chữ kí đƣợc tạo ra nhanh hơn việc xác minh nó. Trong khi đó, nếu dùng RSA làm sơ đồ chữ kí với số mũ xác minh công khai nhỏ hơn (chẳng hạn = 3) thì có thể xác minh nhanh hơn nhiều so với việc lập chữ kí. Điều này dẫn đến hai vấn đề liên quan đến những ứnh dụng của sơ đồ chữ kí:  Bức điện chỉ đƣợc kí một lần, xong nhiều khi lại phải xác minh chữ kí nhiều lần trong nhiều năm. Điều này tạo gợi ý nhu cầu có thuật toán xác minh nhanh hơn.  Những kiểu máy tính nào có thể dùng để kí và xác minh? Nhiều ứng dụng, chẳng hạn các thẻ thông minh có khả năng xử lí hạn chế liên lạc với máy tính nhanh hơn. Vì thế có nhu cầu nhƣng thiết kế một sơ đồ để có thể thực hiện trên thẻ một số tính toán. Tuy nhiên có một số tình huống cần hệ thống minh tạo chữ kí, trong những tình huống khác lại cần thẻ thông minh xác minh chữ kí. Vì thế có thể đƣa ra giải pháp xác định ở đây. Sự đáp ứng của NIST đối với yêu cầu về số lần tạo xác minh chữ kí thực ra không có yêu cầu gì ngoài yêu cầu về tốc độ, miễn là cả hai thể thực hiện nhanh. 4. Các sơ đồ chữ kí số khả thi Trong các sơ đồ chữ kí điện tử ngƣời ta thƣờng sử dụng hai sơ đồ chữ kí là DSA và RSA bởi vì một số nguyên nhân sau:  Cả hai sơ đồ đều đƣợc chính phủ Mỹ thông qua trong Chuẩn chữ kí số (DSS) . Cả hai giải thuật DSA và RSA đều đƣợc công bố trong Hồ sơ
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

48

trong liên bang (FIPS) vào ngày 19/5/94 và đƣợc đƣa ra làm chuẩn chính thức của chữ kí điện tử vào 1/12/94 mặc dù nó đã đƣợc đề xuất từ 8/91.  Các sơ đồ chữ kí này đều là cá sơ đồ chữ kí dựa trên các phƣơng pháp mã hoá khoá khoá công khai vadf đều có độ bảo mật rát cao.  Các bộ số liệu để kiểm nghiệm sự đúng đắn trong việc cài đặt các chữ kí này đều đƣợc công khai. Nếu trong quá trình thử nghiệm các chữ kí này đều đảm bảo đúng với bộ số liệu thì chữ kí đƣợc coi là an toàn.  Cả hai sơ đồ chữ kí đều có thể chuyển đổi từ các chữ kí kèm thông điệp thành chữ kí khôi phục thông điệp không mấy khó khăn với việc tích hợp thêm các hàm có độ dƣ R (Redundancy Function).  Trong thực tế khi đƣa ra hệ thống CA server, phía đối tác quyết định lựa chọn sơ đồ chữ ki DSA là chữ kí chính thức cho toàn bộ các giao dịch.  Thời gian xác nhận chữ kí của cả hai loại chữ kí này đều ngắn và chấp nhận đƣợc trong môi trƣờng mạng công cộng. 5. Các cách tấn công chữ kí điện tử Khi nói đến chữ kí điện tử chúng ta luôn đặt mục tiêu an toàn lên hàng đầu, một chữ kí điện tử chỉ thực sự đƣợc áp dụng trong thực tế nếu nhƣ nó đƣợc chứng minh là không hề giả mạo. Mục tiêu lớn nhất của những kẻ tấn công các sơ đồ chữ kí là giả mạo chữ, điều này có nghĩa là kẻ tấn công sinh ra đƣợc chữ kí của ngƣời kí lên thông điệp mà chữ kí này sẽ đƣợc chấp nhận bởi ngƣời xác nhận. Trong thực tế các hành vi tấn công chữ kí điện tử rất đa dạng, để dễ dàng phân tích một sơ đồ chữ kí là an toàn hay không ngƣời ta tiến hành kiểm nghiệm độ an toàn của chữ kí trƣớc các sự tấn công sau: Tolal break (tấn công toàn bộ): Một kẻ giả mạo không những tính đƣợc thông tin về khoá riêng (private key) mà còn có thể sử dụng một thuật toán sinh chữ kí tƣơng ứng tạo ra đƣợc chữ kí cho thông điệp.  Selective forgert (giả mạo có lựa chọn) : Kẻ tấn công có khả năng tạo ra đựơc một tập hợp các chữ kí cho một lớp các thông điệp nhất định, các thông điệp này đƣợc kí mà không cần phải có khoá mật của ngƣời kí.  Existential forgert (giả mạo với thông điệp biết trƣớc): Kẻ tấn công có khae năng giả mạo chữ kí cho một thopong điệp, kẻ tấn công không thể hoặc có ít nhất khả năng kiểm soát thông điệp đƣợc giả mạo này.  Ngoài ra, hầu hết các chữ kí điện tử đều dựa vào cơ chế mã hoá khoá công khai, các chữ kí điện tử dựa trên cơ chế này có thể bị tấn công theo các phƣơng thức sau:
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

49

 Key – only attacks (tấn công với khoá): Kẻ tấn công chỉ biết khoá chung của ngƣời kí.  Message attacks (tấn công vào thông điệp): ở đay kẻ tấn công có khả năng kiểm tra các chữ kí khác hau có phù hợp với thông điệp có trƣớc hay không. Đây là kiểu tấn công rất thông dụng, trong thực tế nó thƣờng đƣợc chia làm ba lớp: o Known – message attack (tấn công với thông điệp đã biết): Kẻ tấn công có chữ kí cho một lớp các thông điệp. o Chosen – message attack (tấn công lựa chọn thông điệp): Kẻ tấn công dành đƣợc các chữ kí đúng cho một danh sách các sthông điệp trƣớc khi tiến hành hoath động phá huỷ chữ kí, cách tấn công này là non – adaptive (không mang tính phù hợp) bởi vì thông điệp đƣợc chọn trƣớc khi bất kì môth chữ kí nào đƣợc gửi đi. o Adaptive – chosen message attack (tấn công lựa chọn thông điệp chủ động): Kẻ tấn công đƣợc phép sử dụng ngƣời kí nhƣ là một bên đáng tin cậy, kẻ tấn công có thể yêu cầu chữ kí cho các thông điệp mà các thông điệp này phụ thuộc vào khoá công khai của ngƣời kí, nhƣ vậy kẻ tấn công có thể yêu cầu chữ kí của các thông điệp phụ thuộc vào chữ kí và thông điệp dành đƣợc trrƣớc đây và qua đó tính đƣợc chữ kí.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

http://www.lrc-tnu.edu.vn

50

những con số này chỉ là phần nổi của tảng băng. Một phần rất lớn các vụ tấn công không đƣợc thông báo. Tuy nhiên lại nảy sinh các vấn đề an toàn thông tin. khai thác.vn 51 . Sự phát triển mạnh mẽ của Internet xét về mặt bản chất chính là việc đáp ứng lại sự gia tăng không ngừng của nhu cầu giao dịch trực tuyến trên hệ thống mạng toàn cầu. Chính vì điểm này.CHƢƠNG III b¶o mËt vµ an toµn th«ng tin trong tm®t i. vÊn ®Ò an toµn th«ng tin Ngày nay. các tổ chức quân sự nhà băng… Một số vụ tấn công có quy mô khổng lồ (có tới 100. Internet có những kỹ thuật cho phép mọi ngƣời truy nhập. vì nhiều lý do. Theo số liệu của CERT (Computer Emegency Response Team .000 máy tính bị tấn công). các máy tính của tất cả các công ty lớn nhƣ AT &T.edu. Sở dĩ có lý do đó là vì việc truyền thông tin qua mạng Internet hiện nay chủ yếu sử dụng giao thức TCP /IP."Đội cấp cứu máy tính").lrc-tnu. giao thức TCP /IP đã tạo cơ hội cho "bên thứ ba" có thể thực hiện các hành động gây mất mát an toàn thông tin trong giao dịch. và 2241 vào năm 1994. chia sẻ và khai thác thông tin một cách dễ dàng và hiệu quả. quảng bá ( web-publishing) đến những giao dịch phức tạp thể hiện qua các hệ thống chính phủ điện tử. thƣơng mại điện tử ngày càng phát triển mạnh mẽ trên khắp thế giới. v. Hơn nữa. Nhƣng nó cũng là nguy cơ chính dẫn đến việc thông tin của bạn bị hƣ hỏng hoặc phá huỷ hoàn toàn. Công nghệ mạng máy tính đã mang lại lợi ích to lớn. Những vụ tấn công này nhằm vào tất cả các máy tính có mặt trên Internet. Các giao dịch trực tuyến trên Internet phát triển từ những hình thức sơ khai nhƣ trao đổi thông tin ( email. trong đó có thể kể đến nỗi lo bị mất uy tín. các cơ quan nhà nƣớc.Sự xuất hiện mạng Internet cho phép mọi ngƣời có thể truy cập. Điều đó một phần do các Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. message. khoảng 400 vào năm 1991. chia sẻ thông tin. Không chỉ số lƣợng các cuộc tấn công tăng lên nhanh chóng.v…). các trƣờng đại học. IBM. số lƣợng các vụ tấn công trên internet đƣợc thông báo cho tổ chức này là ít hơn 200 vào năm 1989. hoặc đơn giản những ngƣời quản trị hệ thống không hề hay biết những cuộc tấn công nhằm vào hệ thống của họ. TCP/IP cho phép các thông tin đƣợc gửi từ một máy tính này tới một máy tính khác mà đi qua một loạt các máy tính trung gian hoặc mạng riêng biệt trƣớc khi nó có thể đi tới đƣợc đích. mà các phƣơng pháp tấn công cũng liên tục đƣợc hoàn thiện. 1400 vào năm 1993. với sự phát triển mạnh mẽ của công nghệ thông tin việc ứng dụng công nghệ mạng máy tính trở nên vô cùng phổ cập và cần thiết.

Có hai hình thức mạo danh sau: o Bắt trƣớc (Spoofing): Một cá nhân có thể giả vờ nhƣ một ngƣời khác. Ví dụ. Ví dụ. Ví dụ. o Xuyên tạc (Misrepresentation): Một cá nhân hay một tổ chức có thể giả vờ nhƣ một đối tƣợng. một ai đó có thể sửa đổi nội dung của một đơn đặt hàng hoặc thay đổi lý lịch của một cá nhân trƣớc khi các thông tin đó đi đến đích. dùng địa chỉ mail của một ngƣời khác hoặc giả mạo một tên miền của một trang Wed. nhƣng thực tế là một trang chuyên đánh cắp thẻ tín dụng. chữ ký điện tử (chứng chỉ khoá khoá công khai) … Sau đây chúng ta lần lƣợt tìm hiểu các khái niệm căn bản về mã hoá thông tin và đi sâu vào viềc sử dụng chữ ký số cho việc xác thực trên mạng. Ví dụ.  Chối cãi nguồn gốc: Một cá nhân có thể chối là đã không gửi tài liệu khi xảy ra tranh chấp. một ai đó có thể biết đƣợc số thẻ tín dụng. tuy nhiên các cuộc tấn công vào thời gian gần đây bao gồm cả các thao tác nhƣ giả mạo địa chỉ IP. theo dõi thông tin truyền qua mạng. hay đƣa ra những thông tin về mình mà không đúng nhƣ vậy. ngƣời nhận sẽ không thể khẳng định ngƣời gửi là chính xác. Hiện tại có rất nhiều giải pháp cho vấn đề an toàn thông tin trên mạng nhƣ mã hoá thông tin. khi gửi email thông thƣờng. nhƣng sự bí mật của nó thì không còn.lrc-tnu. Cũng theo CERT. những cuộc tấn công thời kỳ 1988-1989 chủ yếu đoán tên ngƣời sử dụng – mật khẩu (UserID-password) hoặc sử dụng một số lỗi của các chƣơng trình và hệ điều hành (security hole) làm vô hiệu hóa hệ thống bảo vệ.  Giả mạo (Tampering): Các thông tin trong khi truyền trên mạng bị thay đổi hay bị thay đổi trƣớc khi đến ngƣời nhận. chiếm các phiên làm việc từ xa (telnet hoặc rlogin). hay các thông tin cần bảo mật của bạn. Các bí mật bảo đảm an toàn cho giao dịch điện tử Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. có một trang chuyên về thiết bị nội thất mà có sử dụng thẻ tín dụng. Để vừa đảm bảo tính bảo mật của thông tin lại không làm giảm sự phát triển của việc trao đổi thông tin quảng bá trên toàn cầu thì chúng ta cần có các giải pháp phù hợp.vn 52 .edu. Một số vấn đề an toàn đối với nhiều mạng hiện nay:  Nghe trộm (Eavesdropping): Thông tin không hề bị thay đổi. Ví dụ.  Mạo danh (Impersonation): Một cá nhân có thể dựa vào thông tin của ngƣời khác để trao đổi với một đối tƣợng.nhân viên quản trị hệ thống đƣợc kết nối với Internet ngày càng đề cao cảnh giác.

Chứng chỉ số là một tệp tin điện tử đƣợc sử dụng để nhận diện một cá nhân. trong nhiều trƣờng hợp cần thiết phải “chứng minh” bằng phƣơng tiện điện tử danh tính của ai đó. hộ chiếu. Chẳng hạn việc thanh toán bằng thẻ tín dụng thông qua dịch vụ wed sẽ gặp một số rủi ro sau: o Thông tin từ trình duyệt wed của khách hàng ở dạng thuần văn bản nên có thể bị lọt vào tay kẻ tấn công. Hệ thống phải có khả năng xác thực. giả Do vậy. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.edu. Vì vậy các hệ thống cần phải có một cơ chế đảm bảo an toàn trong quá trình giao dịch điện tử. Một hệ thống thông tin trao đổi dữ liệu an toàn phải đáp ứng một số yêu cầu sau: o Hệ thống phải đảm bảo dữ liệu trong quá trìmh truyền đi là không bị đánh cắp. một kế hoạch an toàn đầy đủ còn bao gồm cả tính xác thực. Thêm vào đó. chøng chØ sè vµ c¬ chÕ m· ho¸ 1.Thế nào là một hệ thống an toàn thông tin? An toàn trƣớc các cuộc tấn công là một vấn đề mà các hệ thống giao dịch trực tuyến cần giải quyết. …nó gắn định danh của đối tƣợng đó với một khóa công khai. II. các chứng chỉ số và sử dụng chữ ký số trong quá trìmh thực hiện các giao dịch. o mạo. Tuy nhiên không có thể đảm bảo rằng đối tác không thể bị giả mạo. một tổ chức. một máy dịch vụ. Các kỹ thuật đảm bảo cho an toàn giao dịch điện tử chính là sử dụng các hệ mật mã. Việc cung cấp kênh thƣơng mại an toàn đồng nghĩa với việc đảm bảo tính toàn vẹn của thông báo và tính sẵn sàng của kênh. chứng minh thƣ. tránh trƣờng hợp giả danh.vn 53 . cần tập trung vào việc bảo vệ các tài sản khi chúng đƣợc chuyển tiếp giữa máy khách và máy chủ từ xa.lrc-tnu. Giới thiệu về chứng chỉ số Việc sử dụng mã hóa hay kí số chỉ giải quyết đuợc vấn đề bảo mật thông điệp và xác thực. o Không ai có thể đản bảo dữ liệu truyền đi có bị thay đổi hay không. giống nhƣ bằng lái xe. Thông tin truyền trên mạng gặp rất nhiều rủi ro và nguy cơ bị mất thông tin là thƣờng xuyên. o Trình duyệt wed của khách hàng không thể xác định đƣợc máy chủ mà mình trao đổi thông tin có phải là thật hay một wed giả mạo.

Xác thực định danh Việc giao tiếp trên mạng điển hình là giữa một máy khách (Client – nhƣ trình duyệt trên máy cá nhân) và một máy dịch vụ (Server – nhƣ máy chủ Website). chứng chỉ số còn chứa thông tin về đối tƣợng nhƣ tên mà nó nhận diện.Khi một ngƣời đã gửi thông điệp có kèm theo chữ ký số của mình (cùng vối chứng chỉ số).Máy dịch vụ sẽ dùng kỹ thuật mã hóa khóa công khai để kiểm tra chữ ký và xác định tính hợp lệ của chứng chỉ số. Ngoài khóa công khai. 2. đƣợc gọi là cơ quan xác thực chứng chỉ (Certificate Authority-CA).Chính sách lập ra phải đảm bảo việc cấp chứng chỉ số phải đúng đắn.Chỉ có khóa công khai đƣợc chứng thực bởi chứng chỉ số sẽ làm việc với khóa bí mật tƣơng ứng.Các phƣơng pháp để xác định định danh phụ thuộc vào các chính sách mà CA đặt ra. Khi xác thực ngƣời dùng theo phƣơng pháp nàyK. tên của CA cấp chứng chỉ số. Có hai hình thức xác thực máy khách:  Xác thực dựa trên tên truy nhập và mật khẩu (Username và Password). sau đó gửi cả chữ ký số và cả chứng chỉ số qua mạng. thì không thể chối cãi: đó không phải là thông điệp của anh ta. nó đƣợc sở hữu bởi đối tƣợng có định danh nằm trong chứng chỉ số. Xác thực dựa trên mật khẩu. Trong chứng chỉ số chứa một khóa công khai đƣợc gắn với một tên duy nhất của một đối tƣợng (nhƣ tên của một nhân viên hoặc máy dịch vụ).edu. trƣớc khi cấp một chứng chỉ số.vn 54 .Máy dịch vụ có thể tin tƣởng vào máy khách và ngƣợc lại.Máy dịch vụ phải xác thực ngƣời sử dụng trƣớc khi cho phép họ truy nhập tài nguyên của hệ thống.Nó cho phép chứng chỉ số nhƣ đã đƣợc đóng dấu để ngƣời sử dụng có thể kiểm tra.  Xác thực dựa trên chứng chỉ số. để có thể truy nhập vào hệ thống.Tất cả các máy dịch vụ cho phép ngƣời dùng nhập mật khẩu.Thông thƣờng. tức là ngƣời gửi muốn ngƣời nhận tin tƣởng vào mình.Các chứng chỉ số giúp ngăn chặn việc sử dụng khóa công khai cho việc giả mạo.hạn dùng.CA có thể là một đối tác thứ ba đứng độc lập hoặc có các tổ chức tự vận hành một hệ thống tự cấp các chứng chỉ cho nội bộ của họ.Có một nơi có thể chứng nhận các thông tin của bạn là đúng.Đó là một đơn vị có thẩm quyền xác nhận định danh và cấp các chứng chỉ số.Máy dịch vụ sẽ quản lý danh sách các Username và Password này.Máy khách ký số vào dữ liệu. ngƣời dùng đã quyết định tin tƣởng vào máy dịch vụ (có thể không có bảo mật theo giao thức SSLc). mã số…Điều quan trọng nhất là chứng chỉ số phải có chữ ký số của CA đã cấp chứng chỉ số đó. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.Đó là một phần của giao thức bảo mật SSL.lrc-tnu.Việc chứng thực có thể đƣợc thực hiện ở cả hai phía. ai đƣợc cấp và mục đích dùng vào việc gì. Việc xác thực ở đây không chỉ có ý nghĩa một chiều đối với ngƣời gửi. CA sẽ công bố các thủ tục cần thiết phải thực hiện cho các loại chứng chỉ số.

4. Các bước trong hình trên như sau: Bƣớc 1: Để đáp lại yêu cầu xác thực từ máy dịch vụ. ngƣời dùng phải nhập mật khẩu cho mỗi máy dịch vụ khác nhau.M¸y dÞch vô x¸c nhËn quyÒn truy nhËp vµo nh÷ng tµi nguyªn nµo cho ng-êi dïng.Ng-êi dïng nhËp tªn vµ mËt khÈu cho x¸c thùc. Bƣớc 4: Máy dịch vụ xác định xem mật khẩu đó có quyền truy cập vào những tài nguyên nào của hệ thống.3. 4. Xác thực dựa trên chứng chỉ số. Khi sử dụng loại xác thực này.M¸y dÞch vô x¸c nhËn quyÒn truy nhËp vµo nh÷ng tµi nguyªn nµo chong-êi dïng.vn 55 . Bƣớc 3: Máy dịch vụ tìm kiếm mật khẩu trong cơ sở dữ liệu.M¸y dÞch vô dïng mËt khÈu ®Ó x¸c nhËn ®Þnh danh ng-êi dïng 1. 5. ngƣời quản trị có thể điều khiển quyền truy nhập một cách tập trung..lrc-tnu. Bứơc 2: Máy khách gửi mật khẩu qua mạng.Ng-êi dïng nhËp tªn vµ mËt khÈu cho x¸c thùc.Ngƣời phải dùng nhập mật khẩu cho mỗi máy dịch vụ khác nhau trong cùng một phiên làm việc.M¸y kh¸ch göi chøng chØ vµ ch÷ kÝ qua m¹ng. 1. Chứng chỉ số có thể thay thế 3 bƣớc đầu chứng thực bằng mật khẩu với cơ chế cho phép ngƣời dung chỉ phải nhập mật khẩu một lần và không phải truyền qua mạng. không cần một hình thức mã hóa nào. 2.edu. M¸y kh¸ch Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên M¸y dÞch vô http://www. nó lƣu lại dấu vết của các mật khẩu này cho mỗi ngƣời dùng.M¸y kh¸ch göi tªn vµ mËt khÈu qua m¹ng. máy khách sẽ hiện hộp thoại yêu cầu nhập mật khẩu. M¸y dÞch vô M¸y kh¸ch Hình 14: Sử dụng mật khẩu xác thực máy khách kết nối tới máy dịch vụ.M¸y dÞch vô dïng mËt khÈu ®Ó x¸c nhËn ®Þnh danh ng-êi dïng 3.

Điều cần chú ý là chỉ có chủ máy khách mới đƣợc phép truy nhập vào máy khách. 3. Chứng chỉ khóa công khai Giới thiệu chứng chỉ khóa công khai Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. và kí lên dữ liệu đƣợc tạo ra ngẫu nhiên cho mục đích chứng thực từ cả phía máy khách và máy dịch vụ.Chữ kí số có thể đựoc kiểm tra bằng khóa công khai tƣơng ứng với khóa bí mật đã dùng để kí. nhƣ vieẹc xem chứng chỉ của máy khách có trong cơ sở dữ liệu để lƣu trữ và quản lý các chứng chỉ số.edu.Máy dịch vụ tiếp tục xác định xem ngƣời sử dụng có quyền gì đối với tài nguyên của hậ thống. Bƣớc 3: Máy khách gửi cả chứng chỉ và bằng chứng (một phần dữ liệu đƣợc tạo ngẫu nhiên và đƣợc kí) qua mạng. phải nhập mật khẩu để vào cơ sở dữ liệu của chƣơng trình có sử dụng khóa bí mật (mật khẩu này có thể phải nhập lại trong khoảng thời gian định kì cho trƣớc). Bƣớc 2: Máy khách dùng khóa bí mật tƣơng ứng với khóa công khai ghi trong chứng chỉ.Bởi vì nó dựa trên những gì mà ngƣời sử dụng có: Khóa bí mật và mật khẩu để bảo vệ khóa bí mật. Giao dịch ở hình trên có dùng giao thức bảo mật SSL. ngƣòi dùng chỉ phải nhập mật khẩu một lần. Bƣớc 4: Máy dịch vụ sử dụng chứng chỉ số và bằng chứng đó để xác thực ngƣời dùng. Bƣớc 5: Máy dịch vụ có thể thực hiện tùy chọn các nhiệm vụ xác thực khác.Sử dụng chứng chỉ số để chứng thực có lợi thế hơn khi dùng mật khẩu.vn 56 .Dữ liệu này và chữ kí số thiết lập một bằng chứng để xác định tính hợp lệ của khóa bí mật. nó là duy nhất trong mỗi phiên làm việc của giao thức SSL. để xác thực máy khách dựa trên chứng chỉ số.Hình 15: Chứng chỉ số chứng thực cho may khách kết nối tới máy dịch vụ. họ không phải nhập lại khi cần truy cập lần thứ hai. Các bước trong hình trên như sau: Bƣớc 1: Phần mềm máy khách(ví dụ nhƣ Communicator) quản lý cơ sở dữ liệu về các cặp khóa bí mật và khóa công khai.Máy khách sẽ yêu cầu nhập mật khẩu để truy nhập vào cơ sở dữ liệu này chỉ một lần hoặc theo định kỳ.Nó không đảm nhận trách nhiệm bảo vệ mức vật lý và mật khẩu sử dụng khóa bí mật.Máy khách phải có chứng chỉ số để cho máy dịch vụ nhận diện. Khi máy khách truy nhập vào máy dịch vụ có sử dụng SSL.Trách nhiệm này thuộc về ngƣời dùng. Cả hai có chế xác thực trên đều phỉa truy nhập mức vật lý tới các máy cá nhân.lrc-tnu.Mã hóa khóa công khai chỉ có thể kiểm tra việc sử dụng khóa bí mật tƣơng ứng với khóa công khjai trong chứng chỉ số.

Một chứng chỉ gồm khóa công khai và thông tin để nhận dạng duy nhất chủ thể (Subject) của chứng chỉ.edu.vn 57 .Nhƣ vậy đảm bảo rằng các khóa công khai đƣợc lƣu giữ an toàn trên mỗi hệ thống cục bộ của từng ngƣời. nội dung các thông điệp đã mã hóa có thể bị lộ. anh ta cần có một bản sao khóa công khai của thành viên ký.Chúng ta gọi cả hai thành viên mã hóa thông điệp và thành viên kiểm tra chữ kí số là những ngƣời sử dụng khóa công khai.lrc-tnu.Các chứng chỉ khóa công khai giúp cho việc phân phối khóa công khai trở nên có hệ thống. họ có thể đƣợc bản sao khóa công khai của nhau bằng cách trao đổi các đĩa nhớ có ghi các khóa công khai của từng ngƣời. khi ngƣời này muốn truyền thông an toàn với ngƣời kia. đúng là dành cho thành viên khác (có thể là ngƣời nhận thông điệp có chủ định hoặc bộ sinh chữ ký số đƣợc yêu cầu). thì không cần thiết phải giữ bí mật khóa công khai này. Khi khóa công khai đƣợc gửi đến cho ngƣơì sử dụng.Nếu kẻ phá hoại dùng khóa công khai khác thay thế khóa công khai hợp lệ. Hệ thống cấp chứng chỉ khóa công khai làm việc như sau: Một CA phát hành các chứng chỉ cho những ngƣời nắm giữ các cặp khóa công khai và khóa riêng. cách bảo vệ (đƣợc tạo ra từ các kĩ thuật này) sẽ bị ảnh hƣởng nếu kẻ truy nhập thay thế các khóa công khai không xác thực. ngƣời gửi cần một bản sao khóa công khai của ngƣòi nhận.Chủ thể của chứng chỉ có thể là Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. đặc biệt khi số lƣợng sử dụng trở nên quá lớn hoặc ở phân tán.Nhƣ vậy những thành viên không chủ định khác sẽ biết đựoc các thông điệp hay các chữ ký số có thể bị làm giả.Khi một thành viên bất kỳ muốn kiểm tra chữ ký số.Khi một ngƣời muốn dùng kĩ thuật mã hóa khóa công khai để mã hóa một thông điệp và gửi cho ngƣời nhận.Đây chính là hình thức phân phối khóa công khai thủ công. ngƣời dùng khóa công khai phải đảm bảo rằng khóa công khai đƣợc dùng. Đối với các nhóm thành viên nhỏ yêu cầu này có thể đƣợc thỏa mãn dễ dàng.Ví dụ trƣờng hai ngƣời quen biết nhau.Tuy nhiên.Nói cách khác. Tuy nhiên hình thức phân phối khóa công khai kiểu này bị coi là không thực tế hoặc không thỏa đáng trong phần lớn các lĩnh vực ứng dụng khóa công khai.

họ chỉ cần lấy bản sao chứng chỉ của CA.lrc-tnu. Chúng ta không cần giữ bí mật khóa công khai.Một kẻ truy nhập trái phép định làm giả chứng chỉ khi nó này đang đƣợc phát hành cho những ngƣời sử dụng khóa công khai. thiết bị.edu. Th«ng tin ®èi t-îng Khãa riªng cña CA Khãa c«ng khai cña ®èi t-îng Sinh ch÷ kÝ sè Tªn CA Chữ kí CA Hình 16: Chứng chỉ khóa công khai dựa trên CA Một khi hệ thống các chứng chỉ đƣợc thiết lập.Chứng chỉ đƣợc CA kí bằng khóa riêng của họ. lấy ra khóa công khai.Ngƣời dùng cần khóa công khai của một trong các thuê bao của CA. những ngƣời dùng này sẽ phát hiện ra việc làm giả vì chữ kí số của CA Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. công việc của ngƣời dùng công khai rất đơngiản.Hơn nữa. nhƣ vậy các chúng chỉ không phải là bí mật.vn 58 .một ngƣời.Khi chủ thể của chứng chỉ là một ngƣời hoặc một thực thể hợp pháp nào đó. kiểm tra chữ kí của CA có trên chứng chỉ hay không.Ngƣời dùng khóa công khai sử dụng các chứng chỉ nhƣ trên đƣợc coi là thành viên tin cậy. hoặc một thực thể khác có nắm giữ khóa riêng tƣơng ứng. chủ thể thƣờng đƣợc nhắc đến nhƣ là một thực thể (Subscriber) của CA. ở đây không đòi hỏi các yêu cầu về tính xác thực và toàn vẹn do các chứng chỉ tự bảo vệ (chữ kí số của CA có trong chứng chỉ cung cấp bảo vệ xác thực và toàn vẹn).Kiểu hệ thống này tƣơng đối đơn giản và kinh tế khi thiết lập trên diện rộng và theo hình thức tự động bởi vì một trong các đặc tính quan trọng của chứng chỉ là: “Các chứng chỉ có thể được phát hành mà không cần phải bảo vệ thông qua các dịch vụ an toàn truyền thông để đảm bảo sự tin cẩn xác thực và toàn vẹn”.

đƣợc kiểm tra chính xác. Tuy nhiên. fax.vn 59 . Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. 5. Mô hình CA Nếu việc thiết lập một CA (có thể phát hành các chứng chỉ khoá công khai cho tất cả những ngƣời nắm giữ cặp khóa công khai và khóa riêng trên thế giới) là khả thi và khi tất cả những ngƣời sử dụng khóa công khai tin cậy vào các chứng chỉ đƣợc CA này phát hành thì ta giải quyết vấn đề phân phối khóa công khai. Có nhiều giải pháp cho vấn đề bảo mật ứng dụng Web cũng nhƣ các Web sever liên quan đều rất dễ sử dụng.lrc-tnu. Giả thiết khi có nhiều CA. nó chứa khóa công khai của CA này nhƣng do CA khác phát hành khóa công khai của CA này đƣợc ngƣời sử dụng nắm dữ an toàn.Chính vì thế các chứng chỉ khóa công khai đƣợc phát hành theo cách không an toàn. Lịch sử ngắn ngủi của Web đƣợc phản ánh bởi những hệ thống đƣợc nâng cấp và phát triển mới mà ở đó vẫn có những nguy cơ bị tấn công vào các lỗ hổng bảo mật. một ngƣời dùng nắm giữ khoá công khai của một CA xác định (CA này đã phát hành chứng chỉ cho thành viên mà ngời sử dụng khóa công khai muốn truyền thông an toàn) một cách bí mật là không thực tế. Lợi ích cơ bản của hệ thống cấp chứng chỉ là: một ngƣời sử dụng khóa công khai có thể có đƣợc số lƣợng lớn khóa công khai của các thành viên khác một cách tin cậy. Một số giao thức bảo mật ứng dụng trong TMĐT Các vấn đề bảo mật ứng dụng Web Word Wide Web có cơ sở ứng dụng là client/sever chạy trên Internet và các mạng Intranet với giao thức ICP/IP. hệ thống thƣ mục. các giao thức truyền thông không an toàn. Internet nhƣ con dao hai lƣỡi. các Web sever luôn có nguy cơ phải hứng chịu các cuộc tấn công trên toàn bộ mạng Internet. 4.Đơn giản vì nó không thực tế đối với một CA. nhờ khóacông khai của CA. phản ánh tính đa dạng của thông tin.Lƣu ý rằng chứng chỉ số chỉ hữu ích khi ngƣời dùng khóa công khai tin cậy CA phát hành các chứng chỉ hợp lệ.Vì vậy. Không giống những môi trƣờng truyền thống nhƣ những hệ thống điện tín. chúng ta cần chấp nhận sự tồn tại của nhiều CA trên thế giới. Những thách thức mới đối với bảo mật Web đã trở thành cần thiết hơn bao giờ hết nhất là trong cách mạng bối cảnh các mạng máy tính và các dịch vụ sử dụng Web ngày càng phát triển.Một CA không thể có đầy đủ thông tin và các mối quan hệ với các thuê bao để có thể phát hành các chứng chỉ đƣợc tất cả những ngƣời dùng khóa công khai chấp nhận. cấu hình hoặc quản lí. và tất nhiên không loại trừ những webside không trƣớc đƣợc bởi chúng ẩn dƣới những lớp vỏ đƣợc che chắn một cách khéo léo. Rất tiếc là điều này không thể thực hiện đƣợc.edu. ví dụ nhƣ: thông qua các máy chủ. Nội dung của các web side này cũng ngày càng phong phú. đàm thoại. ngƣời dùng có thể tìm và sử dụng một chứng chỉ khác. để có đƣợc khóa công khai của CA.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. SSL đƣợc cung cấp nhƣ là một giao thức hỗ trợ nên có hoàn toàn có thể bảo mật bất kì giao thức ứng dụng nào đƣợc xếp trên lớp TCP một cách trong suốt. Trong bối cảnh chung của vấn đề bảo mật úng dụng web.vn 60 .1c là một ví dụ cho kiến trúc dạng này. Nó chứa một số khuyết điểm nghiêm trọng và không bao giờ đƣợc tung ra bên ngoài.0. nhƣng với một cách tiếp cậ mới trong giới hạn của giao thức ICP/IP. Một đặc trƣng khác của các dịch vụ bảo mật là việc chúng đƣợc gắn bên trong các dịch vụ bảo mật . 5.2 SSL và TLS Nhƣ đã đề cập ở trên. Tiến bộ này của IPSec thể hiện ở chỗ nó tạo một kênh thông suốt. HTT P FPT SSL or TLS TCP IP SMT P Kerbero s UDP S/MINE SMTP PGP SET HTTP HTT P FTP SMTP 00 TCP TCP IP IP/IPSPec (b) Transport Level Level (a)Network Level (c) Application Hình 17: Vị trí của các phƣơng tiện bảo mật trong cấu trúc của giao thức TCP/IP Một giải pháp nữa là cải tiến cơ chế bảo mật trên giao thức TCP. kênh sạch. có hai sự lựa chọn là SSL hoặc là TLS.1a cho ta thấy sự khác biệt này. ví dụ nhƣ các trình duyệt IE và Netscape đều đƣợc trang bị SSL. Cho đến nay. các nhà nghiên cứu chủ yếu tập trung vào việc nghiên cứu và xem xét nhằm cải tiến các dịch vụ đã cung cấp và các kĩ thuật đã đƣợc sử dụng.Hơn nữa.IPSec còn chứa một bộ lọc đặc biệt để lựa chọn tuyến giao vận tránh hiện tƣợng tràn bộ nhớ trong quá trình xử lý của IPSec. các Web server cũng đều đã đƣợc bổ sung giao thức này. hình 3.Có nhiều giải pháp cho vấn đề bảo mật đã đƣợc đua ra. đã có 3 phiên bản của SSL:  SSL 1.Ngoài ra. Ở tầng này.lrc-tnu. SSL còn có thể đƣợc gắn vào các ứng dụng nhƣ một gói đặc biệt.0: Đƣợc sử dụng nội bộ chỉ bởi Netcape Communications 1. hai giao thức bảo mật quan trọng lớp vận chuyển (Layer Transport) có tầm quan trọng rất lớn đối với sự bảo mật của các trình úng dụng trên web đó là SSL và TLS . một trong những ý tƣởng dẫn dắt đến sự ra đời của giao thức Secure Sockets layer (SSL) và Transprot layer Security (TLS). Hình 3.giữa ngƣời sử dụng cuối với ứng dụng nhƣ là một giải pháp thông nhất.edu. đó chính là việc cung cấp cơ chế bảo mật cho IP. SET(Secure Electrolic Transaction) là một ví dụ tiêu biểu cho cách tiếp cận này. Sự thay đổi mới này thể hiện ở chỗ các dịch vụ có thể thích úng với các thành phần cần thiết nhất định của úng dụng.

vn Transport 61 . IMAP. chẳng hạn nhƣ đƣợc cung cấp bởi TCT. Microsoft cũng đã giớ thiệu giao thức PCT (Private Communication Technology) cạnh trang trong lần tung ra Internet Explorer đầu tiên của nó vào năm 1996.lrc-tnu.0: Netscape Communications đã phản ứng lại sự thách thức PCT của Microsoft bằng cách giới thiệu SSL 3.0 đến 2. SSL 2. POP3. SSL Ghandshaks protocol SSl change Cipher Spec protocol SSL. Telnet. SSL đƣợc xếp lớp lên trên một dịch vụ vận chuyển định hƣớng nối kết và đáng tin cậy.Trong một nỗ lực nhằm dùng sự không chắc chắn của công chúng về bảo mật của SSL.1. Tuy nhiên chú ý rằng SSL có môt định hƣớng Clientsever mạnh mẽ và thật sự không đáp ứng các yêu cầu của các giao thức ứng dụng ngang hàng.  SSL 3.0: Đƣợc kết nhập vào Netscape Communications 1. Vốn giải quyết các vấn đề trong SSL 2.0. 5.0 và thêm một số tính năng mới. Hình 2. HTTP.1 Kiến trúc của SSL Cấu trúc của SSL và giao thức của SSL tƣơng ứng đƣợc minh họa trong hình 1.2 minh họa một số giao thức ứng dụng điểm hình bao gồm NSIIOP. Theo hình này. Aliert protocol HTTR LDAP cac HTTP SMTP Application Layer SSl Record Layer …………………………………………………………………………………… ………… TCP Layer Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.edu. Thực tế. IRC. một ƣu điểm chính của các giao thức bảo mật lớp vận chuyển (Transport Layer) nói chung và giao thức SSL nói riêng là chúng độc lập với ứng dụng theo nghĩa là chúng có thể đƣợc sử dụng để bảo vệ bất kỳ giao thức ứng dụng đƣợc xếp lớp lên trên TCP một cách trong suốt. SSL ám chỉ một lớp ( bảo mật) trung gian giữa lớp vận chuyển (Transport Layer) và lớp ứng dụng (Applycation Layer). FTP. Về khả năng nó có thể cung cấp các dịch vụ bảo mật cho các giao thức ứng dụng tùy ý dựa vào TCP chứ không phải chỉ HTTP. Nó có một số điểm yếu liên quan đến sự hiện thân cụ thể của cuộc tấn công của đối tƣợng trung gian.2. Vào thời điểm này Microsoft nhƣợng bộ và đồng ý hỗ trợ trong tất cả các phiên bản phần mềm dựa vào TCP/IP của nó.x. Tất cả chúng có thể đƣợc bảo vệ bằng cách xếp lớn chúng trên SSL (mẫu tự S đƣợc thêm vào trong các kỳ ghép giao thức tƣơng ứng chỉ định việc sử dụng SSL).

. ..... Sử dụng các sổ cổng chuyên dụng đƣợc dành riêng bởi internet asigned numbers Authority (IANA) ..vn 62 Network Layer ..... Để sử dụng sự bảo vệ của SSL cả client lẫn server phải biết rằng phía bên kia đang sử dụng SSL.. 3.. và đôi khi ngay cả khi dành đƣợc thông tin về các mối quan hệ doanh nghiệp hoặc cá nhân....lrc-tnu..Trong trƣờng hợp này một số cổng riêng biệt phải đƣợc gán cho mọi iao thức ứn dụng vốn sử dụng SSL. hoặc xem xét lƣợng dữ liệu đƣợc truyền.....…………………………………………….. Ngoài ra. 2. Sử dụng số cổng chuẩn cho mọi giao thức ứng dụng và để thƣơng lƣợng các tuỳ chọn bảo mật nhƣ là một phần của giao thức ứng dụng ... một ngƣời vẫn phân tích lƣu lƣợng vẫn có thể xác định các bên nào dang tƣơng tác. các loại dịch vụ nào đang đƣợc sử dụng..... Các bên giao tiếp (nghĩa là Client và server) có thể xác thực nhau bằng cách sử dụng mật mã khóa chung...... Sự thƣơng lƣợng dành riêng cho ứng dụng của các tùy chọn bảo mật (nghĩa là khả năng thứ hai) coá khuyết điểm là đòi hỏi mọi giao thức ứng dụng đƣợc chỉnh sửa để hiểu tiến trình thƣơng lƣợng... Nói chung có ba khả năng giải quyết vấn đề này : 1.... Tính xác thực và tính toàn vẹn của lƣu lƣợng dự liệu cũng đƣợc bảo vệ vì các thông báo đƣợc xác thực và đƣợc kiểm tra tính toán toàn vẹn một cách trong suốt bằng cách sử dụng MAC.... nhƣng nó không đƣợc Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www... Internet IP Layer …………………………………………………………………………………… ………... sử dụng một tuỳ chọn TCP để thƣơng lƣợng việc sử dụng một giao thức bảo mật.. giao thức SSL cung cấp sự bảo mật truyền thông vốn có 3 đặc tính cơ bản 1. 3. việc xác định một tuỳ chọn TCP (nghĩa là khả năng thứ 3) là một giải pháp tốt. chẳng hạn nhƣ SSL trong suốt giai đoạn thiết lập nối kểt TCP thông thƣờng............... Network Access Hình 18: Kiến trúc của SSL Tóm lại.......ví dụ: bằng cách xem xét các địa chỉ IP nguồn và đích không đƣợc mã hoá và các số cổng TCP. 2..... Sự bí mật của lƣu lƣợng dữ liệu đƣợc bảo vệ vì nối kết đƣợc mã hóa trong suốt sau khi một sự thiết lập quan hệ ban đầu và sự thƣơng lƣợng khóa session đã xảy ra...edu. Hơn nữa SSL không ngăn các cuộc tấn công có định hƣớng dựa vào phần thực thi TCP chẳng hạn nhƣ các cuộc tấn công làm tràn ngập TCP SYN hoạc cƣỡng đoạt sesion.... Tuy nhiên điều quan trọng cần lƣu ý là SSL không ngăn các cuộc tấn công phân tích lƣu lƣợng..

lrc-tnu.3 . điều quan träng cÇn lƣu ý là các phía giao tiếp cÇn sử dụng nhiều session SSL đồng thời và các session có nhiều nối kết đồng thời Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Sè cæng ®-îc g¸n bëi IANA cho các giao thức ứng dụng vốn vốn chạy trên SSL/TLS đƣợc tóm tẳt trong bảng 2. các số cổng riêng biệt đã đƣợc dành riêng và đƣợc gán bởi IANA cho mọi giao thức ứng dụng vốn có thể chạy trên SSL hoặc TLS (nghĩa là khả năng thứ nhất).thảo luận nghiêm túc cho đến bây giờ.1 : Các số cổng đƣợc gán cho các giao thức ứng dụng chạy trên TLS/SSL Từ khoá Nsiiop Https Smtps Nntps Ldaps Ftps-data Ftps Tenets Imaps Pop3s Cổng 261 443 465 563 636 989 990 992 994 995 Mô tả Dịch vụ tên IIOP trên TLS/SSL HTTP trên TLS/SSL SMTP trên TLS/SSL SMTP trên TLS/SSL LDAP trên TLS/SSL FTP (dữ liệu) trên TLS/SSL FTP (Điều khiển) trên TLS/SSL TELNET trên TLS/SSL INC trên TLS/SSL POP3 trên TLS/SSL Nói chung. đƣợc tóm tát trong bảng 2. Thực tế. client phải nối kết với cổng an toàn và sau đó với cổng không an toàn và ngƣợc lại. SALS (Simple Authentication và Security Layer) xác định một phù hợp để thêm sự hỗ trợ xác thực vào các giao thức ứng dụng dựa vào kết nối. S đƣợc sử dụng và đƣợc thêm tiền tố một cách không nhất quán và một số từ ghép). Bảng 2. Ngày nay.1. một chứng nhận ngang hàng. chẳng hạn nhƣ các chuỗi byte ngẫu nhiên server và client các khoá mật MAC ghi server và client. Tuy nhiên. Ở trong hai trƣờng hợp. các khoá ghi server và client.2. việc sö dụng các cơ chế xác thực có thể thƣơng lƣợng giữa client và server của một giao thức ứng dụng đã cho. một vector khởi tạo và một số chuỗi.chúng bao gồm các tham số mật mã. một phƣơng pháp nén. Các phần tử thông tin trạng thái sesion tƣơng ứng bao gồm một session ID. ”S” chØ định việc sử dụng SSL đƣợc thêm (hậu tố) nhất quán vào các từ ghép của các giao thức ứng dụng tƣơng ứng (trong một số thuật ngữ ban đầu.vn 63 . một thông số mật mã. Rất có thể các giao thức sau này sẽ huỷ bỏ phƣơng pháp này và tìm khả năng thứ hai. Một session SSL có thể đƣợc sử dụng trong một số kết nối và cácthành phần thông tin trạng thái nối kết tƣơng ƣng đƣợc tóm tắt trong bảng 2. Trƣớc tiên. háy chú ý việc sử dụng các số cổng riêng biệt cũng có khuyết điểm là đòi hỏi hai nối kết TCP nếu client không biết những gì mà server hỗ trợ. Theo thông số kỹ thuật SALS. một session SSL có trạng thái và giao thức SSL phải khởi tạo và duy trì thông tin trạng thái ở một trong hai phía của sesion. một khoá mật chính và một cờ vốn chỉ định việc sesion có thể tiếp tục lại hay không.edu. Ví dụ.

edu.Trƣờng này đƣợc khởi tạo đầu tiên bởi SSL Handshake player. Khoá mật đƣợc sử dụng cho các hoạt động MAC trên dữ liệu đƣợc ghi bởi client. Thuật toán dùng để nén dữ liệu trƣớc khi mã hõa.lrc-tnu. Bảng 2.509 phiên bản 3 của thực thể ngang hàng.2 : Các thành phần thông tin trạng thái Session SSL Thành phần Session ID Peer certificate Compression method Ciphr spec Mater sercet Is resumable Mô tả Định dạng đƣợc chọn bởi server để nhận dạng một trạng thái session hoạt động hoặc có thể tiếp tục lại. Khoá đƣợc sử dụng cho việc mã hoá dữ liệu bởi client và giải mã bởi server.3: Các thành phần thông tin trạng thái nối kết SSL.vn Sè chuçi Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 64 . Đƣợc ghi bởi server. Khoá mật 48 . Mỗi phía duy trì các số chuỗi riêng biệt cho các http://www. Cờ vốn biểu thị session có thể đƣợc sử dụng để bắt đầu các nối kết mới hay không.byte đƣợc chia sẻ giữa client và server. Thông số của các thuật toán mã hoá dữ liệu và MAC. Sau đó khối đoạn văn bản mật mã sau cùng từ mỗi bản ghi đƣợc dành riêng để sử dụng với bản ghi sau đó. Khoá mật đƣợc sử dụng cho các hoạt động MAC trên dữ liệu.Bảng 2. Thành phần Ngẫu nhiên server và client Khoá mật MAC ghi server Khoá mật MAC ghi client Khoá ghi server Khoá ghi client Initialization vector Mô tả Các chuỗi byte đƣợc chọn bởi server và client cho mỗi nối kết. Trạng thái khởi tạo cho một mật mã khổitong chế độ CBC. Khoá đƣợc sử dụng cho việc mã hoá dữ liệu bởi server và giải mã bởi client. Chứng nhận X.

Khởi tạo và đồng bộ hoá các tham số bảo mật và thông tin trạng thái tƣơng ứng đƣợc ®Æt ở trong một hai điểm cuối của một session hoặc nối kết SSL.2 SSL Record protocol : Application layer SSL 3.vn 65 . mỗi bản SSL chứa các bản thông tin sau đây: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Sau cùng.edu. xác thực và mã hoá dữ liệu.3. Sau khi SSL Handshake protocol đã hoàn tất dữ liệu ứng dụng có thể đƣợc gửi và đƣợc nhận bằng cách sử dụng SSL Record protocol và các tham số bảo mật đƣợc thƣơng lƣợng và các thành phần thông tin trạng thái. SSL Compressed (bƣớc nén) và SSL ciphertext (bƣớc mã hoá) đƣợc minh hoạ trong hình 2. 5. giao thức này lấy một khối dữ liệu có kích cỡ tuỳ ý làm dữ liệu nhập và toạ một loạt các đoạn dữ liệu nhập và tao một loạt các đoạn dữ liệu SSL làm dữ liệu xuất (hoặc còn đƣợc gọi là các bản ghi) nhỏ hơn hoặc bằng 16.lrc-tnu. nén. Các bƣớc khác nhau của SSL Record Protocol vốn đi từ một đoạn dữ liệu thô đến một bản ghi SSL Plaintext (bƣớc phân đoạn).2.thông báo đƣợc chuyền và đƣợc nhận cho mỗi nối kết. Chính xác. Giao thức con SSL quan träng nhất là SSL Handshake protocol.83 byte. Lần lƣợt giao thức này là một giao thức xác thực và trao ®æi khoá vốn có thể đƣợc sử dụng để thƣơng lƣợng.0 Change Cipher Spec SSL Alert Protocol SSL Handshake Protocol SSL Record protocol TCP protocol IP protocol Hình 19: Các bƣớc SSL Record protocol SSL Record Protocol nhận dử liệu từ các dao thức con SSL lớp cao hơn và sử lý việc phân đoạn.

 Loại nội dung: xác định giao thức lớp cao hơn vốn ophải đƣợc sử dụng để sau đó xử lý độ lớn dữ liệu bản ghi SSL (sau khi giải nens và giải mã hoá thích hợp). Mỗi cảnh báo gồm 2 phần. SSL ChangeCipherpec Protocol đƣợc sử dụng để thay đổi giữa một thông số mật mã này và một thông số mật mã khác.vn 66 . Do đó SSL Handshake Protocol trình bày tổng quan và đƣợc thảo luận trong phần tiếp theo. Cấu trúc SSL MAC có một số chuỗi trong thông báo trƣớc khi hash để ngăn các hình thức tấn công xem lại riêng biệt. SSL Alert Protocol đƣợc sử dụng để chuyển các cảnh báo thông qua SSL Record Protocol. Thông số kĩ thuật SSL 3.edu.  Số phiên bản của giao thức: xác định phiên bản SSL đang sử dụng (thƣờng là version 3. Nhƣ đƣợc minh hoạ trong hình 2. Tất cả các điểm khác biệt này hiện hữu chủ yếu vì cấu trúc SSL MAC đựoc sử dụng trƣớc cấu trúc HMAC cũng đƣợc sử dụng cho thông số ki thuật giao thức bảo mật Internet.phƣơng pháp nén và thông số mật mã thƣờng đƣợc xác định là rỗng. SSL Handshake Protocol là giao thức con SSl chính đƣợc sử dụng để hỗ trợ xác thực client và server và để trao đổi một khoá session.Sau cùng MAC đƣợc thêm vào các bản ghi SSL.  Độ lớn dữ liệu (đƣợc nến và đƣợc mã hoá tuỳ ý): độ lớn dữ liệu bản ghi SSL đƣợc nén và đƣợc mã hoá theo phƣơng thức nén hiện hành và thông số mật mã đƣợc xác định cho session SSL. trong khi cấu trúc MAC sử dụng module 2. Cả hai đƣợc xác lập trong xuốt quá trình thực thi ban đầu SSL Handshake Protocol. Cấu trúc HMAC cũng đƣợc sử dụng cho thông số kĩ thuật giao thức TSL gần đây hơn.SSL Record Protocol sử dụng một cấu trúc MAC vốn tƣơng tự nhƣng vẫn khác với cấu trúc HMAC hơn.  ChangeCipherpec Protocol. Nó cung cấp các dich vụ xác thực nguồn gốc thông ban\ó c\và tính toàn vẹn dữ liệu.  Handshake Protocol. Theo mặc định. Sau cùng. 2. Mặc dù thông số Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Có ba điểm khác biệt chính giữa cấu trúc SSL MAC và cấu trúc HMAC: 1. Tƣơng tự nhƣ thuật toán mã hoá. Cấu trúc SSL MAC có chiều dài bản ghi. Tóm lại.  MAC. Cấu trúc SSL MAC sử dụng các toán tử ghép. Lúc đầu mỗi session SSL.0)  Độ dài.lrc-tnu. một bức ảnh báo và một mô tả cảnh báo. thuật toán vốn đƣợc sử dụng để tính và xác nhận MAC đƣợc xác định trong thông số mật mã của trạng thái session hiện hành. Mỗi giao thức con có thể tham chiếu có thể thông báo đến các loại thông báo cụ thể vốn đƣợc gửi bằng cách sử dụng SSL Record Protocol.3 một số giao thức con SSL đƣợc xếp lớp trên SSL Record Protocol.0 xác định ba giao thức SSL sau đây:  Alert Protocol. 3.

Ngoài những giao thức con SSL này. tuỳ ý xác thực nhau và tạo một khoá mật chính mà từ đó các khoá ssession khác nhau dành cho viêc xác thực và mã hoá thông báo có thể đƣợc dẫn xuất từ đó. giao thức phải yêu cầ slient và server chấp thuận một phiên bản giao thức SSL chung.lrc-tnu. Tóm lại. 5.edu. Kết quả. nhƣng nó cũng có thể đƣợc thay đổi vào bất kỳ thời điểm sau đó. các thông báo thiết lập quan hệ SSL đƣợc cung cấp cho lớp bản ghi SSL nơi chúng đƣợc bao bọc trong một hoặc nhiều bản ghi SSL vốn đƣợc xử lý và đƣợc chuyển nhƣ đƣợc xác định bởi phƣơng pháp nén và thông số mật mã của session SSL hiện hành và các khoá mật mã của nối kết SSL tƣơng ứng. Mục đích của SSL Handshake Protocol là yêu cầu một slient và server thiết lập và duy trì thông tin trạng thái vốn đƣợc sử dụng để bảo vệ các cuộc liên lạc.vn 67 . chọn phƣơng thức nén và thông phức nén và thông số mật mã. việc thực thi SSL Handshake Protocol giữa một slient C và một server S có thể đƣợc tóm tắt nhƣ sau (các thông báo đƣợc đặt trong các dấu ngoặc vuông thì tuỳ ý): Hình 20: Client Server Client Hello Server Hello Server Certificate Server Hello Done Client Key Exchange Change Cipher specification Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.mật mã thƣờng đƣợc thay đổi ở cuối một sự thiết lập quan hệ SSL.3 SSL Handshake Protocol SSL Handshake Protocol là giao thức con SSL chính đƣợc xếp lớp trên SSL Record Protocol.2. Cụ thể hơn. một SSL Application Data Protocol đƣợc sử dụng đê chuyển trực tiếp dữ lệu ứng dụng đến SSL Record Protocol.

chứa các tổ hợp thuật toán mật mã đƣợc hỗ trợ bởi client theo thứ tự ƣu tiên. server sử lí thông báo CLIENTHELLO và đáp ứng bằng một thông báo lỗi hoặc thông báo SERVER HELLO.  Một định danh session mà client muốn sử dụng cho nối kết này. nó thiết lập một nối kết TCP với cổng HTTPS (vốn không đƣợc đƣa vào phần mô tả giao thức) và gởi một thông báo CLIENTHELLO đến server ở bƣớc 1 của sự thực thi SSL Handshake Protocol. Tƣơng tự nhƣ thông báo CLIENTHELLO. ở bƣớc 2.  Một đinh danh session tƣơng ứng với kết nối này. Bất kì thông báo khác đƣợc trả về bởi server ngoại trừ một thông báo HELLOREQUEST đƣợc xem nhƣ là một lỗi vào thời điểm này. ở một trong hai trƣờng hợp. Client đợi một thông báo SERVER HELLO.  Một cấu trúc ngẫu nhiên do client tạo ra gồm một tem thời gian 32 bit có dạng UNIX chuẩn và một giá trị 28 byte đƣợc tạo ra bởi một bộ tạo số giả ngẫu nhiên. Sau khi đã gởi thông báo CLIENTHELLO. Server sẽ chọn một bộ mật mã hoặc nếu các lựa chọn có thể chấp nhận đƣợc không đƣợc trình bày. Mỗi bộ mật mã xác định một thuật toán trao đổi và một thuật toán trao đổi khoá và một thông báo mật mã. Chú ý rằng trƣờng session identity (định danh session) nên rỗng nếu session SSL hiện không tồn tại hoặc nếu client muốn ạo clientáclient ham số bao mật mới.  Một cấu trúc ngẫu nhiên do server tạo ra cũng gồm một tem thời gian 32 bit có dạng UNIX chuẩn và một giá trị 28 bit đƣợc tạo ra bởi một bộ tạo số ngẫu nhiên. nối kết này hoăc một nối kết đang hoạt động.  Một danh sách các bộ mật mã client hỗ trợ. Client cngx có thể gởi một thông báo CLIENT HELLO nhằm phản hồi lại một thông báo HELLOREQUEST hoặc chủ động thƣơng lƣợng lại các tham số bảo mật của một nối kết hiện có.0t). thông báo SERVER HELLO có các trƣờng sau đây:  Một số phiên bản server chứa phiên bản thấp hơn của phiên bản đƣợc đề nghị bởi client trong thông báo CLIENTHELLO và đƣợc hỗ trợ cao nhất bởi Server. Thông báo CLIENTHELLO bao gồm các trƣờng sau đây:  Số của phiên bản SSL cao nhất đƣợc biểu hiện bởi client (thƣờng là 3. một trƣờng session identity không rỗng là xáclient định một session SSL hiệ có giữa client và server (nghĩa là một session có các tham số bảo mật mà client muốn sử dụng lại).Handshake Finished Change Cipher specifications Khi Client C muốn kết nối với server S. Định danh session có thể bắt nguồn từ một nối kết trƣớc đó. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Cũng chú ý rằng danh sách các bộ mật mã đƣợc hỗ trợ.lrc-tnu. trả về một thông báo lỗi và đóng nối kết một cách phù hợp.  Một danh sách các phƣơng pháp nén mà client hỗ trợ. đƣợc chuyển từ client đến server trong thông báo CLIENTHELLO.edu.vn 68 .

server đáp ứng bằng cùng một giá trị nhƣ đƣợc cung cấp bởi client . Thông báo này chứa một danh sách các loại chứng nhận đuợc yêu cầu. Tiếp theo. Nếu định danh session trong thông báo CLIENTHELLO không rỗngN.lrc-tnu. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. server đƣợc chọn một bộ mật mã và một phƣơng pháp nén từ các danh sách đƣợc cung cấp bởi client trong thông báo CLIENTHELLO . server cũng phải gởi các thông báo khác đến client. Trong trƣờng hợp các chứng nhận X 509v3. server gửi một thông báo SERVERHELLODone đến client để chỉ định sự kết thúc SERVERRHLLO và các thông báo kèm.Ngoài ra một server không nặc danh có thể tuỳ ý yêu cầu một chứng nhận cá nhân để xác nhận client. Chỉ định này là một session đƣợc tiếp tục lại và xác định rằng cả hai phía phải tiến hành trực tiếp với các thông báo CHANGECIPHESPEC và FINISHED đƣợc trình bày thêm bên dƣới.  Một phƣơng pháp nén đƣợc chọn bởi server từ danh sách các thật toán nén đƣợc hỗ trợ bởi client. mã hoá và xác thực thông báo đƣợc xác định bởi bộ mã đƣợc chọn bởi server và đƣợc làm lộ ra trong thông báo SERVERHELLO. Server cũng có thể trả về một trƣờng đnhjdanh session rỗng đễ biểu thị rằng session sẽ không đƣợc lƣu trữ và do đó không thể đƣợc tiếp tục sau đó. Các bộ mật mã vốn đã đựoc xác định trong giao thức SSL về cơ bản giống nhƣ bộ mật mã đã xác định cho TLS Ngoài thông báo SERVERHELLO. nó gửi một thông báo CERTIFFICATATERequest đến client. nếu server đƣợc sử dụng sự xác thực dựa vào chứng nhân. vốn có đƣợc sử dụng chỉ để xác định các chữ ký kĩ thuật số hoặc sử dụng thuật toán trao đổi khoá dựa vào token FORITEZZA (KEA). Cũng chú ý rằng thông báo SERVERHELLO. server gởi chứng nhận site cả nó đến client trong một thông báo CERTIFICATE tƣơng ứng. server tìm trong cache session của nó nhằm tìm ra một mục tƣơng hợp. server có thể gửi thông báo SERVERKEYEXCHANGE đến client nế nó không có chứng nhận. Ở cuối bƣớc 2. đƣợc sắp xếp theo thứ tự với chứng nhận ca đối tƣợng gởi trƣớc tiên theo sau là bất kỳ chứng nhận CA tiến hành theo tnhf tự hƣớng đến một CA gốc (vốn đƣợc chấ nhận bởi clientv). Nếu mục tƣơng hợp đƣợc tìm thấy và server muốn thiết lập nối kết bằng cách sử dụng trạng thái session tƣơng ứng.edu. cùng loại thông báo server đƣợc sử dụng sau đó cho sự đáp ứng của client đối với thông báo CERTIDICATERequest của server . Các thuật tón trao đổi khoá.vn 69 . Do đó. Ví dụ. trƣờng này chứa một giá trị khác nhận biết một session mới. Chứng nhận phải thích hợp cho thuật toán trao đôI kháo cua bộ mật mã đƣợc chọn và thƣờng là một chứng nhận X 509v3. Rõ ràng thông báo này không đƣợc yêu cầu nếu chứng nhân site gồm một khoá chung RSA vốn có thể đƣợc sử dụng trong việc mã hoá. đƣợc phân loại theo thứ tự ƣu tiên của server cũng nhƣ một danh sách các tên đyựơc phân biệt cho các CA có thể chấp nhận. xác thực. một chứng nhận có thể thực sự tham chiếu đén toàn bộ mỗi chuỗi các chứng nhận. Nếu không. Một bộ mật mã đƣợc chọn bởi server từ danh sách các bộ mật mã đƣợc hỗ trợ bởi client.

Cách tìm KEA của client sử dụng khoá chung từ chứng nhận server cùng với một số tham số riêng trong token của client. bao bọc nó bằng cách sử dụng TEK và gửi kết quả cùng với một số vector khởi tạo đến server nhƣ là một phần của thông báo CLIENTKEYEXCHANGE.edu. Tiếp theo.vn 70 . client tạo một khoá mật tiềnchính 48 byte. Nó chỉ đƣợc gửi theo sau một chứng chỉ client vốn có khả năng tạo chữ kí (tất cả các chứng nhận ngoại trừ các chứng nhận chứa các tham số Diffehallman cố định). Sau cùng. sử dụng các tham số riêng của nó. client gửi một thông báo CLIENTKEYEXCHANGE có dạng phụ thuộc vào thuật toán cho mỗi khoá chọn bởi server. nối kết này bây giờ có thể đƣợc sử dụng để gởi dữ liệu ứng dụng vốn đƣợc bao bọc bởi SSL Record Protocol. Chính xác hơn. client dẫn xuất một khoá mã hoá token (TEK) bằng cách sử dụng KEA. Nếu các token FORTEZZA đƣợc sử dụng để trao đổi khoá. client xác nhận rằng chứng nhận site server (nếu đƣợc cung cấp) là hợp lệ và kiểm tra nhằm bảo đảm các thông số bảo mạt đƣợc cung cấp trong thông báo SERVERHELLO có thể đƣợc chấp nhận. Nêu s sự xác thực client đƣợc yêu cầu. Thông báo FINIHED luôn đƣợc guỉƣ ngay lập tức sau thông báo CHANGERCIPERSPEC để xác nhận rằng các tiến trình trao đổi khoá và xác thực đã thành công. Việc thực thi SSL Handshake Protocol hàn tất bằng việc cũng yêu câỳu server gơI một thông báo SERVERKEYEXCHANGE và một thông váo FINISHED tƣơng ứng đến client ở bƣớc 4. Không đòi hỏi sự báo nhận thông báo FINISHED. client hoàn tất bƣớc 3 bằng cách guỉ 1 thông báo CHAGECIPHERSPEC và một thông báo FINIHED tƣơng ứng tới server. client cũng gửi một thông báo CERTIFICATEVERIFY đến server. Sau khi thiết lập SSL hoàn tất. Thông báo này đƣợc sử dụng đẻ cung cấp sự xác thực rõ ràng định danh cua ngƣời dựa vào chứng nhận các nhân. Thuật toán trao đổi khoá này không đƣợc sử dụng rộng rãi. các phía có thể bắt đầu gửi dữ liệu đƣợc mã hoá ngay lập tức sau khi đã gởi thông báo FINISHED. client gửi một thông báo CERTIFICATE vốn chúa một chứn nhận cá nhân cho khoá chung của ngƣời dùng đến server ở bƣớc 3. mã hoá nó bằng mã chung đƣợc tìm thấy trong chứng nhận site hoặc khoá RSA tạm thời từ thông báo SERVERKEYEXCHSNGE và gửi kết quả troqr về trong thông báo CLIENTKEYEXCHANGE. Nếu server yêu cầu sự xác thực client.Sau khi nhận SERVERHELLO và các thông tin đi kèm.lrc-tnu. Nó tạo một khoá mật chính. dữ liệu ứng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Nó chỉ có thể đƣợc tạo và đƣợc xác nhận nếu nhƣng khoá này đƣợc cài đặt một cách phù hợp ở cả hai phía. Lần lƣợt server có thể giải mã khoá mật chính một cách thích hợp. Thực tế thông báo FINISHED là thong báo đầu tiên vốn đƣợc bảo vệ bằng các thuật toán mới đuợc thƣơng lƣợng và các khoá session. lần lƣợt server sử dụng khoá đơn để giả mã khoá mật chính. Nếu RSA đƣợc sử dụng cho việc xác thực server và trao đổi khoá. Client gửi các tham số chung cần thiết cho server để cũng tạo TEK. một nối kết an toàn đƣợc thiết lập giữa các client và server .

Tesia và Versign. Netscape. server muốn tiếp tục lại nối kết bên dƣới trạng tháI session đã xác định. client gởi một thông báo CLIENTHELLO đến server vốn có mặc định danh session cần đƣợc tiếp tục lại. SET v1.edu. Từ năm 1998 các sản phẩm đầu tiên sử dụng SET đã đƣợc triển khai. Nếu một mục tƣơng hợp đƣợc tìm thấy. cả client lẫn server phảogởi các thông báo CHANECIPHERSPEC và FINISHES đến nhau ở bƣớc 2 và 3. đƣợc chọn làm tiêu chuân bảo mật cho các thẻ tín dụng nhƣ Matercard và Visa vào tháng 1 năm 1996.3. Các dòng thông báo tƣơng ƣng có thể tóm tắt nhƣ sau: 1: C -> S: CLIENTHELLO 2: S-> C: SERVERHELLO CHANECIPHERSPEC FINISHES 3: S-> CHANECIPHERSPEC INISHES ở bƣớc một.vn 71 . Bản thân SET không phải là một hệ thống thanh toán. Một khi việc tái thiết lập session hoàn tất. Phiên bản hiện tại. client và server có thể bắt đầu dữ liệu ứng dụng.dụng có thể đƣợc phân đoạn.lrc-tnu. 5. Về cơ bản. chỉ ba dòng thông báo và tông cộng sáu thông báo đƣợc yêu cầu. Vào thời điểm này. hoặc đợc mã hoá và đƣợc xác thực theo SSL Record Protocol cũng nhƣ thông tin trạng tháI session và nối kết vốn bây giờ đƣợc thiết lập (tuỳ thuộc việc thực thi SSL Handshake Protocolt) SSL Handshake Protocol có thể đƣợc rút ngắn nếu client và server quyết định tiếp tục lại một session SSL đƣợc thiết lập trƣớc đó (và vẫn đƣợc lƣ trữv) hoặc lặp lại một session SSL hiện có. RSA. Trong trƣờng hợp này. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Microsoft. Lần lƣợt các server kiểm tra cache session của nó để tìm một mục tƣơng hợp. Bảo mật giao dịch điện tử ( Secure Electronic Transaction – SET) SET là một phƣơng pháp bảo mật đƣợc xây dựng nhằm bảo đảm an toàn các giao dịch trên internet bằng thể tín dụng. nó trả về một thông báo SERVERHELLO với cùng một định danh session ở bƣớc 2. Rất nhiều công ty đã tập chung phát triển và xây dựng tong đó có IBM. mà thực chất nó là tập hợp các giao thức bảo mật và định dạng cho phép ngƣời dùng sử dụng các thiết bị làm việc với thẻ tín dụng trên hệ thống mạng nhƣ internet theo nguyên tắc bảo mật. SET cung cấp ba dịch vụ:  Cung cấp một kênh truyền thông an toàn tuyệt đối với tất cả các thành viền trong quá trình giao dịch. đƣợc nén.

lrc-tnu. Sử dụng tiêu chuẩn chứng thực số X. 5. Ngƣời sử dụng thể cần nhận biết đƣợc đâu là các nhà kinh doanh có đủ tƣ cách đảm bảo an toàn cho các giao dịch.3. các yêu cầu thƣơng mại đảm bảo an toàn cho các chi trả với thẻ tín dụng trên Internet cũng nhƣ các mạng khác bao gồm:  Cung cấp sự tin cậy cho các thông tin chi trả và thanh toán: Điều này cần thiết để đảm bảo ngƣời dùng thể giữ gìn an toàn các thông tin của mình cũng nhƣ các thông tin đến đƣợc với ngƣời nhận đƣợc mong đợi.  Cung cấp chứng thực đối với ngƣời sử dụng thẻ là ngƣời sử dụng tài khoản thẻ tín dụng hợp pháp: Một cơ chế liên kết ngƣời dùng thể tới số tài khoản xác định nhằm giảm thiểu các gian lận đối với một quá trình mua bán chi trả.  Giữ gìn sự riêng tƣ bởi các thông tin chỉ cung cấp cho các thành viên trong giao dịch diễn ra vào thời điểm hay địa điểm cần thiết.  Xây dựng một giao thức mà không phụ thuộc vào các cơ chế bảo mật giao dịch cũng nhƣ các cơ chế ngăn chặn khác đã dùng: SET có thể thực thi an toàn trên stack của TCP /IP “thô”. SET không gây trở ngại khi sử dụng các cơ chế bảo mật khác chẳng hạn nhƣ IPSec và SSL /TLS. Một lần nữa.509v3 để đảm bảo an toàn.edu.  Đảm bảo tính toán toàn vẹn đối với mọi dữ liệu đƣợc truyền đ: Nghĩa là đảm bảo không có nội dung nào bị thay đổi trong suốt quá trình giao dịch sử dụng SET. Chữ ký số đƣợc sử dụng để cung cấp các toàn vẹn này. Tuy nhiên. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.  Cung cấp các chứng thực cho phép các nhà knh doanh có thế chấp nhận các giao dịch sử dụng thể tín dụng thông qua mối quan hệ với một tổ chức tài chính: Đây là sự bổ sung cho các yêu cầu có trƣớc. Chữ ký số và cơ chế chứng nhận đƣợc sử dụng để xác nhận ngƣời dùng thẻ là ngƣời sở hữu tài khoản hợp lệ. SET sử dụng mã hoá các cung cấp tin cậy này.  Đảm bảo việc sử dụng một cách tốt nhất các kỹ thuật xây dựng hệ thống và độ an toàn thực tế để bảo vệ tất cả các thành viên hợp pháp trong toàn bộ quá trình giao dịch: SET là một sự kiểm nghiệm tốt dựa trên các thuật toán và các giao thức mã hoá an toàn cao.1. Sự tin cậy này cũng sẽ giảm bớt các rủi ro đôI với các gian lận trong giao dịch với đối tác cũng nhƣ các thành viên thứ ba không mong muốn.Tổng quan về SET Các yêu cầu: Trƣớc tiên ta xem xét các yêu cầu trong thƣơng mại mà SET cần có cũng nhƣ các thành phần khác tham gia trong các giao dịch sử dụng SET.vn 72 . chữ ký số và các cơ chế chứng nhận đƣợc sử dụng.

nó chỉ cung cấp một chọn lựa ứng với mỗi thuật toán mã hoá. Các đặc trƣng cơ bản của SET: Sau khi để cập tới yêu cầu cần có ta thấy SET bao gồm các đặc trƣng cơ bản sau:  Thông tin cậy: Thông tin tài khoản và các thông tin cho việc chi trả đƣợc bảo vệ khi nó đƣợc truyền đI trong mạng. Các thông điệp này cũng có thể đƣợc đảm bảo bởi HMAC sử dụng SHA -1.edu.Các thành phần tham gia sử dụng SET. Tạo điều kiện và khuyến khích khả năng giữa phần mềm và các nhà cung cấp dịch vụ mạnh: Các giao thức và định dạng SET độc lập với hạ tầng thiết bị phần cứng. Đây là một sự khôn ngoan bởi SET là một ứng dụng đơn độc lập với mộ tập hợp các yêu cầu riêng.  Chứng thực các nhà kinh doanh: SET cho phép ngƣời sử dụng thẻ xác nhận một nhà kinh doanh có quan hệ với một tôt choc tài chính có khả năng chấp nhận các thẻ chi trả.  Toàn vẹn dữ liệu: Thông tin chi trả từ ngƣời sử dụng thể tới các nhà kinh doanh bao gồm các thông tin thanh toán. dữ liệu cá nhân và các liệu cho việc chi trả. Trong trƣờng hợp này SET có sử dụng chứng nhận số X. Chữ ký số RSA. hệ điều hành và phần mềm Wed. sử dụng mã băm SHA -1. Một điều thú vị và quan trọng nhất ở đặc trƣng này của SET là nó ngăn không cho nhà kinh doanh bết đƣợc số thẻ tín dụng của ngƣời sử dụng.3.vn 73 . Quy ƣớc mã hoá này đƣợc DES dùng để cung cấp các tin cậy. mà điều này chỉ đƣợc cung cấp cho các ngân hàng phát hành.509v3 và chữ ký số RAS. SET đảm bảo việc các nội dung của thông điệp không bị biến đổi trong khi gửi đi. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. sẽ đảm bảo tính toàn vẹn các thông điệp này. mà ở đó có IPSec và SSL /TLS đóng vai trò hỗ trợ ở một phạm vi nào đó của các ứng dụng.2. 5. Chú ý rằng SET không giống nhƣ IPSec và SSL /TLS.lrc-tnu.

 Nhà kinh doanh(Merchant): Một nhà kinh doanh có thể là một cá nhân hay một tổ chức có các dịch vụ bán hàng cho ngƣời dùng thẻ. Sau cùng. nhà kinh doanh sẽ đƣợc hoàn lại số tiền mà các nhà phát hành có đƣợc từ quỹ luân chuyển điện tử trên mạng chi trả. khách hàng hay một nhóm khách hàng có ảnh hƣởng tới các nhà kinh doanh từ những chiếc máy tính cá nhân thông qua internet.509V3 cho ngƣời sử dụng thẻ.edu.vn 74 . Một ngƣời sử dụng thẻ là ngƣời có quyền nắm giữ thẻ thanh toán đƣợc cung cấp bởi những nhà phát hành.lrc-tnu. Nhà trung gian cũng cung cấp các luân chuyển điện tử cho việc chi trả đối với các tài khoản của các nhà kinh doanh. Một nhà kinh doanh chấp nhận đƣợc các thẻ thanh toán thì buộc phải có quan hệ với một nhà trung gian(Acquirer). các nhà kinh doanh và các công chi trả. Ngƣời dùng thẻ (cardholder): trong môi trƣờng điện tử.  Nhà trung gian – Ngân hàng của doanh nghiệp (Acquirer): Đây là tổ chức tài chính thực hiện việc thiết lập một tài khoản đối với nhà kinh doanh và chứng thực các quá trình chi trả bằng thẻ. Nhà trung gian trao đổi các thông điệp SET với cổng chi trả thông qua internet.  Nhà phát hành(issuer): Đây là một tổ chức tài chính. Các nhà kinh doanh thƣờng chấp nhận nhiều hơn một loại thẻ nhƣng lại không muốn quan tâm đến nhiều tổ chức cũng nhƣ nhiều cá nhân cung cấp thẻ nào. Thành công của SET sẽ phụ thuộc vào sự tồn tại của một hạ tầng CA có giá trị. các nhà phát hành chịu trách nhiệm chi trả các khoản tiền chƣa trả của ngƣời dùng thẻ.  Quyền chứng nhận (Certification Authority. chẳng hạn nhƣ ngân hàng. Trng khi đó nhà trung gian sẽ cung cấp việc chứng thực nhà kinh doanh bằng cách đƣa ra cho họ một thẻ tài khoản tiện lợi và giới hạn quyền đối với các loại thẻ này.CA): Đây là một thực thể đƣợc tin cậy để cung cấp các chức nhận khoá công khai X. Các dịch vụ này đƣợc tiến hành thông qua các website hoặc thƣ điện tử.  Cổng chi trả (payment gateway): Đây là một chức năng thực hiện bởi Nhà trung gian hoặc đƣơc xây dựng một thành viên thứ ba nhằm xử lí các thông tin chi trả của nhà kinh doanh. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Các tài khoản đƣợc sử dụng thông qua các imail cá nhân. Về cơ bản. cung cấp tài khoản ngƣời dùng cùng với thẻ thanh toán. trong khi đó cổng chi trả hƣớng vào hay kết nối mạng tới hệ thống sử lí tài chính của nhà trung gian.

nhà kinh doanh gửi một bản sao chứng nhận nó. tổng tiền và số hoá đơn.Dƣới đây là mô tả lƣợc đồ bao gồm cho các sự kiện đƣơc diễn ra trong một giao dịch thƣơng mại điện tử: 1. Nhà kinh doanh cùng cần có một bả sao chứng nhận khoá công khai của cổng chi trả. Việc thanh toán và chi trả được gửi đi: Khách hàng gửi tới nhà kinh doanh các thông tin thanh toán và chi trả cùng với chứng nhận khách hàng: Thông tin thanh toán bao gồm các mặt hàng đã đặt trong mẫu hoá đơn. chứng nhận khách hàng cho phép nhà kinh doanh xác nhận khách hàng. Nó đã đƣợc mã hoá do vậy nhà kinh doanh không thể biết đƣợc. 5. 8. Khách hàng gửi tới nhà kinh doanh một danh sách các mặt hàng muốn mua. Khách hàng nhận một chứng nhận: Sau khi nhận dạng hoàn tất. Nó sẽ thiết lập một quan hệ. Khách hàng mở một tài khoản: khách hàng có đƣợc ở thẻ tín dụng nhƣ MasteerCard hay Visa với một ngân hàng có khả năng hỗ trợ chi trả điện tử và STE. 3.Nhà kinh doanh yêu cầu chi trả: yêu cầu này đƣợc gửi tới cổng chi trả (Quả lý tất cả quá trình chi trả). họ nhận đƣợc một mẫu thanh toán bao gồm danh sách mặt hàng.vn 75 . 4. Nhà kinh doanh cung cấp các mặt hàng dịch vụ: nhà kinh doanh chuyển hàng hoặc cung cấp dịch vụ tới khách hàng. 6. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Nhà kinh doanh xác nhận thanh toán: nhà kinh doanh gửi xác nhận thanh toán tới khách hàng. thông tin chi trả chứa nội dung chi tiết của thẻ tín dụng. 10. Nhà kinh doanh có riêng các chứng nhận của họ: Một nhà kinh doanh muốn chấp nhận nhiều loại thẻ thì buộc phải sở hữu hai chứng nhận đối với hai khoá công khai riêng của họ: Một cho kí nhận thông điêp và một cho trao đổi khoá. đƣợc bảo đảm bởi ngân hang.edu. 9. 2. yêu cầu xác thực thông tin thẻ tín dụng của khách hàng có phù hợp với việc mua các sản phẩm đã đặt hay không. khách hàng nhận đƣợc một chứng nhận số X.lrc-tnu. Khách hàng đặt một thanh toán: Đây là một quá trình bao gồm việc lựa chọn mặt hàng trên webside của nhà kinh doanh và xác định giá cả.chứng nhận này xác minh công khai RSA của khách hàng và hạn sử dụng của nó. Nhà kinh doanh yêu cầu chứng thực các chi trả: nhà kinh doanh chuyển các thông tin tới cổng chi trả. chiếc cặp khoả của khách hàng và thẻ tín dụng của anh ta. Đƣợc kí bởi ngân hàng. vì vậy khách hàng có thể tin tƣởng rằng anh ta có quan hệ với một nhà kinh doanh hợp pháp. Nhà kinh doanh được xác nhận: Thêm vào mỗi thanh toán.509V3. 7. giá cả.

em không đi sâu vào việc trình bày về quá trình phân tích hệ thống cho việc xây dựng website bán hàng trực tuyến mà chỉ trình bày ý nghĩa của các phần hệ thống đã đƣợc xây dựng bao gồm các chức năng thông thƣờng cũng nhƣ các chức năng bảo mật đƣợc cài đặt. thiết bị văn phòng… Trang thông tin chi tiết sản phẩm: hiển thị các thông tin chi tiết về một sản phẩm.edu. chƣơng 2 và chƣơng 3 của luận văn khi nghiên cứu về các hệ mật mã khoá đới xứng và khoá công khai căn bản cũng nhƣ việc nghiên cứu các giao thức và cơ chế bảo mật thƣơng mại điện tử sử dụng SSL/TLS. C¸c chøc n¨ng c¬ b¶n vµ ho¹t ®éng cña hÖ thèng website Nhƣ đã trình bày trong chƣơng 1.    Tổ chức dữ liệu Website bao gồm có các trang: Trang chủ Trang thông tin nhóm hàng: ví dụ Máy tính sách tay.vn 76 . Trên trang đơn hàng này. bảo mật lớp cơ sở dữ liệu cũng nhƣ quá trình tƣơng tác giữa các đối tƣợng trong quá trình chứng thực khách hàng đƣợc mô tả trong sơ đồ sau: Đặt hàng Chứng thực khách hàng Khách hàng 1. số lƣợng cần mua… sẽ lập thành một đơn hàng. gồm các thông tin nhƣ: mã sản phẩm. Trong luận văn này.CHƢƠNG IV cµi ®Æt b¶o mËt vµ an toµn th«ng tin trªn website mua b¸n c¸c linh kiÖn m¸y tÝnh trªn m¹ng internet I. qua đó khách hàng thực hiện các thao tác khác nhƣ: chọn mua hàng  Trang thông tin đơn hàng: sau khi khách hàng lựa chọn một hoặc nhiều sản phẩm cần mua. Các mô tả quá trình chứng thực.lrc-tnu. khách hàng thực hiện các chức năng khác nhƣ : o Tiếp tục mua hàng: tiếp tục chọn thêm các sản phẩm khác muốn mua Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. tên sản phẩm. SET. tác giả đã quyết định lựa chọn hệ mật mã cơ bản nhất là DES và giải thuật chữ ký số DSA cho phần cài đặt ứng dụng của mình.

khách hàng phải lựa chọn một tên khác o Nếu quá trình cung cấp thông tin hoàn tất và không gặp lỗi nào. từ đó chọn lại các sản phẩm mới o Cập nhật đơn hàng: lựa chọn lại số lƣợng mỗi sản phẩm trong đơn hàng. đăng ký mua hàng đều phải đăng ký trở thành thành viên của website. từ đó khác hàng có thể lựa chọn xem. khách hàng có thể thực hiện đƣợc giao dịch mua hàng trên website  Chi tiết các bƣớc đăng ký thành viên gồm các bƣớc nhƣ sau: o Đăng ký thành viên: cung cấp các thông tin nhƣ: tên đăng nhập. địa chỉ hòm thƣ. o Sau khi thao tác này hoàn thành. mật khẩu… o Hệ thống kiểm tra tính duy nhất của Tên đăng nhập & địa chỉ thƣ. khách hàng đƣợc quyền thực hiện các giao dịch của mình.lrc-tnu. giá bán. Nếu đã đƣợc sử dụng trong hệ thống. Thao tác này là cần thiết. muốn thực hiện việc mua hàng. xác nhận nhu cầu mua hàng o Hủy đơn hàng: xóa bỏ tất cả các sản phẩm đã lựa chọn. “mật khẩu đăng nhập” và “cặp khóa công khai – khóa bí mật theo thuật toán RSA”. hệ thống thực hiện “tạo” cặp khóa bí mật – công khai theo thuật toán RSA. nhận đƣợc đầy đủ các thông tin cần phải thực hiện thao tác “xác nhận” trƣớc khi thực hiện đƣợc bất kỳ giao dịch nào.Mỗi sản phẩm gồm các thông tin quan trọng là: Mã sản phẩm.Ngƣời quản trị hệ thống cập nhật các thông tin về sản phẩm lên website. Với đầy đủ các thông tin này. sử dụng email của ngƣời khác một cách không hợp lệ. Khóa công khai đƣợc lƣu trữ trong CSDL o Cặp khóa bí mật – công khai này bảo đảm tính duy nhất.edu. Các thông tin khác chỉ có ý nghĩa cung cấp hiểu biết cho khách hàng 3. mua .vn 77 .o Chấp nhận mua hàng: gửi thông tin về đơn hàng lên hệ thống. để tránh trƣờng hợp mạo danh. sau đó gửi khóa bí mật dƣới dạng file đính kèm về địa chỉ thƣ mà khách hàng đã cung cấp. Mã hóa RSA và áp dụng trong hệ thống Đăng ký thành viên  Mỗi ngƣời truy cập vào hệ thống. không trùng lặp giữa tất cả các thành viên của hệ thống o Khách hàng sau khi kiểm tra địa chỉ thƣ. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. theo những chức năng mà hệ thống đã cung cấp. từ đó hệ thống tính lại giá tiền cho tổng cộng các sản phẩm đã chọn 2. Quá trình này chính là việc cấp cho khách hàng một “tên đăng nhập”. Quản trị thông tin .

sử dụng khóa chung để mã hóa các thông tin đơn hàng. khách hàng cần cung cấp các thông tin gồm: Tên đăng nhập và Mật khẩu. Thực hiện mua hàng  Khách hàng thực hiện việc mua hàng. hủy toàn bộ đơn hàng Thao tác 2: Chấp nhận mua hàng. Chức năng này thực hiện cập nhập dữ liệu về hàng hóa của khách hàng vào hệ thống các đơn hàng chờ đƣợc xử lý. khách hàng thực hiện thao tác “Chấp nhận mua hàng”. mặt hàng đƣợc chọn sẽ nằm trong một “đơn hàng”. xem hệ thống cung cấp những mặt hàng nào. từ đó website sẽ chuyển hƣớng đến trang đăng nhập.vn 78 .4. nhƣng không có khóa bí mật hợp lệ. thì sẽ không thể thực hiện đƣợc việc giải mã và mua hàng. Hệ thống sẽ sử dụng khóa bí mật này (chỉ lƣu trong bộ nhớ RAM máy tính) để giải mã các thông tin mã hóa ở trên. để từ đó. Thao tác 3: Kích hoạt đơn hàng. thay đổi số lƣợng cần mua của mỗi sản phẩm. nếu tìm đƣợc hàng phù hợp thì thực hiện thao tác chọn mua hàng. Khi đơn hàng chƣa đƣợc kích hoạt. Các thức thực hiện mã hóa và giải mã 5. Trong trang này. Nếu khách hàng chƣa thực hiện đăng nhập.lrc-tnu. nếu các thông tin này đúng hoặc đã đăng nhập thành công trƣớc đó. tiếp đó hệ thống sẽ yêu cầu cung cấp khóa bí mật bằng cách khách hàng browse để chọn file chứa khóa bí mật.1 Mã hóa đơn hàng  Các sản phẩm trong một đơn hàng đƣợc đặc trƣng bởi: Mã sản phẩm. số lƣợng cần mua. siêu thị trực tuyến Thao tác 1: Xem hàng và chọn hàng. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. để tìm ra số sản phẩm đã mua. tính giá trị đơn hàng và chuyển dữ liệu cho module xử lý khấu trừ tiền trong tài khoản. Khách hàng lƣớt web. hàng hóa đặt mua đã đƣợc mã hóa theo thuật toán RSA. file này đã đƣợc hệ thống cung cấp khi thực hiện đăng ký. Nếu một ngƣời nào đó nhận đƣợc đƣờng dẫn này và cũng thực hiện kích hoạt đơn hàng. bảo đảm thông tin đƣợc bảo mật và không bị tiết lộ nếu không có khóa bí mật hợp lệ để giải mã. tên hàng… đều đƣợc lƣu trữ trong CSDL của website. cũng hoàn toàn giống các bƣớc chọn hàng trong siêu thị. chủng loại nào. nhƣng khác là trên một hệ thống điện tử. và khách hàng có thể thay đổi lại đơn hàng theo các thao tác nhƣ: không chọn sản phẩm nào đó. 5. Khách hàng thực hiện kích hoạt theo đƣờng dẫn đã cung cấp trong email. Sau thao tác này. Sau thao tác này. Sau khi chọn xong các sản phẩm. và đƣờng dẫn duy nhất để thực hiện kích hoạt đơn hàng. khách hàng nhận đƣợc email thông báo tình trạng đơn hàng. không cần thiết phải đƣa vào xâu ký tự cần mã hóa. hệ thống sẽ tự động chuyển đến trang xử lý đặt mua hàng và thông báo cho khách hàng. hệ thống không xác định đƣợc định danh ngƣời dùng đang truy cập là ai. số lƣợng tƣơng ứng với mỗi sản phẩm. dữ liệu về các sản phẩm. Các thông tin khác nhƣ: giá bán.edu.

Từ đó. hệ thống sẽ nhận đƣợc xâu PT nhƣ trƣớc khi thực hiện mã hóa.vn 79 . khóa bí mật nhƣ sau: PrivateKey: YTozOntpOjA7czozMjoiEwUyThq8gAfqCKXW2F/gjMYjOPo6J34rmP6b8 vY+TMoiO2k6MTtzOjMyOiIBv4wLNs8ExGUG+mvRNP2p+2cjRKAH0Dt mFTE0lebYQyI7aToyO3M6NzoicHJpdmF0ZSI7fQ== PublicKey: YTozOntpOjA7czozMjoiEwUyThq8gAfqCKXW2F/gjMYjOPo6J34rmP6b8 vY+TMoiO2k6MTtzOjM6IgEAASI7aToyO3M6NjoicHVibGljIjt9 Nhìn vào hai khóa này. sản phẩm có mã là sp32 số lƣợng 1. mật khẩu khách hàng sẽ đƣợc mã hoá bằng phƣơng pháp mã hoá DES (hoặc có thể là Triple – Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. mật khẩu. khi khách hàng chọn mua 5 sản phẩm thì xâu ký tự cần thực hiện mã hóa sẽ là: PT = sp01/3^sp12/9^sp32/1^sp45/8^sp983/2. sản phẩm có mã sp45 số lƣợng 8.2 Giải mã đơn hàng  Xâu ký tự đã mã hóa ET đƣợc hàm giải mã thực hiện decode (giải mã) sau khi khách hàng cung cấp một khóa riêng hợp lệ. địa chỉ…và form này đƣợc đệ trình. Thủ tục đăng kí thành viên Thủ tục này đƣợc xây dựng cùng với chức năng đăng ký thành viên. từ đó chứng tỏ ngƣời kích hoạt đơn hàng là hợp lệ. nhƣng nó đƣợc sinh ra khi ta sử dụng mã hóa theo thuật toán RSA II. chắc chắn mỗi chúng ta đều không biết ý nghĩa của nó. diễn giải ra sẽ là: mua Sản phẩm có mã là sp01 số lƣợng 3 chiếc (cái). sản phẩm có mã sp12 số lƣợng 9. việc giải mã đòi hỏi phải có khóa riêng của khách hàng 5. Nếu quá trình giải mã thành công. Hàm thực hiện mã hóa sẽ mã hóa PT thành ET (encoded text). cµi ®Æt c¸c chøc n¨ng b¶o mËt vµ an toµn th«ng tin trªn web site mua b¸n linh kiÖn m¸y tÝnh 1. tên đầy đủ. sau khi khách hàng điều đầy đủ các thông tin cá nhân cần thiết nhƣ email. và tiến hành thanh toán. trừ tiền trong tài khoản bình thƣờng Ví dụ khi thực hiện mã hóa/giải mã Khóa bí mật và công khai Thành viên của hệ thống là anhtuan. khi đó Server sẽ tiến hành việc cập nhật các thông tin này vào cơ sở dữ liệu.lrc-tnu. Từ đó plain text cần mã hóa gồm: PT = {Mã-hàng-hóa}/{Số-lƣợng-cầnmua}[^]. sản phẩm có mã 983 số lƣợng 2. sử dụng khóa công khai của ngƣời đã đặt mua hàng. Xâu ET này sẽ không thể có ý nghĩa nếu không đƣợc giải mã. sau khi đăng ký sẽ đƣợc hệ thống cung cấp các khóa công khai. trƣớc khi cập nhật.edu.

Nếu khách hàng đăng kí thành công thì hệ thống website sẽ gửi cho khách hàng một thông báo vào địa chỉ email mà khách hàng đã đăng kí kèm theo một khoá riêng private key dƣới dạng một file văn bản tex khách hàng phải lƣu giữ khoá riêng này nhƣ chữ kí số của riêng mình thông báo nhƣ sau: Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu. AES hay bất kỳ hệ mật mã khoá đối xứng nào khác để đảm bảo rằng mật khẩu của khách hàng đƣợc giữ kín).DES.vn 80 .

Khách hàng lƣớt web. chủng loại nào. và khách hàng có thể thay đổi lại đơn hàng theo các thao tác nhƣ: không chọn sản phẩm nào đó. nếu tìm đƣợc hàng phù hợp thì thực hiện thao tác chọn mua hàng.lrc-tnu.vn 81 . hủy toàn bộ đơn hàng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Sau thao tác này. xem hệ thống cung cấp những mặt hàng nào.2. Khách hàng lựa chọn mua hàng trên website Sau khi đã đăng kí là thành viên của website khách hàng mới có quyền chọn hàng và mua hàng trên trang giới thiệu các mặt hàng của website. thay đổi số lƣợng cần mua của mỗi sản phẩm. mặt hàng đƣợc chọn sẽ nằm trong một “đơn hàng”.edu.

khách hàng thực hiện thao tác “Chấp nhận mua hàng”.Sau khi chọn xong các sản phẩm. tiếp đó hệ thống sẽ yêu cầu cung cấp khóa bí mật bằng cách khách hàng browse để chọn file chứa khóa bí mật.vn 82 . Hệ thống website sẽ gửi cho khách hàng một thông báo về hoá đơn các mặt hàng mà khách hàng vừa chọn kèm theo các thông tin về giá cả và địa chỉ nhận hàng nhƣ sau: Khách hàng thực hiện kích hoạt theo đƣờng dẫn đã cung cấp trong email. file private key này đã đƣợc hệ thống cung cấp khi thực hiện đăng ký.lrc-tnu. Hệ thống website sẽ xác thực khách hàng bằng khoá private key Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www. Chức năng này thực hiện cập nhập dữ liệu về hàng hóa của khách hàng vào hệ thống các đơn hàng chờ đƣợc xử lý.edu.

edu. Kết thúc quá trình giao dịch mua bán máy tính thông qua dịch vụ INTERNET và tài khoản của cá nhân tại các ngân hàng Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.vn 83 .và gửi lại cho khách hàng một thông báo có chứa đầy đủ hoá đơn mua hàng của khách hàng và tổng số tiền mà khách hàng phải trả từ tài khoản của mình.

RC4. Tuy nhiên đối với các giao dịch mang tính nhạy cảm. Trong thời gian tới. em sẽ tiếp tục phát triển đề tài với phƣơng hƣớng cụ thể nhƣ sau: Tiếp tục tìm hiểu hơn và thực nghiệm với một số phƣơng pháp mã hoá khoá đối xứng nhƣ Triple – DES.lrc-tnu. có hai phƣơng pháp: Mã hoá đối xứng và mã hoá khoá khoá công khai. Cần thiết hơn cả đó là mỗi bên cần xác định chính xác ngƣời mình đang giao tiếp có đúng là đối tác mong đợi hay không. Em cũng đã cố gắng hết sức để phát triển ứng dụng theo mô hình thƣơng mại điện tử sử dụng SET. cần phải có cơ chế đảm bảo an toàn trong phiên giao dịch đó. liệu chúng ta có đảm bảo chính xác chữ ký hoặc khoá khoá công khai là thuộc đối tác hay không. Tuy nhiên. con ngƣời có thể giao tiếp dễ dàng trong một cộng đồng rộng lớn. nhƣng do thực tế ở Việt Nam hiện nay không tồn tại một cách đầy đủ các thành phần tham gia SET.kÕt luËn Với sự phát triển mang tính toàn cầu của mạng Internet và TMĐT. Giải pháp khắc phục đƣa ra là sử dụng chứng chỉ số cho khoá khoá công khai nhằm đảm xác thực tính đúng đắn của đối tác trong giao dịch. Rabin. Trong luận văn này. Vấn đề chủ yếu nằm ở việc quản lý khoá mã hoá và giải mã ở cả hai phƣơng pháp mã hoá. dựa vào chữ ký cùng cặp khoá riêng và công khai. Có một vấn đề đặt ra đối với chữ ký số. em đã đề cập đến hai kỹ thuật chính trong an toàn thông tin đó là mã hoá và ký số cùng với những vấn đề liên quan đến bảo mật ứng dụng Web. DSS.edu. Knapsack. Em cũng đã tìm hiểu hai loại chữ ký: Chữ ký kèm thông điệp và chữ ký sinh thông điệp cùng hai sơ đồ ký đƣợc chấp nhận và sử dụng rộng rãi: RSA. Đối với phƣơng pháp ký số.vn 84 . trong đó phổ biến là phƣơng pháp mạo danh chữ ký. chúng ta có thể xác định chính xác đối tác trong giao dịch. Cải tiến và nâng cao hiệu quả của các module đã cài đặt trên webssite cũng nhƣ các kỹ thuật cài đặt khác. Mã hoá đảm bảo an toàn về thông tin giao tiếp nhƣng không đảm bảo liệu thông tin có bị giả mạo hoặc có bị mạo danh hay không. Hai kỹ thuật này cũng đƣợc áp dụng phần nào trong việc xác thực đối tác trong mỗi phiên giao dịch. Eliptic Curve. cụ thể là cài đặt một số quy trình giao dịch sử dụng tới các phƣơng pháp mã hoá thông tin cũng nhƣ ký số. Có rất nhiều cách tấn công vào chữ ký số. IDEA. vì vậy ứng dụng sẽ gặp khó khăn khi triển khai trong thực tiễn. Về kỹ thuật mã hoá. do điều kiện về mặt thời gian còn hạn chế. em không thể nghiên cứu kỹ lƣỡng về chứng chỉ số cho khoá công khai mà tập trung vào việc tìm hiểu một số các giao thức bảo mật ứng dụng web. các phƣơng pháp mã hoá khoá công khai nhƣ Elgamal. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.

Sign up to vote on this title
UsefulNot useful