1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu một số lược đồ chia sẻ thông tin mật và ứng dụng (LV01870)

77 417 1

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

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

Nội dung

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 NGUYỄN THU THỦY NGHIÊN CỨU MỘT SỐ LƯỢC ĐỒ CHIA SẺ THÔNG TIN MẬT VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ TOÁN HỌC HÀ NỘI, 2016... BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2

NGUYỄN THU THỦY

NGHIÊN CỨU MỘT SỐ LƯỢC ĐỒ CHIA SẺ

THÔNG TIN MẬT VÀ ỨNG DỤNG

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

HÀ NỘI, 2016

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2

NGUYỄN THU THỦY

NGHIÊN CỨU MỘT SỐ LƯỢC ĐỒ CHIA SẺ

THÔNG TIN MẬT VÀ ỨNG DỤNG

Chuyên ngành: Toán ứng dụng

Mã số: 60 46 01 02

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

Người hướng dẫn khoa học: TS TRẦN VĂN DŨNG

HÀ NỘI, 2016

Trang 3

LỜI CẢM ƠN

Đầu tiên, tôi xin gửi lời cảm ơn chân thành sâu sắc đến các thầy cô giáo trong trường Đại học Sư Phạm Hà Nội 2 nói chung và các thầy cô trong phòng sau đại học nói riêng đã tận tình dạy bảo, truyền đạt lại những kiến thức và kinh nghiệm quý báu trong suốt thời gian qua

Tôi xin trân trọng gửi lời cảm ơn tới thầy giáo TS Trần Văn Dũng, người đã nhiệt tình giúp đỡ, trực tiếp chỉ bảo, hướng dẫn tôi trong suốt quá trình thực hiện luận văn cao học Trong quá trình làm việc với thầy, tôi đã tiếp thu thêm được nhiều kiến thức bổ ích, những kinh nghiệm trong việc bảo mật thông tin, kinh nghiệm trong việc thực hiện luận văn cùng thái độ làm việc nghiêm túc, hiệu quả Đây là những kinh nghiệm cần thiết, quý báu giúp tôi

áp dụng vào thực tiễn sau này khi làm việc

Sau cùng, cho phép tôi cảm ơn các bạn bè, gia đình đã giúp đỡ, ủng hộ tôi rất nhiều trong toàn bộ quá trình học tập cũng như nghiên cứu hoàn thành luận văn này

Trang 4

LỜI CAM ĐOAN

Tôi xin cam đoan:

Những kết quả nghiên cứu trình bày trong luận văn này là hoàn toàn trung thực, của tôi không vi phạm bất cứ điều gì trong luật sở hữu trí tuệ và pháp luật Việt Nam Trong quá trình làm luận văn tôi có tham khảo các tài liệu có liên quan và đã ghi rõ nguồn tài liệu tham khảo đó Những kiến thức tôi trình bày trong luận văn này chưa được trình bày hoàn chỉnh trong bất cứ tài liệu nào

TÁC GIẢ LUẬN VĂN

Nguyễn Thu Thủy

Trang 5

MỤC LỤC

MỞ ĐẦU 1

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

2 Mục đích nghiên cứu 1

3 Nhiệm vụ nghiên cứu 1

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

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

CHƯƠNG 1 KIẾN THỨC CƠ SỞ HỆ MẬT MÃ KHOÁ CÔNG KHAI 3

1.1 Một số định nghĩa cơ bản 3

1.2 Số học modulo 6

1.3 Nếu a là căn nguyên thủy của trường Z thì bài toán Logarit rời p rạc luôn có nghiệm 13

1.4 Hệ mã khoá công khai 18

1.4.1 Mã khoá công khai RSA 18

1.4.2.Chữ ký điện tử DSA 26

CHƯƠNG 2 LƯỢC ĐỒ CHIA SẺ THÔNG TIN MẬT 31

2.1 Khái niệm chia sẻ bí mật 31

2.2 Mã Reed - solomon 35

2.2.1 Khôi phục dữ liệu 37

2.2.2 Phát hiện lỗi 39

2.2.3 Sửa lỗi 40

2.3 Thuật toán Berlekamp – Welch 42

2.4 Lược đồ chia sẻ bí mật Shamir 45

2.4.1 Chia sẻ khoá K thành các mảnh 47

2.4.2 Khôi phục bí mật từ các mảnh 48

Trang 6

CHƯƠNG 3 ỨNG DỤNG SINH CHỮ KÝ RSA CHIA SẺ 51

3.1 Chia sẻ Shamir cho khoá riêng RSA 51

3.2 Chia sẻ chữ ký điện tử RSA 54

3.3 Chia sẻ chữ ký điện tử 56

3.3.1 Đặt vấn đề 56

3.3.2 Mô hình hệ thống và yêu cầu bảo mật 60

3.4 Lược đồ sinh chữ ký RSA chia sẻ 61

3.5 Giao thức shoup 65

KẾT LUẬN 69

TÀI LIỆU THAM KHẢO 70

Trang 7

MỞ ĐẦU

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

Ngày nay máy tính ngày càng thể hiện rõ vai trò thiết yếu trong mọi lĩnh vực của xã hội Nó đã trở thành phương tiện điều hành các hệ thống giúp cho mọi công việc rút ngắn khoảng cách về không gian và thời gian Chữ ký số ra đời giúp cho doanh nghiệp tiết kiệm rất nhiều thời gian, công sức trong một

số công việc giao dịch với ngân hàng, cơ quan hành chính Hoạt động giao dịch điện tử cũng được đẩy mạnh

Với mạng máy tính ngày càng phổ biến trên toàn cầu người ta đã dùng mạng Internet một cách thông dụng Nhiều dịch vụ điện tử như: thư điện tử, chuyển tiền, thương mại điện tử, chính phủ điện tử… đã được áp dụng rộng rãi Do đó yêu cầu về an toàn mạng và an ninh dữ liệu càng trở lên cấp bách

và cần thiết Ý tưởng chia sẻ bí mật đã ra đời dựa trên nguyên tắc chia sẻ thông tin mật ra thành các mảnh nhỏ và trao cho mỗi người một mảnh sao cho mỗi người với số mảnh đó không tìm ra được thông tin mật

Được sự gợi ý của giáo viên hướng dẫn và nhận thấy tính thiết thực của

vấn đề em đã chọn đề tài “Lược đồ chia sẻ thông tin mật và ứng dụng sinh

chữ ký RSA chia sẻ” để làm nội dung cho luận văn

2 Mục đích nghiên cứu

 Làm thế nào để chia sẻ được thông tin mật

 Ứng dụng vào bài toán thực tế

3 Nhiệm vụ nghiên cứu

 Nghiên cứu lược đồ chia sẻ thông tin mật

 Ứng dụng sinh chữ ký RSA chia sẻ

Trang 8

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

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

 Nghiên cứu về chia sẻ thông tin mật và ứng dụng

4.2 Phạm vi nghiên cứu

 Nghiên cứu trên cơ sở toán học và trường số modulo

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

 Nghiên cứu lý thuyết

 Nghiên cứu thực nghiệm trên thực tiễn cuộc sống

NỘI DUNG

Ngoài phần mở đầu, kết luận và tài liệu tham khảo Luận văn được chia làm 3 chương:

Chương 1: Kiến thức cơ sở hệ mật mã khóa công khai

Chương 2: Lược đồ chia sẻ thông tin mật

Chương 3: Ứng dụng sinh chữ ký RSA chia sẻ

Trang 9

CHƯƠNG 1 KIẾN THỨC CƠ SỞ HỆ MẬT MÃ KHOÁ CÔNG KHAI

Chương 1 trình bày các kiến thức toán học nền tảng làm cơ sở áp dụng vào lược đồ chia sẻ thông tin mật và ứng dụng sinh chữ kí RSA chia sẻ

Nội dung trong chương 1đề cập đến một số định nghĩa cơ bản trong toán học như nhóm, vành, trường, số học modulo,… và một số định lí quan trọng

để tính toán áp dụng vào việc chia sẻ thông tin mật như: định lí Euler, định lí Fecma, định lí phần dư trung hoa Ngoài ra trong chương 1 này bước đầu đã

đề cập đến hệ mã khóa công khai cụ thể là mã khóa công khai RSA Bên cạnh

đó có những ví dụ cụ thể, thực tế đi kèm để minh họa làm cho người đọc dễ hiểu và thấy được tác dụng thực tiễn của nó mang lại

1.1 Một số định nghĩa cơ bản

Nhóm hữu hạn

Nhóm G là một tập hợp các phần tử, trên đó có một phép toán hai ngôi

ký hiệu là dấu chấm “.”, thỏa mãn các tính chất sau:

 Phép toán “.” có tính kết hợp: với mọi a, b, c thuộc G: a.(b.c) = (a.b).c

 Có phần tử e thuộc G sao cho với mọi a thuộc G: a.e = e.a = a, phần tử

e được gọi là phần tử đơn vị của G

 Có phần tử nghịch đảo: với mọi a thuộc G, luôn tồn tại duy nhất b sao cho:

a.b = b.a = e, b được gọi là nghịch đảo của a và ký hiệu a1 b

Nhóm hữu hạn là một nhóm mà số phần tử của nó là hữu hạn Số phần tử của một nhóm hữu hạn còn gọi là cấp của nhóm đó Trong lý thuyết nhóm, thuật ngữ cấp có hai ý nghĩa:

Cấp của một nhóm G chính là số phần tử của G và ký hiệu là ord (G)

Trang 10

Cấp của phần tử a trong nhóm G là số nguyên dương m nhỏ nhất thỏa

Trang 11

1) X cùng với phép cộng là một nhóm aben

2) X cùng với phép nhân là một nửa nhóm

3) Phép nhân phân phối đối với phép cộng: với các phần tử tùy ý

và thường ký hiệu là e hay 1 (nếu không có sự nhầm lẫn)

Ví dụ 1.2: Tập hợp Z các số nguyên cùng với phép cộng và phép nhân thông

thường là một vành giao hoán có đơn vị gọi là vành các số nguyên Ta cũng

có vành các số hữu tỉ, các số thực, các số phức (các phép toán vẫn là phép cộng và phép nhân thông thường)

Định nghĩa trường:

Ta nói một vành X giao hoán, có đơn vị, có nhiều hơn một phần tử là

một trường nếu và chỉ nếu X- {0} là một nhóm đối với phép nhân của X

Ví dụ 1.3: Tập hợp Q các số hữu tỉ cùng với phép cộng và phép nhân các số

là một trường Ta cũng có trường số thực R và trường số phức C

Định nghĩa trường con

Giả sử X là một trường, A là một bộ phận của X đóng đối với hai phép toán trong X A là một trường con của trường X nếu A cùng với hai phép toán cảm sinh trên A là một trường

Định nghĩa trường hữu hạn

hoặc GF(p) với p là số phần tử thuộc trường

Trang 12

1.2 Số học modulo

Cho n là số nguyên dương Giả sử a, b là các số nguyên: ta ký hiệu là (mod )

a và b đồng dư với nhau theo modulo n Nếu trong đó a là số nguyên dương nhỏ hơn n, thì a được gọi là phần dư của b khi chia cho n, đôi khi a được gọi

là thặng dư của b theo modun n

Tập hợp các số nguyên từ 0 đến n – 1 được gọi là tập hợp thặng dư hoàn toàn modulo n Điều này có nghĩa là với mỗi số nguyên a, thặng dư modulo n

là một số dư từ 0 đến n – 1

Modulo số học cũng như số học bình thường, bao gồm các phép toán cộng, nhân có tính giao hoán, kết hợp và phân phối Mặt khác, giảm mỗi giá trị trung gian trong suốt quá trình tính toán

Trang 13

Số nghịch đảo modulo

Định nghĩa phần tử nghịch đảo

Phần tử a của Z được gọi là khả nghịch trong n Z hay khả nghịch theo n

modulo m nếu tồn tại phần tử a trong ' Z sao cho n a a ' 1 trong Z hay n

'

1(mod )

a được gọi là nghịch đảo của modulo m của a

Ví dụ 1.5 : Nghịch đảo của 5 modulo 14 là 3 vì:

 

Tính chất:

 Cho ,a bZ n Phép chia a cho b theo modulo n là tích của a và b1

theo modulo n, và chỉ được xác định khi b có nghịch đảo theo modulo n

 Cho aZ n, a là khả nghịch khi và chỉ khi gcd (a,n) = 1

nếu và chỉ nếu d chia hết cho b, trong trường hợp các nghiệm d nằm trong

d

Định lý 1: Cho số nguyên a0 nguyên tố cùng nhau với n, thì luôn tồn tại phần tử nghịch đảo của a theo modulo n

Chứng minh:

Xét tập hợp {1, 2, 3… n-1} Nhân từng phần tử của tập hợp với a theo modulo

n, nhận được tập hợp {(a mod n), (2a mod n), (3a mod n),…((n-1)a mod n)} tập này sẽ gồm các số: 1, 2, 3, …, n-1 có nghĩa đối với một số giá trị i nào đó

sẽ thỏa mãn điều kiện iamodn1.

Điều này dẫn đến mâu thuẫn nếu như tồn tại 2 giá trị h và k thỏa mãn điều kiện trên nghĩa là: hamodnkamodn

Điều này dẫn đến hkmodn.

Trang 14

Vì gcd (a,n) = 1 suy ra h = k Vậy ta tìm được i là phần tử nghịch đảo của a và i là duy nhất

Hệ quả: Nếu như p là số nguyên tố, thì bất kỳ số a sao cho 0 < a < p luôn tồn

tại phần tử nghịch đảo theo modulo p

Số nghịch đảo theo modulo n

Nếu USCLN (a, n) = 1 thì luôn tồn tại b (b <n) sao cho:

1

mod

Ta gọi b là số nghịch đảo của a theo modulo n

Ví dụ 1.6: 5.2 1(mod9) hay 25 mod91

  

Định lý này có thể được sử dụng để dễ dàng giản ước với mô đun n rất lớn

Trang 15

Định lý phần dư trung hoa được phát biểu như sau:

Cho n2, m m1, 2, m là những số nguyên dương khác 0, đôi một n

nguyên tố cùng nhau và a a1, 2, a n là n số nguyên bất kỳ Khi đó hệ phương

trình đồng dư xa i(modm n) có nghiệm và nghiệm này duy nhất theo modulo Mm m1 2 m n

Trang 16

Bổ đề Berzout: cho hai số nguyên m và n sao cho gcd( , ) 1m n  khi đó luôn tồn tại x và y sao cho mxny1

Hệ quả: Với mọi d nguyên luôn tồn tại u và v sao cho dmunv

Bây giờ quay lại bài toán chúng ta đi chứng minh sự tồn tại nghiệm và tính duy nhất nghiệm

Theo lý thuyết đồng dư tồn tại u và v sao cho:

x a m u xam v

Do vậy ta chỉ cần chọn u, v thỏa mãn: a1 a2 m v2 m u1 điều này hiển nhiên theo bổ đề Berzout ở trên

Như vậy tồn tại x thỏa mãn hệ phương trình đồng dư trên

Bây giờ ta sẽ chứng minh tính duy nhất của nghiệm

Thật vậy, giả sử x x là 2 nghiệm của hệ phương trình đã cho ta có: , '

'

