1. Trang chủ
  2. » Khoa Học Tự Nhiên

LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN Nghiên cứu lý thuyết số trong mã hóa thông tin

89 362 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 89
Dung lượng 845,36 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lý thuyết số trong mã hóa thông tin. tìm hiểu ứng dụng lý thuyết số trong mã hóa thông tin. Luận văn thạc sĩ đáng xem nhất Mã hóa thông tin với lý thuyết số, ứng dụng thực thực tế của lý thuyết số trong mã hóa thông tin. Mã hóa thông tin với lý thuyết số, ứng dụng thực thực tế của lý thuyết số trong mã hóa thông tin

Trang 1

ĐẠI HỌC ĐÀ NẴNG

PHẠM THANH LÊ

LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN

LUẬN VĂN THẠC SĨ KHOA HỌC

Đà Nẵng - Năm 2013

Trang 2

PHẠM THANH LÊ

LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN

Chuyên ngành: PHƯƠNG PHÁP TOÁN SƠ CẤP

Mã số : 60.46.40

LUẬN VĂN THẠC SĨ KHOA HỌC

Người hướng dẫn khoa học: PGS.TS NGUYỄN GIA ĐỊNH

ĐÀ NẴNG - NĂM 2013

Trang 3

Tôi xin cam đoan

Những nội dung được trình bày trong luận văn này là do tôi thực hiện dưới sự hướng dẫn của thầy giáo PGS.TS Nguyễn Gia Định

Mọi tài liệu dùng trong luận văn đều được trích dẫn rõ ràng và trung thực tên tác giả, tên công trình, thời gian và địa điểm công bố

Nếu có sao chép không hợp lệ, vi phạm qui chế đào tạo tôi xin chịu hoàn toàn trách nhiệm

Tác giả

Phạm Thanh Lê

Trang 4

1 Lý do chọn đề tài 1

2 Mục tiêu nghiên cứu 3

3 Đối tượng và phạm vi nghiên cứu 3

4 Phương pháp nghiên cứu 3

5 Ý nghĩa khoa học và thực tiễn của đề tài 4

6 Cấu trúc luận văn 4

CHƯƠNG 1 KIẾN THỨC CƠ SỞ 5

1.1 PHÉP TÍNH ĐỒNG DƯ VÀ CÁC VẤN ĐỀ LIÊN QUAN 5

1.1.1 Số nguyên tố và định lý cơ bản của số học 5

1.1.2 Thuật toán Euclid và mở rộng 6

1.1.3 Phi hàm Euler 8

1.1.4 Phép tính đồng dư và phương trình đồng dư 9

1.1.5 Định lí Fermat và các mở rộng 10

1.1.6 Tính toán với đồng dư của lũy thừa bậc lớn 11

1.1.7 Định lý Phần dư Trung Hoa 12

1.1.8 Thặng dư bình phương và kí hiệu Legendre 13

1.2 LIÊN PHÂN SỐ 14

1.2.1 Khái niệm liên phân số 14

1.2.2 Giản phân 15

1.3 TRƯỜNG HỮU HẠN .19

1.3.1 Trường Fp 19

1.3.2 Cách xây dựng trường Fq từ trường Fp 19

1.4 ĐƯỜNG CONG ELLIPTIC 21

1.4.1 Khái niệm đường cong elliptic 21

1.4.2 Đường cong elliptic trên trường số thực 23

1.4.3 Đường cong elliptic trên trường hữu hạn 25

Trang 5

2.1.1 Một số thuật ngữ 27

2.1.2 Hệ mã đối xứng và hệ mã phi đối xứng 28

2.2 LịCH SỬ MẬT MÃ HỌC 29

2.3 NGUYÊN TẮC CHUNG VÀ MỘT SỐ HỆ MÃ ĐƠN GIẢN 30

2.3.1 Hệ mã Ceasar 30

2.3.2 Hệ mã khối 32

2.4 HỆ MÃ DỮ LIỆU TIÊU CHUẨN - DES 33

2.4.1 Phương án thu gọn của DES 34

2.4.2 Mô hình đầy đủ của DES 39

2.4.3 Các phương thức sử dụng DES 47

2.4.4 Độ an toàn của DES 48

2.5 THUẬT TOÁN MÃ HÓA DỮ LIỆU QUỐC TẾ IDEA 49

2.5.1 Nhận xét chung 49

2.5.2 Mã hóa và giải mã trong IDEA 50

2.5.3 Những đặc tính quan trọng 55

2.6 HỆ MÃ SAFER 57

2.6.1 Mô tả SAFER 57

2.6.2 Một số biến thể và nâng cấp 63

CHƯƠNG 3 CÁC HỆ MÃ MŨ VÀ MÃ PHI ĐỐI XỨNG 64

3.1 MỘT SỐ HỆ MÃ MŨ THÔNG DỤNG 64

3.1.1 Hệ mã mũ Pohlig và Hellman 64

3.1.2 Giao thức trao đổi chìa khóa của Diffie - Hellman 68

3.1.3 Hệ mã ElGamal 69

3.1.4 Nguyên tắc chung của mã hóa với khóa công khai 69

3.2 HỆ MÃ RSA 70

3.2.1 Nguyên tắc thực hiện 70

Trang 6

3.3.2 Hệ mã dùng đường cong elliptic trên trường hữu hạn 74

3.3.3 Mật mã khóa công khai dùng đường cong elliptic 76

3.3.4 Hệ mã tương tự mã mũ 77

3.3.5 Chọn đường cong elliptic 77

KẾT LUẬN 79 DANH MỤC TÀI LIỆU THAM KHẢO

QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN (BẢN SAO)

Trang 7

DES – Data Encryption Standard

E-Box – Expansion Box

IDEA – International Encryption Algorihm

IP – Initial Permutation

P-Box – Permutation Box

PC – Permuted Choice

SAFER – Secure And Fast Encryption Routine

S-Box – Substitution Box

Trang 9

MỞ ĐẦU

1 Lý do chọn đề tài

Khoa học mật mã đã ra đời cách đây hàng nghìn năm và người đầu tiên

áp dụng mật mã một cách có hệ thống để đảm bảo bí mật thông tin quân sự là nhà quân sự thiên tài của La Mã cổ đại, Julius Caesar Mật mã là một ngành khoa học nghiên cứu các kỹ thuật toán học nhằm cung cấp các dịch vụ bảo vệ thông tin Đây là ngành khoa học quan trọng, có nhiều ứng dụng trong đời sống – xã hội Tuy nhiên, trong suốt nhiều thế kỷ, các kết quả của lĩnh vực này hầu như không được ứng dụng trong các lĩnh vực dân sự thông thường của đời sống – xã hội mà chủ yếu được sử dụng trong lĩnh vực quân sự, chính trị, ngoại giao Ngày nay, với sự phát triển ngày càng nhanh chóng của Internet và các ứng dụng giao dịch điện tử trên mạng, nhu cầu bảo vệ thông tin trong các hệ thống và ứng dụng điện tử ngày càng được quan tâm và có ý nghĩa hết sức quan trọng Vì vậy, các ứng dụng mã hóa và bảo mật thông tin đang được sử dụng ngày càng phổ biến trong các lĩnh vực khác nhau trên thế giới, từ các lĩnh vực an ninh, quân sự, quốc phòng…, cho đến các lĩnh vực dân sự như thương mại điện tử, ngân hàng… Do ý nghĩa quan trọng đó mà đề tài này thu hút được sự quan tâm của đông đảo các chuyên gia trên khắp thế giới và luôn được xem là trọng tâm nghiên cứu của mỗi quốc gia, nhất là ở những nước phát triển

Một điểm đặc biệt của công nghệ mã hóa hiện đại là không dựa vào khả năng giữ bí mật về phương pháp mã hóa, vì nó thường không chỉ do một người nắm giữ, mà nói chung thường có một nhóm người biết Ngày nay, người ta không tin vào khả năng giữ được bí mật tuyệt đối của cả một nhóm người, mà cho rằng bí mật chỉ có thể được giữ bởi một người có lợi ích được gắn liền với bí mật đó

Trang 10

Mật mã hiện đại có những đòi hỏi mới mang tính nguyên tắc hơn so với mật mã thường dùng trước đây Những hệ thống mật mã cũ khi biết được khoá lập mã của họ ta dễ dàng tìm ra khoá giải mã Hiển nhiên muốn gửi một thông báo mật cho một đối tượng nào đó ta cần phải biết khóa lập mã của họ,

vì vậy những người cùng một hệ mã đều biết bí mật của nhau Nhiều người cùng sử dụng một hệ mã thì không còn là bí mật nữa Các hệ thống mật mã hiện đại đã khắc phục được những nhược điểm đó: công nghệ mã hóa mà phương pháp chung (thuật toán) là công khai, còn việc triển khai thì cho phép thay đổi được theo một tham số do từng người sử dụng tự ấn định (mỗi giá trị của tham số sẽ xác định một cách mã hóa riêng), việc lập mã và giải mã chỉ

có thể được thực hiện khi biết được tham số đó Tham số như vậy thường được gọi là “chìa khóa” và nó là thông tin duy nhất cần phải giữ bí mật Tóm lại, một hệ mã hiện đại cần phải dựa trên nguyên tắc: chốt tính bảo mật vào chìa khóa, mà không phải vào phương pháp (thuật toán) mã hóa Một hệ mã như vậy không chỉ đáp ứng được đòi hỏi của những chuyên gia về bảo mật thông tin, mà còn rất phù hợp cho các ứng dụng mang tính toàn dân nơi mà người sử dụng không hề có một chút nghiệp vụ về bảo mật và an toàn thông tin nói chung

Để có được những hệ mã đáp ứng các yêu cầu trên, người ta dựa vào các công cụ Toán học, đặc biệt là các phương pháp của Lý thuyết số Có thể nói, lý thuyết số là một trong những kiến thức toán học lâu đời nhất Từ trước tới nay, người ta thường coi lý thuyết số như một lĩnh vực đẹp, nhưng thuần túy lý thuyết của toán học Với sự phát triển của khoa học máy tính và công nghệ thông tin, lý thuyết số đã đóng góp những ứng dụng thực tế bất ngờ và quan trọng, đặc biệt trong lĩnh vực mã hóa thông tin Chính nhờ các kết quả nghiên cứu sâu sắc của toán học, người ta đã có những phương pháp mới

Trang 11

trong công nghệ mã hóa, có khả năng chống lại sức bẻ khóa của các siêu máy tính cực mạnh

Xuất phát từ tính thời sự của mã hóa thông tin và nhu cầu muốn tìm hiểu về vai trò của lý thuyết số trong mã hóa thông tin, chúng tôi quyết định

chọn đề tài với tên gọi “Lý thuyết số trong mã hóa thông tin” để tiến hành

nghiên cứu Ngày nay, công nghệ mã hóa đã phát triển đến mức vượt ra ngoài khả năng thâu tóm của bất cứ một tài liệu nào, cho nên đề tài này cũng chỉ có thể trình bày những khía cạnh cơ bản nhất trong lĩnh vực mã hóa thông tin hiện nay, cùng với những kiến thức toán học làm cơ sở cho nó Chúng tôi hy vọng đây là một tài liệu tham khảo tốt cho những người bắt đầu tìm hiểu về

Mã hóa thông tin và hy vọng một số ví dụ minh hoạ đặc sắc góp phần làm

phong phú thêm các kết quả trong lĩnh vực này

2 Mục tiêu nghiên cứu

Nghiên cứu mã hóa thông tin qua các phương pháp mã hóa dựa trên công cụ lý thuyết số

3 Đối tượng và phạm vi nghiên cứu

3.1 Đối tượng nghiên cứu

Mã hóa thông tin và vai trò của lý thuyết số trong các phương pháp mã hóa

3.2 Phạm vi nghiên cứu

Mật mã học và các ứng dụng

4 Phương pháp nghiên cứu

Đề tài này đã sử dụng các phương pháp nghiên cứu sau:

- Phương pháp nghiên cứu tư liệu gồm: Các tài liệu tham khảo, các bài

- Phương pháp tiếp cận lịch sử: Sưu tầm, phân tích và tổng hợp tư liệu

- Phương pháp tiếp cận hệ thống

Trang 12

5 Ý nghĩa khoa học và thực tiễn của đề tài

- Đề tài đã tổng quan các kết quả của các tác giả đã nghiên cứu liên quan đến mã hóa thông tin và vai trò của lý thuyết số trong các phương pháp

mã hóa nhằm xây dựng một tài liệu tham khảo cho những ai muốn nghiên cứu

về mã hóa thông tin

- Đề tài đã chứng minh chi tiết và làm rõ một số mệnh đề, cũng như đưa ra một số ví dụ minh họa đặc sắc nhằm làm cho người đọc dễ dàng tiếp cận vấn đề được đề cập

6 Cấu trúc luận văn

Mở đầu

Chương 1: Kiến thức cơ sở

Trong chương này nêu đầy đủ kiến thức cơ sở về phép tính đồng dư, liên phân số, trường hữu hạn và đường cong elliptic

Chương 2:Các khái niệm cơ bản của mã hóa và các hệ mã đối xứng Trong chương này trình bày một số thuật ngữ, khái niệm của mã hóa và các hệ mã đối xứng Giới thiệu về hệ mã Caesar, mã khối, hệ mã DES, thuật toán mã hóa dữ liệu quốc tế IDEA, hệ mã SAFER

Chương 3: Các hệ mã mũ và mã phi đối xứng

Trong chương này trình bày một số hệ mã mũ thông dụng, hệ mã RSA, đường cong elliptic và hệ mã phi đối xứng

Kết luận

Trang 13

CHƯƠNG 1KIẾN THỨC CƠ SỞ

Trong chương này chúng tôi trình bày một số kiến thức chuẩn bị Để tiện theo dõi, chúng tôi trình bày trong mục 1.1 là một số kiến thức về phép tính đồng

dư và các vấn đề liên quan, trong mục 1.2 là một số kiến thức về liên phân số, trong mục 1.3 là một số kiến thức về trường hữu hạn, trong mục 1.4 là một số kiến thức về đường cong elliptic

1.1 PHÉP TÍNH ĐỒNG DƯ VÀ CÁC VẤN ĐỀ LIÊN QUAN

1.1.1 Số nguyên tố và định lý cơ bản của Số học

Định nghĩa 1.1 Số nguyên tố là số tự nhiên lớn hơn 1, không chia hết

cho số tự nhiên nào khác ngoài 1 và chính nó Số tự nhiên lớn hơn 1 không phải là số nguyên tố được gọi là hợp số

Định lý 1.1 Mọi hợp số n đều có ước nguyên tố nhỏ hơn n

Chứng minh Vì n là một hợp số nên ta có thể viết n = a.b, trong đó a và

b là các số nguyên với 1 a   Khi đó, b n 2

aab  nên a nn Ngoài

ra, ước nguyên tố của a cũng đồng thời là ước nguyên tố của n

Từ định lý này, ta có sàng Eratosthenes tìm các số nguyên tố nhỏ hơn

hoặc bằng số n cho trước

Định lý 1.2 (Định lý cơ bản của số học) Mọi số nguyên lớn hơn 1 đều

phân tích được một cách duy nhất dưới dạng tích các lũy thừa của các số nguyên tố khác nhau, trong đó các thừa số được viết theo thứ tự không giảm

Chứng minh Giả sử tồn tại những số không viết được thành tích các số

nguyên tố Gọi n là số bé nhất trong các số đó Như vậy, n phải là hợp số,

Trang 14

Chúng ta còn phải chứng minh phân tích là duy nhất Giả sử ta có:

vế Như vậy, vế trái chia hết cho

q Ta gọi phân tích số nguyên ra thừa số nguyên tố là phân tích số nguyên

Như vậy, với mọi số nguyên n > 1, ta luôn tìm được các số nguyên tố

khác nhau và các số tự nhiên 1, , sao cho r 1

np p  Dễ dàng thấy

rằng ( 1 1) (  r 1) là số lượng các ước số dương của n

Hệ quả 1.1 Nếu p là một số nguyên tố và p | ab thì ít nhất một trong 2

số a, b phải chia hết cho p

Ước chung lớn nhất của 2 số tự nhiên a, b là số lớn nhất trong tập các ước chung của 2 số đó, được kí hiệu là UCLN(a, b) hay đơn giản là (a, b) Như vậy, nếu d | a và d | b thì d | UCLN(a, b)

Khi 2 số tự nhiên có ước chung lớn nhất là 1 thì chúng được gọi là nguyên tố cùng nhau

1.1.2 Thuật toán Euclid và mở rộng

a Thuật toán Euclid

El (Kết thúc?) Nếu b = 0, in ra a và kết thúc thuật toán

E2 (Chia Euclid) Đặt r ← a mod b, a ← b, b ← r, và quay về bước El

Ví dụ 1.1 Ta tính UCLN(345,1127) bằng thuật toán Euclid

Ta có: d = (345,1127) = (92,345) = (69,92) = (23,69) =(0,23) = 23 Như vậy, UCLN(345,1127) = 23

Trang 15

b Thuật toán Euclid mở rộng

Cho hai số nguyên không âm u, v Tìm (u1,u2,u3) sao cho

(u, v) = u3 = uu1 + vu2

Trong tính toán, ta thêm vào các ẩn phụ (v1,v2,v3), (t1,t2,t3) và luôn có trong mọi bước các đẳng thức sau đây:

ut1 + vt2 = t3, uv1 + vv2 = v3, uu1 + vu2 = u 3

Edl (Xuất phát) Đặt (u1,u2,u3) ← (1, 0, u), (v1,v2,v3) ← (0, 1, v)

Ed2 (Kiểm tra v3 = 0 ?) Nếu v3 = 0, thuật toán kết thúc

Ed3 (Chia, trừ) Đặt q ← 3

3

u v

 

 

 , và sau đó đặt

(t1,t2,t3) ← (u1,u2,u3) - q(v1,v2,v3),

(u1,u2,u3) ← (v1,v2,v3), (v1,v2,v3) ← (t1,t2,t3)

và quay về bước Ed2

Ví dụ 1.2 Cho a = 74, b = 28 Dùng thuật toán Euclid ta có:

Bằng cách theo dõi thương tìm được trong suốt thuật toán, ta có thể xác

định các số nguyên m và n với UCLN(a,b) = m.a + n.b Thuật toán tìm m

và n như trên được gọi là thuật toán Euclid mở rộng.

Trang 16

1.1.3 Phi - hàm Euler

Định nghĩa 1.2 Hàm Euler φ(n) là hàm xác định với mọi số nguyên

dương n, được định nghĩa là số các số nguyên dương không vượt quá n và nguyên tố cùng nhau với n

Ví dụ 1.3

n 1 2 3 4 5 6 7 8 9 10 11 12

Hệ quả 1.2 Số p là nguyên tố khi và chỉ khi φ(p) = p – 1

Tổng quát hơn, khi p là số nguyên tố và r là một số nguyên dương bất kì

thì: φ(p r ) = p r-1 (p-1) = p r (1 – 1/p)

Định lý 1.3 Hàm Euler là một hàm nhân tính, nghĩa là với m, n là các số

nguyên dương nguyên tố cùng nhau, ta có: φ(m.n) = φ(m) φ(n)

Bây giờ giả sử r là một số nguyên không vượt quá m Giả sử

( , )m rd  Khi đó, không số nào trong dòng thứ r nguyên tố cùng nhau 1

với m.n, và mỗi phần tử của dòng đó đều có dạng km + r, 1kn , 1

d kmrd m , || d r

Vậy để tìm các số trong bảng mà nguyên tố cùng nhau với m.n, ta chỉ cần xem dòng thứ r với (m,r) = 1 Ta xét một dòng như vậy, nó chứa các số

Trang 17

, , ( 1)

r mr nm  Vì (r,m) = 1 nên mỗi số nguyên trong dòng đều r

nguyên tố cùng nhau với n

Vậy, n số nguyên trong dòng lập thành hệ thặng dư đầy đủ modulo m

Do các số đó cũng nguyên tố cùng nhau với m nên chúng nguyên tố cùng

nhau với m.n, nên ta suy ra φ(m.n) = φ(m) φ(n)

1.1.4 Phép tính đồng dư và phương trình đồng dư

Định nghĩa 1.3 Giả sử m là một số nguyên dương Ta nói, hai số nguyên

a và b là đồng dư với nhau modulo m nếu m chia hết hiệu a - b

Để chỉ a đồng dư với b modulo m, ta ký hiệu: ab (mod m) (gọi là

đồng dư thức) Điều này có nghĩa là số dư tìm được trong phép chia a và b cho m là bằng nhau Dễ dàng có được các tính chất sau

4 Nếu ab (mod m), cd (mod m)

thì a ± cb ± d (mod m),a.cb.d (mod m)

Từ đây suy ra quan hệ đồng dư modulo m là một quan hệ tương đương trên  Lớp tương đương của x∈ là xxkm k| 

x yxy

Trang 18

Ur r r thì r r1, , ,2 r(m) được gọi là thặng dư thu gọn

modulo m

Phương trình đồng dư tuyến tính axb (mod m) thỏa mãn:

Khi UCLN(a,m) = 1 thì có ngay nghiệm xa-1b (mod m)

Khi UCLN(a,m) = g thì có hai khả năng xảy ra:

1 Nếu g chia hết b thì phương trình đã cho tương đương với phương trình (a/g)x (b/g)(mod m/g) và (a/g, m/g) = 1

2 Nếu g không chia hết b thì phương trình vô nghiệm

1.1.5 Định lý Fermat và các mở rộng

Định lý 1.4 (Định lý Fermat nhỏ) Nếu p là một số nguyên tố còn a là

một số nguyên thì a pa (mod p) Nếu p không chia hết a thì a p- 11(mod p)

Chứng minh Với a không chia hết cho p hay (a, p) = 1, ta có

p

a U (nhóm các phần tử khả nghịch trong  ) Do đó, p _

{1, 2, 1} { , 2 , ( 1) }

p

Up  a a pa , nên

_ .2 ( 1) 1 2 1

a a pap hay

Định lý 1.5 (Định lý mở rộng (Euler)) Nếu m là số nguyên dương và a

là số nguyên tố cùng nhau với m thì ( )

( ){ , , , m}

Ua r a r a r Vì vậy

( ) m

1 2

ar ar ar =

( ) m

1 2

r r r hay ( )

Trang 19

Trong trường hợp riêng, khi m là số nguyên tố thì (m) = m - 1 và ta có

định lý Fermat nhỏ

Hệ quả 1.4 Nếu (c, m) = 1 và a b (mod φ(m)) với a, b là các số tự nhiên, thì c a c b (mod m)

Hệ quả 1.5 Nếu e, d là các số nguyên thỏa mãn e.d  1 (mod (m))

thì với mọi số c nguyên tố cùng nhau với m, ta có (c e)d c (mod m)

Hệ quả này đóng vai trò then chốt trong việc thiết lập các hệ mã mũ và

hệ mã RSA ở Chương 3

1.1.6 Tính toán với đồng dư của luỹ thừa bậc lớn

Ngoài việc sử dụng hệ quả của Định lý Euler để tính toán người ta còn thường hay sử dụng nhất là phương pháp bình phương liên tiếp sau đây Để hiểu rõ phương pháp này chỉ cần xem ví dụ sau:

Trang 20

1.1.7 Định lý Phần dư Trung Hoa

Định lý 1.6 Giả sử m1, m2,…, m r là các số nguyên dương nguyên tố cùng nhau từng đôi một Khi đó, hệ phương trình đồng dư:

ta có x chính là nghiệm của hệ đang xét

Giả sử x0, x1 là hai nghiệm của hệ Khi đó với mỗi k,

Nhận xét Định lý Phần dư Trung Hoa cho phép tính toán đồng dư theo

modulo của một số lớn (tích của nhiều số nguyên tố cùng nhau) thông qua tính toán đồng dư theo modulo các số nhỏ (từng thừa số) Điều này sẽ hỗ trợ trong công việc thám mã sau này

Ví dụ 1.6 Tìm nghiệm của hệ sau modulo 57057:

2(mod 3)5(mod 7)4(mod11)9(mod13)6(mod19)

x x x x x

Trang 21

1 _

1.1.8 Thặng dư bình phương và ký hiệu Legendre

Định nghĩa 1.4 Cho số nguyên tố p Số nguyên a được gọi là thặng dư

bình phương (mod p) nếu như a và p nguyên tố cùng nhau và tồn tại số nguyên x thỏa mãn phương trình x 2 ≡ a (mod p)

Nguyên lý căn bậc 2 Một trong hai "nghiệm" của thặng dư bình phương

cũng là một thặng dư bình phương

Ví dụ 1.7 Lấy p = 11 ta có a = 4 là một thặng dư bình phương Nó có

hai nghiệm là 2 và 9, trong đó 9 là một thặng dư bình phương (dễ dàng kiểm tra 32  9 (mod 11) hoặc 82  9 (mod 11))

Định nghĩa 1.5 (Ký hiệu Legendre) Với số nguyên tố p > 2 và số

nguyên bất kỳ a, số nguyên sau gọi là ký hiệu Legendre:

L(a,p) :=

a p

 

  =

1 2

p a

(mod p)

và L(a,p) :=

a p

 

  =

0 1-1

Ta có thể mở rộng khái niệm kí hiệu trên cho trường hợp p không phải là nguyên tố, nhưng chỉ xét những số a trong hệ thặng dư thu gọn của p

nếu a chia hết cho p nếu a là một thặng dư bình phương (mod p)

các trường hợp còn lại

Trang 22

Định nghĩa 1.6 (Ký hiệu Jacobi) Với số nguyên n = p1.p2 p k , trong

đó p i (i = 1, k ) là các số nguyên tố còn a nằm trong hệ thặng dư thu gọn của

n, số nguyên sau gọi là ký hiệu Jacobi:

J(a,n) = L(a,p1)L(a,p2) L(a,p k)

Như vậy khi n là số nguyên tố thì J(a,n) = L(a,n)

1.2 LIÊN PHÂN SỐ

1.2.1 Khái niệm liên phân số

Định nghĩa 1.7 Cho một số hữu tỉ a

o

o

n n

r a

Cách viết như trên được gọi là biểu diễn số hữu tỉ a

b dưới dạng liên phân

số

Để đơn giản, ta dùng cách viết a

b = [a0;a1, ,an] Liên phân số

a a0; , ,1 a nđược gọi là liên phân số hữu hạn (cấp n)

Như vậy, dùng thuật toán Euclid có thể biểu diễn mọi số hữu tỉ dưới dạng liên phân số hữu hạn Ngược lại, rõ ràng mỗi liên phân số hữu hạn là một số hữu tỉ

Trang 23

Giả sử x là một số thực tuỳ ý Đặt ao = [x], phần nguyên của x, và

x  x a là phần lẻ của x Tiếp theo đó ta đặt a1 = 1

o x

x - a i Nếu ở bước thứ i nào

đó, x i = 0 thì quá trình kết thúc (điều này xảy ra khi và chỉ khi x là số hữu tỷ )

Ngược lại, ta có x biểu diễn dưới dạng phân số liên tục vô hạn:

1

111

Các liên phân số định nghĩa như trên với các số a i nguyên gọi là các liên

phân số đơn giản Khi không đòi hỏi a i là các số nguyên, mà có thể là số thực tuỳ ý, ta dùng cách viết

Ta gọi giản phân thứ k (hay cấp k) của liên phân số δ là phân số k

k k

p q

Trang 24

111

k k

k k

a ;a a a a

a

a a

Trang 26

Hệ quả 1.6 Các giản phân là các phân số tối giản

Mệnh đề 1.4 Tập hợp các giản phân cấp chẵn hợp thành một dãy hữu tỉ

tăng cùng chỉ số, còn tập hợp các giản phân cấp lẻ hợp thành một dãy hữu tỉ giảm khi chỉ số tăng

Đẳng thức trên cho ta điều cần chứng minh

Mệnh đề 1.5 Mỗi giản phân cấp chẵn đều nhỏ hơn mọi giản phân cấp lẻ

Mệnh đề 1.6 Tập hợp các giản phân của một liên phân số vô hạn hợp

thành một dãy Cauchy hữu tỉ

Chứng minh Theo cách xác định q s , ta có q s là một số nguyên dương và

q s > q s-1 , ∀s = 2, 3, … Do đó qs tăng vô hạn cùng với s Từ các tính chất của

Trang 27

Định nghĩa 1.9 Giá trị của liên phân số hữu hạn  a a0; , ,1 a n là giá trị của giản phân cuối cùng  của nó Giá trị của liên phân số vô hạn n

a a0; , ,1 a k, 

  là giới hạn của dãy các giản phân ( )s s của nó

Hệ quả 1.7 Giá trị của một liên phân số lớn hơn mọi giản phân cấp chẵn

và nhỏ hơn mọi giản phân cấp lẻ của nó

Liên phân số được đề cập đến trong công nghệ mã hóa dòng thông tin và trong việc phân tích số nguyên tố liên quan đến công nghệ thám mã

Do F là một nhóm cyclic, phần tử g sinh ra p* F còn gọi là một căn p*

nguyên thủy Người ta chứng minh được rằng nếu g là phần tử sinh của F p*

còn b là một số nguyên tố cùng nhau với p – 1 thì g b cũng là phần tử sinh của nhóm F Do đó số các phần tử sinh của nhóm p* F bằng p* φ(p–1)

1.3.2 Cách xây dựng trường F q từ trường F p

Giả sử F q là một trường hữu hạn gồm q phần tử, đặc số p Vì F q chứa

phần tử 1 nên nó sẽ chứa trường F p như một trường con Do F q là trường hữu

hạn nên nó là mở rộng hữu hạn của F p , nghĩa là một không gian vectơ r chiều trên F p Từ đó suy ra rằng F q gồm p r phần tử, tức là q = p r

Định lí 1.7 Giả sử F q là trường hữu hạn với q = p r phần tử Khi đó, mọi

phần tử của F q đều thỏa mãn phương trình X q – X = 0

F q chính là tập hợp các nghiệm của phương trình đó Ngược lại, trường

mở rộng của F p bởi đa thức X q – X là trường hữu hạn có q phần tử

Trang 28

Định lí 1.8 Mọi trường hữu hạn đều có phần tử sinh Nếu g là một phần

tử sinh của F thì g q* s là phần tử sinh của F khi và chỉ khi (s, q–1) = 1 Như q*

vậy, tồn tại tất cả φ(q–1) phần tử sinh của *

q

F

Bây giờ ta sẽ mô tả cụ thể cách xây dựng trường F q từ trường F p Để dễ hình dung, trước tiên xây dựng trường số phức ℂ như là một trường mở rộng của trường số thực ℝ bởi đa thức P(x) = x2 + 1

Có thể xem mỗi số phức như một cặp số thực (a, b), do đó có thể đồng nhất mỗi số phức với một đa thức ax + b hệ số thực Với cách tương ứng như

vậy, khi nhân hai số phức (biểu diễn bởi hai đa thức), ta chỉ việc nhân theo

quy tắc nhân các đa thức và thay x2 bởi (-1), cũng tức là thay x2 + 1 bởi 0 Nói cách khác, tập hợp các số phức chính là tập hợp các đa thức với hệ số thực, trong đó hai đa thức được đồng nhất khi và chỉ khi hiệu của chúng là bội (chia

hết cho) đa thức P(x) = x2 + 1 Ta viết ℂ = ℝ[x]/P(x)

Trường F q , q = p r , được xây dựng từ trường F p theo cách hoàn toàn

tương tự Ta xuất phát từ một đa thức bất khả quy P(x) bậc r với hệ số trong

F p , trong đó hệ số của x r bằng 1 Khi đó ta có F q = F p [x]/P(x) Như vậy, các phần tử của F q là các đa thức với hệ số trong F p , bậc nhỏ hơn r

Ta có thể xuất phát từ đa thức bất khả quy tùy ý Các trường nhận được

có số phần tử như nhau và đẳng cấu với nhau

Ví dụ 1.9 Xây dựng trường F16 từ trường F2 bởi đa thức

Trang 29

Các phần tử của F16 là các đa thức bậc nhỏ hơn hoặc bằng 3, với hệ số 0 hoặc 1 Ta thống kê các đa thức (theo bậc):

1.4 ĐƯỜNG CONG ELLIPTIC

1.4.1 Khái niệm đường cong elliptic

Định nghĩa 1.10 Đường cong elliptic trên trường K là tập hợp các điểm

(x, y) thỏa mãn phương trình:

y2 + a1xy + a3y = x3 + a2x2 + a4x + a6 , với a1, a2, a3, a4, a6 ∈ K (1.1) với một điểm O gọi là điểm vô cùng Hơn nữa phương trình (1.1) phải thỏa

mãn điều kiện không kì dị, tức là nếu viết nó dưới dạng F(x, y) = 0 thì tại mọi điểm (x, y) thỏa mãn phương trình có ít nhất một trong các đạo hàm riêng

Điểm tại vô cùng nói trong định nghĩa là điểm vô cùng trong đường cong

xạ ảnh tương ứng Ta xét không gian xạ ảnh P2, tức là không gian mà các

điểm là các lớp tương đương của các bộ ba (x, y, z), trong đó x, y, z không đồng thời bằng 0, và bộ ba (x, y, z) tương đương với bộ ba (  x y, , z),   0

Như vậy nếu z  thì lớp tương đương của (x, y, z) chứa bộ ba 0 x y, ,1

z z

  Ta

Trang 30

có thể đồng nhất mặt phẳng xạ ảnh P2 với mặt phẳng thông thường cùng với

các “điểm tại vô hạn” ứng với z = 0

Một đường cong trong mặt phẳng thông thường có thể tương ứng với đường cong trong mặt phẳng xạ ảnh bằng cách thêm vào các điểm tại vô cùng Để làm việc đó, trong phương trình xác định đường cong, ta chỉ cần

- Phần tử 0 là điểm tại vô cùng, (0,1,0);

- Điểm với tọa độ (x1, y1) có nghịch đảo là điểm với tọa độ

y a x a

  nếu P1P2

Chứng minh Bằng tính toán trực tiếp dựa vào phương trình xác định

đường cong, dễ kiểm tra định nghĩa phép cộng trên đây thỏa mãn các tiên đề nhóm Abel

Trang 31

Hình 1.1 Một ví dụ về đường cong elliptic

1.4.2 Đường cong elliptic trên trường số thực

Đường cong elliptic E trên trường số thực  là tập hợp các điểm (x, y) thỏa mãn công thức: y2 = x3 + a4 x + a 6 , với a4, a6 ∈  (1.3) cùng với một điểm O vô cùng

Cặp giá trị (x, y) đại diện cho một điểm trên đường cong elliptic Đường cong elliptic E trên  ký hiệu là E(  ) Đường cong elliptic trên  cho ta một nhóm Abel (E(  ), +) (theo Định lý 1.9)

Phép cộng trong Định lý 1.9 được minh họa:

Hình 1.2 Điểm ở vô cùng

Trang 32

Phép cộng trên E(  ) có thể được định nghĩa theo phương diện hình học Giả sử có hai điểm phân biệt P và Q, P, Q ∈ E(  ) Phép cộng trên nhóm đường cong elliptic là P + Q = R, R ∈ E(  )

Hình 1.3 Phép cộng trên đường cong elliptic

Để tìm điểm R, ta nối P và Q bằng đường thẳng L Đường thẳng L sẽ cắt

E tại ba điểm P, Q và –R(x, y) Điểm R(x, –y) sẽ có tung độ là giá trị đối của y

Phép nhân đôi được minh họa:

Hình 1.4 Phép nhân đôi trên đường cong elliptic

Trang 33

Xét phép nhân đôi: nếu cộng hai điểm P, Q ∈ E(  ) với P = Q thì đường thẳng L sẽ là tiếp tuyến của đường cong elliptic tại điểm P Trường hợp này điểm –R sẽ là giao điểm còn lại của L với E Lúc đó R = 2P

1.4.3 Đường cong elliptic trên trường hữu hạn

Đường cong elliptic được xây dựng trên các trường hữu hạn Có hai

trường hữu hạn thường được sử dụng: trường hữu hạn F q với q là số nguyên

tố hoặc q là 2 m (m là số nguyên)

Tùy thuộc vào trường hữu hạn F q , với mỗi bậc của q, tồn tại nhiều đường cong elliptic Do đó, với một trường hữu hạn cố định có q phần tử và q

lớn, có nhiều sự lựa chọn nhóm đường cong elliptic

a Đường cong elliptic trên trường F p (p là số nguyên tố)

Cho p là số nguyên tố (p > 3) Cho a, b  F p sao cho 4a3 + 27b2 ≠ 0

trong trường F p Một đường cong elliptic E(F p ) trên F p (được định nghĩa bởi

các tham số a và b) là một tập hợp các cặp giá trị (x, y) (x, y ∈ F p) thỏa công

cùng với một điểm O – gọi là điểm tại vô cùng Số lượng điểm của E(F p) là

#E(F p) thỏa định lý Hasse:

Trang 34

Bậc của một điểm A trên E(F p ) là một số nguyên dương r sao cho:

r

AA   A

  

b Đường cong elliptic trên trường F 2m

Một đường cong elliptic E( F ) trên 2m F được định nghĩa bởi các tham số 2m

a, b F (với b 2m ≠ 0) là tập các điểm (x, y) với x ∈ F , y 2mF thỏa công 2m

thức: y2 + xy = x3 + ax2 + b (1.5)

cùng với điểm O là điểm tại vô cùng Số lượng các điểm thuộc E( F ) kí hiệu 2m

#E( F ) thoả định lý Hasse: 2m

q + 1 − 2 p ≤ #E( F ) ≤ q + 1 + 22m p

trong đó q = 2 m Ngoài ra, #E( F ) là số chẵn 2m

Tập hợp các điểm thuộc E( F ) tạo thành một nhóm thỏa các tính chất 2m

sau:

o O + O = O

o (x, y) + O = (x, y), ∀(x, y) ∈ E( F ) 2m

o (x, y) + (x, x + y) = O, ∀(x, y) ∈ E( F ) Khi đó, (x, x + y) là điểm 2m

đối của (x, y) trên E( F ) 2m

Một trong những ứng dụng mới nhất của đường cong elliptic trên trường hữu hạn, xuất hiện trong những năm gần đây là các hệ mật mã khóa công khai elliptic

Trang 35

CHƯƠNG 2 CÁC KHÁI NIỆM CƠ BẢN CỦA MÃ HÓA

VÀ CÁC HỆ MÃ ĐỐI XỨNG

2.1 MỘT SỐ THUẬT NGỮ VÀ KHÁI NIỆM

2.1.1 Một số thuật ngữ

- Văn bản gốc (Plaintext, kí hiệu là P): chứa các xâu kí tự gốc, thông tin

trong văn bản gốc là thông tin cần mã hoá để giữ bí mật

- Văn bản mã (Ciphertext, kí hiệu là C): chứa các kí tự sau khi đã được

mã hóa, mà nội dung được giữ bí mật

- Sự lập mã (Encryption): là quá trình che dấu thông tin bằng phương

pháp nào đó để làm ẩn nội dung bên trong, còn gọi là mã hóa

- Sự giải mã (Decryption): quá trình khôi phục văn bản gốc từ văn bản

- Chìa khoá mã (Cipher key): bí quyết lập mã và giải mã

- Hệ mã (Cryptosystem): phương pháp mã hóa văn bản

- Mật mã học (Crytography): là nghệ thuật tạo ra và sử dụng các hệ mã

- Phân tích mã (Cryptanalysis) hay thám mã: là khoa học nghiên cứu

cách phá các hệ mã nhằm phục hồi văn bản gốc ban đầu từ văn bản mã

Quá trình mã hoá và giải mã được thể hiện trong sơ đồ sau:

Trang 36

P (Plaintext) là tập hợp hữu hạn các văn bản gốc có thể

C (Ciphertext) là tập hợp hữu hạn các văn bản mã có thể

K (Key) là tập hợp các chìa khoá có thể

E (Encrytion) là tập hợp các qui tắc mã hoá có thể

D (Decrytion) là tập hợp các qui tắc giải mã có thể

Chúng ta đã biết một thông báo thường được tổ chức dưới dạng văn bản gốc Người gửi sẽ làm nhiệm vụ mã hóa văn bản gốc, kết quả thu được gọi là văn bản mã Văn bản mã này được gửi đến người nhận Sau khi nhận được văn bản mã, người nhận giải mã nó để tìm hiểu nội dung

Dễ dàng thấy được công việc trên khi sử dụng định nghĩa hệ mật mã:

E K (P) = C và D K (C) = P

- Hệ mã bí mật (Secret Key Cryptosystem – SKC) hay hệ mã đối xứng: là

hệ mã mà trong đó việc lập mã và giải mã cùng sử dụng chung một chìa khóa

mã (bí mật)

- Hệ mã công khai (Public Key Cryposystem – PKC) hay hệ mã phi đối

xứng: là hệ mã mà trong đó việc lập mã và giải mã sử dụng 2 chìa khóa mã

riêng biệt, từ chìa này không thể tìm ra chìa kia một cách dễ dàng; chìa dùng

để lập mã thường được thông báo công khai, còn chìa dành cho việc giải mã phải luôn giữ bí mật, thường được gọi là chìa khóa riêng

2.1.2 Hệ mã đối xứng và hệ mã phi đối xứng

Hệ mã đối xứng hay còn gọi hệ mã hoá cổ điển hay hệ mã bí mật là hệ

mã 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 Hệ mã 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 hệ mã này vẫn 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á

Trang 37

Vấn đề quản lý và phân phối khoá là khó khăn và phức tạp khi sử dụng

hệ mã hoá cổ điển, đặc biệt là khi số lượng người sử dụng rất lớn Đồng thời, việc thay đổi khoá là rất khó và dễ bị lộ 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 việc phát triển hệ mật

mã cổ điển Nếu như vấn đề khó khăn đặt ra đối với các phương pháp mã hóa

cổ điển chính là bài toán trao đổi mã khóa thì ngược lại, các phương pháp mã hóa khóa công khai (hay còn gọi là mã hóa hiện đại hay mã hóa phi đối xứng) giúp cho việc trao đổi mã khóa trở nên dễ dàng hơn

Hệ mã công khai khác biệt so với hệ mã bí mật Chúng được thiết kế sao cho khoá sử dụng vào việc mã hoá là khác so với khoá giải mã Hơn nữa khoá giải mã không thể tính toán được từ khoá mã hoá Chúng được gọi với tên hệ thống mã khoá công khai bởi vì khoá để mã hoá có thể công khai, một người bất kỳ có thể sử dụng khoá công khai để mã hoá thông báo, nhưng chỉ một vài người có đúng khoá giải mã mới có khả năng giải mã Trong nhiều hệ thống, khoá mã hoá gọi là khoá công khai (public key), khoá giải mã thường được gọi là khoá riêng (private key) Nội dung của khóa công khai không cần phải giữ bí mật như đối với khóa bí mật trong các phương pháp mã hóa cổ điển Đặc trưng nổi bật của hệ mã hoá công khai là cả khoá công khai và bản tin mã hoá đều có thể gửi đi trên một kênh thông tin không an toàn

2.2 LỊCH SỬ MẬT MÃ HỌC

Mật mã học có lịch sử lâu dài và đầy màu sắc Nói chung, những dạng

sớm nhất của cách viết bí mật (ngày nay gọi chung là mật mã hóa cổ điển) chỉ cần có bút và giấy Hai phạm trù chính của mật mã cổ điển là mật mã hoán vị, trong đó người ta sắp xếp lại trật tự các chữ cái của thông điệp, và mật mã

thay thế, trong đó người ta thay thế có hệ thống các chữ cái hay các nhóm chữ

cái bằng các chữ cái hay các nhóm chữ cái khác Văn bản được mật mã hóa

Trang 38

bằng mật mã cổ điển có xu hướng lộ ra các thông tin thống kê nhất định về văn bản thường Bằng cách sử dụng các thông tin này, mật mã cổ điển rất dễ

bị dò ra Mật mã cổ điển vẫn còn được phổ biến tới ngày nay, chủ yếu thông qua việc giải các ô đố chữ

Các thiết bị và các kỹ thuật khác nhau đã được sử dụng để mật mã hóa Một trong những thiết bị sớm nhất có lẽ là gậy mật mã của người Hy Lạp Trong nửa đầu thế kỷ 20, một số thiết bị cơ khí đã được phát minh để thực hiện mật mã hóa, nổi tiếng nhất là máy Enigma được người Đức sử dụng trong Đại chiến thế giới 2 Mật mã thực hiện bằng các máy móc này đã tăng

độ phức tạp lên đáng kể đối với công việc phân tích mã

Các nghiên cứu rộng rãi có tính học thuật về mật mã hóa hiện đại là tương đối gần đây, nó chỉ được bắt đầu trong cộng đồng mở kể từ những năm thập niên 1970 với các chi tiết kỹ thuật của DES (viết tắt trong tiếng Anh

của Data Encryption Standard tức Tiêu chuẩn Mật mã hóa Dữ liệu) và sự

phát minh ra RSA Kể từ đó, mật mã hóa đã trở thành công cụ được sử dụng rộng rãi trong liên lạc và bảo mật máy tính

2.3 NGUYÊN TẮC CHUNG VÀ MỘT SỐ HỆ MÃ ĐƠN GIẢN

Những hệ mã hiện đại có thể xem là sự cải tiến từ hệ mã Caesar Đây là

hệ mã được biết sớm nhất, được sáng tạo bởi Julius Caesar Vì thế, phần này

sẽ bắt đầu bằng việc trình bày hệ mã Caesar

2.3.1 Hệ mã Ceasar

a Nguyên lý thực hiện

Ceasar đã chuyển thông báo mật bằng cách sau đây Trước tiên lập phép tương ứng mỗi chữ cái với một số Nhờ bảng tương ứng đó ta có thể chuyển một văn bản thành dạng chữ số Sau đó ta cộng thêm 3 vào mỗi chữ số nhận được, lại nhờ bảng tương ứng giữa chữ và số, ta biến bảng chữ số mới này về

Trang 39

dạng chữ viết Như vậy ta nhận được một văn bản mật cần chuyển Đây là

quá trình mã hóa

Khi nhận được văn bản mật, ta giải mã bằng cách biến nó thành dạng chữ

số nhờ bảng tương ứng giữa chữ và số, sau đó trừ đi 3 ở mỗi chữ số và lại chuyển nó về dạng chữ để lại có văn bản ban đầu

Chú ý Khi cộng hoặc trừ đi 3 đưa ta vượt quá giới hạn của bảng tương

ứng, ta thay số đó bằng thặng dư dương bé nhất modulo số các phần tử của bảng tương ứng giữa chữ và số (trong bảng chữ cái tiếng Anh thì số này là 26) Sau đây ta xét ví dụ cụ thể với các chữ cái trong tiếng Việt

Trước hết ta lập tương ứng các chữ cái với các chữ số theo bảng sau:

Số 3 trong công thức (2.1) gọi là chìa khoá của mã Ceasar

Chẳng hạn muốn chuyển văn bản: Sang sơm mai se khơi hanh

Trước hết nhằm nâng cao tính bảo mật, ta tách thông báo thành nhóm 5

chữ cái Như vậy thông báo cần mã hoá là: Sangs ơmmai sekhơ ihanh

Ta chuyển thông báo sang dạng chữ số:

23 1 16 10 23 19 15 15 1 12 23 8 13 11 19 12 11 1 16 11

Áp dụng (2.1), dãy chữ số trên được chuyển thành:

26 4 19 13 26 22 18 18 4 15 28 11 16 14 22 15 14 4 19 14

Ta lại chuyển về dạng chữ cái, ta có văn bản mật:

ưbơkư rôôbm xhnlr mlbơl

Trang 40

Ta cũng có thể lập một hệ mã mới bằng cách thay số 3 trong công thức

biết C,a,b

b Độ an toàn

Khi bắt được văn bản mật, người ta có thể dựa vào tần suất xuất hiện của chữ cái để đoán ra khoá giải mã Mặt khác, chỉ có 29 chữ cái khác nhau để chọn khoá cho loại mã nói trên Với công nghệ máy tính như hiện nay ta dễ dàng tìm ra văn bản gốc Như vậy, mã Ceasar cho thấy tính bảo mật không cao, với yêu cầu về độ bảo mật cao hơn, người ta dùng những hệ mật mã phức tạp hơn, sau đây là một vài hệ mã thường dùng, từ đơn giản đến phức tạp

2.3.2 Hệ mã khối

a Nguyên lý thực hiện

Hệ mã này không mã hoá từng chữ cái của văn bản, mà mã hóa từng khối chữ cái Trước tiên ta xét tập hợp mã khối hai chữ Với mỗi phép khối hai chữ ta chọn một ma trận cấp hai làm chìa khóa của mã Chẳng hạn:

11 12

21 22

a a A

a a

a i j nguyên thuộc đoạn [1; 29]

Khi đó các khối hai số P1P2 trong văn bản được chuyển thành các khối

hai số C 1 C 2 trong văn bản mật theo công thức:

C1  a11P1 + a12P2 (mod 29)

Ngày đăng: 12/03/2017, 17:13

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Phạm Huy Điển, Hà Huy Khoái (2002), Số học Thuật toán: Cơ sở lý thuyết và Tính toán thực hành, NXB ĐHQG Hà Nội, Hà Nội Sách, tạp chí
Tiêu đề: Số học Thuật toán: Cơ sở lý thuyết và Tính toán thực hành
Tác giả: Phạm Huy Điển, Hà Huy Khoái
Nhà XB: NXB ĐHQG Hà Nội
Năm: 2002
[2] Phạm Huy Điển, Hà Huy Khoái (2004), Mã hóa thông tin: Cơ sở toán học & ứng dụng, NXB ĐHQG Hà Nội, Hà Nội Sách, tạp chí
Tiêu đề: Mã hóa thông tin: Cơ sở toán học "& ứng dụng
Tác giả: Phạm Huy Điển, Hà Huy Khoái
Nhà XB: NXB ĐHQG Hà Nội
Năm: 2004
[3] Dương Anh Đức, Trần Minh Triết (2005), Mã hóa và ứng dụng, Đại học Khoa học Tự nhiên, Đại học Quốc gia TP Hồ Chí Minh Sách, tạp chí
Tiêu đề: Mã hóa và ứng dụng
Tác giả: Dương Anh Đức, Trần Minh Triết
Năm: 2005
[4] Vũ Thị Thanh Hậu (2009), Một số ứng dụng của số học trong lý thuyết mật mã, Luận văn Thạc sĩ, Đại học Khoa học, Thái Nguyên Sách, tạp chí
Tiêu đề: Một số ứng dụng của số học trong lý thuyết mật mã
Tác giả: Vũ Thị Thanh Hậu
Năm: 2009
[5] Nguyễn Hữu Hoan (2003), Lý thuyết số, NXB Đại học Sư Phạm, Huế Sách, tạp chí
Tiêu đề: Lý thuyết số
Tác giả: Nguyễn Hữu Hoan
Nhà XB: NXB Đại học Sư Phạm
Năm: 2003
[6] Hà Huy Khoái (2006), Số học, NXB Giáo dục, Huế. TIẾNG ANH Sách, tạp chí
Tiêu đề: Số học
Tác giả: Hà Huy Khoái
Nhà XB: NXB Giáo dục
Năm: 2006
[7] A. Enge (1999), Elliptic Curves and their Applications to Cryptography, Kluwer Academic Publishers Sách, tạp chí
Tiêu đề: Elliptic Curves and their Applications to Cryptography
Tác giả: A. Enge
Năm: 1999
[8] R.A. Mollin (2007), An Introduction to Cryptography, Chapman & Hall/CRC Sách, tạp chí
Tiêu đề: An Introduction to Cryptography
Tác giả: R.A. Mollin
Năm: 2007
[9] FIPS 197 (2001), Announcing the Advanced Encryption Standard (AES). ĐỊA CHỈ CÁC NGUỒN TRÊN INTERNET Sách, tạp chí
Tiêu đề: Announcing the Advanced Encryption Standard (AES)
Tác giả: FIPS 197
Năm: 2001

HÌNH ẢNH LIÊN QUAN

Hình  Tên hình  Trang - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
nh Tên hình Trang (Trang 8)
Bảng sau đây cho một số giản phân đầu tiên - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Bảng sau đây cho một số giản phân đầu tiên (Trang 25)
Hình 1.1. Một ví dụ về đường cong elliptic - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Hình 1.1. Một ví dụ về đường cong elliptic (Trang 31)
Hình 1.3. Phép cộng trên đường cong elliptic - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Hình 1.3. Phép cộng trên đường cong elliptic (Trang 32)
Hình 1.4. Phép nhân đôi trên đường cong elliptic - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Hình 1.4. Phép nhân đôi trên đường cong elliptic (Trang 32)
Sơ đồ sau: - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Sơ đồ sau (Trang 47)
Sơ đồ mã hoá một khối dữ liệu 64 bit được thể hiện như sau: - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Sơ đồ m ã hoá một khối dữ liệu 64 bit được thể hiện như sau: (Trang 49)
Hình 2.1. Cấu trúc Multiplication/Additio (MA). - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Hình 2.1. Cấu trúc Multiplication/Additio (MA) (Trang 58)
Hình 2.2. Cấu trúc IDEA. - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Hình 2.2. Cấu trúc IDEA (Trang 59)
Hình sau thể hiện quá trình mã hoá (theo chiều đi xuống bên trái) và quá - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Hình sau thể hiện quá trình mã hoá (theo chiều đi xuống bên trái) và quá (Trang 61)
Hình 2.4. Cấu trúc một vòng của SAFER. - LÝ THUYẾT SỐ TRONG MÃ HÓA THÔNG TIN  Nghiên cứu lý thuyết số trong mã hóa thông tin
Hình 2.4. Cấu trúc một vòng của SAFER (Trang 69)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w