Tài liệu Kỹ thuật lập trình - Chương 1: Cơ bản về đại số trừu tượng
lượt xem 13
download
Trong chương này, sẽ khảo sát về đại số trừu tượng (abstract algebra), nó là một ngành toán học liên quan đến việc nghiên cứu các cấu trúc đại số như nhóm, vành, trường, hay các cấu trúc tổng quát khác và nó có vai trò quan trọng trong mật mã hiện đại.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Tài liệu Kỹ thuật lập trình - Chương 1: Cơ bản về đại số trừu tượng
- CHƯƠNG 1 CƠ BẢN VỀ ĐẠI SỐ TRỪU TƯỢNG Các thuật toán mật mã thực hiện biến đổi tin tức dưới dạng các số hoặc các phần tử trong không gian hữu hạn. Khi đó các phép mã và giải mã, thực hiện biến đ ổi tin t ức t ừ m ột d ạng này sang m ột dạng khác cần phải có đặc tính đóng (closure property) trong không gian h ữu h ạn. Tuy nhiên các toán tử số học thông thường trên các số – phép cộng, trừ, nhân, chia – không có các đ ặc tính này. Vì lý do này, các thuật toán mật mã hoạt động trong không gian h ữu h ạn đ ể bi ến đ ổi tin t ức, nh ư đã bi ết, không chỉ dẫn tới các toán tử số học thông thường. Mà chúng làm việc trong không gian có các c ấu trúc đại số riêng biệt, để bảo đảm đặc tính đóng. Trong chương này, sẽ khảo sát về đại số trừu tượng (abstract algebra), nó là m ột ngành toán học liên quan đến việc nghiên cứu các cấu trúc đại số như nhóm, vành, trường, hay các cấu trúc tổng quát khác và nó có vai trò quan trọng trong mật mã hiện đại. 1.1 NHÓM 1.1.1 Nhóm Định nghĩa 1.1.1 (Nhóm) Nhóm (G, °) là một tập hợp G cùng với một phép toán hai ngôi, ký hiệu ° (là một ánh xạ từ tập G × G → G) thỏa mãn các tiên đề sau: G1. Tính đóng: Nếu a, b ∈ G, thì a ° b ∈ G. G2. Tính kết hợp: (a ° b) ° c = a ° (b ° c), với ∀a, b, c ∈ G. G3. Phần tử đơn vị (trung hòa): Trong G tồn tại một phần tử được gọi là phần tử đơn vị e sao cho với ∀a ∈ G thì a ° e = e ° a = a. G4. Phần tử nghịch đảo: Với mỗi phần tử a ∈ G tồn tại một phần tử a-1, gọi là phần tử nghịch đảo của a, sao cho: a-1 ° a = a ° a-1 = e. Chú ý: toán tử ° là ký hiệu chung và có thể đại diện cho toán tử cộng, nhân ho ặc các toán t ử toán học khác. Định lý 1.1.1: Với ∀a ∈ G, a -1 ° a = e. Chứng minh: Khai triển a -1 ° a, có: o a -1 ° a = a -1 ° a ° e (theo G3) o a -1 ° a ° e = a -1 ° a ° (a -1 ° (a -1) -1) (theo G4, a -1 có một nghịch đảo ký hiệu là (a -1) -1) o a -1 ° a ° (a -1 ° (a -1) -1) = a -1 ° (a ° a -1) ° (a -1) -1 = a -1 ° e ° (a -1) -1 (theo G2 và G4) o a -1 ° e ° (a -1) -1 = a -1 ° (a -1) -1 = e (theo G3 và G4) ⇒ a -1 ° a = e Định lý 1.1.2: Với ∀a ∈ G, e ° a = a. Chứng minh: Khai triển e ° a, có: o e ° a = (a ° a -1) ° a (theo G4) 1
- o (a ° a -1) ° a = a ° (a -1 ° a) = a ° e (theo G2 và định lý 1.1.1) o a ° e = a (theo G3) ⇒e ° a = a Định lý 1.1.3: Với ∀a, b ∈ G, tồn tại duy nhất x ∈ G sao cho a ° x = b. Chứng minh: Chắc chắn, tồn tại ít nhất một phần tử x như vậy, chẳng hạn đặt x = a -1 ° b, thì x ∈ G (theo G1) và do đó: o a ° x = a ° (a -1 ° b) (thế x) o a ° (a -1 ° b) = (a ° a -1) ° b (theo G2). o (a ° a -1) ° b= e ° b = b (theo G3). Như vậy x này luôn tồn tại và thỏa mãn a ° x = b. Để chỉ ra tính duy nhất, nếu a ° x = b, thì: o x=e°x o e ° x = (a -1 ° a) ° x o (a -1 ° a) ° x = a -1 ° (a ° x) o a -1 ° (a ° x) = a -1 ° b ⇒ x = a -1 ° b Định lý 1.1.4: Phần tử đơn vị của một nhóm (G, °) là duy nhất. Chứng minh: Giả sử G có hai phần tử đơn vị là e và f. Vậy thì e ° f = e (theo G3), nhưng cũng có e ° f = f (theo định lý 1.1.2) ⇒ e = f. Như vậy, có thể nói phần tử đơn vị của (G, ° ) thay vì một phần tử đơn vị. Khi đề cập những nhóm khác nhau, sẽ thường ký hiệu eG cho phần tử đơn vị của nhóm (G, °). Định lý 1.1.5: Phần tử nghịch đảo của mỗi phần tử thuộc ( G, °) là duy nhất, hay với ∀a ∈ G, a ° x = e nếu và chỉ nếu x = a -1. Chứng minh: Giả sử một phần tử g ∈ G có hai phần tử nghịch đảo, h và k. Thì h = h ° e = h ° (g ° k) = (h ° g) ° k = e ° k = k (các đẳng thức nhận được theo G3, G4, G2, định lý 1.1.1 và định lý 1.1.2, theo th ứ tự). Như vậy, có thể nói phần tử nghịch đảo của một phần tử x, thay vì một phần tử nghịch đảo. Định lý 1.1.6: Với ∀a ∈ (G, °), (a -1) -1 = a. Chứng minh: Ta có a -1 ° a = e, đi đến kết luận dựa vào định lý 1.1.4. Định lý 1.1.7: Với ∀a, b∈ (G, °), (a ° b)-1 = b -1 ° a -1. Chứng minh: Ta có (a ° b) ° (b -1 ° a -1) = a ° (b ° b -1) ° a -1 = a ° e ° a -1 = a * a -1 = e, có kết luận dựa vào định lý 1.4. Định lý 1.1.8: Với ∀a, x, y ∈ (G, °), nếu a ° x = a ° y, thì x = y và nếu x ° a = y ° a, thì x = y. Chứng minh: Nếu a ° x = a ° y thì: o a -1 ° (a ° x) = a -1 ° (a ° y) o (a -1 ° a) ° x = (a -1 ° a) ° y o e°x=e°y ⇒x = y 2
- Nếu x ° a = y ° a thì o (x ° a) ° a -1 = (y ° a) ° a -1 o x ° (a ° a -1) = y ° (a ° a -1) o x°e=y°e ⇒x = y Ví dụ 1.1.1 (Nhóm) 1. Tập số thực (R) là một nhóm dưới phép cộng (+): a. Tổng của hai số thực bất kỳ là một số thực (tính đóng). b. Với ∀ a, b, c ∈ R: (a + b) + c = a + (b + c) (tính kết hợp). c. Với ∀ a ∈ R: a + 0 = a (0 là phần tử đơn vị). d. Với ∀ a ∈ R: –a + a = 0 (tồn tại phần tử đối lập). 2. Tập số thực khác không (R#) là một nhóm dưới phép nhân (*): a. Tích của hai số thực luôn là một số thực (tính đóng). b. Với ∀ a, b, c ∈ R: (a * b) * c = a * (b * c) (tính kết hợp). c. Với ∀ a ∈ R: a * 1 = a (1 là phần tử đơn vị). d. Với ∀ a ∈ R: a * a -1 = 1 (tồn tại phần tử đối lập). 3. Tập Z5 = {0, 1, 2, 3, 4} là một nhóm theo phép cộng modulo 5. Vì theo bảng tính toán dưới đây, nó hoàn toàn thỏa mãn 4 tiên đề của nhóm. + 0 1 2 3 4 0 0 1 2 3 4 1 1 2 3 4 0 2 2 3 4 0 1 3 3 4 0 1 2 4 4 0 1 2 3 4. Tương tự có thể chứng minh rằng tập Zn = {0, 1, 2, 3, …, n – 1} là nhóm đối với phép cộng + theo modulo n, ký hiệu Z n . Định nghĩa 1.1.2 (Nhóm hữu hạn và vô hạn) Nhóm G gọi là hữu hạn nếu như tập G có số lượng phần tử hữu hạn, và trường hợp ngược lại gọi là vô hạn. Định nghĩa 1.1.3 (Nhóm abel hay nhóm giao hoán) Nhóm G gọi là giao hoán nếu như với ∀a, b ∈ G thì a ° b = b ° a. Nói cách khác, nhóm abel là nhóm giao hoán. Sau này sẽ không khảo sát các nhóm không giao hoán, vì vậy mọi nhóm đều là nhóm abel, cho nên thuật ngữ “abel” thường bỏ qua. Ví dụ 1.1.2 1. Tập hợp của các số nguyên Z là nhóm đối với toán tử (+ ), tức là cặp (G, + ) – là nhóm, ở đây e = 0 và a–1 = – a. Đây là nhóm cộng, vô hạn và abel. (Theo G4: a-1 + a = 0 → a-1 = -a). 3
- Tập hợp của các số hữu tỷ Q, tập hợp của các số thực R, tập hợp của các số phức C cũng là nhóm cộng và vô hạn, trong đó phần tử đơn vị và ngược được xác định theo cùng quy t ắc. 2. Các phần tử khác không của tập hợp Q , R và C đối với phép nhân – là các nhóm, trong đó e = 1 và a–1 là phần tử nghịch đảo, được xác định theo quy tắc thông thường. Ký hiệu các nhóm này là (Q, * ), (R, *) và (C, *). Các nhóm này được gọi là các nhóm nhân và vô hạn. 3. Đối với số nguyên bất kỳ n ≥ 1, tập hợp các số nguyên theo modulo n hình thành lên nhóm hữu hạn, bao gồm từ n phần tử. Phần tử đơn vị của nhóm này là số 0, đối với phần tử a bất kỳ sẽ thực hiện điều kiện a–1 = n – a. Nhóm này được ký hiệu là Zn và ký hiệu đầy đủ của nhóm này là (Zn, + (mod n)). (Theo G4: a-1 + a = 0 mod n → a–1 = n – a). Định nghĩa 1.1.4 (Bậc của nhóm) Số lượng phần tử của tập hữu hạn G được gọi là bậc của G, được kí hiệu là #G. 1.1.2 Nhóm con Định nghĩa 1.1.5 (Nhóm con) Một tập con H của G được gọi là một nhóm con của một nhóm (G, °) nếu H thỏa mãn các tiên đề về nhóm và sử dụng cùng các toán tử °. Như vậy, nếu H là một nhóm con của (G, °), thì (H, °) cũng là một nhóm, và đồng thời thỏa mãn các định lý trên. Kí hiệu H ⊆ G . Ví dụ 1.1.3 (Nhóm con) 1. Đối với phép cộng Z ⊆ Q ⊆ R ⊆ C . 2. Tập { e} là nhóm con của mọi nhóm. + 3. Tất cả các nhóm con của Z 6 là {0}, {0, 3}, {0, 2, 4} và chính nó. Các nhóm {0, 1}, {0, 5} + + không là nhóm con của Z 6 . Vì (xem tiếp sau) phần tử 1, 5 là phần tử sinh của Z 6 , chúng thỏa mãn cả toán tử không phải của nhóm. Đó là toán tử: 1, 5 = a ° a °…° a (i lần) = i . a. Định nghĩa 1.1.6 (Nhóm con tách biệt và nhóm con không tầm thường) Một nhóm con tách biệt của một nhóm G là một nhóm con khác G (H ≠ G), ký hiệu H ⊂ G. Một nhóm con không tầm thường của G là bất kỳ nhóm con tách biệt nào của G chứa một phần tử khác e. Định lý 1.1.9: Nếu H là một nhóm con của (G, °), thì phần tử đơn vị eH của H giống với phần tử đơn vị e của nhóm (G, °). Chứng minh: Nếu h ∈ H, thì h ° eH = h; vì h cũng phải thuộc G, h ° e = h; do đó theo định lý 1.1.4, eH = e. Định lý 1.1.10: Nếu H là một nhóm con của G, và h là một phần tử của H, thì nghịch đảo của h trong H giống với nghịch đảo của h trong G. Chứng minh: Gọi h và k là các phần tử của H, sao cho h ° k = e, bởi vì h cũng thuộc G, h ° h -1 = e do đó theo định lý 1.1.5, k = h -1. Định lý 1.1.11: Nếu S là một tập con không rỗng của G, thì S là một nhóm con của G nếu và chỉ nếu với ∀a, b ∈ S, a ° b -1 ∈ S. Chứng minh: 4
- 1. Nếu với ∀a, b ∈ S, a ° b -1 cũng thuộc S, thì o e ∈ S, vì a ° a -1 = e ∈ S. o Với ∀a ∈ S, e ° a -1 = a -1 ∈ S o Với ∀a, b ∈ S, a ° b = a ° (b -1) -1 ∈ S Do đó, các tiên đề về tính đóng, phần tử đơn vị, phần tử nghịch đảo, và tính k ết hợp được kế thừa do đó S là một nhóm con. 2. Ngược lại, nếu S là một nhóm con của G, thì nó tuân theo các tiên đề về nhóm. o Như đã nói, phần tử đơn vị của S chính là phần tử đơn vị e của G. o Theo G4, với ∀b ∈ S, b -1 ∈ S o Theo G1, a ° b -1 ∈ S. Định lý 1.1.12: Giao của các nhóm con của nhóm G là một nhóm con. Chứng minh: 1. Gọi {Hi} là một tập các nhóm con của G, và K = ∩{Hi}. 2. e là phần tử của mọi Hi theo định lý 1.1.9, do đó K không rỗng. 3. Nếu h và k là các phần tử của K, thì với ∀i, có: o h và k ∈ Hi. o Theo định lý trước, h ° k -1 ∈ Hi o Do đó, h ° k -1 ∈ ∩{Hi}. o Do đó với ∀h, k ∈ K, h ° k -1 ∈ K. o ⇒ K = ∩{Hi} là một nhóm con của G và hơn nữa K là một nhóm con của mỗi Hi. Định lý 1.1.13: Gọi a là một phần tử của một nhóm ( G, °), khi đó tập hợp {an: n nguyên} là một nhóm con của G. Định nghĩa 1.1.7 (Liên tập, hay liền kề) Cho G là nhóm abel, H ⊆ G và a ∈ G thì tập hợp {a ° hh ∈ H} gọi là liên tập trái (left coset) của nhóm con H trong G và ký hiệu là a ° H, và tập hợp {h ° ah ∈ H} gọi là liên tập phải (right coset) của nhóm con H trong G và ký hiệu là H ° a Định lý 1.1.14: Nếu H là một nhóm con của G, và x, y là các phần tử của G, thì x ° H = y ° H, hoặc x ° H và y ° H không giao nhau. Định lý 1.1.15: Nếu H là một nhóm con của G, thì mọi liên tập trái (phải) của H trong G chứa cùng số phần tử. Định lý 1.1.16: Nếu H là một nhóm con của G, thì số liên tập trái phân biệt của H bằng với số liên tập phải phân biệt của H. Định lý Lagrange: Nếu H là một nhóm con của một nhóm hữu hạn G, thì # H |# G , tức là số lượng phần tử của H là ước số của #G. Chứng minh: Giả sử G là nhóm hữu hạn và H là nhóm con của nó. Nếu G = H, thì điều cần chứng minh là hiển nhiên đúng. 5
- Giả sử H = { h1 , ..., hn } nhỏ hơn nhóm G và giả sử x ∈ G \ H . Lúc này tất cả các phần tử của tập Hx = { h1 x, ..., hn x} khác nhau và không trùng với các phần tử của H. Vì từ hi x = h j x dẫn đến hi = h j , nhưng hi x = h j dẫn đến x = hi h j ∈ H là không thể. Nếu như H ∪ Hx = G , thì định lý được chứng −1 minh. Nếu như H ∪ Hx nhỏ hơn G, thì có thể chọn y ∈ G \ ( H ∪ Hx) và thành lập nên tập Hy = { h1 y, ..., hn y} . Tương tự các phần tử của tập này cũng khác nhau và không trùng v ới các ph ần t ử của tập H ∪ Hx . Cứ tiếp tục như thế, nhận kết quả như sau G = H ∪ Hx ∪ Hy ∪ ... . Từ đây có | G | chia hết cho n. 1.1.3 Bậc phần tử của nhóm Định nghĩa 1.1.8 (Bậc phần tử của nhóm) Cho G là một nhóm và a ∈ G . Bậc của phần tử a là số dương nhỏ nhất i ∈ Z , thỏa mãn điều kiện a i = e . Số này ký hiệu là ord(a). Nếu như số i không tồn tại thì a là phần tử có bậc vô hạn. Chú ý: biểu thức ai được sử dụng để chỉ toán tử lặp (a ° a °…°a) i lần (i nguyên, dương). Khi ° = +, thì a ° a °…°a = a . i, còn khi ° = *, thì a ° a °…°a = ai . Ví dụ 1.1.4 1. Bậc của các phần tử của nhóm Z 6+ , Z 9 và Z 8 , khi lập bảng lưu tâm chú ý trên, như sau: * * + Đối với nhóm Z 6 (nhóm với toán tử cộng, e = 0) a 0 1 2 3 4 5 ord(a 1 6 3 2 3 6 ) * Đối với nhóm Z 9 (nhóm với toán tử nhân, e = 1) a 1 2 4 5 7 8 ord(a 1 6 3 6 3 2 ) * Đối với nhóm Z 8 (nhóm với toán tử nhân, e = 1) a 1 3 5 7 ord(a 1 2 2 2 ) 2. Nhóm Z + gồm tất cả các số nguyên theo phép cộng – là m ột nhóm cyclic, Z + = < 1 > và ord (n) = ∞ với n ∈ Z , n ≠ 0. Định lý 1.1.17: Cho G là nhóm hữu hạn và a ∈ G là phần tử bất kỳ của nhóm. Khi đó ord(a)|#G. Chứng minh: Nếu như a = e, thì ord(a) = 1 và điều kiện ord(a)|#G là hiển nhiên. Ngược lại các phần tử a, a 2 , ..., a ord ( a ) = e , sẽ tạo nên nhóm con của G. Theo định lý Lagrange thì ord(a)|#G. Định lý 1.1.17, dẫn ra từ định lý Lagrange, miêu tả sự liên hệ giữa b ậc của nhóm v ới các b ậc c ủa các phần tử của nhóm này. Mối tương hỗ này có ứng dụng quan trọng trong m ật mã v ới khoá công 6
- khai: hệ mật nổi tiếng Rivest, Shamir và Adleman (RSA), hoạt động trên cơ s ở c ủa nhóm, mà b ậc c ủa nó là khoá riêng, chỉ được biết bởi chủ nhân của khoá. Văn bản mã có thể xem xét nh ư ph ần t ử ng ẫu nhiên của nhóm nào đó. Biết bậc của nhóm, chủ nhân của khoá có thể sử dụng s ự ph ụ thu ộc giữa b ậc của phần tử và bậc của nhóm để biến đổi văn bản mã thành văn bản rõ (t ức là gi ải mã). Chúng ta s ẽ nghiên cứu hệ mật RSA sau này. 1.1.4 Nhóm thừa số Định nghĩa 1.1.9 (Nhóm thừa số) Cho một nhóm G và nhóm con tách biệt H của G. Nếu định nghĩa tích của hai liên tập g * H và g’ * H là liên tập g * g’ * H thì tập hợp các liên tập của G theo H với phép nhân đó làm thành một nhóm, gọi là nhóm thừa số của G theo H, kí hiệu là G/H. Ví dụ 1.1.5 (Nhóm thừa số) Cho n > 0 là một số nguyên, tập nZ = { 0, ± n, ± 2n, ...} là nhóm con của Z tương ứng với phép cộng. Thì có nhóm thừa số: Z / nZ = { x + nZ | x ∈ Z } = { 0 + nZ , 1 + nZ , 2 + nZ , ..., n − 1 + nZ } Bởi vì: n + nZ = 0 + nZ , n + 1 + nZ = 1 + nZ , … 1.1.5 Nhóm vòng Nói một cách không hình thức, nhóm có biểu diễn vòng, thì được gọi là nhóm vòng (cyclic group). Các nhóm như thể có nhiều đặc tính rất hấp dẫn và chúng đ ược các ứng d ụng r ộng rãi trong m ật mã học. Định nghĩa 1.1.10 (Nhóm cyclic, phần tử sinh của nhóm) Nhóm G gọi là nhóm cyclic, nếu như tồn tại phần tử a ∈ G , sao cho đối với ∀ b ∈ G tồn tại số nguyên i ≥ 0 , thỏa mãn điều kiện b = a i . Phần tử a gọi là phần tử sinh của nhóm G. Nếu nhóm G sinh ra bởi a, thì ký hiệu G = . Ví dụ 1.1.6 (Nhóm cyclic) 1. Z 6 = { 0, 1, 2, 3, 4, 5} = < 1 > = < 5 > , bởi vì mọi phần tử của Z 6 đều có thể biểu diễn dưới + dạng tổng của 1 hoặc 5 theo modulo 6. 2. Z 9 = {1, 2, 4, 5, 7, 8} = < 2 > = < 5 > ,bởi vì mọi phần tử của Z 9 đều có thể biểu diễn dưới * dạng tích của các số 2 hoặc 5 theo modulo 9 3. Z 7 = {1, 2, 3, 4, 5, 6} = < 3 > * 4. Nhóm Z 8 = {1, 3, 5, 7} không là nhóm cyclic * * 5. Cũng dễ dàng chứng minh được rằng nhóm nhân Z p với p là số nguyên tố là một nhóm cyclic. * 6. Với p ≥ 3 là số nguyên tố, thì nhóm Z pn là nhóm cyclic với ∀ n ≥ 1 Không chỉ phần tử đơn vị mà các phần tử khác của nhóm cũng có nh ững tính ch ất đ ặc bi ệt. M ột trong các tính chất đó là “khoảng cách” đến phần tử đơn vị. 7
- Định nghĩa 1.1.11 (Hàm Euler) Đối với n ∈ Z, ở đây n ≥ 1, hàm Euler φ(n) bằng số lượng các số nguyên k, sao cho 0 ≤ k < n và gcd(k, n) = 1. Định lý 1.1.18: 1. Nhóm con bất kỳ của nhóm vòng cũng là nhóm vòng. 2. Với mỗi ước số dương d của số #〈a〉 của nhóm 〈a〉 bao gồm chỉ một phân nhóm, mà nó có bậc d. 3. Nếu #〈a〉 = m, thì #〈ak〉 = ord(ak) = m/ gcd(k, m). 4. Với mỗi ước số dương d của số #〈a〉 của nhóm 〈a〉 bao gồm φ(n) phần tử, mà nó có bậc d. 5. Giả sử #〈a〉 = m. Khi đó nhóm 〈a〉 bao gồm φ(m) phần tử sinh. Chúng là các phần tử ar, sao cho gcd(r, m) = 1. 1.1.6 Nhóm nhân Z n* Định nghĩa 1.1.12 * Nhóm Z n được gọi là nhóm nhân với toán tử nhân của nhóm, bao gồm các phần tử là số nguyên dương, nhỏ hơn n và nguyên tố cùng nhau với n. Nhóm này bao gồm φ(n) = (p – 1)(q – 1) phần tử. Nhóm này có nhiều ứng dụng trong lý thuyết số và m ật mã h ọc. Đặc bi ệt là vi ệc tìm b ậc c ủa nhóm giúp kiểm tra tính nguyên tố của n. Nếu như bậc của nhóm là n –1 thì n là số nguyên tố. Ví dụ 1.1.7 * 1. Cho nhóm Z 5 , các phần tử của nhóm là 1, 2, 3, 4. Bậc của nhóm là 4. nên 5 là số nguyên t ố. * 2. Cho nhóm Z10 , các phần tử của nhóm là 1, 3, 7, 9. Bậc của nhóm là 4, nên 10 không phải là số nguyên tố. 1.1.7 Đồng hình, đẳng cấu Định nghĩa 1.1.13 (Đồng hình (homomorphism), đẳng cấu (isomorphism)) Giả sử G1 và G2 là các nhóm, ⋅ và ∗ là các toán tử tương ứng trong các nhóm này. Ánh xạ f: G1 → G2 được gọi là đồng hình G1 trong G2, nếu ∀a, b ∈ G1 , thỏa mãn biểu thức sau f (a ⋅ b) = f(a) ∗ f(b). Thông thường các toán tử trong các nhóm này không khác nhau, vì vậy điều kiện đồng hình có thể viết dưới dạng f (ab) = f(a)f(b). Tương tự như vậy có thể định nghĩa các nhóm đồng hình con. Nếu nhóm đồng hình f: G1 → G2 là song ánh, với nó f –1(G2) = G1, thì nó được gọi là đẳng cấu của nhóm G1 trong G2. Ví dụ 1.1.8 (Đồng hình) * + 1. Phép đồng hình của nhóm nhân R+ (gồm các số thực dương) trong nhóm cộng R (gồm các số thực) được thực hiện dưới dạng sau: + log: R+ → R * + log xy = log x + log y, x, y ∈ R 8
- + + * 2. Phép đồng hình của nhóm cộng R R (gồm các số thực) trong nhóm nhân R+ (gồm các số thực dương) được thực hiện dưới dạng sau: + exp: R → R+ * + exp(x + y) = exp(x) + exp(y), x, y ∈ R Ví dụ 1.1.9 (Đẳng cấu) 1. Trong nhóm cyclic Z 9 = {1, 2, 4, 5, 7, 8} . Nhận thấy Z 9 = {2 0 , 21 , 2 2 , 23 , 2 4 , 2 5 } , nên cho phép * * + * thiết lập một đẳng cấu Z 6 Z 9 theo quy tắc i 2i 2. Tương tự đối với nhóm Z 7 = {1, 2, 3, 4, 5, 6} cũng thành lập được sự đẳng cấu Z 6 Z 7 theo * + * quy tắc i 3i Chú ý: phép ánh xạ trong 2 thí dụ trên có hoán vị một vài số hạng ! 1.2 VÀNH 1.2.1 Vành Định nghĩa 1.2.1 (Vành) 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)) thỏa mãn các tiên đề sau: R1. (R, +) là một nhóm giao hoán đối với phép cộng. Phần tử đơn vị đối với phép cộng (không) được ký hiệu 0. R2. Phép ∗ có tính phân phối đối với phép +, nghĩa là: ∀a, b, c ∈ R : a ∗ (b + c) = a ∗ b + a ∗ c (b + c ) ∗ a = b ∗ a + c ∗ a R3. Phép ∗ có tính kết hợp, nghĩa là: ∀a, b, c ∈ R : ( a ∗ b) ∗ c = a ∗ (b ∗ c) R4. Đối với phép ∗ vành R phù hợp theo các tiên đề đóng kín, k ết hợp. Phần tử đơn v ị đ ối v ới phép nhân (đơn vị) được ký hiệu 1, với 1 ≠ 0. Ví dụ 1.2.1 (Vành) Độc giả tự kiểm tra các ví dụ sau thỏa mãn 4 tiên đề về vành, cách làm t ương tự như ví dụ 1.1. 1. Tập hợp các số nguyên Z với phép cộng và nhân thông thường là một vành. 2. Tập các ma trận vuông cùng cấp n với phép cộng và nhân ma trận là một vành. 3. Tập các số với phép cộng và nhân theo modulo n ký hiệu là Z n là một vành, thường gọi là vành theo thặng dư n. ∗ 4. Đối với bất kỳ n > 0, nhóm Z n là vành đối với các toán tử cộng và nhân theo modulo n, và 0 = 0, 1 = 1. Định nghĩa 1.2.2 (Vành giao hoán) Vành giao hoán là vành R trong đó phép nhân có tính chất giao hoán. 9
- Định nghĩa 1.2.3 (Vành đơn vị) Vành trong đó phép nhân có phần tử đơn vị được gọi là vành có đơn vị. Định nghĩa 1.2.4 (Vành con) Tập con A của vành R được gọi là vành con của R nếu chính A là một vành với hai phép toán cộng và nhân trên R (bao gồm cả tính đóng của hai phép toán này trên A). Ví dụ 1.2.2 (Vành con) Tập gồm một phần tử {0} và chính R là vành con của R. Định lý 1.2.1: Giao của các vành con của R là vành con của R. Định nghĩa 1.2.5 (Vành thừa số) o Cho A là một ideal của vành R và phần tử x ∈ R. Tập con của R gồm các phần tử dạng x + a với ∀a ∈ A được gọi là một liên tập của A theo x. o Ký hiệu R/A là tập hợp tất cả các liên tập của A với ∀x ∈ R: R/A = {x + A| x ∈ R} được gọi là tập thừa số của R theo A. o Trên tập thừa số R/A có thể xác định hai phép toán cộng và nhân như sau: (x + A) + (y + A) = (x + y) + A (x + A) * ( y + A) = (x * y) + A Khi đó có thể chứng minh R/A là một vành, và vành này được gọi là vành thừa số của R theo A. 1.2.2 Một số khái niệm về ideal Trong lý thuyết vành, ideal là một tập con đặc biệt của một vành. 1. Vành con A của vành R được gọi là ideal trái (hoặc phải) của R nếu x ∗ a ∈ A (hoặc a ∗ x ∈ A) với ∀a ∈ A, với ∀x ∈ R. 2. Vành con A vừa là ideal trái, vừa là ideal phải của R được gọi là ideal của R. 3. Giao của họ bất kỳ các ideal của R là ideal của R. 4. Cho tập con X ⊆ R, ideal nhỏ nhất của R chứa X được gọi là ideal sinh bởi X. 1.2.3 Đồng hình vành Định nghĩa 1.2.6 (Đồng hình, đẳng cấu) Cho R1 và R2 là hai vành. Ánh xạ f: R1 → R2 được gọi là đồng hình vành nếu f bảo toàn hai phép toán cộng và nhân trong R, nghĩa là với ∀a, b ∈ R: 1. f(a + b) =f(a) + f(b), 2. f(a ∗ b) =f(a) ∗ f(b). Nếu đồng hình vành f: R1 → R2 là song ánh, thì nó được gọi là đẳng cấu của vành R1 trong R2. 1.3 TRƯỜNG 1.3.1 Trường Định nghĩa 1.3.1 (Trường) Nếu các phần tử khác không của vành tạo thành nhóm tương ứng với phép nhân thì g ọi vành đó là trường. Ví dụ 1.3.1 (Trường) 10
- 1. Tập Q, R và C là trường tương ứng với phép cộng và nhân thông thường, với phần t ử 0 là 0 và phần tử 1 là 1. 2. Tập Zp với với p là số nguyên tố là trường tương ứng với phép cộng và nhân cho modulo p, với phần tử 0 là 0 và phần tử 1 là 1. Định nghĩa 1.3.2 (Trường con) Giả sử F là một trường. Tập con E ⊆ F được gọi là trường con của F nếu chính E là một trường với cùng phép toán trong F. Ví dụ 1.3.2 (Trường con) 1. Trường số hữu tỷ Q là trường con của trường số thực, R trường số thực là trường con của trường số phức C. 2. { } Tập A ⊆ R: A = a + b 2 | a, b ∈ Q là trường con của R. Trên thực tế, đôi khi không nhất thiết phân chia ra thành nhóm, vành và trường. Trong tình hu ống như thế chúng được gọi là các cấu trúc đại số (algebraic structure). Định nghĩa 1.3.3 (Cấu trúc đại số) Cấu trúc đại số được gọi là hữu hạn, nếu nó bao gồm số lượng hữu hạn các phần tử. Số lượng các phần tử của cấu trúc hữu hạn được gọi là bậc của nó. Tập con không rỗng S, mà nó có cấu trúc đại số tương ứng đối với các toán tử đã được định nghĩa trong cấu trúc A được gọi là cấu trúc con của cấu trúc đại số A. Nếu S ≠ A, thì cấu trúc con S được gọi là cấu trúc con riêng biệt của cấu trúc A. Giả sử A – cấu trúc đại số, còn B ⊆ A – cấu trúc con của A. Tập hợp của tất cả các liên tập a ° B, ở đây phần tử a lấy theo tất cả cấu trúc A, đối với toán tử ∗, được xác định theo quy tắc ( a ° B) ∗ (b ° B) = (a ° b) ° B, với các phần tử không 0 ° B và 1 ° B được gọi là cấu trúc thừa số của A theo modulo B, ký hiệu A/ B. Từ định nghĩa 1.3.3 thấy rằng vành (trường tương ứng) có thể chứa không ch ỉ vành con (tr ường con tương ứng), mà cả nhóm con (vành con và nhóm con tương ứng). 1.3.2 Trường hữu hạn Trường hữu hạn là trường được ứng dụng rất nhiều trong mật mã, bởi vậy phần này sẽ đi sâu khảo sát một số phương pháp xây dựng một trường hữu hạn cũng như các tính chất của chúng. 1.3.2.1 Các trường hữu hạn, bao gồm các phần tử nguyên tố Các trường hữu hạn mà bậc của chúng (số lượng các phần tử) là số nguyên t ố có cấu trúc đơn giản nhất. Các trường như vậy được ứng dụng rộng rãi trong mật mã. Định nghĩa 1.3.4 (Trường nguyên tố) Trường, không bao gồm các trường con riêng biệt, được gọi là trường nguyên tố. Chẳng hạn, trường Q – trường nguyên tố, còn tập hợp R – không, bởi vì tập hợp Q là trường con riêng biệt của trường R. Tuy nhiên, Q là trường vô hạn. Chúng ta sẽ khẳng định sau này, trường nguyên tố hữu hạn bao gồm số nguyên tố của các phần tử, tức là bậc của nó là s ố nguyên t ố. Định nghĩa 1.3.5 (Trường hữu hạn) 11
- Trường F gọi là trường hữu hạn, nếu như số phần tử của nó là hữu hạn, ký hiệu là Fq , q là số phần tử của trường hữu hạn. Chú ý: Ở trên đã biết rằng, nếu p là số nguyên tố thì vành Z p là một trường, nhưng trên thực tế có nhiều trường hữu hạn khác không có dạng trên. Ví dụ, xây d ựng tr ường h ữu h ạn q phần tử, với q = p n , với p là số nguyên tố, và n ≥ 1 là số nguyên, một trường hữu hạn có số nguyên phần tử như vậy gọi là trường Galois. Định lý 1.3.1: Nhóm nhân Z n của các phần tử không âm của một trường hữu hạn Fq là nhóm * cyclic. Phần tử sinh α của nhóm cyclic gọi là phần tử nguyên thủy của trường hữu hạn Fq . Tất cả các phần tử của trường hữu hạn có thể viết dưới dạng sau: { Fq = 0, α , α 2 , ..., α q−2 , α q −1 = α 0 = 1 } Định nghĩa 1.3.6 (Đồng hình và đẳng cấu) Giả sử A và B – các cấu trúc đại số. Ánh xạ f: A → B được gọi là đồng hình từ cấu trúc A vào cấu trúc B, nếu ánh xạ f bao gồm các toán tử đã được định nghĩa trong cấu trúc A. Nói một cách khác, nếu ° – toán tử được định nghĩa trong cấu trúc A, còn ∗ – toán tử được định nghĩa trong cấu trúc B, thì ∀x, y ∈ A: f(x ° y) = f(x) ∗ f(y). Phép biến đổi đồng hình là song ánh f từ cấu trúc A lên cấu trúc B được gọi là đẳng cấu, còn các cấu trúc A và B – đẳng cấu. Nếu f: A → B là đồng hình, còn e – phần tử đơn vị của cấu trúc A (tương ứng với phép cộng và phép nhân), thì: f(e) ∗ f(e) = f(e ° e) = f(e). Tiếp theo, phần tử f(e) là phần tử đơn vị của cấu trúc B. Ngoài ra, đối với bất kỳ a ∈ A f(a) ∗ f(a–1) = f(a ° a–1) = f(e), bởi vì f(a ) = f(a)–1 đối với tất cả a ∈ A. Hơn nữa, nếu các cấu trúc A và B là đẳng cấu, chúng bao –1 gồm cùng số lượng phần tử. Như vậy, hai cấu trúc đẳng cấu được xây dựng như nhau. Định nghĩa 1.3.7 (Đặc số của cấu trúc đại số) Đặc số của cấu trúc đại số A, ký hiệu char (A), – là số nguyên dương nhỏ nhất n, sao cho na = 0 đối với phần tử bất kỳ a ∈ A. Nếu số nguyên như thế không tồn tại, thì đặc số của cấu trúc A bằng không. Định lý 1.3.2: Đặc số của trường hữu hạn bất kỳ là số nguyên tố (nếu đặc số không bằng 0). Ví dụ 1.3.3 Xây dựng trường F4 . Phép cộng và phép nhân của trường được cho bởi 2 bảng tính như sau (xem ví dụ 1.3.4.(1) để biết vì sao có được kết quả của hai bảng này): + 0 1 2 3 0 0 1 2 3 1 1 0 3 2 2 2 3 0 1 3 3 2 1 0 * 1 2 3 12
- 1 1 2 3 2 2 3 1 3 3 1 2 1.3.2.2 Trường hữu hạn xây dựng trên đa thức bất khả quy. Bậc của trường hữu hạn nguyên tố bằng đặc số của trường đó. Tuy nhiên, trường nguyên tố không thể xem là điển hình. Dạng chung hơn của trường hữu hạn có thể được xây d ựng dựa trên các đa thức. Định nghĩa 1.3.8 (Đa thức trong trường hữu hạn) Cho Fq là trường hữu hạn. Đa thức xây dựng trên trường Fq được cho dưới dạng sau: n f ( x) = ∑ ai x i i =0 ở đây n là số nguyên không âm, ai là hệ số, 0 ≤ i ≤ n , ai ∈ Fq , còn x là ký hiệu, không thuộc trường Fq . Hệ số an có bậc cao nhất và không bằng không khi n > 0 . Số nguyên n gọi là bậc của đa thức f (x) được ký hiệu n = deg( f ( x)) = deg( f ) . Nếu hệ số cao nhất bằng a0 , thì đa thức f gọi là hằng số. Nếu hệ số cao nhất bằng a0 = 0 , thì đa thức f gọi là đa thức không và ký hiệu f = 0. Tập tất cả các đa thức trên trường Fq ký hiệu là Fq [ x] Chú ý: Việc cộng, trừ, nhân chia đa thức thuộc Fq [ x] , giống như cộng, nhân, chia các đa thức bình thường, chỉ khác là tính các hệ số trong trường đã cho. Định nghĩa 1.3.9 (Đa thức bất khả quy) Đa thức f ( x) ∈ Fq [ x] được gọi là bất khả quy nếu không tồn tại các đa thức f1 ( x), f 2 ( x) ∈ Fq [ x ] sao cho f ( x ) = f1 ( x ) ∗ f 2 ( x ) Trong đó deg( f1 ( x) > 0 và deg( f 2 ( x) > 0 Định lý 1.3.3: Cho F là một trường, còn f (x) là đa thức khác không từ tập F [ x] . Khi đó tập F [ x] / f ( x) là một trường khi và chỉ khi f (x) là đa thức bất khả quy trên trường F. Chứng minh. Thứ nhất, tập F [ x] / f ( x) rõ ràng là một vành ứng với phép cộng và nhân theo modulo f(x). Phần tử không và phần tử đơn vị tương ứng với phần tử không và phần tử đơn vị của trường F. Thứ hai, giả sử F [ x] / f ( x) là một trường, mà f(x) không là đa thức bất khả quy, có nghĩa là có thể đặt f = gh, với g, h là hai đa thức từ tập F [ x] , không là hằng số. Lúc này, bởi vì 0 < deg( g ) < deg( f ) và 0 < deg(h) < deg( f ) , các đa thức g và h không là hằng số trong tập F [ x] / f ( x) , mặc dù f là đa thức không trong F [ x] / f ( x) . Điều này là vô lý. Như vậy F [ x] / f ( x) không thể là một trường. Điều vô lý này chứng tỏ rằng f không thể là không bất khả quy nếu như F [ x] / f ( x) là một trường. 13
- Bây giờ xét nếu như đa thức f là bất khả quy trên trường F. Bởi vì F [ x] / f ( x) là một vành, cần chứng minh rằng đối với một phần tử khác không của tập F [ x] / f ( x) tồn tại một phần tử nghịch đảo tương ứng với phép nhân. Giả sử r là đa thức khác không từ tập F [ x] / f ( x) , với gcd( f , r ) = c . Bởi vì deg(r ) < deg( f ) , còn f là bất khả quy, nên đa thức c phải là hằng số. Biểu diễn r dưới dạng r = cs . Lúc này c ∈ F , s ∈ F [ x] / f ( x) và gcd( f , s ) = 1 . Có thể tính s −1 (mod f ) ∈ F [ x ] / f ( x) . Ngoài ra bời vì c ∈ F , nên tồn tại c −1 ∈ F . Như vậy nhận được phần tử r −1 = c −1s −1 ∈ F [ x ] / f ( x) . Chú ý: f (x) thường gọi là đa thức xác định của trường F [ x] / f ( x) . Ví dụ 1.3.4 (Xây dựng trường hữu hạn trên cơ sở đa thức bất khả quy) 1. Xây dựng trường F4 , với f ( x) ∈ F2 [ x ] . Các phần tử của trường là: 0, 1, x, x + 1, chọn f (x) = x2 + x + 1. Xét xem đây có phải là 1 trường hay không. Lập bảng tính đối với phép cộng và phép nhân: + 0 1 x x+1 0 0 1 x x+1 1 1 0 x+1 x x x x+1 0 1 x+1 x+1 x 1 0 * 1 x x+1 1 1 x x+1 x x x +1 1 x+1 x+1 1 x Từ 2 bảng trên, khẳng định rằng trên cơ sở đa thức bất khả quy f (x) = x2 + x + 1, đã xây dựng được trường hữu hạn 4 phần tử. 2. Xây dựng F8 = F2 [ x] /( x 3 + x 2 + 1) , bởi vì x 3 + x 2 + 1 là đa thức bất khả quy trong trường F2 . Các phần tử của trường là 0, x, x, x + 1, x 2 , x 2 + 1 , x 2 + x , x 2 + x + 1 . Để đơn giản tính toán, biểu diễn các phần tử của trường thông qua vector cơ số 2 (xem chú ý dưới). Và nhận được b ảng tính toán c ủa các phần tử trong trường trên bởi phép nhân * 00 01 01 10 10 11 111 1 0 1 0 1 0 00 00 01 01 10 10 11 111 1 1 0 1 0 1 0 01 01 10 11 10 11 00 011 0 0 0 0 1 1 1 01 01 11 10 00 01 11 100 1 1 0 1 1 0 1 10 10 10 00 11 01 01 110 0 0 1 1 1 1 0 10 10 11 01 01 11 10 001 1 1 1 0 1 0 0 11 11 00 11 01 10 01 101 14
- 0 0 1 1 0 0 1 11 11 01 10 11 00 10 010 1 1 1 0 0 1 1 3. Xây dựng một trường 28 phần tử: F2 [ x ] / x8 + x4 + x3 + x + 1. Độc giả tự giải. Sau đó thử tính kết quả của phép nhân ‘57’.’F3’. Hướng dẫn tính, đầu tiên biễu diễn ‘57’ và ‘F3’ d ưới d ạng đa thức, nhân 2 đa thức đó, và thực hiện phép chia modulo cho x8 + x4 + x3 + x + 1. Chú ý: Một số n bit có thể biểu diễn dưới dạng đa thức bậc n – 1. Ví dụ a = a1a2…an, ở đây a1, a2, …, an ∈ F2 . Thì đa thức biểu diễn có dạng: f ( x) = a1 x + a2 x + ... + an−1 x + an . n −1 n −2 Định lý 1.3.4: Cho F là một trường, bao gồm p phần tử, còn f là đa thức bất khả quy bậc n trên trường F. Lúc này số lượng phần tử của trường F [ x] / f ( x) bằng p n . Chứng minh: F [ x] / f ( x) là tập các đa thức từ tập F [ x] , bậc của nó nhỏ hơn bậc của đa thức f(x), tức là nhỏ hơn n, còn hệ số của nó thuộc về trường F, bao gồm p phần tử. Nên trường F [ x] / f ( x) tồn tại p n phần tử như vậy. Hệ quả. Đối với một số nguyên tố p và mỗi số dương n tồn tại trường hữu hạn bao gồm p n phần tử. 1.3.2.3 Trường hữu hạn, xây dựng trên đa thức cơ sở Định lý 1.3.5: Cho F là một trường hữu hạn, còn f ∈ F [ x ] là đa thức bất khả quy bậc n trên trường F. Nếu như θ là một nghiệm bất kỳ của f ( x) = 0 , thì các phần tử 1, θ , θ 2 ,..., θ n −1 là độc lập tuyến tính trên trường F, có nghĩa là đối với ri ∈ F , với i = 0, 1, 2, ..., n − 1 , r0 + r1θ + r2θ 2 + ... + rn−1θ n−1 = 0 ⇒ r0 = r1 = ... = rn−1 = 0 Chứng minh: Giả sử θ là một nghiệm bất kỳ của f ( x) = 0 . Biết rằng θ ≠ 1 bởi vì đa thức f(x) là bất khả quy trên trường F, mà trường này chứa phần tử đơn vị. Giả sử rằng 1, θ , θ 2 ,..., θ n−1 không là độc lập tuyến tính trên trường F. Điều này có nghĩa là θ là nghiệm của phương trình r ( x) = r0 + r1 x + r2 x 2 + ... + rn−1 x n−1 = 0 Nếu như ri ∈ F (i = 0, 1, 2, ..., n − 1) , thì rõ ràng r (x) thuộc trường F [ x] / f ( x) . Dẫn đến điều kiện r ( x) = 0 , tương đương với r ( x) ≡ 0 mod f ( x) . Giả sử an là hệ số bậc cao của f(x). Khi đó an ∈ F , an ≠ 0 và an 1 f ( x) | r ( x) . Điều này là không thể, bởi vì đa thức an 1 f ( x) có bậc là n, trong khi đó − − bậc của r(x) nhỏ hơn n. Dẫn đến đa thức r(x) là đa thức không. Điều này là vô lý này dẫn đến k ết luận của định lý. Định nghĩa 1.3.10 (Đa thức cơ sở) Cho F là trường hữu hạn, f (x) là đa thức bất khả quy bậc n trên trường F. Khi đó α là nghiệm của phương trình f (x) = 0, và các thành phần 1, α, α2,…, αn-1 gọi là đa thức cơ sở của không gian hữu hạn trên trường F. 15
- Trong đại số tuyến tính, một đa thức cơ sở gồm n phần tử sẽ sinh ra không gian vector n chiều. Để biểu diễn ý này, sử dụng tích vô hướng các độ lớn thuộc về trường F, tức là không gian vector n chiều, sinh bởi đa thức cơ sở 1, α, α2,…, αn-1 có cấu trúc sau: n−1r θ i r , r ,..., r ∈ F ∑ i 0 1 n −1 . i =0 Định lý 1.3.6: Cho F là trường hữu hạn, f (x) là đa thức bất khả quy bậc n trên trường F. Không gian vector (định nghĩa 1.3.10) đối với bất kỳ nghiệm θ nào của phương trình f (x) = 0 đều là trường hữu hạn và có số phần tử là (#F)n. Chứng minh: Đầu tiên sẽ chứng minh rằng không gian vector (định nghĩa 1.3.10) là m ột vành. Đ ể làm điều này, chú ý rằng phương trình: f (θ ) = anθ n + an−1θ n−1 + ... + a0 . Với an ∈ F , an ≠ 0 , có thể viết lại dưới dạng sau θ n = an 1 (− an−1θ n−1 − − a0 ) . − Nhờ vậy mà θ n là tổ hợp tuyên tính của đa thức cơ sở 1, θ , θ 2 ,..., θ n−1 . Nhân hai vế của f(θ) cho θ , dễ dàng chứng tỏ rằng với bất kỳ một số nguyên dương m ≥ n , phần tử θ m có thể biểu diễn dưới dạng tổ hợp tuyến tính của chính đa thức cơ sở của nó. Điều này d ẫn đ ến, b ất kỳ ph ần t ử u, v từ không gian (định nghĩa 1.3.10) tích uv là tổ hợp tuyến tính từ cơ sở của các phần tử 1, θ , θ 2 ,..., θ m , với m ≤ 2( n − 1) , nó phải là tố hợp tuyến tính của cơ sở các phần tử 1, θ , θ 2 ,..., θ n−1 , có nghĩa là thuộc về không gian (định nghĩa 1.3.10). Cho nên tiên đề về “đóng” thỏa mãn. Thứ hai, để chứng minh rằng không gian (định nghĩa 1.3.10) là một trường, cần phải chứng minh rằng nó không chứa phần tử không. Để chứng mình điều này, ứng d ụng đi ều ki ện đ ộc l ập tuy ến tính của (định lý 1.3.5) và từ điều kiện uv = 0 dẫn đến đẳng thức không của một trong hai u và v. Và cuối cùng chú ý rằng, trong sự triển khai các phần t ử của không gian theo đa th ức c ơ s ở, s ử dụng # F phần tử của trường F, và bản thân đa thức cơ sở chứa n phần tử. Nên không gian (định nghĩa 1.3.10) chứa (# F ) n phần tử. Định nghĩa 1.3.11 (Trường hữu hạn Fqn ) Cho q là số lượng phần tử của trường hữu hạn F. Ký hiệu Fq n cho trường hữu hạn, được xây dựng trên cơ sở gồm n phần tử trên trường F. Ví dụ 1.3.5 (Trường F28 ) Thấy rằng F2 [ x ] / x8 + x4 + x3 + x + 1 là một trường bao gồm 28 phần tử. Biết rằng F28 cũng là một trường bao gồm 28 phần tử và có thể biểu diễn dưới dạng không gian vector {b α 7 7 } + b6α 6 + b5α 5 + b4α 4 + b3α 3 + b2α 2 + b1α 1 + b0 , ở đây α là nghiệm của phương trình x8 + x4 + x3 + x + 1 = 0, các hệ số b7, b6, b5, b4, b3, b2, b1, b0 ∈ F2 . 16
- Nhận thấy việc tính toán trong trường F28 đơn giản hơn trong trường F2 [ x ] / x8 + x4 + x3 + x + 1 nhờ trực tiếp nhân hai thành phần và biểu diễn dưới dạng tổ hợp tuyến tính các thành ph ần 1, α, α2, …, αn-1. Ví dụ cần tính ‘57’.’83’. Chú ý: ‘57’ = (0101_0111), còn ‘83’ = (1000_0011). (α6 + α4 + α2 + α + 1).(α7 + α + 1) = α13 + α11 + α9 + α8 + α6 + α5 + α4 + α3 + 1 Bởi vì α8 + α4 + α3 + α + 1 = 0 nên nhận được các tổ hợp tuyến tính sau: α8 = α4 + α3 + α + 1 α9 = α5 + α4 + α2 + α α11 = α7 + α6 + α4 + α3 α13 = α9 + α8 + α6 + α5 cho nên α13 + α11 + α9 + α8 + α6 + α5 + α4 + α3 + 1= α7 + α6 + 1. Và có nghĩa là ‘57’.’83’=’C1’. Nếu như dùng F2 [ x ] / x8+x4+x3+x+1, thì cần phải thực hiện phép chia và sẽ phức tạp hơn. Định lý 1.3.7: Cho F là trường hữu hạn bao gồm q phần tử, còn Fqn là trường hữu hạn xây dựng trên đa thức cơ sở trường F. Khi đó 1. Trường F là trường con của trường Fq n 2. Bất kỳ thành phần a ∈ Fqn thỏa mãn điều kiện a q = a khi và chỉ khi a ∈ F Chứng minh: Chứng minh khẳng định thứ nhất: Cho 1, α, α2,…, αn-1 là đa thức cơ sở của trường Fqn trên trường F. Bởi vì đa thức cơ sở này bao gồm phần tử đơn vị, bất kỳ phần tử nào của trường F đều có thể biểu diễn dưới dạng tổ hợp tuyến tính của phần tử đơn vị, có nghĩa là dưới dạng tổ hợp tuyến tính của phần tử cơ sở. Chứng minh khẳng định thứ hai: Đặt F = { 0} ∪ F * , ở đây F * là nhóm nhân với các phần tử khác không. Nh ư v ậy đi ều ki ện a ∈ F có thể là 0 hoặc có thể là thuộc F * . Với khả năng đầu tiên thì điều kiện a q = a là hiển nhiên đúng. Đối với khả năng thứ hai, nhóm sinh bởi phần tử sinh a, rõ ràng nhóm này là nhóm con c ủa F * , thì theo định lý Lagrange có (a)|# F * = q – 1, và có a q−1 = 1 . Nhờ vậy mà a q = a . Chứng minh điều ngược lại: Bất kỳ phần tử a thuộc Fqn , thỏa mãn điều kiện a q = a phải là nghiệm của phương trình x q − x = 0 . Thấy rằng bậc của đa thức bằng q nên phương trình trên trong trường Fq n không thể có số nghiệm lớn hơn q kể cả 0. Từ phần 1 của định lý, trường F là trường con của Fq n , mà các nghiệm của phương trình x q − x = 0 thuộc về F. Nên không một nghiệm của đa thức x q − x = 0 không là phần tử của Fqn . 1.4 XÂY DỰNG NHÓM TRÊN CƠ SỞ ĐƯỜNG CONG ELLIPTIC 17
- Các nhóm xây dựng trên cơ sở đường elliptic (elliptic curves) đóng vai trò rất quan tr ọng trong m ật mã hiện đại. Ứng dụng của các nhóm này trong mật mã khóa công khai, được đề xu ất đ ầu tiên b ởi hai nhà khoa học Neal Koblitz và Victor S. Miller. 1.4.1 Công thức Weierstrasse và đường cong elliptic Gọi K là một trường hữu hạn hoặc vô hạn. Một đường cong elliptic được định nghĩa trên trường K bằng công thức Weierstrass: y2 + axy + by = x3 + cx2 + dx + e, ở đây a, b, c, d, e là các số thỏa mãn một vài điều kiện đơn giản nào đó và thuộc K. Hình 1: Các ví dụ về đường cong elliptic 1.4.2 Đườ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 Fq với q là số nguyên tố p hoặc q là 2m (m là số nguyên). Tùy thuộc vào trường hữu hạn Fq, 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. 1.4.3 Đường cong elliptic trên trường Fp (p là số nguyên tố) Định nghĩa 1.4.1 (Đường cong elliptic trên trường Fp) Cho p là số nguyên tố (p > 3), cho a, b ∈ Fp sao cho 4a3 + 27b2 ≠ 0 trong trường Fp. Một đường cong elliptic E(Fp) trên Fp (đượ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 ∈ Fp) thỏa mãn công thức: y2 = x3 + ax + b, cùng với điểm O đặc biệt gọi là điểm vô cực và có thể biểu diễn dưới dạng O = (x, ∞ ). Số lượng điểm của E(Fp) là #E(Fp) thỏa mãn định lý Hasse. Chú ý: Độ phức tạp của thuật toán xây dựng trên nhóm đường cong Elliptic phụ thu ộc vào s ố điểm trên đường cong đó, và xét định lý Hasse về số điểm trên đường cong Elliptic. Định lý 1.4.1 (Định lý Hasse): Số các điểm trên đương cong Elliptic thỏa mãn bất đẳng thức sau: p + 1 − 2 p ≤# E ( Fp ) ≤ p + 1 + 2 p . Định nghĩa 1.4.2 (Bậc của điểm) Cho điểm P(x, y) thuộc đường cong elliptic. Bậc n của điểm P(x, y) là số nguyên dương thỏa mãn biểu thức: 18
- nP = O . Tập hợp các điểm trên E(Fp) tạo thành một nhóm thỏa mãn các tính chất sau: o Tính đóng: ∀a, b ∈ G, a + b ∈ G. o Tính kết hợp: Các phép toán trong nhóm có tính kết hợp. Do đó, (a + b) + c = a + (b + c). o Phần tử đơn vị: có một giá trị 0 ∈ G sao cho a + 0 = 0 + a = a, ∀a ∈ G. o Phần tử nghịch đảo: ∀a ∈ G, ∃ –a ∈ G gọi là số nghich đảo của a, sao cho −a + a = a + (−a) = 0. Ví dụ 1.4.1 (Đường cong Elliptic) 1. Cho phương trình y 2 = x 3 + 6 x + 4 mod 7. Nhận thấy (4.6 3 + 27.42) mod 7 = 1 ≠ 0, nó phù hợp với điều kiện của các nhóm elliptic theo mudulo 7. Đường cong này có các điểm sau: E(F7)= { O, (0, 2), (0, 5), (1, 2), (1, 5), (3, 0), (4, 1), (4, 6), (6, 2), (6, 5)} . Ta thấy (3, 0) + (3, 0) = O. Phần tử sinh của nhóm G = (1, 2). Nhóm các điểm trên đ ường cong elliptic là nhóm cyclic. 2. Giả sử p = 23, khảo sát đường cong elliptic y2 = x3 + x + 1. Trong trường hợp này a = b = 1 và có 4 × 13 +27 × 1 (mod 23) = 8 ≠ 0, nó phù hợp với điều kiện của các nhóm elliptic theo mudulo 23. Trên hình 2 biểu diễn đường cong liên tục, các điểm sẽ cho giá trị phù hợp với ph ương trình đã cho. Đối với các nhóm điểm trên elliptic chỉ khảo sát các giá trị nguyên t ừ (0, 0) đ ến ( p, p) trong góc phần tư của các số không âm (góc thứ nhất), phù hợp với phương trình theo modulo p. Hình 2: Đường cong elliptic y2 = x3 + x +1 Trong bảng dưới, trình bày các điểm (khác với O) là các phần tử của trường E23(1, 1). (0, 1) (6, 4) (12, 19) (0, 22) (6, 19) (13, 7) (1, 7) (7, 11) (13, 16) (1, 16) (7, 12) (17, 3) (3, 10) (9, 7) (17, 20) (3, 13) (9, 16) (18, 3) (4, 0) (11, 3) (18, 20) (5, 4) (11, 20) (19, 5) 19
- (5, 19) (12, 4) (19, 18) 4.2.2 Đường cong elliptic trên trường F2m Định nghĩa 1.4.3 (Đường cong elliptic trên trường F2m ) Một đường cong elliptic E( F2m ) trên F2m được định nghĩa bởi các tham số a, b ∈ F2m (với b ≠ 0) là tập các điểm P(x, y) với x ∈ F2m , y ∈ F2m thỏa mãn công thức: y2 + xy = x3 + ax2 + b, cùng với điểm O là điểm tại vô cực. Số lượng các điểm thuộc E( m F2 ) ký hiệu #E( m F2 ) thoả mãn định lý Hasse: q + 1 − 2 q ≤ # E ( Fq ) ≤ q + 1 + 2 q trong đó p = 2m. Ngoài ra, #E( F2m ) là số chẵn. Tập hợp các điểm trên E( F2m ) tạo thành một nhóm thỏa mãn các tính chất sau: o O + O = O. o (x, y) + O = (x, y), ∀(x, y) ∈ E( F2m ) o (x, y) + (x, - y) = O, ∀(x, y) ∈ E( F2m ). Khi đó, (x,- y) là điểm đối của (x, y) trên E( F2m ). Định nghĩa toán tử nhóm cyclic trên đường cong elliptic được trình bày trong nhiều tài liệu, đ ộc gi ả có thể xem sách, chẳng hạn, của Wenbo Mao. 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Tài liệu kỹ thuật lập trình
5 p | 471 | 187
-
Kỹ thuật lập trình - Ngôn ngữ lập trình C - Concept
15 p | 201 | 58
-
Tài liệu Kỹ thuật lập trình đệ quy
0 p | 235 | 49
-
Đề thi học kỳ I môn Kỹ thuật lập trình cơ bản
14 p | 498 | 47
-
Giáo trình kỹ thuật lập trình C part 10
19 p | 194 | 44
-
Kỹ thuật lập trình - Ngôn ngữ lập trình C - Quản lý tập tin (tt)
11 p | 180 | 31
-
Kỹ thuật lập trình - Ngôn ngữ lập trình C - Các kiểu dữ liệu nâng cao và sắp xếp (tt)
8 p | 174 | 30
-
Kỹ thuật lập trình - Ngôn ngữ lập trình C - Hàm
20 p | 137 | 25
-
Kỹ thuật lập trình - Ngôn ngữ lập trình C - Hàm (tt)
5 p | 144 | 23
-
Kỹ thuật lập trình - Ngôn ngữ lập trình C - Biến, Toán tử và kiểu dữ liệu
6 p | 155 | 19
-
Đề thi học kỳ 1 môn Kỹ thuật lập trình cơ bản
14 p | 199 | 18
-
Bài giảng lập trình mạng với C
0 p | 75 | 16
-
Hướng dẫn thực hành tuần 2 - Nhập môn lập trình
7 p | 147 | 14
-
kỹ thuật lập trình Điều khiển DataList
11 p | 91 | 12
-
Tài liệu ôn thi tốt nghiệp môn cơ sở: Phần Kỹ thuật lập trình C - ThS. Trần Ngọc Bảo
4 p | 166 | 10
-
kỹ thuật lập trình Session Object
9 p | 84 | 9
-
kỹ thuật lập trinh Http Cookie Object
9 p | 76 | 8
-
Đề thi môn Kỹ thuật lập trình
18 p | 147 | 8
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn