1. Trang chủ
  2. » Giáo án - Bài giảng

Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông

157 334 3

Đ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 157
Dung lượng 1,02 MB

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

Nội dung

Cuốn giáo trình này sẽ giới thiệu với bạn đọc về các kiến thức toán học cơ bản như: lý thuyết số, các cấu trúc đại số như vành nhóm, trường...; một số thuật toán mật mã cổ điển và hiện đ

Trang 1

Lời nói đầu

Trong sự phát triển của xã hội loài người, kể từ khi có sự trao

đổi thông tin, an toàn thông tin trở thành một nhu cầu gắn liền với nó như hình với bóng Từ thủa sơ khai, an toàn thông tin được hiểu đơn giản là giữ được bí mật và điều này được xem như một nghệ thuật chứ chưa phải là một ngành khoa học Với sự phát triển của khoa học kỹ thuật và công nghệ, cùng với các nhu cầu đặc biệt có liên quan tới an toàn thông tin, ngày nay các kỹ thuật chính trong an toàn thông tin bao gồm: Kỹ thuật mật mã (Cryptography), Kỹ thuật nguỵ trang (Steganography), Kỹ thuật tạo bóng mờ (Watermarking - hay xăm điện tử) Kỹ thuật mật mã nhằm đảm bảo ba dịch vụ an toàn cơ bản:Bí mật (Confidential), Xác thực (Authentication), Đảm bảo tính toàn vẹn (Integrity) Có thể thấy rằng mật mã học là một lĩnh vực khoa học rộng lớn có liên quan rất nhiều đến toán học như: Đại số tuyến tính, Lý thuyết thông tin, Lý thuyết độ phức tạp tính toán…

Nắm bắt được nhu cầu tìm hiểu về mật mã học, Học viện Công nghệ Bưu chính Viễn thông phối hợp với Nhà xuất bản Bưu điện xuất bản cuốn giáo trình "Mật mã học" do PGS.TS Nguyễn Bình chủ biên Cuốn giáo trình này sẽ giới thiệu với bạn đọc về các kiến thức toán học cơ bản như: lý thuyết số, các cấu trúc đại số như vành nhóm, trường ; một số thuật toán mật mã cổ điển và hiện đại; các thủ tục và các chuẩn ứng dụng trong thực tế Với nhiều ví dụ cụ thể, cuốn sách giúp cho bạn

đọc thuận tiện trong quá trình học tập nghiên cứu để nâng cao kiến thức

về mật mã học Đây là giáo trình phục vụ đào tạo tại Học viện Công nghệ Bưu chính Viễn thông

Trang 2

Hy vọng cuốn sách sẽ là tài liệu tham khảo hữu ích cho giảng viên, sinh viên các trường đại học về kỹ thuật và công nghệ

Xin trân trọng giới thiệu cùng bạn đọc

Hà Nội, ngày 23 tháng 10 năm 2003

Học viện công nghệ bưu chính viễn thông

Trang 3

thuật ngữ viết tắt

DES Data Encryption Standard Chuẩn mã dữ liệu

LAN Local Area Network Mạng cục bộ

ECB Electronic Code Book Chế độ quyển mã điện tử

CFB Cripher Feedback Chế độ phản hồi mã

CBC Cripher Block Chaining Chế độ liên kết khối mã

RSA Rivest - Shamir - Adleman

MAC Message Authentication Code Mã xác thực thông báo

CRHF Collision Resistant hash function Hàm băm khó va chạm

MDC Manipulation Detection Code Mã phát hiện sự sửa đổi

