Đề tài Giao thức thỏa thuận khóa Diffie - Hellman

16 642 0
Đề tài Giao thức thỏa thuận khóa Diffie - Hellman

Đ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

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN Bài tập lớn An toàn bảo mật thông tin Đề tài Giao thức thỏa thuận khóa Diffie - Hellman Giáo viên hướng dẫn: Th.S Trần Phương Nhung Nhóm sinh viên: Phạm Thị Yến Nguyễn Thị Nhâm Nguyễn Đình Triệu Lê Thanh Nghị Hà Nội, Tháng 11/2012 Giao thức thỏa thuận khóa Diffie Hellman Mục Lục MỤC LỤC PHÂN CÔNG CÔNG VIỆC LỜI MỞ ĐẦU CHƯƠNG I: GIỚI THIỆU VỀ GIAO THỨC DIFFIE - HELLMAN CHƯƠNG II: GIAO THỨC THỎA THUẬN KHÓA DIFFIE - HELLMAN KHÁI NIỆM THỎA THUẬN KHÓA GIAO THỨC THỎA THUẬN KHÓA DIFFIE - HELLMAN 2.1 Cách thiết lập giao thức thỏa thuận khóa Diffie - Hellman 2.2 Sơ đồ giao thức thỏa thuận khóa Diffie - Hellman 2.3 Ví dụ số minh họa 2.4 Mở rộng toán cho nhiều bên 2.5 Các đặc điểm đặc trưng giao thức thảo thuận khóa Diffie - Hellman 10 2.5.1 Giao thức an toàn việc công thụ động 10 2.5.2 Giao thức không an toàn việc công chủ động 12 2.6 Giao thức thỏa thuận khóa Diffie - Hellman có chứng xác nhận 13 TÀI LIỆU THAM KHẢO 15 Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Phân công công việc Stt Mã SV 0541060168 0541060137 0541060129 0541060165 Tên SV Nguyễn Thị Nhâm Lê Thanh Nghị Nội dung Tìm hiểu giao thức thỏa thuận khóa Diffie Hellman + Ví dụ số minh họa Viết chương trình thực giao thức Diffie - Hellman Trang- Nhận xét trang Tích cực hoạt động, - 10 nghiên cứu.Hoàn thành tốt nhiệm vụ Tìm hiểu đặc điểm đặc trưng giao Nguyễn Đình Triệu thức thỏa thuận 10 - 14 khóa Diffie Hellman Phạm Thị Yến Tìm hiểu giao thức thỏa thuận khóa - 10 Diffie Hellman + Ví dụ số họa Tích cực nghiên cứu Hoàn thành tốt nhiệm vụ Tích cực nghiên cứu Hoàn thàn tốt nhiệm vụ Tích cực nghiên cứu Hoàn thành tốt nhiệm vụ Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Lời mở đầu Trao đổi thông tin nhu cầu cần thiết người, đặc biệt sống đại ngày mà mạng máy tính Internet phát triển cách mạnh mẽ giữ vai trò quan trọng lĩnh vực đời sống xã hội như: trị, quân sự, học tập, mua sắm, kinh doanh,… Tất thông tin liên quan đến công việc máy vi tính quản lý truyền hệ thống mạng Đối với thông tin bình thường không đến, thông tin mang tính chất sống cá nhân hay tổ chức vấn đề bảo mật thông tin quan trọng đặt lên hàng đầu Chính nên nhiều tổ chức, cá nhân nghiên cứu, tìm kiếm đưa nhiều giải pháp bảo mật thông tin Trong giao thức Diffie - Hellman thích hợp truyền thông tin giữ liệu có tính bảo mật cao Báo cáo nhóm biên soạn dựa kiến thức lĩnh hội từ cô giáo Th.S Trần Phương Nhung, thông qua tìm hiểu, nghiên cứu tích cực thành viên nhóm.Báo cáo nhóm sâu sâu vào trình bày giao thức thỏa thuận khóa Diffie Hellman với nội dung chương chia thành chủ đề khác nhau, từ việc giới thiệu sơ bộ, trình bày khái niệm, cách thiết lập, sơ đồ ví dụ minh họa cụ thể giao thức thỏa thuận khóa Mặc dù nhóm cố gắng song không tránh khỏi số thiếu sót mong thầy cô bạn bè đóng góp ý kiến để nhóm hoàn thiện báo cáo Xin chân thành cảm ơn tới bạn bè, người thân góp ý, giúp đỡ nhóm Đặc biệt cảm ơn cô giáo Th.S Trần Phương Nhung người hướng dẫn nhóm hoàn thành báo mình! Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Chương I: Giới thiệu giao thức Diffie - Hellman Năm 1976, đột phá thay đổi tảng cách làm việc hệ thống mật mã hóa Đó việc công bố viết phương hướng mật mã học (New Directions in Cryptography) Whitfield Diffie Martin Hellman Bài viết giới thiệu phương pháp hoàn toàn cách thức phân phối khóa mật mã Là hệ thống sử dụng "public-key" khóa mật mã "không đối xứng", gọi trao đổi khóa Diffie-Hellman (Diffie-Hellman key exchange) Bài viết kích thích phát triển gần tức thời lớp thuật toán mật mã hóa mới, thuật toán chìa khóa bất đối xứng (asymmetric key algorithms) Trao đổi khóa Diffie-Hellman bị cáo buộc phát minh cách độc lập vài năm trước Trụ sở Truyền Thông Chính phủ Anh (GCHQ) Malcolm J Williamson) Vào năm 2002, Hellman đưa thuật toán gọi chung trao đổi khóa Diffie–Hellman–Merkle công nhận đóng góp Ralph Merkle, người phát minh thuật toán mã hóa công khai Trước thời kỳ này, hầu hết thuật toán mật mã hóa đại thuật toán khóa đối xứng (symmetric key algorithms), người gửi người nhận phải dùng chung khóa, tức khóa dùng thuật toán mật mã, hai người phải giữ bí mật khóa Tất máy điện dùng chiến II, kể mã Caesar mã Atbash, chất mà nói, kể hầu hết hệ thống mã dùng suốt trình lịch sử thuộc loại Đương nhiên, khóa mã sách mã (codebook), phải phân phối giữ gìn cách bí mật tương tự Do nhu cầu an ninh, khóa cho hệ thống thiết phải trao đổi bên giao thông liên lạc phương thức an toàn đấy, trước họ sử dụng hệ thống (thuật ngữ thường dùng 'thông qua kênh an toàn'), ví dụ việc sử dụng người đưa thư đáng tin cậy với cặp tài liệu khóa vào cổ tay cặp khóa tay, gặp gỡ mặt đối mặt, hay chim bồ câu đưa thư trung thành Vấn đề chưa xem dễ thực hiện, nhanh chóng trở nên việc gần quản lý số lượng người tham gia tăng lên, hay người ta không kênh an toàn để trao đổi khóa nữa, lúc họ phải liên tục thay đổi Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman chìa khóa-một thói quen nên thực làm việc với mật mã Cụ thể cặp truyền thông cần phải có khóa riêng nếu, theo thiết kế hệ thống mật mã, không người thứ ba nào, kể người người dùng, phép giải mã thông điệp Một hệ thống thuộc loại gọi hệ thống dùng chìa khóa mật, hệ thống mật mã hóa dùng khóa đối xứng Hệ thống trao đổi khóa Diffie-Hellman (cùng phiên nâng cấp hay biến thể nó) tạo điều kiện cho hoạt động hệ thống trở nên dễ dàng nhiều, đồng thời an toàn hơn, tất làm trước Mặc dù, thân thuật toán giao thức chọn khóa nặc danh (không cần thông qua xác thực) cung cấp sở cho giao thức xác thực khác hoàn hảo Phương thức tiếp nối sau Diffie – Hellman RSA, thể mã khóa công khai sử dụng thuật toán bất đối xứng Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Chương II: Giao thức thỏa thuận khóa Diffie - Hellman Khái niệm thỏa thuận khóa Thoả thuận khoá: việc trao đổi khoá chủ thể cộng đồng thiết lập cách tự hai người có nhu cầu trao đổi thông tin Giao thức thỏa thuận khóa Diffie - Hellman - Trao đổi khóa Diffie – Hellman thiết lập khóa chia sẻ bí mật sử dụng cho thông tin liên lạc bí mật cách trao đổi liệu thông qua mạng công cộng Đây mà số nhiều phương thức dùng để trao đổi khóa ngành mật mã học - Phương pháp không cần có can thiệp TA ( quan ủy thác) làm nhiệm vụ điều hành phân phối khóa - Phương pháp cho phép người sử dụng tạo khóa bí mật thông qua kênh truyền thông không đảm bảo độ bảo mật Khóa bí mật dùng để người sử dụng trao đổi thông tin với 2.1 Cách thiết lập giao thức thỏa thuận khóa Diffie - Hellman Tình huống: + Alice Bob muốn chia sẻ thông tin bảo mật cho phương tiện truyền thông họ không an toàn Tất thông tin mà họ trao đổi quan sát Eve kẻ thù họ + Làm để Alice Bob chia sẻ thông tin bảo mật cho mà không làm cho Eve biết được? + Thoạt nhìn ta thấy Alice Bob phải đối mặt với nhiệm vụ Giải tình trên: + Alice Bob đồng ý dùng chung nhóm cyclic hữu hạn G yếu tố tạo g G (Điều thường thực lâu trước phần lại giao thức, g giả định biết đến tất kẻ công) + Khi Alice Bob muốn truyền thông tin bảo mật cho thực theo giao thức sau để trao đổi: Alice chọn ngẫu nhiên số aA (0 ≤ aA ≤ p-2) bí mật, tính bA = g a mod p gửi bA cho Bob Tương tự, Bob chọn ngẫu nhiên số aB (0 ≤ aB ≤ p-2) bí mật, tính bB = g a mod p gửi bB cho Alice Alice tính khóa: K A = bBa mod p A B A Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Bob tính khóa: K B = bAa mod p B + Bây Alice Bob có khóa chung là: K A = K B = g a AaB mod p + Mô tả giao thức Diffie - Hellman bảng sau: Alice Bí mật aA aA aA aA, KA Công khai Tính toán Gửi p, g → a p, g, bA bA = g mod p bA→ ←bB p, g, bA, bB A Bob Tính toán Công khai p, g bB = g mod p p, g, bB p, g, bA, bB aB Bí mật aB aB aB aB, KB Chú ý có aA, aB KA, KB giữ bí mật Tất giá trị lại p, g, bA, bB công khai Một Alice Bob tính khóa bí mật dùng chung, họ dùng làm khóa mã hóa họ biết để gửi thông điệp qua kênh giao tiếp mở Đương nhiên, để đảm bảo an toàn, giá trị aA, aB p cần lấy lớn hơn, g không cần lấy giá trị lớn Thực tế g thường lấy giá trị 2.2 Sơ đồ giao thức thỏa thuận khóa Diffie - Hellman Sơ đồ minh họa phần ý tưởng chung Đầu tiên, Alice Bob thống màu sơn chung (màu vàng), Alice Bob trao đổi màu sắc trộn họ Cuối cùng, điều tạo màu bí mật giống hệt mà kẻ khác khả tạo giống Kể từ đây, Alice Bob trao đổi cách mã hóa giải mã sử dụng khóa bí mật (thể màu sơn bí mật cuối cùng) Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Hình 1: Sơ đồ giao thức thỏa thuận khóa Diffie - Hellman 2.3 Ví dụ số minh họa Alice Bob thống với chọn số nguyên tố p = 37 g = Alice chọn giá trị ngẫu nhiên aA = bí mật aA Alice tính bA = 57 mod 37 = 18 Sau Alice gửi bA = 18 cho Bob Bob chọn giá trị ngẫu nhiên aB = bí mật aB Bob tính bB = 55 mod 37 = 17 Sau Bob gửi bB = 17 cho Alice Bob nhận bA = 18 tính khóa chung: KB = 184 mod 37=15, bí mật KB Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Alice nhận bB =17 tính khóa chung: KA= 177 mod 37=15, bí mật KA 2.4 Mở rộng toán cho nhiều bên Thỏa thuận khóa Diffie-Hellman không giới hạn để thương lượng khóa dùng chung hai bên Bất số lượng người dùng tham gia vào thỏa thuận cách lặp giao thức thỏa thuận trao đổi liệu trung gian Ví dụ, Alice, Bob Carol tham gia vào thỏa thuận Diffie-Hellman sau (với tất phép toán lấy mod p): Các bên đồng ý với tham số giải thuật p g Các bên tự sinh khóa bí mật, đặt tên aA, aB ac Alice tính g a gửi cho Bob A Bob tính ( g a ) a = g a a gửi cho Carol A B Carol tính ( g a AaB A B ) a C = g aAaB aC dùng làm khóa bí mật Bob tính g a gửi cho Carol B Carol tính ( g a ) a = g a a gửi cho Alice B C B C Alice tính ( g a a ) a = g a a a = g a a a dùng làm khóa bí mật B C A B C A A B C Carol tính g a gửi cho Alice C 10 Alice tính ( g a ) a = g a a gửi cho Bob C A A C 11 Bob tính g a a a = g a a a = g a a a dùng làm khóa bí mật C A B C A B A B C Một kẻ nghe trộm biết g a , g a , g a , g a a , g a a , g a a kết hợp chúng để sinh lại g a a a Để mở rộng chế cho nhóm lớn cần phải tuân thủ nguyên tắc sau: • Bắt đầu với khóa “rỗng” gồm có g, khóa bí mật tạo cách tăng giá trị theo số mũ bí mật bên tham gia lần, theo thứ tự • Bất kỳ giá trị trung gian (số mũ lên tới tích N-1 số mũ, N số bên tham gia vào nhóm) bị công khai, giá trị cuối (khi N số mũ dùng) tạo thành khóa bí mật dùng chung phải tránh bị công khai Vì vậy, người dùng cần thu khóa mật cách sử dụng khóa mật họ lúc cuối (mặt khác, cách để bên tham gia cuối trao khóa cuối cho bên nhận nó, bên phải giữ bí mật khóa) A B C A B B C C A A B C Những nguyên tắc mở nhiều tùy chọn để xếp bên tham gia đóng góp tạo khóa Phương pháp đơn giản rõ ràng N bên tham gia vào vòng tròn có N khóa quay quanh vòng tròn này, khóa N bên đóng góp xây dựng (kết thúc với bên sở hữu nó) bên tham gia đóng góp vào N khóa (kết thúc với khóa họ) Tuy nhiên, điều yêu cầu bên phải tính N số mũ thành phần Bằng cách chọn thứ tự tối ưu hơn, phụ thuộc vào thực tế khóa Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman trùng lặp, giảm khối lượng tính toán số mũ bên log2(N) + sử dụng phương pháp Chia để trị, đề xuất sau bên: Các bên A, B, C D bên thực tính toán g a a a a , giá trị gửi cho E, F, G, H Ngược lại, họ nhận g a a a a Các bên A B bên tính g a a a a a a , gửi cho C D, C D làm việc tương tự gửi g a a a a a a cho A B Bên A tính toán g a a a a a a a gửi cho B, tương tự, B gửi lại g a a a a a a a cho A C D làm việc tương tự Bên A tính số mũ cuối thu g a a a a a a a a = g a a a a a a a a , B làm điều tương tự để nhận g a a a a a a a a = g a a a a a a a a C D làm điều tương tự Các bên từ E qua H đồng thời thực tính toán sử dụng gabcd làm điểm khởi đầu A B C D E F G H E F G H A B E F G H C D E F G H C D A E F G H D C B E F G H C D B A A B C D E F G H E F G H C D A B A B C D E F G H Sau hoàn thành thuật toán, tất bên tham gia sở hữu khóa mật g a a a a a a a a , bên phải tính toán lần số mũ thành phần, thay phải tính lần xếp vòng tròn đơn giản A B C D E F G H 2.5 Các đặc điểm đặc trưng giao thức thảo thuận khóa Diffie - Hellman 2.5.1 Giao thức an toàn việc công thụ động Giao thức an toàn việc công thụ động, nghĩa người thứ ba dù biết bA bB khó mà biết KA,B Xét ví dụ: Alice Bob thống với chọn số nguyên tố p = 17 g = 2 Alice chọn giá trị ngẫu nhiên aA = bí mật aA Alice tính bA = 26 mod 17 = 13 Sau Alice gửi bA = 13 cho Bob Bob chọn giá trị ngẫu nhiên aB = bí mật aB Bob tính bB = 29 mod 17 = Sau Bob gửi bB = cho Alice Bob nhận bA = 13 tính khóa chung: KB = 139 mod 17=13, bí mật KB Alice nhận bB = tính khóa chung: KA= 26 mod 17=13, bí mật KA Eve kẻ nghe trộm – cô ta theo dõi Alice Bob gửi cho thay đổi nội dung liên lạc Eve muốn tái thiết lại thông tin bảo mật mà Alice Bob chia sẻ cho Eve phải đối mặt với nhiệm vụ thực khó khăn Dưới biểu đồ giúp xác định biết giá trị (Eve kẻ nghe trộm.) 10 Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Alice Biết p = 17 Không biết aB = ? g=5 aA = bA = 26 mod 17 = 13 bB = aB mod17 = KA= 26 mod 17=13 K B = 13aB mod17 = 13 K A, B = mod17 = 13aB mod17 KA,B = 13 Bob Biết p = 17 g=2 aB = bB = 29 mod 17 = Không biết aA =? bA = a A mod17 = 13 KB = 139 mod 17=13 K A = a A mod17 = 13 K A, B = a A mod 17 = 13 mod 17 KA,B= 13 Eve Biết p = 17 g=2 bA = a A mod17 = 13 bB = aB mod17 = Không biết aA = ? aB =? KA,B = ? K A = a A mod17 K B = 13aB mod 17 K A, B = a A mod17 = 13aB mod17 11 Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Ta thấy Eve rơi vào tình tiến thoái lưỡng nam Cô biết giá trị bA, bB cô biết g a , g a Cô biết giá trị g p, lại giá trị aA, aB KA, B Đây toán Diffie - Hellman mà biết bA, bB tìm KA,B, toán tương đương với toán phá mã ElGammal Bây ta chứng minh điều - Phép mật mã ElGammal với khoá K = (p, g, a, β), β = ga mod p cho ta từ rõ x số ngẫu nhiên k ∈ Zp-1 lập mật mã eK(x, k) = (y1, y2) với y1 = gk mod p, y2 = xβk mod p Và phép giải mã cho y1 = gk mod p Giả sử ta có thuật toán A giải toán Diffie-Hellman Ta dùng A để phá mã ElGammal sau: • Cho mật mã (y1, y2) Trước tiên, dung A cho y1 = gk mod p β=ga mod p ta A(y1,B) = gka =βk mod p Sau đó, ta thu rõ x từ βkvà y2 sau: A B x = y2(βk)-1 mod p • Ngược lại, giả sử có thuật toán khác B dùng để phá mã ElGammal, tức B (p, g, β, y1, y2) = x = y2 (y1a)-1 mod p Áp dụng B cho β=bA , y1 = bB, y2 =1, ta B( p,α , bA , bB ,1) −1 = (1.(bBa ) −1 ) −1 = α a a mod p tức giải toán Diffie-Hellman Trên thực tế giá trị p, aA, aB lớn Nếu p số nguyên tố có 300 chữ số, aA aB có 100 chữ số chí thuật toán tốt biết đến giải biết g, p, bA, bB kể sử dụng tất khả tính toán nhân loại Bài toán biết đến với tên gọi toán logarit rời rạc Bài toán logarit rời rạc gây nhiều tranh cãi chưa có thuật giải cụ thể A A B 2.5.2 Giao thức không an toàn việc công chủ động Giao thức không an toàn việc công chủ động cách đánh tráo đường Nghĩa người thứ ba Eve đánh tráo thông tin trao đổi Alice Bob Chẳng hạn, Eve thay g a mà Alice định gửi cho Bob g a ' thay g a mà Bob định gửi cho Alice g a ' Như vậy, sau thực giao thức trao đổi khoá, Alice lập khoá chung g a a ' với Eve mà tưởng với Bob; đồng thời Bob lập khoá chung g a ' a với Eve mà tưởng với Alice Eve có A A B B A B A B 12 Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman thể giải mã thông báo mà Alice tưởng nhầm gửi đến Bob thông báo mà Bob tưởng nhầm gửi đến Alice Một cách khắc phục kiểu công để Alice Bob có kiểm thử để xác nhận tính đắn khoá công khai bAvà bB Người ta đưa vào giao thức trao đổi khoá Diffie-Hellman thêm vai trò điều phối TA để hệ phân phối khoá Diffie-Hellman cách khắc phục nhược điểm Trong hệ phân phối khoá Diffie-Hellman, can thiệp TA yếu, thực TA làm việc cấp chứng xác nhận khoá công khai cho người dùng không đòi hỏi biết thêm bí mật người dùng Tuy nhiên, chưa thoả mãn với vai trò hạn chế TA cho TA vai trò xác nhận yếu hơn, không liên quan đến khoá, chẳng hạn xác nhận thuật toán kiểm thử chữ ký người dùng, thân thông tin khoá (cả bí mật lẫn công khai) người dùng trao đổi trực tiếp với Với cách khắc phục có vai trò hạn chế TA, ta giao thức sau đây: 2.6 Giao thức thỏa thuận khóa Diffie - Hellman có chứng xác nhận Mỗi người dùng A có danh tính ID(A) sơ đồ chữ ký với thuật toán ký sigA thuật toán kiểm thử verA TA có vai trò xác nhận, xác nhận thông tin liên quan đến việc tạo khoá mật mã người dùng (dù khoá bí mật hay khoá công khai), mà xác nhận thông tin quan hệ khác thuật toán kiểm thử chữ ký người dùng Còn thân thông tin liên quan đến việc tạo khoá mật mã người dùng trao đổi trực tiếp với TA có sơ đồ chữ ký mình, gồm thuật toán ký sigTA thuật toán kiểm thử công khai verTA Chứng mà TA cấp cho người A là: C(A) = (ID(A), verA, sigTA (ID(A), verA )) Rõ ràng chứng TA không xác nhận điều liên quan đến việc tạo khoá A Cơ chế giao thức thỏa thuận khóa Diffie - Hellman có chứng xác nhận Việc trao đổi khoá hai người dùng A B thực theo giao thức sau đây: A chọn ngẫu nhiên số aA (0 ≤ aA(≤ p-2), tính bA = g a mod p gửi bA cho B B chọn ngẫu nhiên số aB (0 ≤ aB≤ p-2), tính bB = g a mod p , tính tiếp K = bAa mod p , yB = sig B (bA , bB ) gửi (C(Alice), bB, yB) cho A A tính K = bBa mod p dùng verB để kiểm thử yB , dùng verTA để kiểm thử C(B), sau tính yA= sigA(bA, bB ) gửi (C(A), yA) cho B A B B A 13 Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman B dùng verA để kiểm thử yA dùng verTA để kiểm thử C(A) Nếu tất bước thực phép kiểm thử cho kết đắn giao thức kết thúc, A B có khoá chung K Do việc dùng thuật toán kiểm thử nên A biết giá trị bB B B biết giá trị bA A, loại trừ khả người C khác đánh tráo giá trị đường 14 Nhóm : ĐHKHMT2-K5 Giao thức thỏa thuận khóa Diffie Hellman Tài liệu tham khảo Giáo trình an toàn bảo mật thông tin – Trường ĐH Hàng Hải Giáo trình an toàn bảo mật thông tin – Trường ĐH Giao Thông Vân Tải Whitfield Diffie, Martin E Hellman, “ New Directions in Cryptography”, IEEE transactions on information theory, Vol IT-22, No.6, November 1976 A Review of the Diffie-Hellman Algorithm and its Use in Secure Internet Protocols - David A Carts Diffie-Hellman Key Exchange – A Non-Mathematician’s Explanation http://www.packetsource.com/article/encryption/40070/diffie-hellman-keyexchange-a-non-mathematicians-explanation Discrete Logarithms and Diffie - Hellman http://www.math.brown.edu/~jhs/MathCrypto/SampleSections.pdf http://bytes.com/topic/c/answers/795749-storing-doing-modulus-long-doubles http://diendan.congdongcviet.com/showthread.php?t=48110 10 http://diendan.congdongcviet.com/showthread.php?t=4155 11 http://en.wikipedia.org/wiki/Primitive_root_modulo_n 12 http://vi.wikipedia.org/wiki/C%C4%83n_nguy%C3%AAn_th%E1%BB%A7y_ modulo_n 13 http://stackoverflow.com/questions/5656835/generator-gs-requirement-to-be-aprimitive-root- modulo-p-in-the-diffie-hellman?rq=1 14 Cryptography in C and C++ - Michael Welschenbach 2nd Edition (2005) 15 Primitive Roots - David Savtt 16 The Primitive Root Theorem - Philadelphia University 17 New Directions in Cryptography - Invited Paper - Whitfield Diffie and Martin E Hellman 18 A Review of the Diffie-Hellman Algorithm and its Use in Secure Internet Protocols - David A Carts 19 Video: Public Key Cryptography- Diffie-Hellman Key Exchange Primitive Root Calculator 20 Và số tài liệu trang web khác 15 Nhóm : ĐHKHMT2-K5

Ngày đăng: 06/11/2016, 00:18

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan