Tải bản đầy đủ (.pdf) (53 trang)

Áp dụng mật mã lượng tử để truyền khóa mật mã

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.48 MB, 53 trang )

3

MỤ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
4

DANH MỤC CÁC HÌNH VẼ

Hình 2.1: Mô hình trao đổi thông tin bí mật 21
Hình 2.2: Mô hình trao đổi thông tin bí mật dựa trên cơ học lượng tử. 23
Hình 2.3: Sự phân cực của photon khi qua bộ lọc phân cực 24
Hình 2.4: Đo phân cực photon bằng các hệ cơ sở thẳng và chéo 25
Hình 2.5: Hai trạng thái cơ bản của qubit 26
Hình 2.6: Hai cơ sở quan trọng của qubit 28
Hình 2.7: Mô hình phân phối khóa 29
Hình 2.8: Mô hình giao thức BB84 35
Hình 2.9: Cặp đôi không trực chuẩn mà Alice sử dụng 40
Hình 2.10: Kết quả phép đo lường của Bob 41
Hình 2.11: Sơ đồ trạng thái của qubit 41
Hình 2.12: Sơ đồ trạng thái của Bob khi Alice gửi qubit có trạng thái |0. 44
Hình 2.13: Sơ đồ trạng thái của Bob khi Alice gửi qubit có trạng thái |+. 45
Hình 2.14: Quá trình phát hiện lỗi 47
Hình 2.15: Quá trình sửa lỗi 48
Hình 2.16: Quá trình tăng tính bảo mật 48
5


MỞ ĐẦ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 vấ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.
6

Ở 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ế.
Vấn đề đặt ra
Làm sao trong thông tin không bị đánh cắp hoặc sửa đổi trên đường truyền. Ta
có thể áp dụng mật mã lượng tử vào việc truyền khóa mật mã được không?
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, dựa vào 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 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ã
Cuố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.
7

Chƣơ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 TT gốc).
Trong mục này chúng ta bàn về “Mã hóa ” thông tin.
1). Hệ mã hóa:
Việc mã hoá phải theo quy tắc nhất định, quy tắc đó gọi là Hệ mã hóa.
Hệ mã hóa được định nghĩa là bộ năm (P, C, K, E, D), trong đó:
P là tập hữu hạn các bản rõ có thể. C là tập hữu hạn các bản mã có thể.
K là tập hữu hạn các khoá có thể.
E là tập các hàm lập mã. D là tập các hàm giải mã.
Với khóa lập mã ke  K, có hàm lập mã e
ke
 E, e
ke
: P C,
Với khóa giải mã kd  K, có hàm giải mã d
kd
 D, d
kd
: C

P,
sao cho d
kd
(e
ke

(x)) = x,  x  P.
Ở đây x được gọi là bản rõ, e
ke
(x) được gọi là bản mã.
8

2). 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)

Tin tặc có thể trộm bản mã e
ke
(T)

Người gửi G muốn gửi bản tin T cho người nhận N. Để bảo đảm bí mật, G
mã hoá bản tin bằng khóa lập mã ke, nhận được bản mã e
ke
(T), sau đó gửi cho N.
Tin tặc có thể trộm bản mã e
ke
(T), nhưng cũng “khó” hiểu được 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ó nhiều mã hoá tùy theo cách phân loại, sau đây xin giới thiệu một số cách.
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.
Mã hoá đồng cấu, mã hóa xác suất, mã hóa tất định
1.1.2.1. Hệ mã hóa khóa đối xứng
Mã hóa khóa đối xứng là Hệ mã hóa mà biết được khóa lập mã thì có thể “dễ”
tính được khóa giải mã và ngược lại. Đặc biệt một số Hệ mã hóa có khoá lập mã và khoá
giải mã trùng nhau (ke = kd), như Hệ mã hóa “dịch chuyển” hay DES.
9

Hệ mã hóa khóa đối xứng còn gọi là Hệ mã hóa khoá bí mật, hay khóa riêng, vì
phải giữ bí mật cả 2 khóa. Trước khi dùng Hệ mã hóa khóa đối xứng, người gửi và người
nhận phải thoả thuận thuật toán mã hóa và khoá chung (lập mã hay giải mã), khoá phải
được giữ bí mật. Độ an toàn của Hệ mã hóa loại này phụ thuộc vào khoá.
Ví dụ:
+ Hệ mã hóa cổ điển là Mã hóa khóa đối xứng: dễ hiểu, dễ thực thi, nhưng có

độ an toàn không cao. Vì giới hạn tính toán chỉ trong phạm vi bảng chữ cái, sử dụng
trong bản tin cần mã, ví dụ là Z
26
nếu dùng các chữ cái tiếng Anh. Với hệ mã hóa cổ
điển, nếu biết khoá lập mã hay thuật toán lập mã, có thể “dễ” xác định được bản rõ,
vì “dễ” tìm được khoá giải mã.
+ Hệ mã hóa DES (1973) là Mã hóa khóa đối xứng hiện đại, có độ an toàn
cao.
a). Đặc điểm của Hệ mã hóa khóa đối xứng.
Ưu điểm:
Hệ mã hóa khóa đối xứng mã hóa và giải mã nhanh hơn Hệ mã hóa khóa công
khai.
Hạn chế:
1). Mã hóa khóa đối xứng chưa thật an toàn với lý do sau:
Người mã hoá và người giải mã phải có “chung” một khoá. Khóa phải được
giữ bí mật tuyệt đối, vì biết khoá này “dễ” xác định được khoá kia và ngược lại.
2). Vấn đề thỏa thuận khoá và quản lý khóa chung là khó khăn và phức tạp.
Người gửi và người nhận phải luôn thống nhất với nhau về khoá. Việc thay đổi khoá là
rất khó và dễ bị lộ. Khóa chung phải được gửi cho nhau trên kênh an toàn.
Mặt khác khi hai người (lập mã, giải mã) cùng biết “chung” một bí mật, thì
càng khó giữ được bí mật !
b). Nơi sử dụng Hệ mã hóa khóa đối xứng.
Hệ mã hóa khóa đối xứng thường được sử dụng trong môi trường mà khoá
chung có thể dễ dàng trao chuyển bí mật, chẳng hạn trong cùng một mạng nội bộ.
Hệ mã hóa khóa đối xứng thường dùng để mã hóa những bản tin lớn, vì tốc độ
mã hóa và giải mã nhanh hơn Hệ mã hóa khóa công khai.
1.1.2.2. Hệ mã hóa khóa công khai
Hệ mã hóa khóa phi đối xứng là Hệ mã hóa có khóa lập mã và khóa giải mã
khác nhau (ke  kd), biết được khóa này cũng “khó” tính được khóa kia.
Hệ mã hóa này còn được gọi là Hệ mã hoá khóa công khai, vì:

Khoá lập mã cho công khai, gọi là khoá công khai (Public key).
10

Khóa giải mã giữ bí mật, còn gọi là khóa riêng (Private key) hay khóa bí
mật.
Một người bất kỳ có thể dùng khoá công khai để mã hoá bản tin, nhưng chỉ
người nào có đúng khoá giải mã thì mới có khả năng đọc được bản rõ.
Hệ mã hóa khoá công khai hay Hệ mã hóa phi đối xứng do Diffie và
Hellman phát minh vào những năm 1970.
a). Đặc điểm của Hệ mã khoá công khai.
Ưu điểm:
1). Hệ mã hóa khóa công khai có ưu điểm chủ yếu sau:
Thuật toán được viết một lần, công khai cho nhiều lần dùng, cho nhiều người
dùng,
họ chỉ cần giữ bí mật khóa riêng của mình.
2). Khi biết các tham số ban đầu của hệ mã hóa, việc tính ra cặp khoá công khai
và bí mật phải là “dễ”, tức là trong thời gian đa thức.
Người gửi có bản rõ P và khoá công khai, thì “dễ” tạo ra bản mã C.
Người nhận có bản mã C và khoá bí mật, thì “dễ” giải được thành bản rõ P.
3). Người mã hoá dùng khóa công khai, người giải mã giữ khóa bí mật. Khả
năng lộ khóa bí mật khó hơn vì chỉ có một người giữ gìn.
Nếu thám mã biết khoá công khai, cố gắng tìm khoá bí mật, thì chúng phải
đương đầu với bài toán “khó”.
4). Nếu thám mã biết khoá công khai và bản mã C, thì việc tìm ra bản rõ P
cũng là bài toán “khó”, số phép thử là vô cùng lớn, không khả thi.
Hạn chế:
Hệ mã hóa khóa công khai: mã hóa và giải mã chậm hơn hệ mã hóa khóa đối
xứng.
b). Nơi sử dụng Hệ mã hóa khoá công khai.
Hệ mã hóa khóa công khai thường được sử dụng chủ yếu trên các mạng công

khai như Internet, khi mà việc trao chuyển khoá bí mật tương đối khó khăn.
Đặc trưng nổi bật của hệ mã hoá công khai là khoá công khai (public key) và
bản mã (ciphertext) đều có thể gửi đi trên một kênh truyền tin không an toàn.
Có biết cả khóa công khai và bản mã, thì thám mã cũng không dễ khám phá
được bản rõ.
Nhưng vì có tốc độ mã hóa và giải mã chậm, nên hệ mã hóa khóa công khai
chỉ dùng để mã hóa những bản tin ngắn, ví dụ như mã hóa khóa bí mật gửi đi.
11

1.1.3. Hệ mã hóa dịch chuyển.
Sơ đồ
Đặt P = C = K = Z
26
.
Với khóa k  K, ta định nghĩa cho x, y  Z
26
:
Mã hóa: e
k
(x) = (x + k) mod 26
Giải mã: d
k
(y) = (y - k) mod 26
Ví dụ Chọn khóa k = 3.
* Cần gửi bản rõ chữ: T O I N A Y T H A V I R U S
Chuyển sang rõ số:19 14 8 26 13 0 24 26 19 7 0 26 21 8 17 20 18
* Với phép mã hóa e
k
(x) = (x + k) mod 26, ta nhận được:
* Bản mã số: 22 17 11 3 16 3 1 3 22 10 3 3 24 11 20 23 21

* Bản mã chữ: W R L D Q D B D W K D D Y L U X V
* Khi nhận được bản mã, dùng phép giải mã d
k
(x) = (y - k) mod 26, sẽ nhận
lại được bản rõ số, sau đó là bản rõ chữ.
* Độ an toàn
- Tập khóa K chỉ có 26 khóa k = 1, 2, 3, , 26.
- Việc lập mã và giải mã dùng chung 1 khóa k. Mà phạm vi tập khóa K
chỉ có 26 khóa nên dễ dàng tìm ra.
- Nhiều lần mã hóa và giải mã có thể sử dụng chung một khóa k.
12

1.1.4. Hệ mã Affine.
Sơ đồ
Đặt P = C = Z
26
.
Tập khóa K = {(a, b), với a, b Z
26
, UCLN(a, 26) = 1}
Với k = (a, b)

K, ta định nghĩa cho x, y

Z
26
:
Mã hóa y = e
k
(x) = (a x + b) mod 26

Giải mã x = d
k
(y) = a
-1
(y - b) mod 26
Ví dụ Cho bản rõ chữ: CHIEUNAYOVUONHOA
Chọn khóa là k = (3, 6)
* Bản rõ số là: x = 2 7 8 4 20 13 0 24 14 21 20 14 13 7 14 0
* Bản mã số là: y = 12 1 4 18 14 19 6 0 22 17 14 22 19 1 22 6
Mã hóa y = e
k
(x) = (a x + b) mod 26 = (3 x + 6) mod 26
* Bản mã chữ là: MBESOTGAWROWTBWG
Giải mã x = d
k
(y) = a
-1
(y - b) mod 26 = 3
-1
(y - 6) mod 26
= 9 * (y – 6) mod 26.
* Độ an toàn
- Khóa mã hóa và giải mã sử dụng chung 1 chìa khóa
- Chọn khóa k= (a,b) trong nhiều lần mã hóa và giải mã dễ trùng nhau.
- Khóa k=(a,b) mà a, b Z
26
, UCLN(a, 26) = 1.
Có tất cả (26) = 12 số a  Z
26
nguyên tố với 26, đó là các số :

1, 3, 5, 7 ,9, 11, 15, 17, 19, 21, 23, 25.
Các số nghịch đảo theo mod 26 tương ứng của chúng là:
1, 9, 21, 15, 3, 19, 7, 23, 11, 5, 17, 25
Có 12 số thuộc Z
26
nguyên tố với 26, Số các khoá có thể có là 12 * 26 = 312.
13

1.1.5. Hệ mã hóa VIGENERE.
Sơ đồ
Cho m là một số nguyên dương. Định nghĩa P = C = K = (Z
26
)
m
.
Với khoá k = (k
1
, k
2
, ….,k
m
):
Hàm mã hóa: e
k
(x
1
, x
2
, … ,x
m

) = (x
1
+ k
1
, x
2
+ k
2
,……, x
m
+ k
m
)
Hàm giải mã: d
k
(y
1
, y
2
, … ,y
m
) = (y
1
- k
1
, y
2
- k
2
,……, y

m
- k
m
)
Trong đó tất cả các phép toán được thực hiện trong Z
26
Ví dụ
* Bản rõ chữ: THISISACRYPTOSYSTEM
Chọn Khoá là k = “KWORD” = {10, 22, 14, 17, 3}
Với độ dài khoá là 5, ta chia bản rõ thành các phần tử có độ dài là 5. Cộng với
khoá theo modulo 26.
19
10
7
22
8
14
18
17
8
3
18
10
0
22
2
14
17
17
24

3
3
3
22
9
11
2
22
16
8
1

15
10
19
22
14
14
18
17
24
3
18
10
19
22
4
14
12
17

25
15
2
9
1
2
15
18
3
* Bản mã chữ: DDWJL CWQIB ZPCJB CPSD

* Độ phức tạp
- Khóa mã hóa và giải mã sử dụng chung 1 chìa khóa
- Độ dài khóa k mà nhỏ thì dễ dàng tính được.

14

1.2. TỔNG QUAN VỀ CHỮ KÝ SỐ
1.2.1 Khái niệm chữ ký số
1.2.1.1 Giới thiệu
Để chứng thực nguồn gốc hay hiệu lực của một tài liệu (ví dụ: đơn xin học,
giấy báo nhập học, ), lâu nay người ta dùng chữ ký “tay”, ghi vào phía dưới của
mỗi tài liệu. Như vậy người ký phải trực tiếp“ký tay“ vào tài liệu.
Ngày nay các tài liệu được số hóa, người ta cũng có nhu cầu chứng thực nguồn
gốc hay hiệu lực của các tài liệu này. Rõ ràng không thể “ký tay“ vào tài liệu, vì
chúng không được in ấn trên giấy. Tài liệu “số” ( hay tài liệu “điện tử”) là một xâu
các bit (0 hay 1), xâu bít có thể rất dài (nếu in trên giấy có thể hàng nghìn trang).
“Chữ ký” để chứng thực một xâu bít tài liệu cũng không thể là một xâu bit nhỏ đặt
phía dưới xâu bit tài liệu. Một “chữ ký” như vậy chắc chắn sẽ bị kẻ gian sao chép để
đặt dưới một tài liệu khác bất hợp pháp.

Những năm 80 của thế kỷ 20, các nhà khoa học đã phát minh ra “chữ ký số”
để chứng thực một “tài liệu số”. Đó chính là “bản mã” của xâu bít tài liệu.
Người ta tạo ra “chữ ký số” (chữ ký điện tử) trên “tài liệu số” giống như tạo ra
“bản mã” của tài liệu với “khóa lập mã”.
Như vậy “ký số” trên “tài liệu số” là “ký” trên từng bit tài liệu. Kẻ gian khó thể
giả mạo “chữ ký số” nếu nó không biết “khóa lập mã”.
Để 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í.
“Ký số” thực hiện trên từng bit tài liệu, nên độ dài của “chữ ký số” ít nhất
cũng bằng độ dài của tài liệu. Do đó thay vì ký trên tài liệu dài, người ta thường dùng
“hàm băm” để tạo “đại diện” cho tài liệu, sau đó mới “Ký số” lên “đại diện” này.
15

1.2.1.2. Sơ đồ chữ ký số
Sơ đồ chữ ký là bộ năm (P, A, K, S, V ), trong đó:
P là tập hữu hạn các văn bản có thể.
A là tập hữu hạn các chữ ký có thể.
K là tập hữu hạn các khoá có thể.
S là tập các thuật toán ký.
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ý Sig
k
 S, Sig
k

: P  A,
có thuật toán kiểm tra chữ ký Ver
k
 V, Ver
k
: P x A  {đúng, sai},
thoả mãn điều kiện sau với mọi x  P, y  A:
Đúng, nếu y = Sig k (x)
Ver k (x, y) = Sai, nếu y  Sig k (x)
Chú ý
Người ta thường dùng hệ mã hóa khóa công khai để lập “Sơ đồ chữ ký số”.
Ở đây khóa bí mật a dùng làm khóa “ký”, khóa công khai b dùng làm khóa
kiểm tra “chữ ký”.
Ngược lại với việc mã hóa, dùng khóa công khai b để lập mã, dùng khóa bí
mật a để giải mã.
Điều này là hoàn toàn tự nhiên, vì “ký” cần giữ bí mật nên phải dùng khóa bí
mật a để “ký”. Còn “chữ ký” là công khai cho mọi người biết, nên họ dùng khóa công
khai b để kiểm tra.
16

1.2.2 Phân loại chữ ký số
Có nhiều loại chữ ký tùy theo cách phân loại, sau đây xin giới thiệu một số
cách.
1.2.2.1: Phân loại chữ ký theo khả năng khôi phục thông điệp gốc.
1/. Chữ ký có thể khôi phục thông điệp gốc:
Là loại chữ ký, trong đó người nhận có thể khôi phục lại được thông điệp gốc,
đã được “ký” bởi “chữ ký” này.
Ví dụ: Chữ ký RSA là chữ ký khôi phục thông điệp.
2/. Chữ ký không thể khôi phục thông điệp gốc:
Là loại chữ ký, trong đó người nhận không thể khôi phục lại được thông điệp

gốc đã được “ký” bởi “chữ ký” này.
Ví dụ: Chữ ký Elgamal là chữ ký không thể khôi phục.
1.2.2.2: Phân loại chữ ký theo mức an toàn.
1). Chữ ký “không thể phủ nhận”:
Để tránh việc chối bỏ chữ ký hay nhân bản chữ ký để sử dụng nhiều lần, người
gửi chữ ký cũng tham gia trực tiếp vào việc kiểm thử chữ ký. Điều đó được thực hiện
bằng một giao thức kiểm thử, dưới dạng một giao thức mời hỏi và trả lời.
Ví dụ: Chữ ký không phủ định (Chaum - van Antverpen)
2). Chữ ký “một lần”:
Để bảo đảm an toàn “Khóa ký” chỉ dùng 1 lần (one- time) trên 1 tài liệu.
Ví dụ: Chữ ký một lần Lamport. Chữ ký Fail - Stop (Van Heyst & Pedersen).
1.2.2.3: Phân loại chữ ký theo ứng dụng đặc trưng.
Chữ ký “mù” (Blind Signature).
Chữ ký “nhóm” (Group Signature).
Chữ ký “bội” (Multy Signature).
Chữ ký “mù nhóm” (Blind Group Signature).
Chữ ký “mù bội” (Blind Multy Signature).
17

1.2.3. Chữ ký RSA
1.2.3.1 Sơ đồ chữ ký
1). Sơ đồ (Đề xuất năm 1978)
1/. Tạo cặp khóa (bí mật, công khai) (a, b) :
Chọn bí mật số nguyên tố lớn p, q, tính n = p * q, công khai n,
Sao cho bài toán tách n thành p, q là bài toán khóa. đặt P = C = Zn
Tính bí mật (n) = (p-1).(q-1).
Chọn khóa công khai b < (n), nguyên tố cùng nhau với (n).
Khóa bí mật a là phần tử nghịch đảo của b theo mod (n): a*b  1 (mod (n).
Tập cặp khóa (bí mật, công khai) K = {(a, b)/ a, b  Zn , a*b  1 (mod
(n))}.

2/. Ký số: Chữ ký trên x  P là y = Sig
k
(x) = x
a
(mod n), y  A. (R1)
3/. Kiểm tra chữ ký: Ver
k
(x, y) = đúng  x  y
b
(mod n). (R2)
Chú ý
- So sánh giữa sơ đồ chữ ký RSA và sơ đồ mã hóa RSA ta thấy có sự tương
ứng.
- Việc ký chẳng qua là mã hoá, việc kiểm thử lại chính là việc giải mã:
Việc “ký số” vào x tương ứng với việc “mã hoá” tài liệu x.
Kiểm thử chữ ký chính là việc giải mã “chữ ký”, để kiểm tra xem tài liệu đã
giải mã có đúng là tài liệu trước khi ký không. Thuật toán và khóa kiểm thử “chữ ký”
là công khai, ai cũng có thể kiểm thử chữ ký được.
2). Ví dụ
Chữ ký trên x = 2
1/.Tạo cặp khóa (bí mật, công khai) (a, b) :
Chọn bí mật số nguyên tố p=3, q=5, tính n = p * q = 3*5 = 15, công khai n.
Đặt P = C = Z
n
. Tính bí mật (n) = (p-1).(q-1) = 2 * 4 = 8.
Chọn khóa công khai b = 3 < (n), nguyên tố cùng nhau với (n) = 8.

18

Khóa bí mật a = 3, là phần tử nghịch đảo của b theo mod (n):

a*b  1 (mod (n)).
2/. Ký số: Chữ ký trên x = 2  P là
y = Sig
k
(x) = x
a
(mod n)= 2
3
(mod 15) = 8, y  A.
3/. Kiểm tra chữ ký: Ver
k
(x, y) = đúng  x  y
b
(mod n)
 2  8
3
(mod 15).
1.2.3.2 Độ an toàn của chữ ký RSA
* Bài toán căn bản bảo đảm độ an toàn của Sơ đồ chữ ký RSA:
Bài toán tách số nguyên n thành tích của 2 số nguyên tố: n = p*q
Vì nếu giải được bài toán này thì có thể tính được khóa mật a từ khóa công
khai b và phần tử công khai n.
1). Người gửi G gửi tài liệu x cùng chữ ký y đến người nhận N, có 2 cách xử lý:
a). Ký trước, Mã hóa sau:
G ký trước vào x bằng chữ ký y = Sig
G
(x), sau đó mã hoá x và y nhận được
z = e
G
(x, y). G gửi z cho N.

Nhận được z, N giải mã z để được x, y.
Tiếp theo kiểm tra chữ ký Ver
N
(x, y) = true ?
b). Mã hóa trước, Ký sau:
G mã hoá trước x bằng u = e
G
(x), sau đó ký vào u bằng chữ ký v = Sig
G

(u).
G gửi (u, v) cho N.
Nhận được (u, v), N giải mã u được x.
Tiếp theo kiểm tra chữ ký Ver
N
(u, v) = true ?
2). Giả sử H lấy trộm được thông tin trên đường truyền từ G đến N.
+ Trong trường hợp a, H lấy được z. Trong trường hợp b, H lấy được (u, v).
+ Để tấn công x, trong cả hai trường hợp, H đều phải giải mã thông tin lấy
được.
+ Để tấn công vào chữ ký, thay bằng chữ ký (giả mạo), thì xảy ra điều gì ?
19

- Trường hợp a, để tấn công chữ ký y, H phải giải mã z, mới nhận được y.
- Trường hợp b, để tấn công chữ ký v, H đã sẵn có v, H chỉ việc thay v bằng
v’. H thay chữ ký v trên u, bằng chữ ký của H là v’ = Sig
H
(u), gửi (u, v’) đến N.
Khi nhận được v’, N kiểm thử thấy sai, gửi phản hồi lại G.
G có thể chứng minh chữ ký đó là giả mạo.

G gửi chữ ký đúng v cho N, nhưng quá trình truyền tin sẽ bị chậm lại.
+ Như vậy trong trường hợp b, H có thể giả mạo chữ ký mà không cần giải mã.
Vì thế có lời khuyên: Hãy ký trước, sau đó mã hoá cả chữ ký.
1.2.4. Chữ ký EGAMAL
1.2.4.1 Sơ đồ chữ ký
Sơ đồ (Elgamal đề xuất năm 1985)
1/. Tạo cặp khóa (bí mật, công khai) (a, h) :
Chọn số nguyên tố p sao cho bài toán logarit rời rạc trong Zp là “khó” giải.
Chọn phần tử nguyên thuỷ g  Zp* . Đặt P = Z p*, A = Z p* x Z p-
1
.
Chọn khóa bí mật là a  Zp* . Tính khóa công khai h  g
a
mod p.
Định nghĩa tập khóa: K = {(p, g, a, h): h  g
a
mod p}.
Các giá trị p, g, h được công khai, phải giữ bí mật a.
2/. Ký số: Dùng 2 khóa ký: khóa a và khóa ngẫu nhiên bí mật r  Z
p-1
* .
(Vì r  Z
p-1
*, nên nguyên tố cùng p -1, do đó tồn tại r
-1
mod (p -1) ).
Chữ ký trên x  P là y = Sig
a
(x, r) = (,), y  A (E1)
Trong đó   Z

p
*,   Z
p-1
:
 = g
r
mod p và  = (x – a *  ) * r
-1
mod (p -1)
3/. Kiểm tra chữ ký:
Ver k (x, , ) = đúng  h

* 

 g
x
mod p. (E2)
Chú ý: Nếu chữ ký được tính đúng, kiểm thử sẽ thành công vì
h

* 

 g
a*
* g
r*
mod p  g
(a* + r * )
mod p  g
x

mod p.
Do  = (x – a *  ) * r
-1
mod (p -1) nên (a *  + r *)  x mod (p-1).
20

Ví dụ Chữ ký Elgamal trên dữ liệu x = 112.
1/. Tạo cặp khóa (bí mật, công khai) (a, h) :
Chọn số nguyên tố p = 463. Đặt P = Z p*, A = Z p* x Z p-1.
Phần tử nguyên thuỷ trong Zp* la g = 2 .
Chọn khóa bí mật là a = 211  Zp* .
Tính khóa công khai h  g
a
mod p = 2
211
mod 463 = 249.
Định nghĩa tập khóa: K= {(p, g, a, h): h  g
a
mod p}.
Các giá trị p, g, h được công khai, phải giữ bí mật a.
2/. Ký số: Chọn ngẫu nhiên bí mật r = 235  Z
p-1
* . Khóa ký là (a, r ).
Vì r  Z
p-1
* , nên nguyên tố cùng p -1, do đó tồn tại r
-1
mod (p -1). Cụ thể:
UCLN(r, p-1) = UCLN(235, 462) = 1,
nên r

-1
mod (p-1) = 235
-1
mod 462 = 289.
Chữ ký trên dữ liệu x = 112 là ( , ) = (16, 108), trong đó:
 = g
r
mod p = 2
235
mod 463 = 16
 = (x – a *  ) * r
-1
mod (p -1) = (112 - 211 * 16) * 289 mod 462 = 108
3/. Kiểm tra chữ ký: Ver
k
(x, , ) = đúng  h

* 

 g
x
mod p.
h

* 

= 249
16
* 16
108

mod 463 = 132
g
x
mod p = 2
112
mod 463 = 132.
Hai giá trị đó bằng nhau, như vậy chữ ký là đúng.
1.2.4.2 Độ an toàn của chữ ký ELGAMAL
* Bài toán căn bản bảo đảm độ an toàn của Sơ đồ chữ ký Elgamal:
Bài toán tính Logarit rời rạc:
Biết khóa công khai h  ga mod p. Nên có thể xác định khóa bí mật a bằng
cách tính Log
g
h.
21

Chƣơ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.
Nguồn gốc của mật mã lượng tử được đưa ra bởi Stephen Weisner gọi là
”Conjugate Coding” từ đầu những năm 1970. Sau đó, được công bố vào năm 1983
trên tạp chí Sigact New bởi Bennett và Brassard, những người đã nghiên cứu những ý
tưởng của Weisner và phát triển chúng theo cách riêng của mình. Họ cho ra “BB84”,
giao thức mật mã lượng tử đầu tiên vào năm 1984, nhưng mãi đến tận năm 1991, thí
nghiệm đầu tiên về thể thức này mới được thực hiện thành công qua một đường truyền

32 cm. Những giao thức ngày nay đã được thử nghiệm thành công trên quang sợi ở độ
dài hàng trăm km.
Hình dưới đây mô tả một thể thức của mật mã, thông tin nhạy cảm có thể được
làm rối loạn bởi người gửi (Alice) thành một dạng thông tin mà người ngoài khó nhận
biết. Điều này được thực hiện bởi một công thức toán học, gọi là thuật toán mã hóa.
Người nhận được mong đợi (Bob) sẽ có thuật toán giải mã để tìm lại dữ liệu ban đầu.
Để người nhận có thể biết được thuật toán giải mã, thuật toán này được liên kết với
một chìa khóa bí mật. Vì chiếc chìa khóa này cho phép giải mã thông tin, điều hết sức
quan trọng là nó phải được giữ bí mật và thay đổi thường xuyên.

Hình 2.1: Mô hình trao đổi thông tin bí mật
22

Để gửi thông tin một cách bí mật, khóa giải mã phải được truyền đi một cách bí
mật. Nhưng khi người nhận nhận được khóa thì làm thế nào xác minh được khóa này
là thật và nó được giữ bí mật. Trước đây, điều này là khó thì nay mật mã lượng tử đã
giải quyết được vấn đề này. Nó cho phép người gửi và người nhận xác minh tính bảo
mật của từng khóa.
Ứng dụng trực tiếp nhất của mật mã lượng tử là quá trình truyền khóa bí mật.
Tại sao không dùng đường truyền lượng tử này để truyền trực tiếp thông tin cần truyền
đi.
Bởi vì lượng thông tin trong một đường truyền lượng tử không nhiều và tốc độ
không cao. Nhờ vào quá trình mã hóa mà sự truyền thông tin này có thể đưa đến sự
bảo mật cao cho đường truyền khác có tốc độ trao đổi thông tin cao hơn rất nhiều.
Nguyên lý của sự trao đổi thông tin lượng tử này dựa vào sự quan sát các trạng
thái lượng tử. Những photon được truyền đi được đặt trong một trạng thái riêng biệt
bởi người gửi và sau đó được quan sát bởi người nhận. Bởi theo thuyết tương đối,
những trạng thái lượng tử liên hợp không thể được quan sát cùng một lúc. Tùy theo
cách quan sát, giá trị của hệ đo được sẽ khác nhau, nhưng trong một hệ các trạng thái
liên hợp duy nhất. Ví dụ như phân cực của photon được mô tả bởi một trong ba hệ

