Bài giảng mật mã học full - Pdf 22

MỤC LỤC
Giới thiệu về mật mã học..................................................................................Trang 1
Lịch sử của mật mã học.....................................................................................Trang 3
Mật mã học cổ điển...............................................................................Trang 3
Thời trung cổ.........................................................................................Trang 4
Mật mã học trong thế chiến thứ 2.........................................................Trang 4
Mật mã học hiện đại..............................................................................Trang 6
Các thuật toán mã hóa cổ điển..........................................................................Trang 8
Thuật toán mã hóa thay thế...................................................................Trang 8
Thuật toán mã hóa chuyển vị................................................................Trang 9
Thuật toán mã hóa luồng và thuật toán mã hóa khối...........................Trang 10
Các thuật toán mã hóa hiện đại.........................................................................Trang 13
Mã hóa đối xứng...................................................................................Trang 13
Mã hóa bất đối xứng.............................................................................Trang 14
Cơ chế chứng thực gói tin.................................................................................Trang 18
Phần trả lời câu hỏi của các nhóm phản biện....................................................Trang 22
Phần câu hỏi của giáo viên hướng dẫn ............................................................Trang 24
2
GIỚI THIỆU MẬT MÃ HỌC
Mật mã học là một lĩnh 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à trong 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ã hóa đượ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ủa mật mã hóa đã được mở rộng: mật mã hóa hiện đại cung cấp cơ chế cho 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
khóa 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ã hóa, thông thường

3
nhiên của các mật khẩu. Đây là điểm yếu chung trong các hệ thống mật mã. Đối với các ứng
dụng mạng, giao thức thỏa thuận khóa chứng thực mật khẩu có thể giảm đi một số các giới hạn
của các mật khẩu. Đối với các ứng dụng độc lập, hoặc là các 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 soát 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ã hóa
khóa đối xứng. Khi mật mã hóa dựa vào các vấn đề toán học như độ khó NP, giống như trong
trường hợp của thuật toán khóa bất đố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
LỊCH SỬ MẬT MÃ HỌC
Mật mã học là một ngà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ã hóa 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 cơ chế phức tạp và hiệu quả
hơn cho việc mật mã hóa. Sự ra đời và phát triển mạnh mẽ của ngành điện tử và máy tính trong
những thập kỷ 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.
Sự phát triển của mật mã học luôn luôn đi kèm với sự phát triển của các kỹ thuật phá
mã (hay thám mã). Các phát hiện và ứng dụng của các kỹ thuật phá mã trong một số trường hợp
đã có ảnh hưởng đáng kể đến các sự kiện lịch sử. Một vài sự kiện đáng ghi nhớ bao gồm việc
phát hiện ra bức điện Zimmermann khiến Hoa Kỳ tham gia Thế chiến I và việc phá mã thành
công hệ thống mật mã của Đức Quốc xã góp phần làm đẩy nhanh thời điểm kết thúc thế chiến
II.
Cho tới đầu thập kỷ 1970, các kỹ thuật liên quan tới mật mã học hầu như chỉ nằm trong
tay các chính phủ. Hai sự kiện đã khiến cho mật mã học trở nên thích hợp cho mọi người, đó là:
sự xuất hiện của tiêu chuẩn mật mã hóa DES và sự ra đời của các kỹ thuật mật mã hóa khóa
công khai.

chữ cái được Alberti sáng tạo (năm 1465).
Mật mã học (tuy âm thầm) ngày càng trở nên quan trọng dưới tác động của những thay
đổi, cạnh tranh trong chính trị và tôn giáo. Chẳng hạn tại châu Âu, trong và sau thời kỳ Phục
hưng, các công dân của các thành bang thuộc Ý, gồm cả các thành bang thuộc giáo phận và
Công giáo La Mã, đã sử dụng và phát triển rộng rãi các kỹ thuật mật mã. Tuy nhiên rất ít trong
số này tiếp thu được công trình của Alberti (các công trình của họ không phản ảnh sự hiểu biết
hoặc tri thức về kỹ thuật tân tiến của Alberti) và do đó hầu như tất cả những người phát triển và
sử dụng các hệ thống này đều quá lạc quan về độ an toàn. Điều này hầu như vẫn còn đúng cho
tới tận hiện nay, nhiều nhà phát triển không xác định được điểm yếu của hệ thống. Do thiếu
hiểu biết cho nên các đánh giá dựa trên suy đoán và hy vọng là phổ biến.
Mật mã học, phân tích mã học và sự phản bội của nhân viên tình báo, của người đưa
thư, đều xuất hiện trong âm mưu Babington diễn ra dưới triều đại của nữ hoàng Elizabeth I dẫn
đến kết cục xử tử nữ hoàng Mary I của Scotland. Một thông điệp được mã hóa từ thời "người
dưới mặt nạ sắt" (Man in the Iron Mask) (được giải mã vào khoảng 1900 bởi Étienne Bazeries)
cho biết một số thông tin về số phận của tù nhân này (đáng tiếc thay là những thông tin này
cũng chưa được rõ ràng cho lắm). Mật mã học, và những lạm dụng của nó, cũng là những phần
tử liên quan đến mưu đồ dẫn tới việc xử tử Mata Hari và âm mưu quỷ quyệt dẫn đến trò hề
trong việc kết án Dreyfus và bỏ tù hai người đầu thế kỷ 20. May mắn thay, những nhà mật mã
học (cryptographer) cũng nhúng tay vào việc phơi bày mưu đồ dẫn đến các khúc mắc của
Dreyfus; Mata Hari, ngược lại, đã bị bắn chết.
Ngoài các nước ở Trung Đông và châu Âu, mật mã học hầu như không được phát triển.
Tại Nhật Bản, mãi cho tới 1510, mật mã học vẫn chưa được sử dụng và các kỹ thuật tiên tiến
chỉ được biết đến sau khi nước này mở cửa với phương Tây (thập kỷ 1860).
3. Mật mã học trong Thế chiến II
6
Máy Enigma được Phát Xít Đức sử dụng rộng rãi; việc phá vỡ hệ thống này đã mang lại
cho quân Đồng Minh những tin tức tình báo cực kỳ quan trọng
Trong thế chiến II, các hệ thống mật mã cơ khí và cơ điện tử được sử dụng rộng rãi mặc
dù các hệ thống thủ công vẫn được dùng tại những nơi không đủ điều kiện. Các kỹ thuật phân
tích mật mã đã có những đột phá trong thời kỳ này, tất cả đều diễn ra trong bí mật. Cho đến gần

