ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ LÊ THỊ THỦY ÁP DỤNG MẬT MÃ LƯỢNG TỬ ĐỂ TRUYỀN KHÓA MẬT MÃ LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hà Nội – 2012... ĐẠI HỌC QUỐC GIA HÀ N
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
LÊ THỊ THỦY
ÁP DỤNG MẬT MÃ LƯỢNG TỬ ĐỂ TRUYỀN KHÓA MẬT MÃ
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Hà Nội – 2012
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
LÊ THỊ THỦY
ÁP DỤNG MẬT MÃ LƯỢNG TỬ ĐỂ TRUYỀN KHÓA MẬT MÃ
Ngành: Công nghệ thông tin
Chuyên ngành: Hệ Thống Thông Tin
Mã số: 60 48 05
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS TRỊNH NHẬT TIẾN
Hà Nội – 2012
Trang 3MỤC LỤC
LỜI CAM ĐOAN 1
LỜI CẢM ƠN 2
MỤC LỤC 3
DANH MỤC CÁC HÌNH VẼ 4
MỞ ĐẦU 5
CHƯƠNG 1: TỔNG QUAN VỀ MẬT MÃ 7
1.1 TỔNG QUAN VỀ MÃ HÓA DỮ LIỆU 7
1.1.1 Khái niệm Mã hóa dữ liệu 7
1.1.2 Phân loại hệ mã hóa 8
1.1.3 Hệ mã hóa dịch chuyển 11
1.1.4 Hệ mã Affine 12
1.1.5 Hệ mã hóa VIGENERE 13
1.2 TỔNG QUAN VỀ CHỮ KÝ SỐ 14
1.2.1 Khái niệm chữ ký số 14
1.2.2 Phân loại chữ ký số 16
1.2.3 Chữ ký RSA 17
1.2.4 Chữ ký EGAMAL 19
CHƯƠNG 2 GIỚI THIỆU MẬT MÃ LƯỢNG TỬ 21
2.1 GIỚI THIỆU 21
2.1.1 Cơ sở vật lý hình thành mật mã lượng tử 23
2.1.2 Lý thuyết lượng tử 26
2.2 PHÂN PHỐI KHÓA LƯỢNG TỬ 29
2.2.1 Giới thiệu về phân phối khóa lượng tử 29
2.2.2 Các giao thức phân phối khóa lượng tử 31
2.3 ỨNG DỤNG CỦA MẬT MÃ LƯỢNG TỬ 49
CHƯƠNG 3 50
ÁP DỤNG MẬT MÃ LƯỢNG TỬ ĐỂ TRUYỀN KHÓA MẬT MÃ 50
3.1 VÍ DỤ VỀ MỘT SỐ HỆ MÃ HÓA ĐỐI XỨNG 50
* Hệ mã hóa dịch chuyển 50
* Hệ mã Affine 50
3.2 VÍ DỤ VỀ CHỮ KÝ SỐ RSA 51
3.3 VÍ DỤ MINH HỌA ĐỂ TRUYỀN KHÓA MẬT MÃ 51
3.4 ĐÁNH GIÁ 52
KẾT LUẬN 53
ĐỀ XUẤT VÀ HƯỚNG PHÁT TRIỂN 54
TÀI LIỆU THAM KHẢO 55
Trang 4MỞ ĐẦU
Cùng với sự phát triển của công nghệ thông tin, công nghệ mạng máy tính và mạng Internet ngày càng phát triển phong phú Các dịch vụ trên mạng Internet đã xâm nhập vào hầu hết các lĩnh vực trong đời sống xã hội Các thông tin trên mạng cũng đa dạng
cả về nội dung và hình thức, trong đó có rất nhiều thông tin cần bảo mật cao bởi tính kinh tế, tính chính xác và tin cậy của nó
Bên cạnh đó, những dịch vụ mạng ngày càng có giá trị, yêu cầu phải đảm bảo tính ổn định và an toàn cao Các công nghệ và giải pháp để bảo vệ thông tin đã và đang được nghiên cứu, phát triển phù hợp với dạng lưu trữ của thông tin và cách thức truyền tin Giải pháp bảo mật thông tin hiện đang được sử dụng phổ biến nhất là các hệ mã hóa và chữ ký số Tin tặc cố gắng tìm cách để thám mã và tấn công nhằm lấy cắp thông tin hoặc giả mạo chữ ký trên đường truyền
Cùng với sự phát triển lớn mạnh của ngành mật mã học, các nhà mật mã học đã nghiên cứu và đưa ra một hệ mật mã mới mang tên “mật mã lượng tử” Mật mã lượng tử là hệ mật mã dựa trên các tính chất của cơ học lượng tử và không phụ thuộc vào bất
cứ sự tính toán nào, do đó nó được cho là giải pháp chống lại sự tính toán lớn của máy tính lượng tử Mật mã lượng tử đã được chứng minh có khả năng bảo mật vô điều kiện Trên thế giới đã có nhiều nước đang xây dựng mạng lượng tử như Mỹ, Anh …Ở Việc Nam cũng đã có một số đề tài nghiên cứu về mật mã lượng tử
Với sự kết hợp của vật lý lượng tử và cơ sở toán học hiện đại đã tạo nền móng cho việc xây dựng máy tính lượng tử Với khả năng xử lý song song và tốc độ tính toán nhanh, mô hình máy tính lượng tử đã đặt ra các vấn đề mới trong lĩnh vực công nghệ thông tin Như vậy khi máy tính lượng tử xuất hiện sẽ dẫn đến các thông tin bí mật sẽ khó bị đánh cắp trên đường truyền Điều này đặt ra
Trang 5vấn đề nghiên cứu các hệ mật mới để đảm bảo an toàn khi máy tính lượng tử xuất hiện Đồng thời, do máy tính lượng tử hiện nay mới chỉ xuất hiện trong phòng thí nghiệm, nhu cầu mô phỏng các thuật toán lượng tử trên máy tính thông thường là tất yếu
Ở Việt Nam hiện nay, các nhà toán học cũng bước đầu có những nghiên cứu về tính toán lượng tử và mô phỏng tính toán lượng tử trên máy tính thông thường Ví dụ như nhóm Quantum của trường Đại học Bách Khoa Hà Nội Tuy nhiên vẫn còn nhiều vấn đề để mở, và việc này cần có sự đầu tư thích đáng, tìm tòi, thực nghiệm trên cơ sở những thành tựu về lý thuyết và kinh nghiệm sẵn
có trên thế giới, đồng thời áp dụng vào thực tế
Luận văn “ Áp dụng mật mã lượng tử để truyền khóa
mật mã”
Mục đích của luận văn
Công nghệ thông tin càng phát triển thì việc thông tin trên đường truyền rất dễ bị đánh cắp hoặc bị sửa đổi Do đó cần tìm ra cách truyền tin là an toàn nhất Mật mã lượng tử là một lĩnh vực đang được quan tâm nghiên cứu trong nước cũng như thế giới Nội dung luận văn tập trung vào việc tìm hiểu về mât mã lượng tử, áp dụng mật mã lượng tử trong việc truyền khóa mật mã
Trong khuôn khổ luận văn này, trên những cơ sở những thành tựu đã có trên thế giới và trong nước tôi xin trình bày tổng quan các nghiên cứu lý thuyết về tính toán lượng tử, đồng thời mô phỏng thuật toán phân phối khóa lượng tử BB84, Áp dụng thuật toán phân phối khóa lượng tử BB84 để truyền khóa bí mật trong thuật toán mã hóa RSA Luận văn gồm có phần mở đầu, kết luận và
03 chương đề cập tới các nội dung chính như sau:
Chương 1: Tổng quan về mật mã
Chương 2: Mật mã lượng tử
Chương 3: Áp dụng mật mã lượng tử để truyền khóa mật
mã
Trang 6Cuối cùng, phần kết luận trình bày một số kết quả đạt được của luận văn và hướng nghiên cứu tiếp theo trong tương lai
Trang 7Chương 1: TỔNG QUAN VỀ MẬT MÃ 1.1 TỔNG QUAN VỀ MÃ HÓA DỮ LIỆU
1.1.1 Khái niệm Mã hóa dữ liệu
Để bảo đảm An toàn thông tin (ATTT) lưu trữ trong máy tính (giữ gìn thông tin cố định) hay bảo đảm An toàn thông tin trên đường truyền tin (trên mạng máy tính), người ta phải
“Che Giấu” các thông tin này
“Che” thông tin (dữ liệu) hay “Mã hóa ” thông tin là
thay đổi hình dạng thông tin gốc (Giấu đi ý nghĩa nghĩa TT gốc),
và người khác “khó” nhận ra
“Giấu” thông tin (dữ liệu) là cất giấu thông tin trong bản
tin khác, và người khác cũng “khó” nhận ra (Giấu đi sự hiện diện
Trang 82) Mã hóa và Giải mã:
Người gửi G e ke (T) Người nhận N
(có khóa lập mã ke) (có khóa giải mã kd)
bản tin gốc T nếu không có khoá giải mã kd
Người N nhận được bản mã, họ dùng khoá giải mã kd, để
giải mã e ke (T), sẽ nhận được bản tin gốc T = d kd (e ke ( T ))
1.1.2 Phân loại hệ mã hóa
Cách 1 : Phân loại mã hoá theo đặc trưng của khoá.
Hệ mã hóa khóa đối xứng (Mã hoá khoá riêng, bí mật)
Hệ mã hóa khóa phi đối xứng (Khóa công khai).
Hiện có 2 loại mã hóa chính: mã hóa khóa đối xứng và mã hóa khoá công khai
Hệ mã hóa khóa đối xứng có khóa lập mã và khóa giải mã “đối
xứng nhau”, theo nghĩa biết được khóa này thì “dễ” tính được khóa kia
Vì vậy phải giữ bí mật cả 2 khóa
Hệ mã hóa khóa công khai có khóa lập mã khác khóa giải
mã (ke kd), biết được khóa này cũng “khó” tính được khóa kia Vì
vậy chỉ cần bí mật khóa giải mã, còn công khai khóa lập mã
Cách 2 : Phân loại mã hoá theo đặc trưng xử lý bản rõ.
Mã hoá khối, Mã hoá dòng
Cách 3 : Phân loại mã hoá theo ứng dụng đặc trưng.
Trang 9Mã hoá đồng cấu, mã hóa xác suất, mã hóa tất định
Trang 10Để kiểm tra một “chữ ký số” thuộc về một “tài liệu số”, người ta giải mã “chữ ký số” bằng “khóa giải mã”, và so sánh với tài liệu gốc
Ngoài ý nghĩa để chứng thực nguồn gốc hay hiệu lực của các tài liệu số hóa,“chữ ký số” còn dùng để kiểm tra tính toàn vẹn của tài liệu gốc
Mặt mạnh của “chữ ký số” hơn “chữ ký tay” còn là ở chỗ người ta có thể “ký” vào tài liệu từ rất xa (trên mạng công khai) Hơn thế nữa, có thể “ký” bằng các thiết bị cầm tay (Ví dụ điện thoại di động) tại khắp mọi nơi (Ubikytous) và di động (Mobile), miễn là kết nối được vào mạng Đỡ tốn bao thời gian, sức lực, chi phí
V là tập các thuật toán kiểm thử
Với mỗi khóa k K, có thuật toán ký Sigk S, Sigk : P A,
có thuật toán kiểm tra chữ ký Verk V,
Verk : P x A {đúng, sai},
thoả mãn điều kiện sau với mọi x P, y A:
Trang 11Đúng, nếu y = Sig k (x) Ver k (x, y) = Sai, nếu y Sig k (x)
1/ Chữ ký có thể khôi phục thông điệp gốc:
2/ Chữ ký không thể khôi phục thông điệp gốc:
1.2.2.2: Phân loại chữ ký theo mức an toàn
Trang 12CHƯƠNG 2 GIỚI THIỆU MẬT MÃ LƯỢNG TỬ 2.1 GIỚI THIỆU
Mật mã lượng tử là công nghệ cho phép bảo vệ thông tin truyền đi bằng truyền thông quang, qua quang sợi cũng như qua không gian Nó cho phép thông tin được bảo vệ “tuyệt đối”, không phụ thuộc vào độ mạnh của máy tính, độ tối tân của dụng cụ hay sự xảo quyệt của hacker Sự bảo vệ thông tin của mật mã lượng tử bắt nguồn từ những quy luật không thể phá bỏ của tự nhiên, ở đây là các tính chất của cơ học lượng tử, do đó nó được xem như là một
sự bảo vệ mạnh mẽ nhất có thể cho dữ liệu
2.1.1 Cơ sở vật lý hình thành mật mã lượng tử
Những nguyên lý cơ bản của vật lý lượng tử được sử dụng trong thông tin và mật mã lượng tử Nhưng bằng những kết quả nghiên cứu mới, các nhà Vật lý đã chứng minh được rằng: việc sử dụng các tính chất kỳ lạ của vật lý lượng tử lại dẫn đến ứng dụng
cụ thể đầu tiên của Thông tin lượng tử là truyền khóa mật mã hoàn toàn đảm bảo không ai theo dõi nghe trộm
Các nguyên lý là:
Nguyên lý bất định của Heisenberg: Người ta không bao giờ có thể xác định chính xác cả vị trí lẫn vận tốc của một hạt vào cùng một lúc Nếu ta biết một đại lượng càng chính xác thì ta biết đại lượng kia càng kém chính xác
Định lý không thể sao chép (no-clonning): Dựa trên nguyên lý bất định, vì không thể biết chắc chắn trạng thái một hệ thống lượng tử nên không thể sao chép hoàn hảo một hệ thống lượng tử bất kỳ
Tính chất vướng víu lượng tử (entanglement): Một hệ thống lượng tử có thể tương liên với một hay nhiều hệ thống lượng
tử khác Mỗi phân hệ sinh ngẫu nhiên ra trạng thái của mình và không một phân hệ nào có trạng thái cố định
Từ lâu, các nhà vật lý đã biết rằng ánh sáng vừa có bản chất hạt, vừa có bản chất sóng Một photon có thể xem như một điện
Trang 13trường tí hon giao động Hướng giao động của điện trường được
định nghĩa là sự phân cực (polarization) của photon Một đặc tính
của photon phân cực là khi người ta cho chúng đi qua một bộ lọc
phân cực (polarised filter) thì các photon, hoặc là bị bộ lọc hấp thụ,
hoặc được truyền đi nhưng với sự phân cực của bộ lọc Và xác
suất của photon được truyền qua bộ lọc là cos2(), trong đó là
góc phân cực của photon so với góc phân cực của bộ lọc (hình 2.3)
Photon (vào) Filter phân cực Photon (ra) – xác suất cos2(α)
Hình 2.3: Sự phân cực của photon khi qua bộ lọc phân cực Như vậy, khi cho một chùm photon đi qua một bộ lọc phân cực, các photon thu được sẽ có cùng mặt phẳng phân cực của bộ lọc Đây chính là nguyên tắc lập mã cho photon Bộ lọc phân cực cũng được dùng để xác định trạng thái phân cực của photon Ví dụ nếu nguồn photon chỉ gồm những photon có các góc phân cực 0° và 90° thì dùng một bộ lọc 0°, người ta có thể xác định được chính xác những photon 0° (qua) và 90° (không qua) Thao tác này gọi là phép
đo phân cực của photon Một cặp bộ lọc phân cực trực giao để lập
mã hoặc đo photon được gọi là một cơ sở (base) Người ta có thể sử
dụng một cơ sở như vậy để biểu diễn các giá trị 0 và 1 bằng các photon
Tóm lại, những tính chất kỳ lạ của vật lý lượng tử lúc đầu
đã gây khó khăn cho các nhà khoa học khi nghiên cứu ứng dụng của Thông tin lượng tử Nhưng bằng những kết quả nghiên cứu
Trang 14mới, các nhà Vật lý đã chứng minh được rằng: việc sử dụng các tính chất kỳ lạ của vật lý lượng tử lại dẫn đến ứng dụng cụ thể đầu tiên của Thông tin lượng tử là truyền khóa mật mã hoàn toàn đảm bảo không ai theo dõi nghe trộm
và ket 1) tương ứng với hai trạng thái phân cực thẳng dọc và phân cực thẳng ngang của photon
Hình 2.5: Hai trạng thái cơ bản của qubit Trạng thái |- và |+ của bit lượng tử tương ứng với sự phân cực của photon là phân cực chéo 450 và 1350
|1 ket
1
|0 ket
0
Trang 15Xét bốn trạng thái cơ bản của lượng tử vừa đề cập ở trên là
|1, |0, |+,|-, ta có 1|0=0 Như vậy cặp |1,|0 được gọi là cặp đôi trực chuẩn, cặp đôi này tạo lên cơ sở gọi là cơ sở ngang Tương
tự từ |+,|- cũng là cặp đôi trực chuẩn tạo lên cơ sở chéo
Khi đo lường lượng tử, một photon phân cực được sinh ra trong cơ sở nào sẽ được đo lường đúng trong cơ sở Photon sinh ra trong cơ sở ngang và trạng thái phân cực của nó là |0 hoặc |1 thì sau khi ta đo lường nó ta cũng được trạng thái phân cực là |0 hoặc |1 Cũng như vậy, photon sinh ra trong cơ sở chéo và trạng thái phân cực của nó là |- hoặc |+ thì sau khi ta đo lường nó ta cũng được trạng thái phân cực là |- hoặc |+
2.2 PHÂN PHỐI KHÓA LƯỢNG TỬ
2.2.1 Giới thiệu về phân phối khóa lượng tử
Phân phối khóa lượng tử sử dụng các tính chất của cơ học lượng tử, dùng để phân phối khóa hệ mật mã đối xứng Trong phân phối khóa lượng tử, chúng ta sử dụng hai kênh truyền là kênh truyền lượng tử và kênh truyền thông thường Kênh truyền lượng
tử là kênh truyền sử dụng kỹ thuật lượng tử để truyền đi các qubit thông qua cáp quang hoặc không gian Kênh truyền thông thường
là kênh truyền công khai sử dụng kỹ thuật TCP/IP…
Trang 16Mô hình phân phối khóa lượng tử giữa Alice (người gửi)
và Bob (người nhận), tùy theo giao thức cụ thể mà người ta chia ra
làm các bước cụ thể, nhưng nhìn chung gồm bốn giai đoạn:
+ Giai đoạn 1: Alice thực hiện mã hóa các bit cổ điển vào
các photon phân cực (qubit), rồi chuyển các qubit này cho Bob
Bob thực hiện đo lường các qubit này, để thiết lập khóa ban đầu
+ Giai đoạn 2: Alice và Bob loại ra các bit mà Alice và
Bob không sử dụng cùng cơ sở là các qubit được Alice tạo ra trong
một cơ sở, nhưng Bob đo lương trong cơ sở khác
+ Giai đoạn 3: Alice và Bob đánh giá tỷ lệ lỗi Nếu tỷ lệ lỗi
lớn quá giới hạn lỗi họ sẽ hủy phiên truyền khóa và thực hiện lại
phiên truyền khóa khác
+ Giai đoạn 4: Alice và Bob sử dụng kỹ thuật “làm mịn
khóa” (Reconciliation infomation) để đồng nhất khóa giữa Alice và
Bob, họ thu được khóa đã làm mịn khóa và “tăng tính bảo mật”
(privacy Amplification) làm giảm hiểu biết của Eve về khóa, họ thu
được khóa cuối cùng
2.2.2 Các giao thức phân phối khóa lượng tử
- Giao thức BB84
Giao thức BB84 được Bennett và Brassard đề xuất năm
1984, tên của giao thức được lấy theo 2 chữ cái đầu của tên hai tác
giả và năm phát mình BB84 là giao thức phân phối khóa lượng tử
đầu tiên được đề xuất
Trong giao thức BB84, Alice mã hóa các bit vào các bit
trong hai cơ sở chéo và cơ sở ngang Nghĩa là khi nào Alice muốn
gửi cho Bob một qubit, Alice sẽ chọn một trong bốn trạng thái của
qubit |0, |1, |+, |- Sau đó an gửi các trạng thái này cho Bob
thông qua kênh truyền lượng tử
Trang 17* Quy ước trong giao thức BB84
Các bít được mã hóa và giải mã theo bảng dưới đây
Nghĩa là qubit có trạng thái |0 và |+ mang thông tin về bit
0 Ngược lại những qubit có trạng thái |1 hoặc |- mang thông tin
về bit 1
- Giao thức B92
Giao thức B92 được đề xuất năm 1992 bởi Charles Bennet
là một trong 2 tác giả của giao thức BB84 Giao thức được thiết kế dựa trên ý tưởng của BB84, với hy vọng mang lại sự đơn giản hơn cho việc cài đặt giao thức phân phối khóa lượng tử
Trong giao thức B92, mỗi bên nhận và gửi chỉ dùng một cặp đôi không trực chuẩn để mã hóa và giải mã giá trị của bit Alice
và Bob cùng thỏa thuận trước cặp đôi mà mỗi người sử dụng cùng quy ước chuyển đổi qubit và giá trị của bit
Qubit Giá trị bit của Alice Giá trị bit của Bob
Như vậy, Alice sử dụng cặp trạng thái không trực chuẩn là
|0 và |+; |0 để mã hóa bit 0 và |+ để mã hóa bit 1 Nghĩa là khi nào Alice muốn gửi cho Bob bit 0 anh ta sẽ chuẩn bị |0 và khi nào muốn gửi bit 1 anh ta sẽ chuẩn bị |+ Sau đó Alice gửi các trạng thái này cho Bob thông qua kênh truyền lượng tử