khác nhau: Phân cực phẳng, phân cực cầu hay phân cực elip. Như vậy, nếu người gửi
và người nhận không thỏa thuận trước về hệ quan sát được sử dụng, người nhận có thể
tình cờ hủy thông tin của người gửi mà không nhận được gì có ích.
Như vậy, hiểu đơn giản nhất về đường truyền lượng tử là: Người gửi mã hóa
thông tin bởi các trạng thái lượng tử, người nhận quan sát các trạng thái đó, sau đó nhờ
vào thỏa thuận từ trước về hệ quan sát, người gửi và người nhận trao đổi thông tin một
cách đúng đắn.
Ta xét trường hợp một kênh truyền bảo mật thông thường và có “người tấn
công ở giữa”(man in the middle attack). Trong trường hợp này, người nghe lén là Eve
được cho có khả năng điều khiển kênh truyền, có thể đưa thông tin vào và lấy thông
tin ra không có thiếu sót nào hay độ trễ nào. Khi Alice cố gắng thiết lập khóa bí mật
cùng Bob. Eve tham gia vào và trả lời tin theo cả hai hướng, làm cho Alice và Bob
tưởng rằng họ trao đổi trực tiếp với nhau. Khi khóa bí mật được thiết lập, Eve nhận,
sao chép và gửi lại thông tin để đảm bảo Alice và Bob nói chuyện với nhau bình
thường. Giả sử thời gian xử lý tín hiệu là đủ nhanh, Eve có thể nhận được toàn bộ khóa
bí mật, và do đó nhận được tất cả thông tin được truyền đi giữa Alice và Bob mà
không phát hiện là có Eve tham gia vào.

23

Nhưng khi mật mã lượng tử được áp dụng trong các quy luật lượng tử; trạng
thái lượng tử của photon không thể được sao chép. Như vậy, một cách tự nhiên, khi
Eve cố gắng lấy thông tin mã hóa bởi một photon, sự nghe lén này sẽ gây lỗi ở phía
Bob. Điều này cho phép Alice và Bob nhận biết được khi nào đường truyền của họ bị
tác động bởi người nghe lén thứ ba, khi đó họ có thể chuyển qua kênh truyền khác, hay
đơn giản hơn là làm trễ đường truyền lại với các khóa được thay đổi liên tục.

Hình 2.2: Mô hình trao đổi thông tin bí mật dựa trên cơ học lượng tử.
Ngoài khả năng trao đổi khóa như các hệ mật mã thông thường, mật mã lượng
tử còn có khả năng phát hiện sự xuất hiện của bên thứ ba tham gia vào phiên truyền

khóa.
Đây là tính chất nổi trội so với các hệ mật mã khác, cũng vì có tính chất này hai
bên trao đổi khóa dễ dàng biết được khóa sau khi trao đổi có thực sự an toàn không?
2.1.1 Cơ sở vật lý hình thành mật mã lƣợng tử
Những tính chất vật lý đặc biệt của cơ học lượng tử đã đặt nền móng lý thuyết
cho một lĩnh vực mới - thông tin và tính toán lượng tử. Những tính chất đặc biệt đó
của thông tin lượng tử cũng xây dựng nên một cơ chế mật mã mới – mật mã lượng tử.
Mật mã lượng tử (Quantum Cryptography – QC) với những đặc tính hoàn toàn
khác với các cơ chế mật mã truyền thống, cho phép đảm bảo sự an toàn vô điều kiện
cho các thông điệp gửi trên mạng. Mặc dù xây dựng các máy tính lượng tử là rất phức
tạp và chưa khả thi trong một tương lai gần, nhưng việc gửi và nhận thông tin lượng tử
tỏ ra dễ dàng hơn và đã được thực hiện thành công trên các hạt ánh sáng (photon).
24

Thực chất vật lý lượng tử đã tham gia từ lâu vào sự phát triển của Tin học và
Công nghệ thông tin vì tính chất của các Transistor khắc trên các vi mạch của các máy
tính cá nhân ngày nay, phát minh từ năm 1947 bởi Bardeen, Brattain và Shockley, chỉ
có thể lý giải bằng lý thuyết vật lý lượng tử. Tuy nhiên phải đợi đến đầu những năm 80
của thế kỷ XX, các nhà vật lý mới có khả năng tác động và quan sát các đối tượng
lượng tử đơn lẻ như photon, nguyên tử, i-on,… Chính khả năng tác động và quan sát
các hạt cơ bản này là nguồn gốc ra đời của ngành thông tin lượng tử, trong đó các đối
tượng lượng tử nguyên tố sẽ cho phép xây dựng vật lý các bit lượng tử hay qubit .
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ử 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 trườ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à
cos
2
(

), 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 cos
2
(
α
)
Hình 2.3: Sự phân cực của photon khi qua bộ lọc phân cực
25

Dễ dàng suy ra rằng nếu phân cực photon song song với bộ lọc thì nó sẽ được
truyền qua chắc chắn (cos
2

() = 1). Nếu vuông góc thì nó sẽ bị bộ lọc hấp thụ hoàn
toàn (cos
2
() = 0) (lý thuyết). Việc photon được truyền qua bộ lọc hay bị hấp thụ sẽ
hoàn toàn ngẫu nhiên nếu

= 45° hoặc 135° (cos
2
(

) =
2
1
). Một tính chất nữa là photon
sau khi ra khỏi bộ lọc bị mất hoàn toàn thông tin về góc phân cực trước đó của nó,
hay nói một cách khác, người ta không thể sao lại trạng thái phân cực của một photon
để thực hiện nhiều phép đo sự phân cực của nó với các bộ lọc phân cực khác nhau.
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.
Hai cơ sở trực giao được sử dụng để mã hóa/đo các bit 0 và 1 cho các photon là:
thẳng (0°/90°) - ký hiệu

và chéo (45°/135°) - ký hiệu


. Trong cơ sở thẳng, các
photon có góc phân cực 0° được tương ứng với bit 1, photon có phân cực 90° với bit 0.
Tương tự trong hệ cơ sở chéo, các bit này sẽ tương ứng với các photon có góc phân
cực lần lượt là 45° và 135°. Theo lý thuyết, dễ thấy rằng nếu các photon không cùng
cơ sở với bộ đo, chúng ta sẽ thu được kết quả hoàn toàn ngẫu nhiên (hình 2.4).

Hình 2.4: Đo phân cực photon bằng các hệ cơ sở thẳng và chéo
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 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.
26

2.1.2. Lý thuyết lƣợng tử
1/. Bit lƣợng tử
Năm 1985, Deutsch (Đại học Oxford, Anh) đã xây dựng mô hình máy tính
lượng tử gọi là máy Turing lượng tử bằng cách mở rộng máy Turing cổ điển. Như vậy
máy tính lượng tử cũng thực hiện tính toán lượng tử (quantum computation) với các
thông tin lượng tử (quantum information) được mã hóa và biểu diễn bằng các bit lượng
tử (qubit).
Để rõ khái niệm qubit ta trở lại với khái niệm bit trong các máy tính cổ điển:
Thông tin ở mọi dạng dữ liệu (văn bản, hình ảnh, số liệu ) khi đưa vào xử lý trong
máy tính đều được mã hoá và biểu diễn thành các số nhị phân chỉ gồm các chữ số “0”
và “1”, ví dụ số 89 được biểu diễn thành 1011001 và ta nói rằng số 89 được biểu diễn
bằng 7 bit, do đó bit là đơn vị biểu diễn thông tin (theo độ dài) và bit lấy 1 trong 2 giá
trị {0,1}. Trong các bộ phận xử lý thông tin của máy tính cổ điển như thanh ghi
(register), vi xử lý (microprocessor), bộ nhớ v.v bit được thực hiện bằng các phần tử
hai trạng thái (ví dụ tranzito MOS có hai trạng thái “dẫn điện” và “cách điện” ứng với
“1” và “0”). Trong máy tính hiện nay, tại mỗi thời điểm xác định, các bit trong biểu

diễn thông tin đều phải có giá trị xác định hoặc “1”, hoặc “0”. Ví dụ trong bộ nhớ
RAM có dung lượng 1Mb (Mb= megabit=1 triệu bit) thì tại một thời điểm xác định
mọi phần tử của 1 triệu phần tử có trạng thái xác định hoặc “1” hoặc “0”.
Theo Dirac có thể chia một đôi móc (< > - tên tiếng Anh là BRACKET) thành
hai phần: phần xuôi | > gọi là KET, phần ngược < | gọi là BRA
Một qubit (Quantum bit) hay bit lượng tử là một đơn vị thông tin lượng tử.
Trong đó miêu tả một hệ cơ học lượng tử có hai trạng thái cơ bản thường được ký hiệu

1

0
(đọc là ket 0 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 45
0
và 135
0
.
|1 ket 1
|0 ket 0
27

Các hiện tượng lượng tử có tính chất rất kỳ lạ là tính chồng chập lượng tử
(quantum superposition). Để cụ thể, xét một nguyên tử tự do có thể có hai trạng thái

spin lên xuống: một trạng thái ta ký hiệu là trạng thái 0> và trạng thái kia ta ký hiệu
là 1>. Các trạng thái này nhận được từ các kết quả của phép đo. Khi nguyên tử tự do
(không chịu một sự quan sát hoặc đo lường nào) thì nó lại có thể tồn tại ở trạng thái
chồng chập là một tổ hợp tuyến tính của hai trạng thái nói trên và ta ký hiệu là:
 > = a0> +b1>, trong đó a, b là các hệ số, thường là số phức, thoả mãn
điều kiện:
a
2
+b
2
=1 (a
2
- bình phương môdul của số phức a).
Như vậy tại một thời điểm bất kỳ, nguyên tử trên vừa ở trạng thái 0> lại vừa ở
trạng thái 1>, chỉ khi quan sát hoặc đo thì nhận được kết quả hoặc trạng thái1> hoặc
trạng thái 0> xác định.
Khi dùng nguyên tử trên để thực hiện bit lượng tử thì khác với bit thông
thường, qubit tại mỗi thời điểm xác định vừa là 0> lại vừa là 1>.
2/. Đo lƣờng lƣợng tử
Đo lường lượng tử là hành động dùng các thiết bị trong lượng tử để quan sát
trạng thái của các photon phân cực. Trong mật mã lượng tử, đo lường là một hành
động không thể tách rời, dựa vào trạng thái phân cực của các photon mà ta quyết định
xem bit cổ điển tương ứng của nó là 0 hay 1.
Một khái niệm chúng ta cần quan tâm khi nghiên cứu cơ học lượng tử là cơ sở.
Cơ sở được tạo thành từ cặp đôi trực chuẩn. Điều đó có nghĩa là nếu hai trạng thái |
và | trong cùng cơ sở * (có thể là cơ sở ngang hoặc cơ sở chéo) luôn có tích vô
hướng của hai vector bằng 0 hay |=0. Một trạng thái photon bất kỳ được đo trong
cơ sở *, thì kết quả đo lường chỉ có thể cho là | hoặc |.
Xé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ở

ngang . Tương tự từ |+, |- cũng là cặp đôi trực chuẩn tạo lên cơ sở chéo .

×