xx m  

Do m đôi một nguyên tố cùng nhau lên ta phải có i xx'(modm1 m n)

Ta khẳng định được tính duy nhất của nghiệm theo mod m1 m n

Ví dụ 1.10: Giải hệ phương trình đồng dư:

2(mod 3)3(mod 5)5(mod 7)

x x x

Trang 17

Như vậy x có dạng: x68 105 k (k là một số nguyên bất kỳ)

Sơ đồ chia sẻ bí mật trên cơ sở định lý phần dƣ Trung Hoa

Chúng ta lựa chọn một số tập hợp gồm các cặp số nguyên tố cùng nhau

m m1, 2, ,m n có kích thước đủ lớn Giá trị n tương ứng với số lượng thành viên mà nhà phân phối muốn chia sẻ bí mật Chúng ta tính tích của k số nhỏ nhất từ tập trên Giả sử tích này bằng N Chúng ta tính tiếp tích k-1 số lớn nhất từ tập trên Giả sử tích này bằng M Số k gọi là ngưỡng của sơ đồ trên cơ

sở tập hợp m m1, 2, ,m , nếu như M n  N Chúng ta chọn số bí mật S thỏa

mãn điều kiện M S N  Bí mật được chia cho các thành viên dưới dạng một cặp số r m , ở đây r i, i i là phần dư của phép chia S cho m i

Nếu như tkthành viên có mảnh bí mật r m liên kết với nhau để i, i

khôi phục bí mật S, bằng cách giải hệ phương trình đồng dư:

modmod

Sử dụng định lý Trung hoa để giải hệ trên và tìm ra nghiệm x0

Chúng ta dễ dàng chứng minh x0=S Rõ ràng theo cách xây dựng sơ đồ phân chia S thỏa mãn hệ đồng dư thức đã cho, với điều kiện m m1 2 m tNS

Áp dụng định lý Trung hoa thì hệ trên có nghiệm duy nhất, nghiệm này nhỏ hơn tích Modulo m m1 2 m và thỏa mãn hệ, có nghĩa là x t 0=S

Trang 18

Bây giờ chúng ta chứng minh rằng với t' k thành viên giữ phần bí mật,

họ không thể khôi phục được khóa mật S nhờ giải hệ phương trình đồng dư sau:

modmod

Giả sử x là số không âm nhỏ nhất thỏa mãn hệ trên: 0' 0x0' m m1 2 m t'

'

Q là số tự nhiên nào đó, nhưng tương ứng với sự chọn tập hợp m m1, 2, ,m n

thì số Q là rất lớn, và trên thực tế là khó có thể xác định được, thực sự như

vậy, chúng ta có bất đẳng thức sau x0' M  S N, có nghĩa là chúng ta có:

Nếu như lựa chọn tập hợp m m1, 2, ,m để thương nN

dạng nhị phân từ 129 đến 130 bít thì trên thực tế khó xác định được số Q

Trang 19

Ví dụ 1.11:

là k=3 D chọn tập hợp m m1, 2, ,m5  97,98,99,101,103

Tính Mm m4 5 10403, Nm m m1 2 3 941094 Chọn S 571875 D tính ra 5 cặp mảnh bí mật (ri, mi) để phân chia cho 5 thành viên liên quan, với tập r r1, , ,2 r5  60, 45,51,13,19 Bây giờ P1,P4 và P5 muốn kết hợp lại với nhau để khôi phục S Thì họ giải hệ phương trình đồng dư thức sau:

60 mod 9713mod101

19 mod103

x x x

1.3 Nếu a là căn nguyên thủy của trường Z thì bài toán Logarit rời rạc p

luôn có nghiệm

Cho G là nhóm nhân Abel, ,a b G Bài toán tìm kiếm nghiệm của

của phương trình gọi là logarit rời rạc cơ số a của b, ký hiệu là loga b, nếu như cơ số a cố định và nếu như nghiệm của phương trình tồn tại:

loga bZ G, nếu như |G|  Bài toán logarit rời rạc có vai trò rất lớn trong ứng dụng của mật mã Đặc

biệt quan trọng trong trường hợp GF q( )*, với qp , p là số nguyên tố,

N

điểm của đường cong Eliptic trong trường hữu hạn

Chúng ta xem phương trình

(mod )

x

ab p

Trang 20

trong nhóm Z , với p là số nguyên tố Chúng ta giả sử rằng bậc của p*

(mod )

a p bằng p-1 khi đó phương trình giải được, và nghiệm x là một phần

định nghiệm của a xb(mod )p

Với sự giúp đỡ của phương pháp chọn thì có thể giải phương trình

làm điều này c ub a v(mod )p , từ đây a Hu v b(mod )p

Bước 6 Đưa ra giá trị xHuv(modp1)

Kết thúc thuật toán

Chúng ta chứng minh sự đúng đắn của thuật toán Bất kỳ số nguyên x,

Trang 21

Logarit rời rạc trong trường nguyên tố

Trong phần này chúng ta xem thuật toán giải phương trình

(mod )

x

ab p

ở đây p là số nguyên tố Chúng ta cho rằng (mod )a p có bậc là p-1

Thuật toán Adleman