LSB Least Signification Bit Bit thấp nhất (có giá trị nhỏ

PGP Pretty Good Privacy Thuật toán mã hóa PGP

SET Secure Electronic Transaction Giao dịch điện tử an toàn

LFSR Linear Feedback Sequence

Register

Thanh ghi hồi tiếp tuyến tính

Trang 4

PhÇn I C¸c kiÕn thøc to¸n häc phô trî

Trang 5

1.1.3 Định nghĩa 1.2 (Thuật toán chia đối với các số nguyên)

Nếu a vμ b lμ các số nguyên với b≥1

thì a=qb+r; 0≤r<b

q vμ r lμ những giá trị duy nhất

Trang 6

PhÇn d− cña phÐp chia a vμ b ®−îc ký hiÖu amodb=r Th−¬ng cña phÐp chia a vμ b ®−îc ký hiÖu adivb=q

b

ababmoda,b

abdiva

c lμ −íc chung cña a vμ b nÕu ca&cb

1.1.5 §Þnh nghÜa 1.4 (¦íc chung lín nhÊt (¦CLN))

Sè nguyªn d−¬ng d lμ ¦CLN cña c¸c sè nguyªn a vμ b (Ký hiÖu d = (a, b)) nÕu:

(i) d lμ −íc chung cña a vμ b

1.1.6 §Þnh nghÜa 1.5 (Béi chung nhá nhÊt (BCNN))

Sè nguyªn d−¬ng d lμ BCNN cña c¸c sè nguyªn a vμ b (Ký hiÖu d = BCNN (a,b)) nÕu:

(i) ad,bd

(ii) NÕu cã ac, bc th× dc

Nh− vËy d lμ sè nguyªn d−¬ng nhá nhÊt lμ béi cña c¶ a vμ b

Trang 7

1.1.7 TÝnh chÊt

( ) ( )a,b

b.ab,a

6

18.1218,12BCNN6

18,

k

e 2

Trang 8

(iii) Nếu 1 2 e k

k

e 2

e

p

n= K lμ phân tích ra thừa số nguyên tố của n thì:

k 2

11p

11p

11n

n

n >

Φ

1.2 các thuật toán trong z

Cho a vμ b lμ các số nguyên không âm vμ nhỏ hơn hoặc bằng

n Cần chú ý rằng số các bit trong biểu diễn nhị phân của n lμ [lgn] + 1 vμ số nμy xấp xỉ bằng lgn Số các phép toán bit đối với bốn phép toán cơ bản trên các số lμ cộng, trừ, nhân vμ chia sử dụng các thuật toán kinh điển đ−ợc tóm l−ợc trên bảng 1.1 Các kỹ thuật tinh tế hơn đối với các phép toán nhân vμ chia sẽ có độ phức tạp nhỏ hơn

Bảng 1.1: Độ phức tạp bit của các phép toán cơ bản trong Z

f 1

e k

e 2

e

1 p p ,b p p pp

a= K = trong đó ei ≥0,fi ≥0

thì ( ) ( 1 1) ( 2 2) min ( ek, fk)

k f , e min 2 f , e min

pb,a

Trang 9

vμ ( ) ( 1 1 ) ( 2 2 ) max ( e k , f k )

k f , e max 2 f , e max

pb,a

Ví dụ: Cho a = 4864 = 28.19; b = 3458 = 2.7.13.19 Khi đó:

( ) (a,b 4864,3458) 2 7.13.19 442624.BCNN

3819.23458,4864b

,aCLN

Nếu a vμ b lμ các số nguyên dương với a>b thì ƯCLN(a,b) =

ƯCLN (b,a mod b) Thuật toán Euclide sau sẽ cho ta cách tính

ƯCLN rất hiệu quả mμ không cần phải phân tích ra thừa số nguyên tố

1.2.3 Thuật toán Euclide

38114.5646

76646.21406

6461406.23458

14063458

.14864

383458,4864

Trang 10

Thuật toán trên có thể được mở rộng để không những chỉ tính được ƯCLN của 2 số nguyên a vμ b mμ còn tính được các số nguyên x vμ y thoả mãn ax+by=d

1.2.5 Thuật toán Euclide mở rộng

Vμo : Hai số nguyên không âm a vμ b với a≥ b

Ra : d = ƯCLN(a,b) vμ các số nguyên x vμ y thỏa mãn

ax+by=d (1) Nếu b= 0 thì đặt d ←a , x←1 , y←0 vμ return (d, x, y) (2) Đặt x2 ←1, x1 ←0, y2 ←0, y1←1

Thuật toán trên có thời gian chạy cỡ 0((lgn)2) các phép toán bit

Ví dụ: Bảng 1.2 sau chỉ ra các bước của thuật toán trên với

Trang 11

Với các đầu vμo a = 4864 vμ b = 3458

(3) Tính đối xứng: Nếu a≡b(modn) thì b≡a(modn)

(4) Tính bắc cầu: Nếu a≡b(modn) vμ b≡c(modn)

thì a≡c(modn)

(5) Nếu a≡a1(modn) vμ b≡b1(modn) thì

a+b≡a1+b1(modn) vμ a.b≡a1.b1(modn)

Lớp tương đương của một số nguyên a lμ tập các số nguyên

đồng dư với a modulo n Từ các tính chất (2), (3) vμ (5) ở trên ta có thể thấy rằng đối với n cố định, quan hệ đồng dư theo modulo n sẽ phân hoạch Z thμnh các lớp tương đương

Trang 12

Nếu a = qn + r với 0≤r≤n thì a≡r(modn)

Bởi vậy mỗi số nguyên a lμ đồng dư theo modulo n với một số nguyên duy nhất nằm trong khoảng từ 0 tới n - 1, số nμy được gọi

lμ thặng dư tối thiểu của a mod n Như vậy a vμ r có thể được dùng để biểu thị cho lớp tương đương nμy

1.3.3 Định nghĩa 1.10

Các số nguyên modulo n (ký hiệu Zn) lμ tập (các lớp tương

đương) của các số nguyên{0,1,2,K,nư1} Các phép cộng, trừ, nhân trong Zn được thực hiện theo modulo n

Ví dụ: Z25 ={0,1,K,24} Trong Z25 ta có:

13 + 16 = 4 vì 13+16=29≡4(mod25)

Tương tự 13.16 = 8 trong Z25

1.3.4 Định nghĩa 1.11 (Phần tử nghịch đảo)

Cho a∈Zn, Phần tử nghịch đảo (ngược theo phép nhân) của

a mod n lμ một số nguyênx∈Znsao cho: ax≡1(modn)

Nếu x tồn tại thì nó lμ duy nhất, a được gọi lμ khả nghịch Phần tử nghịch đảo của a được ký hiệu lμ aư1

vì 4.7 ≡1(mod 9)

Trang 13

1.3.7 Định lý 1.7

Cho d = (a,n) Phương trình đồng dư ax≡b(modn) có nghiệm

x nếu vμ chỉ nếu db, trong trường hợp nμy có đúng d nghiệm nằm

giữa 0 vμ n - 1, những nghiệm nμy lμ tất cả các đồng dư theo modulo nd

1 1

nmoda

x

nmoda

x

sẽ có nghiệm duy nhất theo modulo n (n = n1.n2Knk)

1.3.9 Thuật toán Gausse

Nghiệm x của hệ phương trình đồng dư trong định lý phần dư China có thể được tính bằng:

=

1 i

i i

ax

Trong đó: Ni =n/nivμ Mi = Niư1mod ni

Các tính toán nμy có thể được thực hiện trong 0(( )lgn2) các phép toán trên bit

Ví dụ: Cặp phương trình đồng dư x≡3(mod7),x≡7(mod13)

có nghiệm duy nhất x ≡59 (mod 91)

Trang 14

Cấp của Z lμ số các phần tử trong *n Z (ký hiệu *n Z ) *n

Theo định nghĩa của hμm Phi-Euler ta thấy:

(1) Định lý Euler: Nếu a∈Z*n thì aΦ ( )n ≡1(mod n)

(2) Nếu n lμ tích của các số nguyên khác nhau vμ nếu

Trang 15

(3) §Æc biÖt ap ≡ a(mod p) víi mäi sè nguyªn a

phÇn tö trong Z*21 ®−îc nªu trong b¶ng sau:

B¶ng 13: CÊp cña c¸c phÇn tö trong Z*21

Trang 16

1.3.17 Định nghĩa 1.17

Cho α∈Z*n Nếu cấp của α lμ Φ( )n thì α đ−ợc gọi lμ phần

tử sinh hay phần tử nguyên thủy của Z Nếu *n Z có một phần tử *n

sinh thì Z đ−ợc gọi lμ cyclic *n

1.3.18 Các tính chất của các phần tử sinh của Z*n

(1) Z*n có phần tử sinh nếu vμ chỉ nếu n=2,4,pk hoặc lμ

b = αi cũng lμ một phần tử sinh của Z*n nếu vμ chỉ nếu

αΦ đối với mỗi nguyên tố p của Φ( )n

Ví dụ: Z*21 không lμ cyclic vì nó không chứa một phần tử có cấp Φ( )21 =12 (Chú ý rằng 21 không thỏa mãn điều kiện (1) ở trên)

*

25

Z lμ cyclic vμ có một phần tử sinh α=2

Trang 17

n đ−ợc ký hiệu lμ Qn, còn tập tất cả các thặng d− không bậc hai

đ−ợc ký hiệu lμ Q Cần chú ý rằng theo định nghĩa n 0∉Z*n Bởi vậy 0∉Qnvμ 0∉Qn

2

1p

, tức lμ một nửa số phần tử trong

*

p

Z lμ các thặng d− bậc hai vμ nửa còn lại thặng d− không bậc hai

Ví dụ: α=6 lμ một phần tử sinh của Z*13 Các lũy thừa của

Cho n lμ tích của hai số nguyên tố lẻ khác nhau q vμ p,

n = p.q, khi đó a∈Z*n lμ một thặng d− bậc hai modulo n nếu vμ chỉ nếu a∈Qpvμ a∈Qp Điều đó dẫn tới ( )( )

4

1q1pQ.Q

Trang 18

và ( )( )

4

1q1p3

Ví dụ: Cho n = 21 Khi đó

Q21 ={1,4,16} Q21 ={2,5,8,10,11,13,17,19,20}

1.3.22 Định nghĩa 1.19

Cho a∈Qn Nếu x∈Z*nthỏa mãnx2 ≡a(modn) thì x được gọi

lμ căn bậc hai của a mod n

e

p

n= K , trong đó pi lμ các số nguyên tố lẻ phân biệt vμ ei ≥1 Nếu a∈Qnthì có đúng 2k căn bậc hai khác nhau theo modulo n

Ví dụ: Các căn bậc 2 của 12 mod 37 lμ 7 vμ 30 Các căn bậc 2

của 121 mod 315 lμ 11, 74, 101, 151, 164, 214, 241 vμ 304

Cho n lμ một số nguyên dương Các phần tử của Zn sẽ được biểu thị bởi các số nguyên Q21 ={0,1,2, ,nư1}

ư+

<

++

=+

nbar

ba

nbab

anmodba

Bởi vậy phép cộng (vμ trừ) theo modulo có thể thực hiện được

mμ không cần phép chia dμi Phép nhân modulo của a vμ b có thể

được thực hiện bằng cách nhân các số nguyên thông thường rồi lấy

Trang 19

phần dư của kết quả sau khi chia cho n Các phần tử nghịch đảo trong Zn có thể được tính bằng cách dùng thuật toán Euclide mở rộng được mô tả dưới đây:

1.4.1 Thuật toán (Tính các nghịch đảo trong Z n )

Vμo : a∈Zn

Ra : aư1modn(nếu tồn tại)

(1) Dùng thuật toán Euclide mở rộng để tìm các số nguyên x

vμ y sao cho ax + ny = d trong đó d = (a,n)

(2) Nếu d > 1 thì aư1 mod n không tồn tại Ngược lại return (x) Phép lũy thừa theo modulo có thể được thực hiện có hiệu quả bằng thuật toán nhân vμ bình phương có lặp Đây lμ một thuật toán rất quan trọng trong nhiều thủ tục mật mã Cho biểu diễn nhị phân của k lμ:

=

t

0 i

i

i2

k trong đó mỗi ki∈{ }0,1 khi đó

( ) ( ) ( )0 0 1 1 t t i

k 2 k 2 k 2 t

0 i

i k

i

i2kk

Ra: ak mod n

(1) Đặtb←1 Nếu k = 0 thì return (b)

(2) Đặt A←a

Trang 20

Nghịch đảo modulo a -1 mod n 0((lgn) 2 )

Lũy thừa modulo a k mod n, k < n 0((lgn) 3 )

1.5 các ký hiệu legendre vμ jacobi

Ký hiệu Legendre lμ một công cụ hữu ích để xem xét liệu một

số nguyên a có lμ một thặng d− bậc hai theo modulo của một số nguyên tố p hay không?

Trang 21

ap0

pa

1.5.2 Các tính chất của ký hiệu Legendre

Cho p lμ một số nguyên tố lẻ vμ a,b∈ Khi đó ký hiệu ZLegendre có các tính chất sau:

qq

Trang 22

Nói một cách khác ⎜⎜⎝⎛qp⎟⎟⎠⎞=⎜⎜⎝⎛pq⎟⎟⎠⎞ trừ phi cả p vμ q lμ đồng dư với

3(mod 4), trong trường hợp nμy ⎜⎜⎝⎛qp⎟⎟⎠⎞=ư⎜⎜⎝⎛pq⎟⎟⎠⎞

Dấu hiệu Jacobi lμ tổng quát hoá của ký hiệu Legendre đối với các số nguyên lẻ n không nhất thiết lμ một số nguyên tố

1.5.3 Định nghĩa 1.21

Cho n≥3 lμ các số nguyên tố lẻ có phân tích:

.pp.p

k

e 2

a

được định nghĩa

lμ:

k 2

ap

an

1.5.4 Các tính chất của ký hiệu Jacobi

Cho n≥ lμ các số nguyên tố lẻ 3 a,b∈ Khi đó ký hiệu ZJacobi có các tính chất sau:

an

an

m

a

Trang 23

m

trừ phi cả hai số m vμ n đều

đồng dư với 3(mod4), trong trường hợp nμy ⎟

1

e 1

e

11a

amodnn

2n

an

2n

Trang 24

1.5.5 Thuật toán tính toán ký hiệu Jacobi (vμ ký hiệu

a (Sẽ lμ ký hiệu Legendre khi n lμ số

Cho p lμ một số nguyên tố lẻ Mặc dù đã biết rằng một nửa

các phần tử trong Z*p lμ các thặng d− không bậc hai theo modulo

p nh−ng không có một thuật toán xác định theo thời gian đa thức nμo đ−ợc biết để tìm

Một thuật toán ngẫu nhiên tìm một thặng d− không bậc hai

lμ chọn ngẫu nhiên các số nguyên a∈Z*pcho tới khi số đó thỏa

Trang 25

Phép lặp đối với số được chọn trước khi tìm được

một thặng dư bậc hai lμ 2 vμ bởi vậy thuật toán được thực hiện theo thời gian đa thức

1.5.7 Ví dụ tính toán ký hiệu Jacobi

Cho a = 158 vμ n = 235 Thuật toán trên tính ⎟

7977

79

771

79

2351235

79235

2235

158

4 / 78 76

4 / 234 78

Trang 26

Bảng 1.6 liệt kê các phần tử trong Z*21 vμ các ký hiệu Jacobi của chúng Từ ví dụ trong phần c ta có Q21 ={1,4,16} Ta thấy

1.6 Các số nguyên blum

1.6.1 Định nghĩa 1.23

Số nguyên Blum lμ một hợp số có dạng n = p q, trong đó p

vμ q lμ các số nguyên tố khác nhau vμ thỏa mãn:

4mod3q

4mod3p

1.6.2 Định lý 1.16

Cho n = p.q lμ một số nguyên Blum vμ cho a∈Qn Khi đó a

có đúng 4 căn bậc hai modulo n vμ chỉ có một số nằm trong Qn

Trang 27

1.6.3 Định nghĩa 1.24

Cho n lμ một số nguyên Blum vμ cho a∈Qn Căn bậc hai duy nhất của a nằm trong Qn đ−ợc gọi lμ căn bậc hai chính a mod n

1.6.4 Ví dụ (Số nguyên Blum)

Đối với số nguyên Blum n = 21 Ta có Jn ={1,4,5,16,17,20} vμ

}20

3 Hãy tính các căn bậc hai của 12 mod 37

4 Tìm tất cả các phần tử nguyên thủy của nhóm nhân Z19*

5 Tìm phần tử nghịch đảo của 3 trong Z*31

6 Với m, n, s ∈ N vμ pilμ các số nguyên tố Hãy chứng minh các tính chất sau của hμm ϕ-Euler

Trang 28

m=p p lμ phân tích của m thμnh tích của thừa số nguyên tố

7 Hãy tính ϕ(490) vμ ϕ(768)

8 Giải hệ phương trình đồng dư sau:

5x ≡ 20 mod 6 5x ≡ 6 mod 5 4x ≡ 5 mod 77

9 Hãy dùng thuật toán Euclide mở rộng để tính các phần tử nghịch đảo sau:

Trang 29

n e i

i 1

=

− =∏

ë ®©y pi lμ c¸c sè nguyªn tè kh¸c nhau H·y chøng tá r»ng

x≠0 lμ mét phÇn tö nguyªn thñy theo modulo p khi vμ chØ khi ( )p 1 p i

x − ≠1mod p víi 1≤ ≤i n

Trang 30

đại số trừu t−ợng

2.1 Nhóm

2.1.1 Phép toán hai ngôi

Định nghĩa 2.1: Phép toán hai ngôi * trên tập S lμ một ánh

xạ từ S x S vμo S Tức lμ * lμ một quy tắc gán mỗi cặp đ−ợc sắp các phần tử trong S với một phần tử của S

*11

*bb

*

Cần chú ý rằng khái niệm nhóm nhân đã đ−ợc sử dụng cho phép toán nhóm ở trên Nếu phép toán nhóm lμ phép cộng thì nhóm đ−ợc gọi lμ nhóm cộng, phần tử đơn vị của nhóm nμy đ−ợc

ký hiệu lμ 0, còn phần tử ng−ợc của a đ−ợc ký hiệu lμ −a

Trang 31

số nguyên a lμ số nguyên ưa

- Tập Zn với phép cộng modulo n tạo nên một nhóm cấp n Tập Znvới phép toán nhân theo modulo n không phải lμ một nhóm vì không phải mọi phần tử của nhóm đều có nghịch đảo (phần tử ngược của phép nhân) Tuy nhiên tập Z*nsẽ lμ một nhóm cấp Φ( )n với phép toán nhân theo modulo n vμ có phần tử

đơn vị lμ 1

2.1.4 Nhóm con

Định nghĩa 2.3: Một tập con không trống H của nhóm G được

gọi lμ một nhóm con của G nếu H lμ một nhóm với phép toán nhóm tương ứng trong G Nếu H lμ một nhóm con của G vμ H≠G

thì H được gọi lμ nhóm con thực sự của nhóm G

Nếu G lμ một nhóm vμ a∈Gthì tập tất cả các lũy thừa của a

sẽ tạo nên một nhóm con xyclic của G Nhóm nμy được gọi lμ nhóm con sinh bởi a vμ được ký hiệu lμ a

Trang 32

2.1.6 Cấp của một phần tử

2.1.6.1 Định nghĩa 2.5

Cho G lμ một nhóm vμ a∈G Cấp của a được xác định bằng

số nguyên dương t nhỏ nhất đảm bảo at = 1 Nếu không tồn tại t như vậy thì cấp của a được coi lμ ∞

2.1.6.4 Định lý 2.4

Mọi nhóm con của một nhóm xyclic đều lμ nhóm xyclic Nếu

G lμ một nhóm xyclic cấp n thì đối với mỗi ước dương d của n, G sẽ

chứa đúng một nhóm con cấp d

2.1.6.5 Định lý

Cho G lμ một nhóm

(1) Nếu cấp của một phần tử a∈ lμ t thì cấp của G k

a lμ t/ƯCLN(t,k)

(2) Nếu G lμ một nhóm xyclic cấp n vμ d n thì G có đúng

( )d

Φ phần tử có cấp d Đặc biệt G có Φ( )n phần tử sinh

Ví dụ: Xét nhóm nhân Z19* ={1,2, ,18} có cấp 18 Nhóm nμy

lμ nhóm xyclic vμ có một phần tử sinh lμ α=2 Các nhóm con của

*

19

Z vμ các phần tử sinh của chúng được liệt kê ở bảng sau:

Trang 33

2.2 Vμnh

2.2.1 Định nghĩa 2.6

Vμnh (R,+,ì) chứa tập R với hai phép toán hai ngôi (được ký

hiệu lμ + (cộng) vμ ì (nhân)) trong R thỏa mãn các tiên đề sau:

1aa

- Tập các số nguyên Z với các phép toán cộng vμ nhân thông

thường lμ một vμnh giao hoán

Trang 34

- Tập Zn với phép cộng vμ phép nhân được thực hiện theo modulo n lμ một vμnh giao hoán

2.2.3 Định nghĩa 2.7

Một phần tử a∈R được gọi lμ một phần tử khả nghịch nếu có một phần tử b thuộc R sao cho aìb=1

2.2.4 Định lý 2.6

Tập các phần tử khả nghịch trong một vμnh R sẽ tạo nên một nhóm với phép nhân được gọi lμ nhóm các đơn vị của R

11

2.3.3 Định lý 2.7

n

Z lμ một trường (với các phép toán cộng vμ nhân theo modulo n) nếu vμ chỉ nếu n lμ số nguyên tố Nếu n lμ một số nguyên tố thì Zn có đặc số n

Trang 35

a Định lý 2.9: Sự tồn tại vμ tính duy nhất của các trường hữu hạn

- Nếu F lμ một trường hữu hạn thì F chứa pm phần tử với p

lμ một số nguyên tố nμo đó vμ m lμ một số nguyên dương ( m ≥ 1 )

- Với mỗi giá trị pm tồn tại duy nhất một trường hữu hạn cấp pm Trường nμy được ký hiệu lμ ( )m

p

Hai trường được gọi lμ đẳng cấu nếu chúng giống nhau về mặt cấu trúc mặc dù cách biểu diễn các phần tử có thể lμ khác nhau Cần chú ý rằng nếu p lμ một số nguyên tố thì Zp lμ một trường vμ bởi vậy mọi trường cấp p đều đẳng cấu với Zp

b Định lý 2.10:

Nếu Fq lμ một trường hữu hạn cấp q=pm, p - số nguyên tố, thì đặc số của Fq lμ p Hơn nữa Fq chứa Zp lμ một trường con Bởi vậy Fq có thể được xem lμ mở rộng trường bậc m của Zp

Trang 36

c Định lý 2.11: Các trường con của một trường hữu hạn

Cho Fq lμ một trường hữu hạn cấp q=pm Khi đó mỗi trường con của Fq có cấp pn với n lμ ước dương của m Ngược lại, nếu n lμ một ước dương của m thì có đúng một trường con của Fq có cấp

Các phần tử khác không của Fq tạo nên một nhóm với phép

nhân được gọi lμ nhóm nhân của Fq vμ được ký hiệu lμ Fq*

n

ax

Trang 37

Trong đó ai∈R vμ n≥0 Phần tử ai được gọi lμ hệ số của xi

trong f(x)

Số nguyên lớn nhất m sao cho am ≠0 được gọi lμ bậc của f(x)

vμ được ký hiệu lμ degf(x), am được gọi lμ hệ số cao nhất của f(x) Nếu f(x) = a0 (đa thức hằng số) vμ a0 ≠0 thì f(x) có bậc 0 Nếu tất cả các hệ số của f(x) lμ 0 thì f(x) được gọi lμ đa thức không vμ bậc của nó (để thuận tiện về mặt toán học) được xác định bằng ư ∞

Đa thức f(x) được gọi lμ định chuẩn nếu hệ số cao nhất của nó bằng 1

2.4.2 Vμnh đa thức

- Định nghĩa 2.14: Nếu R lμ một vμnh giao hoán thì vμnh

đa thức R [ ] x lμ một vμnh được tạo bởi tất cả các đa thức của biến

x có các hệ số trong R Hai phép toán lμ phép cộng đa thức vμ nhân đa thức thông thường với số học các hệ số được thực hiện trong vμnh R

- Ví dụ vμnh đa thức:

Cho f( )x =x3+x+1 vμ g( )x =x2+x lμ các phần tử của vμnh

đa thức Z2[ ]x Các phép toán trong Z2[ ]x :

( ) ( ) ( ) ( )x g x x x x xf

1xxxgxf

3 4 5

2 3

+++

=

++

=+

2.4.3 Đa thức bất khả quy

Định nghĩa 2.15: Cho f( )x ∈F[ ]x với deg f( )x ≥1 f(x) được gọi lμ bất khả quy trên F nếu nó không thể viết được bằng tích của hai đa thức trong F[ ]x đều có bậc dương

2.4.4 Thuật toán chia đối với các đa thức

Nếu g( ) ( )x ,hx ∈F[ ]x với h( )x ≠0 thì phép chia đa thức thông thường của g(x) cho h(x) sẽ dần tới các đa thức q(x) vμ r( )x ∈F[ ]x

Trang 38

thỏa mãn: g( ) ( ) ( ) ( )x =qx hx +rx , trong đó deg r( )x <deg h( )x , q(x)

vμ r(x) lμ duy nhất q(x) được gọi lμ thương, r(x) được gọi lμ phần dư

Đôi khi r(x) được ký hiệu g( )x modh( )x

(2) Tính chất phản xạ: g( ) ( )x ≡g x (mod f( )x )

(3) Tính chất đối xứng: Nếu g( ) ( )x ≡hx (mod f( )x ) thì

h( ) ( )x ≡g x (mod f( )x )

Trang 39

(4) Tính chất bắc cầu: Nếu g( ) ( )x ≡hx (mod f( )x ) vμ

xfmodx

hxgxhxg

1 1

1 1

+

≡+

Cho f(x) lμ một đa thức cố định trong F[ ]x , lớp tương đương của một đa thức g( )x ∈F[ ]x lμ tập tất cả các đa thức trong F[ ]x

đồng dư với g(x)modulof(x)

Từ các tính chất b, c vμ d ở trên ta thấy rằng quan hệ đồng dư mod f( )x sẽ phân hoạch F[ ]x thμnh các lớp tương đương

Nếu g( )x ∈F[ ]x thì phép chia cho f(x) sẽ dần tới một cặp đa thức g( ) ( )x ,rx ∈F[ ]x thỏa mãn g( ) ( ) ( ) ( )x =q x f x +rx , trong đó

F được ký hiệu cho tập các lớp tương đương của các

đa thức trong F[ ]x có bậc nhỏ hơn n=degf( )x Phép cộng vμ phép nhân được thực hiện theo mod f( )x

Trang 40

2.4.8 Thuật toán Euclide đối với các đa thức

e

fax

Trong đó fi( ) x lμ các đa thức bất khả quy định chuẩn khác nhau trong Zp[ ] x , ei lμ các số nguyên dương, a ∈ Zp Phân tích nμy lμ duy nhất nếu không kể tới sự sắp xếp lại của các nhân tử

2.4.8.4 Thuật toán Euclide trong Zp[ ]x

Vμo : Hai đa thức g( ) ( )x ,hx ∈Zp[ ]x

Ngày đăng: 21/07/2015, 19:55

HÌNH ẢNH LIÊN QUAN

Bảng 1.2: Thuật toán Euclide mở rộng - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Bảng 1.2 Thuật toán Euclide mở rộng (Trang 10)
Bảng 1.4: Tính  5 596  mod 1234 - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Bảng 1.4 Tính 5 596 mod 1234 (Trang 20)
Bảng 1.6: Các ký hiệu Jacobi của các phần tử trong  Z * 21 - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Bảng 1.6 Các ký hiệu Jacobi của các phần tử trong Z * 21 (Trang 25)
Bảng 2.1: Các nhóm con của  Z 19 * - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Bảng 2.1 Các nhóm con của Z 19 * (Trang 33)
3.1. Sơ đồ khối một hệ truyền tin mật - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
3.1. Sơ đồ khối một hệ truyền tin mật (Trang 51)
Hình 3.2: Mật mã Hill - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Hình 3.2 Mật mã Hill (Trang 64)
Hình 3.4: Quan hệ giữa vành đa thức và vành ma trận - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Hình 3.4 Quan hệ giữa vành đa thức và vành ma trận (Trang 73)
Hình 3.5: Sơ đồ thiết bị mã hoá - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Hình 3.5 Sơ đồ thiết bị mã hoá (Trang 74)
Hình 3.11: Một vòng của DES - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Hình 3.11 Một vòng của DES (Trang 93)
Hình 3.12: Hàm f của DES - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Hình 3.12 Hàm f của DES (Trang 95)
Bảng chọn E bit - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Bảng ch ọn E bit (Trang 96)
Hình 3.13: Tính bảng khóa DES - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Hình 3.13 Tính bảng khóa DES (Trang 99)
Hình 3.14: Chế độ CBC - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Hình 3.14 Chế độ CBC (Trang 111)
Hình 3.15: Chế độ CFB - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Hình 3.15 Chế độ CFB (Trang 112)
Hình 4.6: Thuật toán MAC dùng CBC - Giáo trình mật mã học phần 1– Học viện bưu chính viễn thông
Hình 4.6 Thuật toán MAC dùng CBC (Trang 157)

TỪ KHÓA LIÊN QUAN

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