Đề tài: Giao thức thỏa thuận khóa Diffie - Hellman
lượt xem 32
download
Chương 1 giới thiệu về giao thức Diffie - Hellman, chương 2 giao thức thỏa thuận khóa Diffie - Hellman là những nội dung chính thuộc 2 chương của đề tài "Giao thức thỏa thuận khóa Diffie - Hellman". Mời các bạn cùng tham khảo để nắm bắt nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Đề tài: Giao thức thỏa thuận khóa Diffie - Hellman
- 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: 1. Phạm Thị Yến 2. Nguyễn Thị Nhâm 3. Nguyễn Đình Triệu 4. Lê Thanh Nghị
- Giao thức thỏa thuận khóa Diffie Hellman Hà Nội, Tháng 11/2012 Mục Lục Phân công công việc 2Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman Stt Mã SV Tên SV Nội dung Trang Nhận xét trang Tìm hiểu về Tích cực giao thức thỏa hoạt động, 1 0541060168 Nguyễn Thị Nhâm thuận khóa 4 10 và nghiên Diffie cứu.Hoàn Hellman + Ví thành tốt dụ bằng số nhiệm vụ minh họa Viết chương Tích cực trình thực hiện nghiên cứu. 2 0541060137 Lê Thanh Nghị giao thức Diffie Hoàn thành Hellman tốt nhiệm vụ Tìm hiểu các Tích cực đặc điểm đặc nghiên cứu. trưng của giao Hoàn thàn 3 0541060129 Nguyễn Đình thức thỏa thuận 10 14 tốt nhiệm Triệu khóa Diffie vụ Hellman Tìm hiểu về Tích cực giao thức thỏa nghiên cứu. 4 0541060165 Phạm Thị Yến thuận khóa 4 10 Hoàn thành Diffie tốt nhiệm Hellman + Ví vụ. dụ bằng số min họa 3Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman Lời mở đầu Trao đổi thông tin luôn là nhu cầu cần thiết của con người, đặc biệt là trong cuộc sống hiện đại ngày nay khi mà mạng máy tính và Internet phát triển một cách mạnh mẽ và giữ vai trò quan trọng trong mọi lĩnh vực của đời sống xã hội như: chính trị, quân sự, học tập, mua sắm, kinh doanh,… Tất cả những thông tin liên quan đến những công việc này đều được máy vi tính quản lý và truyền đi trên hệ thống mạng. Đối với những thông tin bình thường thì không ai chú đến, nhưng đối với những thông tin mang tính chất sống còn đối với một cá nhân hay một tổ chức thì vấn đề bảo mật thông tin là rất quan trọng và được đặt lên hàng đầu. Chính vì vậy nên rất nhiều tổ chức, cá nhân đã nghiên cứu, tìm kiếm và đưa ra rất nhiều giải pháp bảo mật thông tin. Trong đó giao thức Diffie Hellman rất thích hợp trong truyền thông tin giữ liệu và có tính bảo mật khá cao. Báo cáo này do nhóm biên soạn dựa trên những kiến thức lĩnh hội được từ cô giáo Th.S. Trần Phương Nhung, và thông qua sự tìm hiểu, nghiên cứu tích cực của các thành viên trong nhóm.Báo cáo của nhóm đi sâu về đi sâu vào trình bày giao thức thỏa thuận khóa Diffie Hellman với nội dung 3 chương được chia thành các 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à các ví dụ minh họa cụ thể về giao thức thỏa thuận khóa. Mặc dù nhóm đã rất cố gắng song vẫn không tránh khỏi một số thiếu sót mong thầy cô và bạn bè đóng góp ý kiến để nhóm hoàn thiện hơn báo cáo này. 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 của mình! 4Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman Chương I: Giới thiệu về giao thức Diffie Hellman Năm 1976, một sự đột phá đã thay đổi nền tảng cơ bản trong cách làm việc của các hệ thống mật mã hóa. Đó chính là việc công bố của bài viết phương hướng mới trong mật mã học (New Directions in Cryptography) của Whitfield Diffie và Martin Hellman. Bài viết giới thiệu một phương pháp hoàn toàn mới về cách thức phân phối các khóa mật mã. Là hệ thống đầu tiên sử dụng "publickey" hoặc các khóa mật mã "không đối xứng", và nó được gọi là trao đổi khóa DiffieHellman (DiffieHellman key exchange). Bài viết còn kích thích sự phát triển gần như tức thời của một lớp các thuật toán mật mã hóa mới, các thuật toán chìa khóa bất đối xứng (asymmetric key algorithms). Trao đổi khóa DiffieHellman bị cáo buộc rằng nó đã được phát minh ra một cách độc lập một vài năm trước đó trong Trụ sở Truyền Thông Chính phủ Anh (GCHQ) bởi Malcolm J. Williamson). Vào năm 2002, Hellman đã đưa ra thuật toán được gọi chung là trao đổi khóa Diffie–Hellman–Merkle công nhận sự đóng góp của cả Ralph Merkle, người đã phát minh ra thuật toán mã hóa công khai. Trước thời kỳ này, hầu hết các thuật toán mật mã hóa hiện đại đều là những thuật toán khóa đối xứng (symmetric key algorithms), trong đó cả người gửi và người nhận phải dùng chung một khóa, tức khóa dùng trong thuật toán mật mã, và cả hai người đều phải giữ bí mật về khóa này. Tất cả các máy điện cơ dùng trong thế chiến II, kể cả mã Caesar và mã Atbash, và về bản chất mà nói, kể cả hầu hết các hệ thống mã được dùng trong suốt quá trình lịch sử nữa đều thuộc về loại này. Đương nhiên, khóa của một mã chính là sách mã (codebook), và là cái cũng phải được phân phối và giữ gìn một cách bí mật tương tự. Do nhu cầu an ninh, khóa cho mỗi một hệ thống như vậy nhất thiết phải được trao đổi giữa các bên giao thông liên lạc bằng một phương thức an toàn nào đấy, trước khi họ sử dụng hệ thống (thuật ngữ thường được dùng là 'thông qua một kênh an toàn'), ví dụ như bằng việc sử dụng một người đưa thư đáng tin cậy với một cặp tài liệu được khóa vào cổ tay bằng một cặp khóa tay, hoặc bằng cuộc gặp gỡ mặt đối mặt, hay bằng một con chim bồ câu đưa thư trung 5Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman thành... Vấn đề này chưa bao giờ được xem là dễ thực hiện, và nó nhanh chóng trở nên một việc gần như không thể quản lý được khi số lượng người tham gia tăng lên, hay khi người ta không còn các kênh an toàn để trao đổi khóa nữa, hoặc lúc họ phải liên tục thay đổi các chìa khóamột thói quen nên thực hiện trong khi làm việc với mật mã. Cụ thể là mỗi một cặp truyền thông cần phải có một khóa riêng nếu, theo như thiết kế của hệ thống mật mã, không một người thứ ba nào, kể cả khi người ấy là một người dùng, được phép giải mã các thông điệp. Một hệ thống thuộc loại này được gọi là một hệ thống dùng chìa khóa mật, hoặc một hệ thống mật mã hóa dùng khóa đối xứng. Hệ thống trao đổi khóa DiffieHellman (cùng những phiên bản được nâng cấp kế tiếp hay các biến thể của nó) tạo điều kiện cho các hoạt động này trong các hệ thống trở nên dễ dàng hơn rất nhiều, đồng thời cũng an toàn hơn, hơn tất cả những gì có thể làm trước đây. Mặc dù, bản thân thuật toán là một giao thức chọn khóa nặc danh (không cần thông qua xác thực) nhưng nó đã cung cấp ra một cơ sở cho các giao thức xác thực khác nhau khá hoàn hảo. Phương thức tiếp nối ngay sau Diffie – Hellman là RSA, một thể hiện của mã khóa công khai sử dụng thuật toán bất đối xứng. 6Nhóm 7 : ĐHKHMT2K5
- 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 1. Khái niệm thỏa thuận khóa. Thoả thuận khoá: viêc trao đôi khoa gi ̣ ̉ ́ ữa cac chu thê trong môt công đông nao ́ ̉ ̉ ̣ ̣ ̀ ̀ ̉ ược thiêt lâp môt cach t đó có thê đ ́ ̣ ̣ ́ ự do giữa bât c ́ ứ hai ngươi nao khi có nhu câu ̀ ̀ ̀ ̉ trao đôi thông tin. 2. Giao thức thỏa thuận khóa Diffie Hellman. Trao đổi khóa Diffie – Hellman là thiết lập một khóa chia sẻ bí mật được sử dụng cho thông tin liên lạc bí mật bằng cách trao đổi dữ liệu thông qua mạng công cộng. Đây mà một trong số nhiều phương thức dùng để trao đổi khóa trong ngành mật mã học. Phương pháp này không cần có sự can thiệp của một TA ( cơ quan ủy thác) làm nhiệm vụ điều hành hoặc phân phối khóa. Phương pháp này cho phép những người sử dụng có thể cùng nhau tạo ra một khóa bí mật thông qua một kênh truyền thông không đảm bảo về độ bảo mật. Khóa bí mật này sẽ được dùng để người sử dụng trao đổi thông tin với nhau. 2.1. Cách thiết lập giao thức thỏa thuận khóa Diffie Hellman. Tình huống: + Alice và Bob muốn chia sẻ thông tin bảo mật cho nhau nhưng phương tiện truyền thông duy nhất của họ là không an toàn. Tất cả các thông tin mà họ trao đổi được quan sát bởi Eve kẻ thù của họ. + Làm thế nào để Alice và Bob chia sẻ thông tin bảo mật cho nhau mà không làm cho Eve biết được? + Thoạt nhìn ta thấy Alice và Bob phải đối mặt với một nhiệm vụ không thể. 7Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman Giải quyết tình huống trên: + Alice và Bob đồng ý dùng chung về một nhóm cyclic hữu hạn G và một yếu tố tạo ra g trong G. (Điều này thường được thực hiện rất lâu trước khi phần còn lại của giao thức, g được giả định là được biết đến bởi tất cả các kẻ tấn công) + Khi Alice và Bob muốn truyền thông tin bảo mật cho nhau có thể cùng thực hiện theo giao thức sau để trao đổi: 1. ̣ Alice chon ngâu nhiên sô a ̃ ́ ̣ ́ ́ A (0 ≤ aA ≤ p2) bi mât, tinh ̀ ửi bA cho Bob . va g 2. Tương tự, Bob chon ngâu nhiên sô a ̣ ̃ ́ ̣ ́ ́ B (0 ≤ aB ≤ p2) bi mât, tinh ̀ ửi bB cho Alice. va g 3. Alice tính được khóa: 4. Bob tính được khóa: + Bây giờ Alice và Bob có cùng khóa chung là: + Mô tả giao thức Diffie Hellman bằng bảng sau: Alice Bob Bí mật Công khai Tính toán Gửi Tính toán Công khai Bí mậ t 8Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman aA p, g → aB aA p, g, bA bA→ p, g aB aA ←bB p, g, bB aB aA, KA p, g, bA, bB p, g, bA, bB aB, KB Chú ý là chỉ có aA, aB và KA, KB là được giữ bí mật. Tất cả các giá trị còn lại như p, g, bA, bB đều công khai. Một khi Alice và Bob tính được khóa bí mật dùng chung, họ có thể dùng nó làm khóa mã hóa chỉ họ biết để gửi các thông điệp qua cùng kênh giao tiếp mở. Đương nhiên, để đảm bảo an toàn, các giá trị aA, aB và p cần được lấy lớn hơn, g không cần lấy giá trị quá lớn. Thực tế thì g thường lấy giá trị 2 hoặc 5 2.2. Sơ đồ giao thức thỏa thuận khóa Diffie Hellman. Sơ đồ dưới đây minh họa phần nào ý tưởng chung. Đầu tiên, Alice và Bob đã thống nhất về màu sơn chung (màu vàng), Alice và Bob trao đổi màu sắc đã được trộn của họ. Cuối cùng, điều này tạo ra một màu 9Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman bí mật giống hệt nhau mà kẻ khác không có khả năng tạo được ra giống vậy. Kể từ đây, Alice và Bob sẽ trao đổi bằng cách mã hóa và giải mã sử dụng khóa bí mật đó (thể hiện bằng màu sơn bí mật cuối cùng). Hình 1: Sơ đồ giao thức thỏa thuận khóa Diffie Hellman 2.3. Ví dụ bằng số minh họa. 1. Alice và Bob thống nhất với nhau chọn số nguyên tố p = 37 và g = 5. 2. Alice chọn một giá trị ngẫu nhiên bất kỳ aA = 7 và bí mật aA. 7 Alice tính bA = 5 mod 37 = 18. Sau đó Alice gửi bA = 18 cho Bob. 10Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman Bob chọn một giá trị ngẫu nhiên bất kỳ aB = 5 và bí mật aB Bob tính bB = 55 mod 37 = 17. Sau đó Bob gửi bB = 17 cho Alice. 4. Bob nhận được bA = 18 và tính khóa chung: KB = 184 mod 37=15, và bí mật KB 5. Alice nhận được bB =17 và tính khóa chung: KA= 177 mod 37=15, và bí mật KA 2.4. Mở rộng bài toán cho nhiều bên Thỏa thuận khóa DiffieHellman không chỉ giới hạn để thương lượng một khóa dùng chung giữa hai bên. Bất cứ một số lượng người dùng nào cũng có thể tham gia vào một thỏa thuận như thế bằng cách lặp các giao thức thỏa thuận và trao đổi dữ liệu trung gian. Ví dụ, Alice, Bob và Carol có thể tham gia vào một thỏa thuận DiffieHellman như sau (với tất cả phép toán đều lấy mod p): 1. Các bên đồng ý với các tham số của giải thuật là p và g. 2. Các bên tự sinh khóa bí mật, đặt tên là aA, aB và ac. 3. Alice tính và gửi nó cho Bob. 4. Bob tính = và gửi nó cho Carol. 5. Carol tính = và dùng nó làm khóa bí mật. 6. Bob tính và gửi nó cho Carol. 7. Carol tính = và gửi nó cho Alice. 8. Alice tính = = và dùng nó làm khóa bí mật. 9. Carol tính và gửi nó cho Alice. 10. Alice tính = và gửi nó cho Bob. 11. Bob tính = = và dùng nó làm khóa bí mật. Một kẻ nghe trộm có thể biết, , , , , nhưng không thể nào kết hợp chúng để sinh lại . Để mở rộng cơ chế này cho các nhóm lớn hơn cần phải tuân thủ 2 nguyên tắc cơ bản sau: Bắt đầu với một khóa “rỗng” chỉ gồm có g, khóa bí mật được tạo ra bằng cách tăng giá trị hiện tại theo số mũ bí mật của những bên tham gia một lần, theo thứ tự bất kỳ. Bất kỳ giá trị trung gian nào (số mũ sẽ lên tới tích N1 số mũ, trong đó N là số bên tham gia vào nhóm) đều có thể bị công khai, nhưng giá trị cuối cùng (khi cả N số mũ đều được dùng) sẽ tạo thành khóa bí mật dùng chung và do đó phải tránh bị công khai. Vì vậy, mỗi người dùng cần thu về bản sao của khóa mật bằng cách sử dụng khóa mật của chính họ lúc cuối cùng (mặt khác, không có cách nào để bên tham gia cuối cùng trao khóa cuối cho bên nhận của nó, vì bên này phải giữ bí mật khóa) 11Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman Những nguyên tắc này mở ra rất nhiều tùy chọn để sắp xếp các bên tham gia đóng góp tạo khóa. Phương pháp đơn giản và rõ ràng nhất là sắp N bên tham gia vào một vòng tròn và có N khóa quay quanh vòng tròn này, cho tới khi mỗi khóa đều đã được N bên đóng góp xây dựng (kết thúc với chính bên sở hữu nó) và mỗi bên tham gia đều đã đóng góp vào N khóa (kết thúc với khóa của họ). Tuy nhiên, điều này yêu cầu mỗi bên phải tính N số mũ thành phần. Bằng cách chọn một thứ tự tối ưu hơn, phụ thuộc vào thực tế là các khóa có thể trùng lặp, chúng ta có thể giảm khối lượng tính toán số mũ của mỗi bên là log2(N) + 1 sử dụng phương pháp Chia để trị, được đề xuất sau đây đối với 8 bên: 1. Các bên A, B, C và D mỗi bên thực hiện tính toán , giá trị này được gửi cho E, F, G, H. Ngược lại, họ cũng nhận được . 2. Các bên A và B mỗi bên tính , gửi cho C và D, khi đó C và D cũng làm việc tương tự là gửi cho A và B. 3. Bên A tính toán và gửi cho B, tương tự, B gửi lại cho A. C và D cũng làm việc tương tự. 4. Bên A tính số mũ cuối thu được = , trong khi B làm điều tương tự để nhận được = . C và D cũng làm điều tương tự. 5. Các bên từ E qua H đồng thời thực hiện tính toán sử dụng gabcd làm điểm khởi đầu. Sau khi hoàn thành thuật toán, tất cả các bên tham gia đều đã sở hữu khóa mật , nhưng mỗi bên chỉ phải tính toán 4 lần số mũ thành phần, thay vì phải tính 8 lần như trong sắp xếp vòng tròn đơn giản. 2.5. Các đặc điểm đặc trưng của giao thức thảo thuận khóa Diffie Hellman. 2.5.1. Giao thưc la an toan đôi v ́ ̀ ̀ ́ ới viêc tân công thu đông ̣ ́ ̣ ̣ . Giao thưc la an toan đôi v ́ ̀ ̀ ́ ới viêc tân công thu đông, nghĩa la môt ng ̣ ́ ̣ ̣ ̀ ̣ ười thứ ba ́ A và bB sẽ khó ma biêt đ dù biêt b ̀ ́ ược KA,B. Xét ví dụ: 1. Alice và Bob thống nhất với nhau chọn số nguyên tố p = 17 và g = 2. 2. Alice chọn một giá trị ngẫu nhiên bất kỳ aA = 6 và bí mật aA. Alice tính bA = 26 mod 17 = 13. Sau đó Alice gửi bA = 13 cho Bob. 3. Bob chọn một giá trị ngẫu nhiên bất kỳ aB = 9 và bí mật aB Bob tính bB = 29 mod 17 = 2. 12Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman Sau đó Bob gửi bB = 2 cho Alice. 4. Bob nhận được bA = 13 và tính khóa chung: KB = 139 mod 17=13, và bí mật KB 5. Alice nhận được bB = 2 và tính khóa chung: KA= 26 mod 17=13, và bí mật KA Eve là một kẻ nghe trộm – cô ta theo dõi những gì Alice và Bob gửi cho nhau nhưng không thể thay đổi nội dung các cuộc liên lạc. Eve muốn tái thiết lại những thông tin bảo mật mà Alice và Bob chia sẻ cho nhau. Eve sẽ phải đối mặt với một nhiệm vụ thực sự khó khăn. Dưới đây là các biểu đồ giúp xác định ai biết được giá trị nào. (Eve là một kẻ nghe trộm.) Alice Biết Không biết p = 17 aB= ? g = 5 aA = 6 bA = 26 mod 17 = 13 KA= 26 mod 17=13 KA,B = 13 Bob 13Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman Biết Không biết p = 17 aA =? g = 2 aB = 9 bB = 29 mod 17 = 2 KB = 139 mod 17=13 KA,B= 13 Eve Biết Không biết p = 17 aA = ? 14Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman g = 2 aB =? KA,B = ? Ta thấy Eve rơi vào tình thế tiến thoái lưỡng nam. Cô ấy biết được giá trị của bA, bB vì vậy cô ấy biết được , . Cô ấy cũng biết những giá trị của g và p, nhưng lại không biết được các giá trị của aA, aB và KA, B Đây chính là bài toán Diffie Hellman mà khi biết b A, bB tìm KA,B, bài toán này tương đương với bài toán phá mã ElGammal. Bây giờ ta đi chứng minh điều này. ̣ Phép mât ma ElGammal v ̃ ơi khoa K = (p, ́ ́ g, a, β), trong đó β = ga mod p cho ta từ môt ban rõ x va môt sô ngâu nhiên k ̣ ̉ ̀ ̣ ́ ̃ ̣ ược mât ma e ∈ Zp1 lâp đ ̣ ̃ K(x, k) = (y1, y2) vơi y k k ̉ ́ 1 = g mod p, y2 = xβ mod p . Va phép giai ma đ ̀ ̃ ược cho bởi y1 = gk mod p. Gia s̉ ử ta có thuât toan A giai bai toan DiffieHellman. Ta s ̣ ́ ̉ ̀ ́ ẽ dùng A đê pha ma ̉ ́ ̃ ElGammal như sau: 15Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman ̣ ̃ 1, y2). Trước tiên, dung A cho y1 = gk mod p và β=ga mod p ta Cho mât ma (y được A(y1,B) = gka =βk mod p . Sau đó, ta thu được ban rõ x t ̉ ừ βkvà y2 như sau: x = y2(βk)1 mod p. Ngược lai, gia s ̣ ̉ ử có môt thuât toan khac la B dùng đê pha ma ElGammal, ̣ ̣ ́ ́ ̀ ̉ ́ ̃ tức là B (p, g, β, y1, y2) = x = y2 (y1a)1 mod p . Ap dung B cho ́ ̣ β=bA , y1 = bB, y2 =1, ta được tức giai đ ̉ ược bai toan DiffieHellman. ̀ ́ Trên thực tế các giá trị của p, a A, aB là rất lớn. Nếu p là số nguyên tố có ít nhất 300 chữ số, aA và aB có ít nhất 100 chữ số thì thậm chí ngay cả thuật toán tốt nhất được biết đến hiện nay cũng không thể giải được nếu chỉ biết g, p, bA, bB kể cả khi sử dụng tất cả khả năng tính toán của nhân loại. Bài toán này còn được biết đến với tên gọi bài toán logarit rời rạc. Bài toán logarit rời rạc vẫn còn đang gây rất nhiều tranh cãi và chưa có thuật giải cụ thể nào. 2.5.2. Giao thức là không an toàn đối với việc tấn công chủ động. Giao thưc la không an toan đôi v ́ ̀ ̀ ́ ới viêc tân công chu đông b ̣ ́ ̉ ̣ ằng cach đanh trao ́ ́ ́ giữa đường. Nghĩa la môt ng ̀ ̣ ươi th ̀ ứ ba Eve có thê đanh trao cac thông tin trao ̉ ́ ́ ́ ̉ ữa Alice va Bob. đôi gi ̀ ̉ ̣ Chăng han, Eve thay ma Alice đinh g ̀ ̣ ửi cho Bob bởi và thay ma Bob đinh g ̀ ̣ ửi cho Alice bởi . Như vây, sau khi th ̣ ực hiên giao th ̣ ưc trao đôi khoa, Alice đa lâp ́ ̉ ́ ̃ ̣ ̣ môt khoa chung v ́ ơi Eve ma vân t ́ ̀ ̃ ưởng la v ̀ ơi Bob; đông th ́ ̀ ời Bob cung lâp môt ̃ ̣ ̣ khoa chung v ́ ơi Eve ma vân t ́ ̀ ̃ ưởng la v ̀ ơi Alice. Eve có thê giai ma moi thông bao ́ ̉ ̉ ̃ ̣ ́ ma Alice t ̀ ưởng nhâm la mình g ̀ ̀ ửi đên Bob cung nh ́ ̃ ư moi thông bao ma Bob ̣ ́ ̀ tưởng nhâm la mình g ̀ ̀ ửi đên Alice. ́ ̣ ́ ̣ ̉ ́ ̉ Môt cach khăc phuc kiêu tân công nay la lam sao đê Alice va Bob có kiêm th ́ ̀ ̀ ̀ ̀ ̉ ử ̉ ́ ̣ ́ ́ ̉ đê xac nhân tinh đúng đăn cua cac khoa công khai b ́ ́ Avà bB. Ngươi ta đ̀ ưa vao giao ̀ thưc trao đôi khoá DiffieHellman thêm vai trò đi ́ ̉ ều phôi cua môt TA đê đ ́ ̉ ̣ ̉ ược ̣ ̣ môt hê phân phôi khoa DiffieHellman nh ́ ́ ư môt cach khăc phuc nh ̣ ́ ́ ̣ ược điêm nay. ̉ ̀ ̣ Trong hê phân phôi khoa DiffieHellman, s ́ ́ ự can thiêp cua TA la rât yêu, th ̣ ̉ ̀ ́ ́ ực ra TA chỉ lam m̀ ỗi viêc la câp ch ̣ ̀ ́ ứng chỉ xac nhân khoa công khai cho t ́ ̣ ́ ừng ngươì dùng chứ không đòi hỏi biêt thêm bât c ́ ́ ứ môt bi mât nao cua ng ̣ ́ ̣ ̀ ̉ ươi dùng. Tuy ̀ 16Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman ́ ưa thoa man v nhiên, nêu ch ̉ ̃ ơi vai trò han chê đó cua TA thì có thê cho TA môt vai ́ ̣ ́ ̉ ̉ ̣ ̣ ́ ơn, không liên quan gì đên khoa, chăng han nh trò xac nhân yêu h ́ ́ ́ ̉ ̣ ư xac nhân thuât ́ ̣ ̣ ̉ toan kiêm th ́ ử chữ ky cua ng ́ ̉ ươi dùng, còn ban thân cac thông tin v ̀ ̉ ́ ề khoa (ca bi ́ ̉ ́ ̣ ̃ ́ ươi dùng trao đôi tr mât lân công khai) thì do cac ng ̀ ̉ ực tiêp v ́ ới nhau. Với cách khắc phục có vai trò hết sức hạn chế đó của TA, ta được giao thức sau đây: 2.6. Giao thức thỏa thuận khóa Diffie Hellman có chứng chỉ xác nhận. Mỗi ngươi dùng A có môt danh tinh ID(A) va môt s ̀ ̣ ́ ̀ ̣ ơ đô ch ̀ ữ ky v ́ ơi thuât ́ ̣ toan ky sig ̣ ́ ́ A va thuât toan kiêm th ̀ ́ ̉ ử verA. TA cung có môt vai trò xac nhân, nh ̃ ̣ ́ ̣ ưng ̉ ̣ không phai xac nhân bât ky thông tin nao liên quan đên viêc tao khoa mât ma cua ́ ́ ̀ ̀ ́ ̣ ̣ ́ ̣ ̃ ̉ ngươi dùng (dù la khoa bi mât hay khoa công khai), ma ch ̀ ̀ ́ ́ ̣ ́ ̀ ỉ la xac nhân môt thông ̀ ́ ̣ ̣ ̣ tin it quan hê khac nh ́ ́ ư thuât toan kiêm th ̣ ́ ̉ ử chữ ky cua ng ́ ̉ ươi dùng. Còn ban thân ̀ ̉ ̣ ̣ cac thông tin liên quan đên viêc tao khoa mât ma thì cac ng ́ ́ ́ ̣ ̃ ́ ười dùng sẽ trao đôỉ trực tiêp v ́ ơi nhau. TA cung có môt s ́ ̃ ̣ ơ đô ch ̀ ữ ky cua mình, gôm môt thuât toan ́ ̉ ̀ ̣ ̣ ́ ky sig ̀ ̣ ̣ ́ TA va môt thuât toan kiêm th ́ ̉ ử công khai verTA. Chưng ch́ ỉ ma TA câp cho ̀ ́ mỗi ngươi A s ̀ ẽ la:̀ C(A) = (ID(A), verA, sigTA (ID(A), verA )). Rõ rang trong ch ̀ ưng ch ́ ỉ đó TA không xac nhân bât ky đi ́ ̣ ́ ̀ ều gì liên quan đên viêc ́ ̣ ̣ ́ ̉ ̉ tao khoa cua A ca. Cơ chế giao thức thỏa thuận khóa Diffie Hellman có chứng chỉ xác nhận ̣ ̉ ́ ữa hai ngươi dùng A va B đ Viêc trao đôi khoa gi ̀ ̀ ược thực hiên theo giao th ̣ ưc sau ́ đây: 1. ̣ A chon ngâu nhiên sô a ̃ ̀ ửi bA cho B. ́ A (0 ≤ aA(≤ p2), tính va g 2. ̣ ́ B (0 ≤ aB≤ p2), tính, tính tiếp, va g B chon ngâu nhiên sô a ̃ ̀ ửi (C(Alice), bB, yB) cho A. 3. ̉ ̉ A tính dùng verB đê kiêm th ử yB , dùng verTA đê kiêm th ̉ ̉ ử C(B), sau đó tinh ́ ̀ ửi (C(A), yA) cho B. yA= sigA(bA, bB ) va g 4. ̉ ̉ B dùng verA đê kiêm th ử yA và dùng verTA đê kiêm th ̉ ̉ ử C(A). ́ ́ ̉ ́ ươc đó đ Nêu tât ca cac b ́ ược thực hiên va cac phép kiêm th ̣ ̀ ́ ̉ ử đều cho kêt qua ́ ̉ đúng đăn thì giao th ́ ưc đ ́ ược kêt thúc, va ca A va B đ ́ ̀ ̉ ̀ ều có được khoa chung K. ́ ̣ ̣ ̉ Do viêc dùng cac thuât toan kiêm th ́ ́ ử nên A biêt chăc gia tri b ́ ́ ́ ̣ B la cua B va B biêt ̀ ̉ ̀ ́ 17Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman ́ ̣ A cua A, loai tr chăc gia tri b ́ ̉ ̣ ư kha năng môt ng ̀ ̉ ̣ ươi C nao khac đanh trao cac gia tri ̀ ̀ ́ ́ ́ ́ ́ ̣ đó giữa đương.̀ 18Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman Tài liệu tham khảo 1. Giáo trình an toàn và bảo mật thông tin – Trường ĐH Hàng Hải 2. Giáo trình an toàn bảo mật thông tin – Trường ĐH Giao Thông Vân Tải 3. Whitfield Diffie, Martin E. Hellman, “ New Directions in Cryptography”, IEEE transactions on information theory, Vol. IT22, No.6, November 1976. 4. A Review of the DiffieHellman Algorithm and its Use in Secure Internet Protocols David A. Carts 5. DiffieHellman Key Exchange – A NonMathematician’s Explanation http://www.packetsource.com/article/encryption/40070/diffiehellmankey exchangeanonmathematiciansexplanation 6. Discrete Logarithms and Diffie Hellman. 7. http://www.math.brown.edu/~jhs/MathCrypto/SampleSections.pdf 8. http://bytes.com/topic/c/answers/795749storingdoingmoduluslongdoubles 9. 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/generatorgsrequirementtobea primitiveroot modulopinthediffiehellman?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 19Nhóm 7 : ĐHKHMT2K5
- Giao thức thỏa thuận khóa Diffie Hellman 18. A Review of the DiffieHellman Algorithm and its Use in Secure Internet Protocols David A. Carts 19. Video: Public Key Cryptography DiffieHellman Key Exchange Primitive Root Calculator 20. Và một số tài liệu và các trang web khác. 20Nhóm 7 : ĐHKHMT2K5
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Đề tài tốt nghiệp: Một số giải pháp nhằm hạn chế rủi ro tín dụng tại ngân hàng thương mại cổ phần sài gòn thương tín Sacombank
30 p | 496 | 260
-
Tiểu luận tốt nghiệp : “Hợp đồng dân sự vô hiệu Thực trạng và giải pháp”
24 p | 1494 | 190
-
Luận văn: CÁC BIỆN PHÁP BẢO ĐẢM THỰC HIỆN NGHĨA VỤ DÂN SỰ
16 p | 815 | 143
-
ĐỀ TÀI " QUẢN TRỊ RỦI RO TÍN DỤNG TẠI NHNN & PTNT NAM HÀ NỘI "
81 p | 264 | 115
-
Đề tài tốt nghiệp cử nhân Điều dưỡng hệ VHVL: Đánh giá thực trạng giao tiếp của nhân viên y tế Bệnh viện Nông nghiệp năm 2010-2011
31 p | 683 | 101
-
Đề tài: Phân tích Hợp đồng mua bán hàng hoá giữa Công ty Viễn Thông Quân Đội (Vietel) và Công ty Cổ Phần Tư Vấn Chuyển Giao Công Nghệ ITC
13 p | 592 | 89
-
Tiểu luận: Nghiệp vụ giao dịch ngoại hối kỳ hạn
19 p | 500 | 69
-
Luận văn: Chế độ pháp lý về hợp đồng đại lý và thực tiễn thực hiện tạ iCông ty trách nhiệm hữu hạn (TNHH) Nhà nước một thành viên (MTV) Xuân Hoà
85 p | 439 | 47
-
Đề tài " Chế độ pháp lý về hợp đồng đại lý và thực tiễn tại Công ty trách nhiện hữu hạn Nhà nước một thành viên Xuân Hoà "
79 p | 141 | 44
-
Hạn chế rủi ro trong thanh tóan tín dụng chứng từ tại Ngân hàng Vietinbank - 2
10 p | 134 | 40
-
Đề tài:Các quy định của pháp luật Việt Nam về giao kết hợp đồng điện tử có yếu tố nước ngoài
106 p | 165 | 23
-
Luận văn Thạc sĩ Luật kinh tế: Thử việc theo quy định của pháp luật lao động Việt Nam - Thực tiễn áp dụng tại Thành phố Hồ Chí Minh
95 p | 39 | 20
-
Luận văn: Hợp đồng giao nhận thầu mua sắm hàng hóa_lý luận và thực tiễn áp dụng tại Công ty cổ phần Chế tạo điện cơ Hà Nội
73 p | 110 | 18
-
Luận văn Thạc sĩ Luật học: Phân loại hợp đồng vô hiệu
104 p | 28 | 9
-
Luận văn Thạc sĩ Quản lý kinh tế: Quản lý thu chi thỏa thuận tại các trường công lập trên địa bàn thành phố Việt Trì tỉnh Phú Thọ
105 p | 22 | 5
-
Tóm tắt Luận văn Thạc sĩ Hệ thống thông tin: Giải pháp kỹ thuật ngăn chặn tấn công MANET
26 p | 31 | 5
-
Chế độ pháp lý của hợp đồng thuê nhà xưởng và thực tiễn áp dụng tại CIRT - 3
11 p | 79 | 4
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