1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI TIỂU LUẬN AN NINH MẠNG VIỄN THÔNG Chuyên đề Giải thuật trao đổi khóa Diffie-Hellman

19 21 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Giải thuật trao đổi khóa Diffie-Hellman
Người hướng dẫn TS. Hoàng Trọng Minh
Trường học Học viện Công nghệ Bưu chính Viễn thông
Chuyên ngành An ninh mạng viễn thông
Thể loại Bài tiểu luận
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 19
Dung lượng 708,7 KB

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

Nội dung

Trao đổi khóa Diffie-Hellman là một trong những phát triển quan trọng nhất trong mật mã khóa công khai và nó vẫn được thực hiện thường xuyên trong một loạt các giao thức bảo mật khác nha

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA VIỄN THÔNG I

BÀI TIỂU LUẬN

AN NINH MẠNG VIỄN THÔNG

Chuyên đề: Giải thuật trao đổi khóa Diffie-Hellman

Nhóm 2

Giảng viên: TS HOÀNG TRỌNG MINH

Sinh viên : Phan Thế Hiệp – B18DCVT144

Dương Tú Kiên – B18DCVT224 Trần Mạnh Hùng – B18DCVT192 Nguyễn Anh Tú – B18DCVT368

Trang 2

Bảng phân công công việc

1 Dương Tú Kiên B18DCVT224 Làm nội dung chương1

2 Phan Thế Hiệp B18DCVT144 Làm nội dung chương 2 gồm có:

• Thiết lập khóa và mã hóa

• Mở rộng bài toán ra nhiều bên

• Làm bản word

3 Trần Mạnh Hùng B18DCVT192 Làm nội dung chương 2 gồm có:

• Giải mã

• Ưu nhược điểm của giải thuật

4 Nguyễn Anh Tú B18DCVT368 Làm nội dung chương 3 và làm

power point

Trang 3

MỤC LỤC

MỤC LỤC 2

BẢNG THUẬT NGỮ VIẾT TẮT 2

Chương 1: Tổng quan về trao đổi khóa Diffie–Hellman 4

1.1: Giới thiệu 4

1.2: Ý tưởng cơ bản 4

1.3: Các vấn đề 6

1.4: Ưu nhược điểm của giải thuật trao đổi khóa Diffie-Hellman 7

Chương 2: Mô tả giao thức 8

2.1: Thiết lập khóa và mã hóa 8

2.2: Mở rộng bài toán ra nhiều bên .10

2.2.1: Nguyên tắc cơ bản .10

2.2.2: Các phương pháp 11

2.3: Giải mã 12

Chương 3: Phân tích tính bảo mật của giải thuật 14

3.1: Kiểu tấn công “Người ở giữa” 14

3.2: Bảo mật 16

KẾT LUẬN 17

TÀI LIỆU THAM KHẢO 18

BẢNG THUẬT NGỮ VIẾT TẮT

LAN Local Area Network Mạng máy tính cục bộ

Trang 4

LỜI MỞ ĐẦU

An toàn thông tin là nhu cầu rất quan trọng đối với cá nhân cũng như đối với

xã hội và các quốc gia trên thế giới Mạng máy tính an toàn thông tin được tiến hành thông qua các phương tiện vật lý và hành chính Từ khi ra đời cho đến nay, mạng máy tính đã đem lại hiệu quả vô cùng to lớn trong tất cả các lĩnh vực của đời sống Bên cạnh đó người dùng cũng phải đối mặt với các hiểm họa do thông tin trên mạng của họ bị tấn công.An toàn thông tin trên mạng máy tính bao gồm các phương pháp bảo vệ thông tin được lưu giữ và truyền trên mạng Đây là một lĩnh vực đang được quan tâm đặc biệt đồng thời cũng là một công việc hết sức khó khăn và phức tạp.Thưc tế đã chúng tỏ rằng có 1 tình trạng rất đang lo ngại khi bị tấn công thông tin trong quá trình xử lý , truyền và lưu trữ Những tác động bất hợp pháp lên thông tin với mục đích làm tổn thất, sai lạc , lấy cắp các tệp lưu giữ tin , sao chép các thông tin mật , giả mạo người được phép sử dụng thông tin trong các mạng máy tính hiện nay

Trao đổi khóa Diffie-Hellman là một trong những phát triển quan trọng nhất trong mật mã khóa công khai và nó vẫn được thực hiện thường xuyên trong một loạt các giao thức bảo mật khác nhau ngày nay Nó cho phép hai bên trước đây chưa gặp nhau thiết lập một cách an toàn một khóa mà họ có thể sử dụng để bảo mật thông tin liên lạc của họ

Do kiến thức và kinh nghiệm thực tế còn rất nhiều hạn chế nên bài tiểu luận này không tránh khỏi những sai sót và nhầm lẫn Nhóm 2 chúng em rất mong được

sự châm trước và đóng góp ý kiến cả thày để không những bài tiểu luận này có chất lượng cao mà còn trang bị cho nhóm chúng em kiến thức vững vàng hơn trong học tập và làm việc sau này

Chúng em xin chân thành cảm ơn!

Trang 5

Chương 1: Tổng quan về trao đổi khóa Diffie–Hellman

1.1: Giới thiệu

Trao đổi khóa Diffie–Hellman (D-H) là một phương pháp trao đổi khóa được phát minh sớm nhất trong mật mã học Phương pháp trao đổi khóa Diffie–Hellman cho phép hai bên (người, thực thể giao tiếp) thiết lập một khóa bí mật chung để mã hóa dữ liệu sử dụng trên kênh truyền thông không an toàn mà không cần có sự thỏa thuận trước về khóa bí mật giữa hai bên Khóa bí mật tạo ra sẽ được sử dụng để mã hóa dữ liệu với phương pháp mã hóa khóa đối xứng Giao thức này được công bố đầu tiên bởi Whitfield Diffie và Martin Hellman vào năm 1976, dù rằng trước đó vài năm nó đã được phát minh một cách độc lập trong GCHQ - cơ quan tình báo Anh, bởi James H.Ellis, Clifford Cocks và Malcolm J Williamson nhưng được giữ bí mật Năm 2002, Hellman đề xuất thuật toán nên được gọi là trao đổi khóa Diffie– Hellman–Merkle để ghi nhận sự đóng góp của Ralph Merkle trong phát minh lĩnh vực mật mã hóa khóa công khai (Hellman, 2002)

Năm 2002, Martin Hellman viết: “Hệ thống này cho tới nay được biết đến với tên gọi Trao đổi khóa Diffie–Hellman Khi hệ thống lần đầu tiên được mô tả trong bài báo của Diffie và tôi, đó là một hệ thống phân phối khóa công khai, một khái niệm nêu ra bởi Merkle, vì vậy nó nên được gọi là Trao đổi khóa 'Diffie–Hellman– Merkle' nếu chúng ta cần một cái tên cho nó Tôi hy vọng rằng phát biểu của tôi sẽ giúp mọi người ghi nhận sự đóng góp tương xứng của Merkle trong phát minh lĩnh vực mật mã hóa khóa công khai.”

1.2: Ý tưởng cơ bản

Diffie–Hellman thiết lập bí mật chung để sử dụng cho trao đổi dữ liệu an toàn trên một kênh truyền thông công cộng không an toàn Sơ đồ sau đây minh họa ý tưởng cơ bản của việc trao đổi khóa thông qua ví dụ về màu sơn Điểm chủ chốt của

ý tưởng này là Alice và Bob trao đổi màu sơn bí mật thông qua hỗn hợp sơn

• Đầu tiên Alice và Bob trộn màu đã biết chung (màu vàng) với màu bí mật riêng của mỗi người

• Sau đó, mỗi người chuyển hỗn hợp của mình tới người kia thông qua một kênh vận chuyển công cộng

• Khi nhận được hỗn hợp của người kia, mỗi người sẽ trộn thêm với màu bí mật của riêng mình và nhận được hỗn hợp cuối cùng

Hỗn hợp sơn cuối cùng là hoàn toàn giống nhau cho cả hai người và chỉ có riêng hai người biết Mấu chốt ở đây là đối với một người ngoài sẽ rất khó (về mặt tính

Trang 6

toán) cho họ để tìm ra được bí mật chung của hai người (nghĩa là hỗn hợp cuối cùng) Alice và Bob sẽ sử dụng bí mật chung này để mã hóa và giải mã dữ liệu truyền trên kênh công cộng Lưu ý, màu sơn đầu tiên (màu vàng) có thể tùy ý lựa chọn, nhưng được thỏa thuận trước giữa Alice và Bob Màu sơn này cũng có thể được giả sử là không bí mật đối với người thứ ba mà không làm lộ bí mật chung cuối cùng của Alice và Bob