Midway. SIS, một nhóm trong quân đội Mỹ, đã thành công trong việc xâm nhập hệ thống mật
mã ngoại giao tối mật của Nhật (một máy cơ điện dùng "bộ chuyển mạch dịch bước" (stepping
switch) được người Mỹ gọi là Purple) ngay cả trước khi thế chiến II bắt đầu. Người Mỹ đặt tên
cho những bí mật mà học tìm được từ việc thám mã, có thể đặc biệt là từ việc phá mã máy
Purple, với cái tên "Magic". Người Anh sau này đặt tên cho những bí mật mà họ tìm ra trong
việc thám mã, đặc biệt là từ luồng thông điệp được mã hóa bởi các máy Enigma, là "Ultra". Cái
tên Anh trước đó của Ultra là Boniface.
Quân đội Đức cũng cho triển khai một số thử nghiệm cơ học sử dụng thuật toán mật mã
dùng một lần (one-time pad). Bletchley Park gọi chúng là mã Fish, và ông Max Newman cùng
đồng nghiệp của mình đã thiết kế ra một máy tính điện tử số khả lập trình (programmable
digital electronic computer) đầu tiên là máy Colossus để giúp việc thám mã của họ. Bộ ngoại
giao Đức bắt đầu sử dụng thuật toán mật mã dùng một lần vào năm 1919; một số luồng giao
thông của nó đã bị người ta đọc được trong Thế chiến II, một phần do kết quả của việc khám
phá ra một số tài liệu chủ chốt tại Nam Mỹ, do sự bất cẩn của những người đưa thư của Đức
không hủy thông điệp một cách cẩn thận.
Bộ ngoại giao của Nhật cũng cục bộ xây dựng một hệ thống dựa trên nguyên lý của "bộ
điện cơ chuyển mạch dịch bước" (được Mỹ gọi là Purple), và đồng thời cũng sử dụng một số
máy tương tự để trang bị cho một số tòa đại sứ Nhật Bản. Một trong số chúng được người Mỹ
gọi là "Máy-M" (M-machine), và một cái nữa được gọi là "Red". Tất cả những máy này đều ít
nhiều đã bị phía Đồng Minh phá mã.
SIGABA được miêu tả trong Bằng sáng chế của Mỹ 6.175.625, đệ trình năm 1944 song
mãi đến năm 2001 mới được phát hành
Các máy mật mã mà phe Đồng Minh sử dụng trong thế chiến II, bao gồm cả máy
TypeX của Anh và máy SIGABA của Mỹ, đều là những thiết kế cơ điện dùng rôto trên tinh
thần tương tự như máy Enigma, song với nhiều nâng cấp lớn. Không có hệ thống nào bị phá mã
trong quá trình của cuộc chiến tranh. Người Ba Lan sử dụng máy Lacida, song do tính thiếu an
ninh, máy không tiếp tục được dùng. Các phân đội trên mặt trận chỉ sử dụng máy M-209 và các
máy thuộc họ M-94 ít bảo an hơn. Đầu tiên, các nhân viên mật vụ trong Cơ quan đặc vụ của
Anh (Special Operations Executive - SOE) sử dụng "mật mã thơ" (các bài thơ mà họ ghi nhớ là
8

Encryption Standard - Tiêu chuẩn mã hóa tiên tiến) khi NIST công bố phiên bản FIPS 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. Hiện nay DES và một số biến thể của nó (như Tam phần DES (Triple
DES); xin xem thêm trong phiên bản FIPS 46-3), 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 của quốc gia và của 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 cuộc tấn công kiểu 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 chuyện này được nhắc đến trong cuốn Cracking DES (Phá vỡ DES), được xuấ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ã
hóa 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ã hóa 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
9
DES, đều ở trong 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
xả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ằng
chiều dài khóa mà DES sử dụng (56-bit) là một khóa 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 hồi bấy giờ, cũng đã có đủ công
suất máy tính để phá mã các thông điệp dùng DES; rõ ràng là những cơ quan khác cũng đã có
khả năng để thực hiện việc này rồi.
CÁC THUẬT TOÁN MÃ HÓA CỔ ĐIỂN
A. Thuật toán mã hóa thay thế
1. Thuật toán mã hóa Caesar
Nổi tiếng là thuật toán thay thế theo cách đơn giản mà mỗi ký tự văn bản gốc sẽ được
thay thể bởi ký tự thứ ba tính từ bên phải nó trong bảng 26 chữ cái (“A” được thay thế bởi “D,”
“B” được thay thế bởi “E,”..., “W” được thay thế bởi “Z,” “X” được thay thế bởi “A,” “Y”
được thay thế bởi “B,” and “Z” được thay thế bởi “C”).
Một thuật toán mã hóa thay thế là loại thuật toán trong đó mỗi ký tự trong văn bản gốc
được thay thế bởi một ký khác trong văn bản mật mã. Người nhận sẽ nghịch đảo sự thay thế đó

RC4 is một ví dụ của thuật toán mã hóa Vernam được sử dụng rộng rãi trên Internet.
B. Thuật toán mã hóa chuyển vị
Đây là một phương pháp mã hóa mà những vị trí được tổ chức bởi các đơn vị của văn
bản gốc (thường là các ký tự hoặc nhóm ký tự) được chuyển dịch theo một hệ thống có quy tắc,
như vậy văn bản mã hóa tạo nên sự hoán vị của văn bản gốc. Đó chính là sự thay đổi thứ tự của
các đơn vị.
Thuật toán mã hóa hàng rào đường ray (Rail Fence) là loại thuật toán mã hóa chuyển vị
mà tên của nó bắt nguồn từ cách thức tiến hành mã hoá. Trong các thuật toán mã hóa Rail
Fence, văn bản gốc được viết tiếp xuống "đường ray" của một hàng rào tưởng tượng, rồi di
chuyển lên khi chúng ta viết xuống phía dưới. Sau đó các tin nhắn sẽ được đọc ra theo hàng. Ví
dụ, bằng cách sử dụng bốn "đường ray"
11
Trong một phương pháp chuyển vị hình cột tinh vi hơn, ban đầu tin nhắn sẽ được viết
vào sáu cột:
Sau đó các cột này sẽ được xáo trộn theo một từ khoá đã thoả thuận trước. Tiếp theo,
các chữ cái của từ khóa này được xếp theo thứ tự bảng chữ cái để xác định thứ tự cột, ví dụ
như, từ khóa “DARKLY” sẽ được sắp xếp là "ADKLRY," sau khi thực hiện điều đó, thứ tự
của sáu cột là 2, 1, 4, 5, 3, 6:
Tiếp theo, các cột sẽ được sao chép (theo chiều dọc) theo thứ tự đó. Sau đó cần phân
chia văn bản mật mã tạo được thành các nhóm năm chữ cái để làm cho kẻ xâm nhập không thể
phân tích cú pháp của thông tin (như cần phá vỡ cột hoặc từ). Ví dụ, chúng tôi sẽ mã hóa thành:
C. Thuật toán mã hóa luồng với Thuật toán mã hóa khối
Công nghệ mã hóa đối xứng được chia thành thuật toán mã hóa khối và luồng, ahi thuật
toán này rất dễ để phân biệt.
1. Thuật toán mã hóa luồng
12
Mã hóa từng bit, hết bít này đến bít khác.. Có thể thực hiện điều này bằng cách thêm
một bit từ luồng khóa vào một bit văn bản gốc. Những loại thuật toán mã hóa luồng đồng bộ là
luồng khóa chỉ phụ thuộc vào khóa đó và loại không đồng bộ là luồng khóa còn phụ thuộc vào
văn bản mật mã.

lý khóa dễ dàng hơn nhiều khi chỉ cần quản lý một khóa.
Một yếu tố khác là sự tiêu chuẩn hóa. Mọi người đều sử dụng hai thuật toán tiêu chuẩn
là DES và AES, cả hai đều là thuật toán mã hóa khối.
Không có loại nào trong cả hai loại được cho là tốt hơn. Nếu bạn cần sử dụng lại khóa
thì hãy dùng thuật toán mã hóa khối. Nếu bạn phải đảm bảo cho khả năng tương tác thì tốt nhất
là hãy sử dụng thuật toán mã hóa khối AES, nếu không thì có thể dùng thuật toán mã hóa
luồng.
Cơ sở dữ liệu – sử dụng thuật toán mã hóa khối – Khả năng tương tác với phần mềm khác
không phải là vấn đề nhưng bạn sẽ cần sử dụng lại khóa.
E-mail – sử dụng thuật toán mã hóa khối (AES) – AES đóng vai trò quan trọng trong việc cung
cấp khả năng tương tác với tất cả các gói e-mail.
SSL/TLS – sử dụng thuật toán mã hóa luồng (RC4) – Tốc độ của RC4 cực kỳ nhanh, mỗi kết
nối có thể có một khóa mới và hầu như tất cả các trình duyệt Web và máy chủ đều có RC4.
Mã hóa file – sử dụng thuật toán mã hóa khối – bạn có thể mã hóa mọi file với cùng một khóa
rồi bảo vệ khóa đó – việc quản lý khóa đơn giản và không tốn kém.
14
CÁC THUẬT TOÁN MÃ HÓA HIỆN ĐẠI
A. mã hóa đối xứng
1. Tiêu chuẩn mã hóa cao cấp (AES)
Là một tiêu chuẩn mã hóa khóa đối xứng được thông qua bởi chính phủ Hoa Kỳ. tiêu
chuẩn này bao gồm ba thuật toán mã hóa khối, AES-128, AES-192 và AES-256, được thông
qua từ một bộ sưu tập hợp thuật toán lớn hơn ban đầu được công bố bởi Rijndael. Mỗi thuật
toán mã hóa trong số đó có kích thước khối 128-bit với kích thước khóa tương ứng là 128, 192
và 256 bit, tương ứng. Các thuật toán mã hóa AES đã được phân tích rộng rãi và hiện đang
được sử dụng trên toàn thế giới.
2. Tiêu chuẩn mã hóa dữ liệu (DES)
Là một thuật toán mã hóa khối được lựa chọn bởi Cục Tiêu chuẩn Quốc gia làm Tiêu
chuẩn Xử lý Thông tin Liên bang Chính thức (FIPS) cho Hoa Kỳ vào năm 1976 và sau đó đã
được toàn thế giới ưa dùng. Thuật toán này dựa trên thuật toán khóa đối xứng sử dụng khóa 56-
bit. Ban đầu thuật toán này gây nhiều tranh cãi với các thành phần thiết kế được phân loại, độ

Blowfish không có bằng sáng chế và nó vẫn tồn tại như vậy tại tất cả các nước. Nhờ
đó, thuật toán có thể được sử dụng rộng rãi mọi nơi và miễn phí đối với tất cả mọi người.
8. Twofish
Là một thuật toán mã hóa khối khóa đối xứng với kích thước khối là 128 bit và kích
thước khóa lên đến 256 bit. Đó là một trong năm chương trình lọt vào vòng cuối của cuộc thi
Tiêu chuẩn Mã hóa Cao cấp nhưng đã không được chọn làm tiêu chuẩn. Thuật toán Twofish có
liên quan đến thuật toán mã hóa trước đó là Blowfish. Thuật toán Twofish miễn phí cho tất cả
mọi người sử dụng mà không có bất kỳ hạn chế nào. Nó là một trong số ít thuật toán nằm trong
tiêu chuẩn OpenPGP.
9. Serpent
Là một thuật toán mã hóa khối khóa đối xứng với kích thước khối 128 bit và hỗ trợ kích
thước khóa 128, 192 hoặc 256 bit. Thuật toán này là một mạng lưới thay thế-hoán vị 32 vòng,
nó hoạt động trên khối của bốn từ có kích thước 32-bit. Thuật toán mã hóa Serpent vẫn chưa
được cấp bằng sáng chế. Đó là nằm hoàn toàn trong miền công cộng và có thể được tự do sử
dụng bởi bất cứ ai.
10. Thuật toán Mã hóa Dữ liệu Quốc tế (IDEA)
Là một thuật toán mã hóa khối được thiết kế bởi James Massey của ETH Zurich và
Xuejia Lai và được mô tả lần đầu tiên vào năm 1991.
IDEA, được sử dụng trong Pretty Good Privacy (PGP) phiên bản 2.0, là một thuật toán
tùy chọn trong tiêu chuẩn OpenPGP.
B. Mã hóa bất đối xứng:
Với xu thế hội nhập cùng với sự phát triển không ngừng của ngành Công nghệ thông tin
như: Internet, các chương trình ứng dụng, các công cụ xử lý multimedia đã mang lại nhiều
thuận lợi trong việc lưu trữ dữ liệu, trao đổi thông tin, sao chép dữ liệu v.v…Tuy nhiên, bên
cạnh các điều kiện thuận lợi đó, sự phát triển này cũng tạo ra nhiều thử thách trong vấn đề tìm
ra giải pháp bảo mật dữ liệu, qua đó chứng nhận quyền sở hữu thông tin của các đơn vị, cá
nhân trong quá trình trao đổi thông tin. Nội dung bài báo sẽ trình bày các khái niệm, mô hình,
phân tích ưu, khuyết điểm của hệ mã khoá công khai và giải pháp an toàn cho hệ thống thông
tin dựa trên cấu trúc hạ tầng mã khoá công cộng (PKI - Public Key Infrastructure).
16

k
. Thì A
người gửi sẽ mã hoá thông điệp của họ bằng e
k
này. Về phía B người nhận, sau khi nhận thông
điệp thì giải mã thông điệp đó cũng bằng khoá e
k
. Như vậy một người khác đánh cắp đuợc khoá
e
k
thì họ sẽ có thể giải mã và xem được nội dung thông điệp của người gửi. Điển hình thuật toán
khóa bí mật là mã hoá khối với n Byte đầu vào thành một khối Byte ở đầu ra, các phương pháp
mã hoá khối đã được đưa vào ứng dụng như: RC2 (8Byte), DES (8Byte), TRIPPLE DES (24
Byte), RIJINDAEL (32 Byte),…thuật toán mã hoá bí mật có tốc độ nhanh hơn so với hệ mã
khoá công khai.
2.2. Hệ mã khoá công khai: Quá trình mã hoá sử dụng một khoá có thể công khai và khi
giải mã thì sử dụng một khoá khác. Vì sử sụng 1 cặp khoá trong đó có một khoá có thể
được công bố nên gọi là hệ khoá công khai, hay còn gọi là hệ phi đối xứng.Thực chất hệ
mã khoá công khai sử dụng 2 khoá có liên quan với nhau:
- Khoá công khai (Public key) được sử dụng để mã hoá những thông tin mà bạn muốn chia
sẽ với bất cứ ai. Chính vì vậy bạn có thể tự do phân phát nó cho bất cứ ai mà bạn cần chia
sẻ thông tin ở dạng mã hoá.
- Khoá riêng (Private key) khoá này thuộc sở hữu riêng tư của người được cấp và nó được
sử dụng để giải mã thông tin.

3. Nguyên lý và mô hình hoạt động
Nguyên lý hoạt động của hệ mã hoá công cộng do các ông Whitfield Diffie và Martin
Hellman nghĩ vào ra năm 1977. Khi hai bên trao đổi thông tin phải biết khoá công khai (e
k
) của