Tầng 1 Hình thành cơ sở nhân tử, bao gồm tất cả các số nguyên tố q,

log log log

Tầng 3 Chọn số lượng đủ lớn biểu thức (*), giải hệ phương trình tuyến tính

thu được ứng với các ẩn loga q logarit rời rạc của phần tử của cơ sở nhân tử

Tầng 4 Bằng cách lựa chọn chúng ta tìm ra một giá trị của r, sao cho

q r

Trang 22

Tầng 5 Bằng cách tính toán tương tự như tầng 2 và 3 của thuật toán, tìm ra

logarit rời rạc loga p đối với các số nguyên tố i p1, ,p ở tầng 4 k

Trang 23

Từ đây chúng ta có x2(mod 2)

Từ x34(mod81) và x2(mod 2)suy ra x34(mod162)

Ví dụ 1.13 :

Xét vành số Z , với p là số nguyên tố, vậy ta có p Z = GF(p) Tất cả các p

phần tử a0 của trường tạo thành nhóm nhân: Z p a1  a n 1

Nếu cấp của a bằng p thì ta nói a là căn nguyên thủy của Z p

Xét bài toán thuận: Cho ya x

Cho p = 17, a =2 Ta tính ya xmod19 với xZ pGP p( ), dễ dàng thấy 2 là căn nguyên thủy ta có bảng giá trị:

Tính y2 mod19x

Nhận xét:

sẽ đi qua hết các phần tử trong vành Z p

 Từ phần tử nguyên thủy a = 2 đã cho ban đầu ta có thể tìm được các phần tử nguyên thủy khác theo công thức:

mod

i

ba n với i, n 1Vậy tập các phần tử nguyên thủy của Z là: 19 2,13,14,15,3,10 

 Các phần tử nguyên thủy tạo thành các cặp nghịch đảo:

Trang 24

Xét bài toán ngược: *

yx a xZ Dựa trên tính chất các hàm logarit ta có:

1

1.4 Hệ mã khoá công khai

1.4.1 Mã khoá công khai RSA

RSA là mã công khai được sáng tạo bởi Rivest, Shamir & Adleman ở MIT (Trường Đại học Công nghệ Massachusetts) vào năm 1977 RSA là mã công khai được biết đến nhiều nhất và sử dụng rộng rãi nhất hiện nay Nó dựa trên các phép toán lũy thừa trong trường hữu hạn các số nguyên theo modulo nguyên tố Cụ thể, mã hóa hay giải mã là các phép toán luỹ thừa theo modulo

số rất lớn Việc thám mã, tức là tìm khóa riêng khi biết khóa công khai, dựa trên bài toán khó là phân tích một số rất lớn đó ra thừa số nguyên tố Nếu không có thông tin gì, thì ta phải lần lượt kiểm tra tính chia hết của số đó cho

Trang 25

tất cả các số nguyên tố nhỏ hơn căn của nó Đây là việc làm không khả thi

nên có thể coi lũy thừa là bài toán dễ

Cần chú ý rằng ở đây ta sử dụng các số rất lớn khoảng 1024 bit, tức là cỡ

10350 Tính an toàn dựa vào độ khó của bài toán phân tích ra thừa số các số lớn Bài toán phân tích ra thừa số yêu cầu  log log log 

toán khó

Mã công khai RSA gồm hai giai đoạn: khởi tạo khóa RSA và giai đoạn

mã hóa/giải mã

1.4.1.1 Các bước thực hiện mã hóa RSA

Khởi tạo khóa RSA

+) Mỗi người sử dụng A tạo một cặp khóa công khai, khóa riêng như sau:

+) Chọn ngẫu nhiên hai số nguyên tố lớn p và q khác nhau

+) Tính số N làm modulo của hệ thống: N = p.q

Ta đã biết Ф(N) = (p - 1)(q - 1)

+) Chọn ngẫu nhiên khóa mã e làm khóa công khai, sao cho: 1 < e < ФN)

và gcd(e,Ф(N)) = 1, tức là e và Ф(N) là hai số nguyên tố cùng nhau

Trang 26

+) Nghịch đảo của e theo modulo Ф(N) là khóa riêng d, vậy tìm d từ phương trình:

(e.d) mod Ф(N) = 1, với 0< d < Ф(N) hay d = e-1 mod Ф(N)

Chú ý: vai trò của e và d có thể thay đổi cho nhau, tức là có thể lấy e làm khóa mật, khi đó tính d nghịch đảo của e làm khóa công khai

+) Người sử dụng A in khóa mã công khai: KU = {e,N} và thông báo cho mọi người biết

+) Người sử dụng A giữ bí mật khóa riêng: KR = {d,p,q}

1.4.1.2 Sử dụng RSA

Để mã hóa mẩu tin M, người gửi B:

 Lấy khóa công khai của người nhận A: KU = {e,N}

 Mã hóa thông điệp M bằng khóa công khai của người nhận A:

Trang 27

Tạo bộ khóa công khai cho người sử dụng A

6 In khóa công khai của người sử dụng A: KU={7,187}

7 Giữ khóa riêng bí mật riêng của A: KR={23,17,11}

B sử dụng khóa công khai của A để mã hóa thông điệp gửi cho A:

Người sử dụng A dùng khóa riêng của mình để giải mã như sau:

M = 1123 mod 187 = 88

Trang 28

 Có thể dùng định lý phần dư Trung Hoa để giải mã cho nhanh như sau:

o Tính 1123 mod 17 = (-6)23 mod 17 = (-6)16(-6)4 (-6)2 (-6) mod 17 = 3

Vì (-6)2 mod 17 = 2, nên (-6)4 mod 17 = 4, (-6)8 mod 17 = -1;

(-6)16 mod 17 = 1

o 11-1 mod 17 = (-6)-1 mod 17 = 14 nên c2 = 11.(11-1 mod 17)

= 11.(14 mod 17) = 154

Giải mã hiệu quả:

Như chúng ta thấy qua ví dụ trên, nếu biết N = p.q, thì ta có thể giải mã nhanh bằng cách sử dụng định lý phần dư Trung Hoa tính toán theo các modulo p và q Sau đó kết hợp lại để tìm ra bản rõ Vì ở đây người sử dụng sở hữu khóa riêng, nên biết được p và q, do đó có thể sử dụng kỹ thuật này Nếu

sử dụng định lý phần dư Trung Hoa để giải mã thì hiệu quả là nhanh gấp bốn

lần so với giải mã tính trực tiếp

Sinh khóa RSA

Người sử dụng RSA cần phải xác định ngẫu nhiên hai số nguyên tố rất lớn, thông thường khoảng 512 bit Do đó việc sinh ra ngẫu nhiên p, q và kiểm tra xác suất tính nguyên tố của chúng có nhiều giải pháp khác nhau với độ tin cậy cao Sau khi chọn được một khóa e hoặc d nguyên tố cùng nhau với Ф(N), dễ dàng tính được khóa kia chính là số nghịch đảo của nó qua thuật toán Euclide mở rộng (Xem [8])

1.4.1.4 An toàn của RSA

Trên thực tế có nhiều cách tấn công khác nhau đối với mã công khai RSA như sau:

Trang 29

Tìm kiếm khóa bằng phương pháp vét cạn, phương pháp này không khả thi với kích thước đủ lớn của các số hoặc tấn công bằng toán học dựa vào độ khó việc tính Ф(N) bằng cách phân tích N thành hai số nguyên tố p và q hoặc tìm cách tính trực tiếp Ф(N) Trong quá trình nghiên cứu việc thám mã người

ta đề xuất kiểu tấn công thời gian trong khi giải mã, tức là căn cứ vào tốc độ

mã hóa và giải mã các mẩu tin cho trước mà phán đoán các thông tin về khóa Cuối cùng có những nghiên cứu tấn công RSA với điều kiện biết trước bản

mã cho trước Cụ thể như sau:

Bài toán phân tích

nếu theo dõi thời gian máy tính cần để giải mã các bản tin

công khai khác

o Tấn công thời gian giống như kẻ cướp đoán số điện thoại bằng cách quan sát một người nào đó trong bao lâu chuyển quay điện thoại từ số này sang

số khác

Trang 30

 Tấn công bản mã chọn trước

1.4.1.5 Sơ đồ chữ ký RSA

Thuật toán sinh khóa:

Mỗi người sử dụng A tạo một cặp khóa công khai – riêng như sau:

Chọn ngẫu nhiên hai số nguyên tố lớn p và q khác nhau

Tính số N làm Modulo của hệ thống: N = p.q

Ta đã biết Ф(N) = (p - 1)(q - 1)

Chọn ngẫu nhiên khóa mã e làm khóa công khai, sao cho 1 < e < ФN)

và gcd(e,Ф(N)) = 1, tức là e và Ф(N) là hai số nguyên tố cùng nhau

Nghịch đảo của e theo modulo Ф(N) là khóa riêng d, vậy tìm d từ phương trình:

Tìm khóa riêng (hoặc công khai) d của A: (e.d) mod Φ(N) = 1, 0 < d < Φ(N)

Trang 31

mod n = 1427 mod 55

o Khóa riêng d = e-1 mod Φ(N) = 13-1 mod 60 = 37;

o Mã: C = Me mod n = 313 mod77 = (38343) mod77 = (42.4.3) mod77 = 38;

o Giải mã: M = Cd mod n = 3837 mod 77 = 3

o Tính Cd mod 7 = 3837 mod 7 = 337 mod 7 = 336.3 mod7 = 3;

o Tính Cd mod 11 = 3837 mod11 = 537 mod 11 = 530.57 mod11 = 3;

o Tính a1 = 11-1 mod 7 = 4-1 mod 7 = 2;

Trang 32

Chữ ký điện tử của một người sử dụng trên một mẩu tin tại một thời

điểm xác định được xem như nén mẩu tin về một kích thước cố định và được xác thực Nó cung cấp các khả năng để:

Vì vậy việc tạo chữ ký điện tử bao gồm việc sử dụng một hàm băm bản tin và một hàm xác thực có một số khả năng bổ sung như nhận bản băm, thông tin mật của người ký, một số thông tin ngẫu nhiên đặc trưng cho thời điểm ký để tạo ra chữ ký điện tử đính kèm mẩu tin

Đồng thời thuật toán cũng hỗ trợ người nhận kiểm tra chữ ký điện tử kèm với mẩu tin đó

Chuẩn chữ ký điện tử DSS

Sinh khóa DSA

 Chia sẻ giá trị khóa công khai tổng thể (p, q, g):

Trang 33

o Số nguyên tố lớn p2L, ở đó L= 512 đến 1024 bit và là bội của 64;

o Chọn q là số nguyên tố 160 bit và là ước của p-1;

1

p q

g h

p q

Để ký mẩu tin M người gửi trước hết cần:

 Sinh khóa chữ ký ngẫu nhiên k: k < p, k phải là số ngẫu nhiên, được xóa sau khi dùng và không bao giờ dùng lại;

Trang 36

Tóm tắt chương 1

Trong chương 1, luận văn đã giới thiệu được các lý thuyết đại số căn bản được dùng để bổ trợ và xây dựng nên khung cơ sở lý luận cho các bài toán chia sẻ thông tin mật như lý thuyết về toán học modulo và mô hình bài toán Logarith rời rạc, các loại mã hóa, cũng như các định lý Fermat, Euler Tiếp đó, luận văn cũng đã mô tả và đi sâu vào các khái niệm về chữ ký điện

tử và sơ đồ chữ ký RSA để ứng dụng vào việc chia sẻ thông tin mật

Ngoài ra luận văn đã đi sâu vào cách tạo chữ ký, ứng dụng cũng như ưu nhược điểm của chữ ký Tìm hiểu về chữ ký ngưỡng, chữ ký RSA Cách tạo

ra chữ ký RSA, thẩm định và độ an toàn của chữ ký

Trong chương tiếp theo, luận văn sẽ tiếp tục đi sâu vào các khái niệm chia sẻ bí mật, lược đồ chia sẻ bí mật Shamir và thuật toán Berlekamp-Welch

Trang 37

CHƯƠNG 2 LƯỢC ĐỒ CHIA SẺ THÔNG TIN MẬT

Trên đường truyền dữ liệu từ người này gửi cho người kia sẽ có thể xảy

ra bất kì một lỗi nào đó và nhiệm vụ của chúng ta là phát hiện ra lỗi và sửa lỗi Nội dung trong chương 2 sẽ đề cập đến vấn đề này: cách phát hiện lỗi và sửa lỗi sử dụng mã Reed – Solomon và thuật toán Berlekamp – Welch

Trên thực tế đôi khi xuất hiện bài toán chia sẻ khóa bí mật k cho n người, với điều kiện là mỗi một người trong số đó chỉ có một phần khóa mật Và t trong số n người đó có thể khôi phục được khóa mật Đó cũng chính là nội dung của chương 2: khôi phục bí mật từ các mảnh

2.1 Khái niệm chia sẻ bí mật

Sơ lược:

Lược đồ chia sẻ bí mật là một phương thức, ở đó người giao dịch phân phát các mảnh thông tin cho các bên tham gia, mà chỉ có sự hợp tác của các bên trong những nhóm có quyền hạn mới có thể tái thiết lại bí mật Lược đồ chia sẻ bí mật là công cụ quan trọng trong ngành mật mã, và được sử dụng làm nền tảng cho nhiều giao thức mật mã an toàn

Các ví dụ về chia sẻ bí mật: giao thức chung cho tính toán nhiều bên, quy

ước Byzantine, mật mã ngưỡng, điều khiển truy cập, mã hóa dựa trên đặc thù,

và chuyển giao không rõ nội dung nói chung

Lược đồ chia sẻ bí mật là một công cụ được sử dụng trong nhiều giao thức mật mã Một lược đồ chia sẻ bí mật bao gồm một người giao dịch với

một bí mật, một lượng gồm n bên tham gia, và một tập hợp A gồm các nhóm

con, gọi là cấu trúc truy cập Một lược đồ chia sẻ bí mật với cấu trúc truy cập

A là một phương thức mà trong đó, người giao dịch phân phát các mảnh thông tin cho các bên tham gia sao cho:

Trang 38

(1) Bất kỳ nhóm con nào trong A đều có thể tái tạo lại bí mật từ thành viên của họ

(2) Bất kỳ nhóm nào không ở trong A đều không trích xuất được một phần thông tin nào về bí mật của người giao dịch

Ban đầu được thúc đẩy bởi vấn đề bảo mật nguồn lưu trữ thông tin, lược

đồ chia sẻ bí mật đã được áp dụng nhiều trong ngành mật mã và toán học

Ví dụ 2.1: (Mã hóa dựa trên thuộc tính) Mã hóa khóa công khai là một cơ

chế mạnh mẽ để bảo vệ sự tuyệt mật của thông tin được lưu giữ và truyền đạt Ngày nay, trong nhiều ứng dụng, một nhà cung cấp muốn chia sẻ thông tin theo một số chính sách dựa trên các thông tin đặc trưng riêng của người dùng Được giới thiệu bởi Sahai và Waters, trong một hệ thống mã hóa dựa trên thuộc tính, mỗi người dùng có một thuộc tính riêng (ví dụ: thông tin), và nhà cung cấp sẽ cho phép giải mã tin nhắn nếu như một tính chất nào đó của thuộc tính được thoả mãn (ví dụ: một người dùng có thể giải mã một bức e-mail quan trọng, nếu như cô ấy là một người bạn và rất quan trọng với bạn) Có thể thấy nếu như tính chất đó được miêu tả bằng một cấu trúc truy cập mà có thể triển khai được bằng một lược đồ chia sẻ bí mật hiệu quả, thì tồn tại một hệ thống mã hóa hiệu quả dựa trên thuộc tính này

Lược đồ chia sẻ bí mật được giới thiệu bởi Blakley và Shamir cho trường hợp ngưỡng tức là: có thể tái tạo bí mật trong trường hợp số lượng các thành phần tham gia tái tạo bí mật đạt đến một ngưỡng nào đó Lược đồ chia

sẻ bí mật cho các cấu trúc truy cập chung được giới thiệu và xây dựng bởi Ito, Saito và Nishizeki Cụ thể hơn, Benaloh và Leichter chứng minh được rằng

nếu một cấu trúc truy cập có thể được miêu tả bằng một “công thức đơn điệu”

nhỏ, thì nó có một lược đồ chia sẻ bí mật hiệu quả hoàn hảo Karchmer và Wigderson khái quát lại thông tin này, rằng nếu cấu trúc truy cập của nó có

Ngày đăng: 30/08/2016, 16:28

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Phan Đình Diệu (2002), Lý thuyết mật mã và an toàn thông tin, NXB Đại học Quốc gia Hà Nội Sách, tạp chí
Tiêu đề: Lý thuyết mật mã và an toàn thông tin
Tác giả: Phan Đình Diệu
Nhà XB: NXB Đại học Quốc gia Hà Nội
Năm: 2002
[2] Dương Anh Đức (2008), Mã hóa và ứng dụng, NXB Đại học Quốc gia TPHCM Sách, tạp chí
Tiêu đề: Mã hóa và ứng dụng
Tác giả: Dương Anh Đức
Nhà XB: NXB Đại học Quốc gia TPHCM
Năm: 2008
[3] Phạm Huy Điển (2003), Mã hóa thông tin, NXB Đại học Quốc gia TPHCM Sách, tạp chí
Tiêu đề: Mã hóa thông tin
Tác giả: Phạm Huy Điển
Nhà XB: NXB Đại học Quốc gia TPHCM
Năm: 2003
[4] Phan Huy Khánh, Hồ Phan Hiếu (2009), tạp chí Khoa học và Công nghệ, giải pháp ứng dụng chữ kí điện tử trong quá trình gửi và nhận văn bản tập 34 (số 5) Sách, tạp chí
Tiêu đề: giải pháp ứng dụng chữ kí điện tử trong quá trình gửi và nhận văn bản tập
Tác giả: Phan Huy Khánh, Hồ Phan Hiếu
Năm: 2009
[5] Nguyễn Viết Kính (2007), Mã hóa, NXB Đại học Quốc gia Hà nội Tiếng Anh Sách, tạp chí
Tiêu đề: Mã hóa
Tác giả: Nguyễn Viết Kính
Nhà XB: NXB Đại học Quốc gia Hà nội Tiếng Anh
Năm: 2007
[6] Amos Beimel (2012), Secret – Shamring Schemes, A Survey, Department of Computer Science, Ben-Gurion University, Beer-Sheva, Israel Sách, tạp chí
Tiêu đề: Secret – Shamring Schemes, A Survey
Tác giả: Amos Beimel
Năm: 2012
[9] J. D. Cohen and M. J. Fischer,(1985), A robust and verifiable cryptographically secure election scheme. In FOCS ‟85, pages 372–382 Sách, tạp chí
Tiêu đề: A robust and verifiable cryptographically secure election scheme
Tác giả: J. D. Cohen and M. J. Fischer
Năm: 1985
[10] George Blakley and Adi Shamir (1979), Secret Sharing, Shafi Goldwasser, Silvio Micali and Baruch Awerbuch.Trang Web Sách, tạp chí
Tiêu đề: Secret Sharing
Tác giả: George Blakley and Adi Shamir
Năm: 1979
[11] Wikipedia, Chữ ký số [Trực tuyến]. Địa chỉ: https://vi.wikipedia.org/wiki/Chữ_ký_số Link

HÌNH ẢNH LIÊN QUAN

Ví dụ 1.1: Bảng nhân cho các phần tử của nhóm đối xứng: - Nghiên cứu một số lược đồ chia sẻ thông tin mật và ứng dụng (LV01870)
d ụ 1.1: Bảng nhân cho các phần tử của nhóm đối xứng: (Trang 10)
Hình 2.2. Hàm bậc 3 đi qua 6 điểm và 1 điểm bị lỗi. - Nghiên cứu một số lược đồ chia sẻ thông tin mật và ứng dụng (LV01870)
Hình 2.2. Hàm bậc 3 đi qua 6 điểm và 1 điểm bị lỗi (Trang 47)
Hình 2.1. Bảy điểm nằm trên hàm bậc 3 - Nghiên cứu một số lược đồ chia sẻ thông tin mật và ứng dụng (LV01870)
Hình 2.1. Bảy điểm nằm trên hàm bậc 3 (Trang 47)

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