Giao thức được diễn giải dưới dạng toán học như sau: Giao thức sử dụng nhóm

nhân số nguyên modulo p, trong đó p số nguyên tố, và g là căn nguyên thủy mod p

Trong ví dụ dưới đây, giá trị không bí mật được viết bằng màu xanh, và giá trị bí mật viết bằng màu đỏ:

1 Alice và Bob thỏa thuận sử dụng chung một số nguyên tố p=23 và căn

nguyên thủy g=5

2 Alice chọn một số nguyên bí mật a=6, và gửi cho Bob giá trị A = g a mod p

• A = 56 mod 23

• A = 15,625 mod 23

• A = 8

3 Bob chọn một số nguyên bí mật b=15, và gửi cho Alice giá trị B = g b mod p

• B = 515 mod 23

• B = 30,517,578,125 mod 23

• B = 19

Trang 7

4 Alice tính s = B a mod p

• s = 196 mod 23

• s = 47,045,881 mod 23

• s = 2

5 Bob tính s = A b mod p

• s = 815 mod 23

• s = 35,184,372,088,832 mod 23

• s = 2

6 Như vậy Alice và Bob cùng chia sẻ bí mật chung là số 2 vì 6*15 cũng

bằng 15*6

1.3: Các vấn đề

Trong thế giới thực, trao đổi khóa Diffie-Hellman hiếm khi được sử dụng bởi chính nó Lý do chính đằng sau điều này là nó không cung cấp xác thực, khiến người dùng dễ bị tấn công giữa chừng Những cuộc tấn công này có thể diễn ra khi trao đổi khóa Diffie-Hellman được thực hiện bởi chính nó, bởi vì nó không có phương tiện

để xác minh chuẩn xác đối phương Không có bất kì hình thức xác thực, người dùng thực sự có thể đang kết nối với kẻ đang tấn công khi họ nghĩ rằng họ đang liên hệ với một bên đáng tin cậy Vì lý do này, việc trao đổi khóa Diffie-Hellman thường được thực hiện cùng với một số phương tiện xác thực Điều này thường liên quan đến việc sử dụng chứng chỉ kỹ thuật số và thuật toán khóa công khai, chẳng hạn như RSA, để xác minh danh tính của mỗi bên

• Vấn đề bảo mật của trao đổi khóa Diffie-Hellman

Tính bảo mật của trao đổi khóa Diffie-Hellman phụ thuộc vào cách thức triển khai, cũng như các số được chọn cho nó Như đã trình bày ở trên, nó không có cách nào để xác thực bên kia, nhưng trong thực tế, các cơ chế khác được sử dụng để đảm bảo rằng bên kia trong kết nối không phải là kẻ mạo danh Nếu việc triển khai trao đổi khóa Diffie-Hellman trong thế giới thực sử dụng những con số nhỏ như trong ví

dụ đưa ra, nó sẽ khiến quá trình trao đổi trở nên tầm thường đối với kẻ tấn công bị

bẻ khóa Nhưng nó không chỉ là kích thước của những con số quan trọng – những con số cũng cần phải đủ ngẫu nhiên Nếu một trình tạo số ngẫu nhiên tạo ra một đầu

Trang 8

ra có thể dự đoán được, nó hoàn toàn có thể làm suy yếu tính bảo mật của trao đổi khóa Diffie-Hellman

1.4: Ưu nhược điểm của giải thuật trao đổi khóa Diffie-Hellman

• Ưu điểm:

1 Các khóa bí mật chỉ được tạo khi cần thiết Không cần phải chứa các khóa bí mật trong một khoảng thời gian dài

2 Việc thỏa thuận dựa trên các tham số chung

• Nhược điểm

1 Nó không cung cấp thông tin bất kỳ về các định danh của các bên

2 Nó an toàn đối với việc tấn công thụ động nghĩa là một người thứ ba biết Ya,

Yb sẽ không tính được K Tuy nhiên giao thức là không an toàn đối với việc tấn công chủ động bằng cách đánh tráo giữa đường hay còn gọi là kiểu tấn công “Người đàn ông ở giữa"

3 Thuật toán không thể bị kiện cho bất kỳ trao đổi khóa bất đối xứng nào

4 Tương tự như vậy, nó không thể được sử dụng để ký chữ ký số

Vì nó không xác thực bất kỳ bên nào trong việc truyền tải, trao đổi chìa khóa Diffie Hellman dễ bị tấn công

Trang 9

Chương 2: Mô tả giao thức

2.1: Thiết lập khóa và mã hóa

Giả sử A (Alice) và B (Bob) là các bên muốn liên kết với nhau để tạo 1 khóa

bí mật chung A và B cùng thống nhất chọn p là số nguyên tố đủ lớn để bài toán logarit rời rạc – DLP (Discrete Logarithm Problem) khó giải và g ∈ 𝑍𝑝 là phần tử nguyên thủy của nhóm Khi đó sơ đồ thỏa thuận giữa A và B bao gồm các bước thực hiện như sau:

1 A chọn tham số mật cho mình là 𝑘𝐴, với 1< 𝑘𝐴< p −1

2 A tính 𝑟𝐴= 𝑔𝑘𝐴 mod p và gửi 𝑟𝐴 cho B

3 B chọn tham số mật cho mình là 𝑘𝐵, với 1< 𝑘𝐵< p −1

4 B tính 𝑟𝐵= 𝑔𝑘𝐵 mod p và gửi 𝑟𝐵 cho A

5 A tính khóa bí mật dùng chung: 𝐾𝐴𝐵 = (𝑟𝐵)𝑘𝐴 mod p và : 𝐾𝐵𝐴 = (𝑟𝐴)𝑘𝐵 mod

p

Ta dễ dàng thấy rằng: 𝐾𝐴𝐵= 𝐾𝐵𝐴 = 𝑔𝑘𝐴 𝑘𝐵 mod p Như vậy, A và B đã thiết lập được 1 khóa bí mật chung: K= 𝐾𝐴𝐵= 𝐾𝐵𝐴 Khóa K là bí mật vì ngoài A và B thì không một người thứ 3 nào có thể tính được K nếu không giải được bài toán logarit rời rạc Tuy nhiên, chúng ta sẽ thấy rằng sơ đồ phân phối theo Diffie-Hellman dễ bị tấn công bởi kẻ thứ 3 C (Cover) nào đó Theo dõi quá trình trao đổi khóa của A và B,C có thể mạo danh A để thiết lập 1 khóa chung với B và ngược lại, cụ thể:

• Trong sơ đồ Diffie-Hellman khi A chuyển 𝑟𝐴= 𝑔𝑘𝐴 mod p cho B thì bị C chặn lại và chuyển cho B giá trị 𝑟′𝐴 = 𝑔𝑘𝐴′mod p Tương tự, khi B chuyển 𝑟𝐵= 𝑔𝑘𝐵

mod p cho A thì C cũng chặn giá trị này lại và chuyển cho A giá trị 𝑟′𝐵=

𝑔𝑘𝐵′ mod p Kết quả A tính ra khóa là: 𝐾′𝐴𝐵 = (𝑟′𝐵)𝑘𝐴 mod p = 𝑔𝑘′𝐴 𝑘𝐵 mod

p, còn B tính ra khóa của mình là 𝐾′𝐵𝐴 = (𝑟′𝐴)𝑘𝐵 = 𝑔𝑘′𝐵 𝑘𝐴 mod p

Hiển nhiên là 𝐾′𝐴𝐵 ≠ 𝐾′𝐵𝐴, nên A và B không thể trao đổi thông tin mật với nhau Nhưng vấn đề là, với giá trị 𝑟𝐴= 𝑔𝑘𝐴 mod p mà C lấy được từ A, C tạo được khóa chung với A: 𝐾𝐶𝐴 = (𝑟′𝐴)𝑘𝐵 = 𝑔𝑘′𝐵 𝑘𝐴 mod p Rõ ràng là 𝐾′𝐵𝐴 = 𝐾𝐶𝐴 = 𝑔𝑘′𝐵 𝑘𝐴

mod p nên nếu A không biết điều đó và sử dụng khóa 𝐾′𝐴𝐵 để mã một bản tin M rồi gửi cho B qua kênh công khai mà C có thể lấy được thì C hoàn toàn có thể sử dụng

Trang 10