k
(e
k
(m))= m. Như vậy có thể nhiều cá nhân C, D... cùng thực hiện giao dịch và có khoá công
khai của B, nhưng C,D... không thể giải mã được m vì không có khoá d
k
dù cho đã chặn bắt
được các gói thông tin gửi đi trên mạng.[2]
Thực ra mô hình này đã sử dụng trong thực tế giao dịch là sử dụng chứng minh nhân
dân để nhận quà, tiền hoặc hàng qua bưu điện, khoá công khai đóng vai trò như: Tên trên giấy
chứng minh thư, còn khoá cá nhân là ảnh và dấu vân tay. Nếu xem bưu phẩm là thông tin
truyền đi, được "mã hoá" bởi tên người nhận, dù có dùng chứng minh thư nhặt được vẫn không
được nhân viên bưu cục giao bưu kiện vì ảnh mặt và dấu vân tay không giống.

4. Chữ ký điện tử với hệ mã khóa công khai
Trong các giao dịch thông qua phương tiện điện tử, các yêu cầu về đặc trưng của chữ ký
tay có thể đáp ứng bằng hình thức chữ ký điện tử.
Chữ ký điện tử (Digital Signatures) không phải là nét vẽ ngoằn ngèo mà là một dãy số
được tạo nên bằng các phép mã hoá.
Chữ ký điện tử trở thành một thành tố quan trọng trong văn bản điện tử. Một trong
những vấn đề cấp thiết đặt ra là về mặt công nghệ và pháp lý thì chữ ký điện tử phải đáp ứng
được sự an toàn và thể hiện ý chí rõ ràng của các bên về thông tin chứa đựng trong văn bản
điện tử.

Hình 1: Mô hình mã hóa văn bản theo hệ mã khoá công khai
Với khả năng bảo mật cao của hệ mã khoá công khai nó được ứng dụng trong việc mã
hoá tạo ra chữ ký điện tử. Như vậy chữ ký điện tử được lưu trữ dưới dạng tập tin và được gửi
kèm với các văn bản hoặc các thông điệp. Nó xác nhận văn bản, thông điệp trên các hệ thống
thông tin điện tử thực sự được gửi bởi chính người gửi mà không phải là do một kẻ khác giả
mạo.

dẫn người dùng đi từng bước một. Quản lý những khóa này là một phần quan trọng của hệ
thống PGP. Tất nhiên sẽ có người lo lắng liệu các khóa công khai chúng ta đang giữ có phải là
khóa thật từ các chủ nhân chính thức không. PGP sẽ hiển thị cho thấy những khóa nào thuộc
quyền sở hữu của người sử dụng đã được xác thực.
5.2. Phần mềm Digital Signature:
Đây là chương trình của nhóm tác giả Phạm Huy Điển và Đinh Hữu Toàn công tác tại
Viện Toán thuộc Viện Khoa học và Công nghệ Việt Nam. Phần mềm này được đóng gói dưới 2
dạng Plugins trong MS Word (Hình 2) và phiên bản dành cho các ứng dụng khác trên môi
trường Windows

Hình 2: Plugins của Digital Signature trên MS Word

19

Hình 3: Digital Signature cho các văn bản khác
CƠ CHẾ CHỨNG THỰC GÓI TIN
1. Khái niệm chữ ký điện tử và chứng chỉ điện tử.
Trong cuộc sống hàng ngày, ta cần dùng chữ ký để xác nhận các văn bản tài liệu nào đó
và có thể dùng con dấu với giá trị pháp lý cao hơn đi kèm với chữ ký.
Cùng với sự phát triển nhanh chóng của công nghệ thông tin, các văn bản tài liệu được
lưu dưới dạng số, dễ dàng được sao chép, sửa đổi. Nếu ta sử dụng hình thức chữ ký truyền
thống như trên sẽ rất dễ dàng bị giả mạo chữ ký. Vậy làm sao để có thể ký vào các văn bản, tài
liệu số như vậy?
Câu trả lời đó là sử dụng chữ ký điện tử! Chữ ký điện tử đi kèm với các thông tin chủ
sở hữu và một số thông tin cần thiết khác sẽ trở thành Chứng chỉ điện tử.
Vậy chữ ký điện tử và chứng chỉ điện tử hoạt động như thế nào?
Chữ ký điện tử hoạt động dựa trên hệ thống mã hóa khóa công khai. Hệ thống mã hóa
này gồm hai khóa, khóa bí mật và khóa công khai (khác với hệ thống mã hóa khóa đối xứng,
chỉ gồm một khóa cho cả quá trình mã hóa và giải mã). Mỗi chủ thể có một cặp khóa như vậy,
chủ thể đó sẽ giữ khóa bí mật, còn khóa công khai của chủ thể sẽ được đưa ra công cộng để bất

giao dịch với nhân vật X chứ không phải là ai khác giả mạo X?
Chứng chỉ số được tạo ra để giải quyết vấn đề này!
Chứng chỉ số có cơ chế để xác nhận thông tin chính xác về các đối tượng sử dụng
chứng chỉ số.
Thông tin giữa A và X sẽ được xác nhận bằng một bên trung gian mà A và X tin tưởng.
Bên chung gian đó là nhà cung cấp chứng chỉ số CA (Certificate Authority).
CA có một chứng chỉ số của riêng mình, CA sẽ cấp chứng chỉ số cho A và X cũng như những
đối tượng khác.
Trở lại vấn đề trên, A và X sẽ có cách kiểm tra thông tin của nhau dựa trên chứng chỉ số
như sau: khi A giao dịch với X, họ sẽ chuyển chứng chỉ số cho nhau, đồng thời họ cũng có
chứng chỉ số của CA, phần mềm tại máy tính của A có cơ chế để kiểm tra chứng chỉ số của X
có hợp lệ không, phần mềm sẽ kết hợp chứng chỉ số của nhà cung cấp CA và chứng chỉ của X
để thông báo cho A về tính xác thực của đối tượng X.
Nếu phần mềm kiểm tra và thấy chứng chỉ của X là phù hợp với chứng chỉ CA, thì A có
thể tin tưởng vào X.
21
Cơ chế chữ ký điện tử và chứng chỉ số sử dụng các thuật toán mã hóa đảm bảo không
thể giả mạo CA để cấp chứng chỉ không hợp pháp, mọi chứng chỉ giả mạo đều có thể dễ dàng
bị phát hiện.
Trở lại tình huống trên, với cơ chế chứng chỉ số, mọi chứng chỉ đều được công khai để
bất kỳ ai cũng có thể truy cập được.
Vậy trong chứng chỉ số có những tham số gì? Theo cơ chế chữ ký điện tử như đã đề cập
ở trên thì trong chứng chỉ, một tham số quan trọng phải có đó là khóa công khai. Ngoài ra
chứng chỉ số còn chứa các thông tin về danh tính của đối tượng được cấp chứng chỉ, bao gồm
thông tin về chủ sở hữu chứng chỉ như email, số điện thoại… các thông tin này là tùy chọn theo
qui định của nhà cung cấp chứng chỉ số.
Vậy còn một tham số quan trọng trong sử dụng chứng chỉ số, đó là khóa bí mật? Khóa
bí mật sẽ không được lưu trong chứng chỉ số. Nó được lưu tại máy tính của chủ sở hữu, chủ sở
hữu cần chịu trách nhiệm giữ an toàn khóa bí mật này.
Trở lại với việc ký văn bản, tài liệu, khóa bí mật sẽ dùng để ký các văn bản, tài liệu của

mật, chứng chỉ số được chỉ ra cụ thể:
Khi sử dụng Internet Explore (IE) để truy cập vào một trang web sử dụng chứng chỉ số
để bảo mật, ta thấy dấu hiệu bảo mật ở Khóa vàng góc dưới. Nếu kích chuột vào đây, IE sẽ hiển
thị chứng chỉ số của trang web này.
Trên đây là cách thức sử dụng chứng chỉ số ở mức đơn giản. Cách thức sử dụng này
mới chỉ là bảo mật một phía, người dùng tin cậy chứng chỉ của trang web (web server) mà họ
truy cập, trong khi đó.
Cách thức bảo mật cao hơn là trường hợp người dùng phải có chứng chỉ để truy cập
trang web. Khi đó, để người dùng và web (web server) có thể xác thực được nhau, chứng chỉ
của người dùng và của web (web server) phải được cung cấp từ một CA. Ví dụ: chứng chỉ của
người dùng cũng phải được cung cấp bởi ‘Thawte SGC CA’ ( thuộc ‘VeriSign Class 3 Public
Primary CA’).
Việc sử dụng chứng chỉ số không chỉ áp dụng cho trường hợp giao dịch web như trên,
ngoài ra còn có nhiều hình thức sử dụng khác, ví dụ, sử dụng chứng chỉ số cho email, cho các
thiết bị di động…
2. Hiện trạng sử dụng chứng chỉ số trên thế giới và ở Việt Nam
Việc sử dụng chứng chỉ số trên thế giới hiện nay rất phổ biến, chủ yếu nhằm bảo mật
các giao dịch điện tử như bảo mật email, website, thanh đoán điện tử…
Các đơn vị chứng thực (CA) được xây dựng ở nhiều qui mô, cấp độ khác nhau. Từ các
cơ quan chính phủ đến các tổ chức doanh nghiệp, cá nhân đều có thể xây dựng CA, tùy thuộc
vào yêu cầu sử dụng.
Các CA có thể được xây dựng với mục đích chuyên dụng hoặc thương mại. CA chuyên
dụng được áp dụng trong phạm vi một cơ quan nhà nước, một tổ chức, một doanh nghiệp hoặc
có thể là do cá nhân tự xây dựng. Những đối tượng sử dụng CA chuyên dụng được cấp chứng
chỉ bởi CA đó và qui định tin tưởng nhau trong phạm vi CA.
CA thương mại được xây dựng nhằm mục đích thương mại, kinh doanh dịch vụ xác
thực điện tử. Những đối tượng sử dụng chứng chỉ của CA thương mại phải có thỏa thuận pháp
lý tin tưởng CA thương mại đó và tin tưởng những đối tượng khác được cấp chứng chỉ bởi CA.
Hiện trên thế giới có một số CA lớn, được thành lập vào những năm 90, với mục đích
thương mại như Verisign, Entrust, RSA…

Câu 3: Do độ bảo mật vượt trội của các thuật toán mã hóa công khai thì ngày nay
các thuật toán DES và 3DES còn được sử dụng hay không ? Và độ an toàn của thuật toán
RSA
DES thường được dùng để mã hoá bảo mật các thông tin trong quá trình truyền tin
cũng như lưu trữ thông tin. Một ứng dụng quan trọng khác của DES là kiểm tra tính xác thực
của mật khẩu truy nhập vào một hệ thống (hệ thống quản lý bán hàng, quản lý thiết bị viễn
thông…), hay tạo và kiểm tính hợp lệ của một mã số bí mật (thẻ internet, thẻ điện thoại di động
trả trước), hoặc của một thẻ thông minh (thẻ tín dụng, thẻ payphone…).
Độ an toàn của hệ thống RSA dựa trên 2 vấn đề của toán học: bài toán phân tích ra
thừa số nguyên tố các số nguyên lớn và bài toán RSA.
24
Bài toán RSA là bài toán tính căn bậc e môđun n (với n là hợp số): tìm số m sao cho
m
e
=c mod n, trong đó (e, n) chính là khóa công khai và c là bản mã
Tại thời điểm năm 2005, số lớn nhất có thể được phân tích ra thừa số nguyên tố có độ
dài 663 bít với phương pháp phân tán trong khi khóa của RSA có độ dài từ 1024 tới 2048 bít.
Một số chuyên gia cho rằng khóa 1024 bít có thể sớm bị phá vỡ (cũng có nhiều người phản đối
việc này). Với khóa 4096 bít thì hầu như không có khả năng bị phá vỡ trong tương lai gần. Do
đó, người ta thường cho rằng RSA đảm bảo an toàn với điều kiện n được chọn đủ lớn. Nếu n
có độ dài 256 bít hoặc ngắn hơn, nó có thể bị phân tích trong vài giờ với máy tính cá nhân
dùng các phần mềm có sẵn. Nếu n có độ dài 512 bít, nó có thể bị phân tích bởi vài trăm máy
tính tại thời điểm năm 1999. Một thiết bị lý thuyết có tên là TWIRL do Shamir và Tromer mô tả
năm 2003 đã đặt ra câu hỏi về độ an toàn của khóa 1024 bít. Vì vậy hiện nay người ta khuyến
cáo sử dụng khóa có độ dài tối thiểu 2048 bít.
Câu 4 : 3DES có thể bị bẻ gẫy hay không ?
Năm 1998, một nhóm nghiên cứu đã chi phí 220.000USD để chế tạo một thiết bị có thể
thử toàn bộ số chìa khoá DES 56 bit trong trung bình 4,5 ngày. Tháng 7 năm 1998 họ thông
báo đã phá chìa khoá DES trong 56 giờ. Thiết bị này gọi là Deep Crack gồm 27 board mạch,
mỗi board chứa 64 chip và có khả năng thử 90 tỷ chìa khoá trong một giây.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status