Tài liệu Luận văn Bảo mật và an toàn thông tin trong thương mại điện tử: ĐẠ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 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......................................................
84 trang |
Chia sẻ: hunglv | Lượt xem: 1147 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Luận văn Bảo mật và an toàn thông tin trong thương mại điện tử, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
ĐẠ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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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:
EK (K) = C và DK (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 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 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.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 22
Ta viêt:x0 = IP (X)= L0R0, trong đó L0 gồm 32 bit đầu và R0 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 L1R1,1 i 16 theo qui tắc sau:
L1=Ri-1
R1 = Li-1
f(Ri-1,Ki)
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 K1,K2,...,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). K1,K2,...,K16 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(R16L16). Chú ý thứ tự đã đƣợc đảo của R16 va L16 .
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 23
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,S2,…,S8 ( đƣợ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 B1 = b1b2b3b4b5b6), 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) . Khi đó Si (Bi) sẽ xác định phần tử Si(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 = Si (Bi) , 1 i 8 .
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,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 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:
Ci = LSi(Ci-1)
Di = LSi (Di-1)
Và Ki = PC-2 (CiDi). 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à k1,k2,k3,….,k15,k16 thì các khoá giải là
k16,k15,….,k3,k2,k1. 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 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 {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 ek (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 106 khoá/giây.
Một máy có thể tìm toàn bộ không gian khoá cỡ 106 trong khoảng 1 ngày. Họ
ƣớc tính chi phí để tạo một máy nhƣ vậy khoảng 2.107$.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 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.107 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 106$ 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ị K1…., 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.
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 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; bij=
S(aij )
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 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 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 (28) 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 x4 +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 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 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, 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 =EKB(P) = EB (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 kB 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 31
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, 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,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 ZN ={1,…,N-1}. 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, 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, KB) và khóa giải mã DkB là cặp số
nguyên (N, kB), 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 KB và bản rõ P theo công thức sau đây
C = EKB(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 kB , mođun N theo công thức sau :
P =DkB(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 =DkB (EKB(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:
KB.kB 1 (mod
(N)) (5)
Trong đó
(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 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 KB
một cách ngẫu nhiên. Khi đó khóa bí mật kB đƣợ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
(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,
(N) =100x112 =11200 =2
6
x5
2
x7. KB phải chọn sao cho
không chia hết cho 2,5, 7. Chọn, chẳng hạn KB =3533 khi đó kB =KB
-1
=6579mod11200. Và ta có khóa công khai là (N,KB)=(11413,3533) khóa bí mật
là 6759. Phép lập mã và giải mã là
EKB(P) =P
KB
(mod N) =P
3533
(mod 11413)
DkB(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 kB
B¶n m· c
B¶n râ P
KB
kB
TÝnh N=pxq
Chän p vµ q
C=PKB (mod N)
Chän khãa KB
TÝnh
(N)
B¶n râ gèc
P=
Bkc
(mod N)
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 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 KB 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 KB. 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 N1/2 bƣớc, bởi vì có một số nguyên tố nhỏ hơn N1/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 N1/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 KB tức là có cặp (KB,
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 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) KB 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 KB hay
không nếu cho trƣớc N và KB. Rất khó có thể tìm ra đƣợc KB từ KB, 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 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 = sigk(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
verk(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 = sigk(z)
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 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
Kprivate Kpublic
M
es
sa
g
e
M
es
sa
g
e
M
es
sa
g
e
E
H
D
H
M
es
sa
g
e
M
es
sa
g
e
M
es
sa
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 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 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í sigk S và là một thuật toán xác
định Verk V. Mỗi sigk:P A vàVerk : P A { 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.
Verk= True nếu y=sing(x)
False nếu y
sing(x)
Với mỗi k thuộc K hàm sigk ,Verk là các hàm có thời gian đa thức .Verk sẽ
là hàm công khai , sigk 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 để Verk= 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 verk 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 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 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á SA,k :k thuộc R ,của dạng chuyển đổi.
SA,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ố.
SAtƣơng ứng (corresponding mapping)VA từ không gian Mh S
vào tập hợp { false,true} có nghĩa là :
VA(m,s*)=true nếu SA,k(m)=s*
VA(m,s*)=false trong các trƣờng hợp khác.
Va là khoá công khai của A ,SA 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 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*=SA,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*)
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
SA,k M h h s
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ý
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 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 SA={SA,k:k thuộc R} mỗi SA,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ý.
SA xác định một ánh xạ tƣơng ứng(corresponding mapping) VA sao cho
VA* SA,k ánh xạ xác định MS cho tất cả k thuộc R.
VA là khoá công khai của A, SA 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 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à 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')
SA,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*=SA,k(m'
)
M
m'
M
m'
R
'
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 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à = (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, ) = 1 hay a 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 < và ab 1 (mod )
• 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' = 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. 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 =Zn và định nghĩa
p = (n,p,q,a,b) n = p.q, p và q nguyên tố, ab 1 mod (n)
Các giá trị n, b là công khai. Định nghĩa
Sigk (x) = x
a mod n và
Verk(x,y) = true x y
b (mod n) với x,y Zn
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 44
Thực thể A chọn số nguyên tố p =7927 và q =6997. Tính n =pq =5546521 và
=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 = m1
’b
=mod n =31229978
4430237
mod 55465219 =30729435
Xác nhận chữ ký:
B tính m2
’
= s
a
mod n = 30729435
5
mod 55465219 =31229978
B chấp nhận chữ ký vì m2
’
= m1
’.
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 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 2159 < q < 2160
2. Chọn một số nguyên tố p sao cho 2511+64t < p < 2512+64t ở đó t
[0,8]
3. Chọn số
nhƣ sau:
• Chọn g là một số nguyên bất kỳ nhỏ hơn p,
=g
(p-1)/q
mod p
•
khác 1
4. Chọn số nguyên a sao cho: 1
1 qa
5. Tính
a
mod p
6. Khóa riêng của thực thể là a, khóa công khai là bộ (p,q,
)
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
=k
-1
(h(x)+a
) mod q
5. Chữ ký của thực thể cho x là cặp (
,
)
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 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 e1 = w.h(x) mod q và e2 =?w mod q
5. Tính v = (ae1 .ò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 Z7879 nên ta có thể lấy: a = 3
78
mod 7879 = 170
Gỉa sử a = 75, khi đó ò = aa 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
e1 = 1234*25 mod 101 = 45
e2 = 94*25 mod 101 = 27
Có (17045.456727 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 Zp 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? 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, 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ố sigk (x, k) = (?,dδ) trong đó:
? = (a
k
mod p) mod q và
d = (x + a ?)k
-1
mod q với x? Zp và?, 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, g, d) = true (ae1 òe2 mod p) mod q =?
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên 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 = 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 = a
x1
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 48
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 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 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 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
Các file đính kèm theo tài liệu này:
- 170..pdf