khóa KCA của mình để giải mã bản tin này Hoàn toàn tương tự, C cũng có thể tạo khóa chung 𝐾𝐶𝐵 với B từ giá trị 𝑟𝐵=𝑔𝑘𝐵 mod p mà B gửi cho A: 𝐾𝐶𝐵 = (𝑟𝐵)𝑘′𝐴 mod

p =𝑔𝑘′𝐴 𝑘𝐵 mod p, và C có thể sử dụng khóa này để giải mã mọi bản tin mà B mã hóa bằng khóa 𝐾′𝐶𝐵 khi trao đổi bí mật với A

Vậy nên ta có thủ tục thiết lập khóa chung giữa 2 đối tượng A và B bao gồm các bước thực hiện như sau:

1 Alice và Bob thỏa thuận sử dụng chung một nhóm cyclic hữu hạn G và một phần tử sinh 𝑔𝑘 của G Phần tử sinh g công khai với tất cả mọi người, kể cả

kẻ tấn công Dưới đây chúng ta giả sử nhóm G là nhóm nhân

2 Alice chọn một số tự nhiên ngẫu nhiên 𝑘𝐴 và gửi 𝑔𝑘𝐴 mod p cho Bob

3 Bob chọn một số tự nhiên ngẫu nhiên 𝑘𝐵và gửi 𝑔𝑘𝐵 mod p cho Alice

4 Alice tính (𝑔𝑘𝐵) 𝑘𝐴 mod p

5 Bob tính (𝑔𝑘𝐴) 𝑘𝐵 mod p

Vì giá trị (𝑔𝑘𝐵) 𝑘𝐴 và (𝑔𝑘𝐴) 𝑘𝐵 là bằng nhau (do nhóm G có tính kết hợp), cả Alice và Bob đều tính được giá trị 𝑔𝑘𝐴.𝑘𝐵và có thể sử dụng nó cho khóa bí mật chung

• Ví dụ minh họa:

1 Alice và Bob thống nhất với nhau chọn nguyên tố p = 37 và g = 5

2 Alice chọn một giá trị ngẫu nhiên bất kì 𝑘𝐴 = 7 và bí mật 𝑘𝐴

Alice tính 𝑏𝐴 = 57 mod 37 = 18

Sau đó Alice tính gửi 𝑏𝐴 = 18 cho Bob

3 Bob chọn một giá trị ngẫu nhiên bất kì 𝑘𝐵= 5 và bí mật 𝑎𝐵

Bob tính 𝑏𝐵 = 55 mod 37 = 17

Sau đó Bob gửi 𝑏𝐵 = 17 cho Alice

4 Bob nhận được 𝑏𝐴 = 18 và tính khóa chung: 𝐾𝐵 = 185 mod 37 = 15 và

bí mật 𝐾𝐵

Trang 11

5 Alice nhận được 𝑏𝐵 = 17 và tính khóa chung: 𝐾𝐴 = 177 mod 37 = 15 và

bí mật 𝐾𝐴

2.2: Mở rộng bài toán ra nhiều bên

2.2.1: Nguyên tắc cơ bản

Giao thức Diffie-Hellman không giới hạn việc thỏa thuận khóa chỉ cho hai bên tham gia Bất kỳ số lượng người sử dụng nào cũng có thể tham gia vào giao thức

để tạo khóa bí mật chung bằng cách thực hiện lặp lại các bước trao đổi thông tin và tính toán trong giao thức

Trước tiên xét ví dụ Alice, Bob và Carol cùng tham gia giao thức Diffie-Hellman như sau (tất cả tính toán dưới đây dựa trên modulo p):

1 Các bên thỏa thuận trước về các tham số p và g

2 Mỗi bên tự tạo khóa riêng tư, gọi tên là 𝑘𝐴, 𝑘𝐵, 𝑘𝐶

3 Alice tính 𝑔𝑘𝐴 mod p và gửi cho Bob

4 Bob tính (𝑔𝑘𝐴)𝑘𝐵 mod p = 𝑔𝑘𝐴.𝑘𝐵 mod p và gửi cho Carol

5 Carol tính (𝑔𝑘𝐴 𝑘𝐵)𝑘𝐶 mod p = 𝑔𝑘𝐴 𝑘𝐵.𝑘𝐶 mod p và sử dụng giá trị đó làm khóa

bí mật chia sẻ

6 Bob tính 𝑔𝑘𝐵 mod p và gửi cho Carol

7 Carol tính (𝑔𝑘𝐵)𝑘𝐶 mod p = 𝑔𝑘𝐵 𝑘𝐶 mod p và gửi cho Alice

8 Alice tính (𝑔𝑘𝐵.𝑘𝐶)𝑘𝐴 mod p = 𝑔𝑘𝐴.𝑘𝐵.𝑘𝐶 mod p và sử dụng giá trị đó làm khóa

bí mật chia sẻ

9 Carol tính 𝑔𝑘𝐶 mod p và gửi cho Alice

10 Alice tính (𝑔𝑘𝐶)𝑘𝐴 mod p = 𝑔𝑘𝐴 𝑘𝐶 mod p và gửi cho Bob

11 Bob tính (𝑔𝑘𝐴 𝑘𝐶)𝑘𝐵 mod p = 𝑔𝑘𝐴 𝑘𝐵.𝑘𝐶 mod p và sử dụng giá trị đó làm khóa

bí mật chia sẻ

Một kẻ nghe lén có thể quan sát được 𝑔𝑘𝐴 mod p, 𝑔𝑘𝐵 mod p, 𝑔𝑘𝐶 mod p, nhưng không thể tận dụng được bất cứ tổ hợp nào của những giá trị này để tính ra được 𝑔𝑘𝐴.𝑘𝐵.𝑘𝐶 mod p

Trang 12

Cơ chế này có thể được mở rộng cho N người dựa vào hai nguyên tắc cơ bản sau:

• Bắt đầu giao thức với một khóa "rỗng" chỉ chứa g Bí mật mỗi bên được tạo

ra bằng cách tính lũy thừa của giá trị hiện tại lưu tại mỗi bên với phần riêng

tư của mỗi bên (lũy thừa của lượt đầu tiên chính là khóa công khai của mỗi bên) Nguyên tắc này có thể được thực hiện theo bất kỳ thứ tự nào

• Bất kỳ giá trị tạm thời nào (với số lượt tính từ N-1 trở xuống, trong đó N là số lượng người trong nhóm) đều có thể truyền công khai, ngoại trừ giá trị cuối cùng (đã tính hết N lượt lũy thừa) sẽ tạo thành bí mật chia sẻ (vì vậy không được để lộ giá trị của lượt cuối cùng) Do đó, mỗi người phải tính bí mật chia

sẻ chung bằng cách áp dụng khóa riêng tư của mình sau cùng (nếu không sẽ không có cách nào cho người cuối cùng truyền được khóa cuối cùng cho người nhận, vì người cuối cùng sẽ biến khóa đó thành khóa bí mật mà cả nhóm muốn bảo vệ)

2.2.2: Các phương pháp

1 Phương pháp vòng tròn

Các nguyên tắc trên cho phép thực hiện theo bất kỳ thứ tự nào giữa những người tham gia Cách đơn giản và dễ hiểu nhất có lẽ là sắp xếp N người tham gia theo vòng tròn và chuyển N khóa theo vòng tròn cho tới khi mỗi khóa được chuyển tới tất cả N người tham gia (kết thúc với người sở hữu khóa đó) và mỗi người đã đóng góp phần của mình trong N khóa đó (kết thúc với khóa của riêng mỗi người) Cách này yêu cầu mỗi người thực hiện N phép tính modulo lũy thừa

2 Phương pháp chia để trị

Có thể thấy rằng trong quá trình tính toán các khóa có thể bị tính trùng lặp bởi các bên tham gia Như vậy một thứ tự tốt khác có thể giúp ta giảm số lượng phép tính modulo lũy thừa tính bởi mỗi người tham gia xuống Cụ thể, số lượng phép tính lũy thừa có thể giảm xuống còn log2𝑁+1 bằng cách sử dụng kiểu phương pháp chia

để trị Ví dụ sau minh họa phương pháp này cho 8 người:

1 Mỗi người A, B, C, và D thực hiện một phép tính lũy thừa để tính 𝑔𝑘𝐴 𝑘𝐵.𝑘𝐶.𝑘𝐷

mod p; giá trị này được gửi đến E, F, G, và H Ngược lại A, B, C, và D nhận

𝑔𝑘𝐸.𝑘𝐹.𝑘𝐺.𝑘𝐻 mod p;

Ngày đăng: 15/09/2022, 08:15

TỪ KHÓA LIÊN QUAN

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