Phân phối và thỏa thuận về khóa
7.1 Giả sử h: X Y hàm hash Với y bÊt kú ∈Y, cho: h-1(y) = { x: h(x) = y} ký hiệu sy = | h-1(y)| Định nghĩa N = chơng phân phối thoả thuận khoá 8.1 Giới thiệu: Chúng ta đà thấy rằng, hệ thống mà khoá công khai có u điểm hệ thống mà khoá riêng chỗ không cần có kênh an toàn để trao đổi khoá mật Tuy nhiên, đáng tiếc hầu hết hệ thống mà khoá công khai chậm hệ mà khoá riêng, chẳng hạn nh DES Vì thực tế hệ mà khoá riêng thờng đợc dùng để mà điện dài Nhng lại trở vấn đề trao đổi khoá mật Trong chơng này, thảo luận vài biện pháp thiết lập khoá mật Ta phân biệt phân phối khoá thoả thuận vể khoá Phân phối khoá đợc định nghĩa chế nhóm chọn khoá mật sau truyền đến nhóm khác Còn thoả thuận khoá giao thức để hai nhóm (hoặc nhiều hơn) liên kÕt víi cïng thiÕt lËp mét kho¸ mËt b»ng cách liên lạc kênh công khai Trong sơ đồ thoả thuận khoá, giá trị khoá đợc xác định nh hàm đầu vào hai nhóm cung cấp Giả sử, ta có mạng không an toàn gồm n ngời sử dụng Trong số sơ đồ, ta có ngời uỷ quyền đợc tín nhiệm (TA) để đáp ứng việc nh xác minh danh tính ngời sử dụng, chọn gửi khoá đến ngời sử dụng Do mạng không an toàn nên cần đợc bảo vệ trớc đối phơng Đối phơng (Oscar) ngời bị động, có nghĩa hành động cđa chØ h¹n chÕ ë møc nghe trém điện truyền kênh Song mặt khác, ngời chủ động Một đối phơng chủ động làm nhiều hành vi xấu chẳng hạn: Thay đổi điện mà nhận thấy đợc truyền mạng Cất điện để dùng lại sau Cố gắng giả dạng làm ngời sử dụng khác mạng Mục tiêu đối phơng chủ động nêu sau đây: Lừa U V chấp nhận khoá không hợp lê nh khoá hợp lệ (khoá không hợp lệ khoá cũ đà hết hạn sử dụng, khoá đối phơng chọn) Làm U V tin rằng, họ trao đổi khoá với ngời họ khoá Mục tiêu phân phối khoá giao thức thoả thuận khoá là, thời điểm kết thúc thủ tục, hai nhóm có khoá K song không nhóm khác biết đợc (trừ khả TA) Ch¾c ch¾n, viƯc thiÕt kÕ giao thøc cã kiĨu an toàn khó khăn nhiều trớc đối phơng chủ ®éng Tríc hÕt ta xem xÐt ý tëng vỊ sù phân phối khoá trớc mục 8.2 Với cặp ngời sử dụng {U,V}, TA chọn khoá ngẫu nhiên KU,V=KV,U truyền dải đến U V kênh an toàn (Nghĩa là, việc truyền khoá không xảy mạng mạng không an toàn ) Biện pháp gọi an toàn không điều kiện song đòi hỏi kênh an toàn TA ngời sử dụng mạng Tuy nhiên điều quan trọng ngời phải lu n -1 khoá TA cần truyền tổng cộng ( n ) khoá cách an toàn (đôi toán đợc gọi toán n2) Thậm chí với số mạng tơng đối nhỏ, giá để giải vấn đề đắt nh giải pháp hoàn toàn không thực tế Trong phần 8.2.1, thảo luận sơ đồ phân phối trớc khoá an toàn không điều kiện thú vị Blom đa Sơ đồ cho phép giảm lợng thông tin mật mà ngời sử dụng cần cất giữ mạng Mục 8.2.2 đa sơ đồ phân phối trớc khoá an toàn mặt tính toán dựa toán logarithm rời rạc Một biện pháp thực tế TA phân phối khoá trực tiếp Trong sơ đò nh vậy, TA làm việc nh ngời chủ khoá (key server) TA chia khoá mật KU cho ngời sử dụng U mạng Khi U muốn liên lạc với V, cô ta yêu cầu TA cung cấp khoá cho phiên làm việc (session key) TA tạo khoá session K gửi dới dạng mà hoá cho U V để giải mà Hệ thống mà Kerboros mô tả mục 8.3 dựa biện pháp Nếu nh cảm thấy vấn đề phân phối khoá thông qua TA không thực tế không mong muốn biện pháp chung dùng giao thức thoả thuận khoá Trong giao thức thoả thuận khoá, U V kết hợp chọn khoá cách liên lạc với kênh công khai ý tởng đáng ý Martin Diffie đa độc lập với Merkle mô tả vài giao thc thoả thuận khoá phổ thông Giao thức Diffie Hellman đợc cải tiến để ứng phó với đối phơng tích cực đợc nêu phần 8.4.1 Hai giao thức đáng quan tâm đợc xem xét: sơ đồ MTI nên 8.4.2 sơ đồ Girault nêu mục 8.4.3 8.2 Phân phối khoá trớc n theo phơng pháp bản, TA tạo khoá đa khoa cho cặp ngời sử dụng mạng có n ngời sử dụng Nh đà nêu trên, ta cần kênh an toàn TA ngời sử dụng để truyền khoá Đây n cải tiến quan trọng số kênh an toàn cần thiết giảm từ xuống n Song n lớn, giải pháp không thực tế lợng thông tin cần truyền an toàn lẫn lợng thông tin mà ngời sử dụng phải cất giữ an toàn (nghĩa khoá mật n-1 ngời sử dụng khác) nh vậy, điều cần quan tâm cố gắng giảm đợc lợng thông tin cần truyền cất giữ cho phép cặp ngời sử dụng U V có khả tính toán khoá mật KU,V Một sơ đồ u việt thoả mÃn yêu cầu sơ đồ phân phối khoá trớc Blom 8.2.1 Sơ đồ Blom Nh trên, giả thiết có mạng gôm n ngời sử dụng Để thuận tiện, giả sử khoá đợc chọn trờng số hữu hạn ZP, p n số nguyên tố Cho k số nguyên, < k < n -2 Giá trị k để hạn chế kích thớc lớn mà sơ đồ trì đợc mật ®é Trong s¬ ®å Blom, TA sÏ trun ®i k +1 phần tử ZP cho ng- ời sử dụng kênh an toàn (so với n -1 sơ đồ phân phối trớc bản) Mỗi cặp ngời sử dụng U V có khả tính khoá KU,V = KV,U nh trớc Điều kiện an toàn nh sau: tập gồm nhiều k ngời sử dụng không liên kết từ {U, V} phải khả xác định thông tin KU,V (chú ý rằng, ta xét an toàn không điều kiện) Trớc hết, xét trờng hợp đặc biệt sơ đồ Blom k =1 TA truyền phần tử ZP cho ngời sử dụng kênh an toàn ngời sử dụng riêng W xác định đợc thông tin KU,V WU,V Sơ đồ Blom đợc đa hình 8.1 Ta minh hoạ sơ đồ Blom với k = ví dụ sau: Hình 8.1: Sơ đồ phân phối khoá Blom (k =1) Số nguyên tố p công khai, với ngời sử dụng U, phần tử rU ZP công khai Phần tử rU phải khác biệt Ta chọn phần tử ngẫu nhiên a, b, c ZP (không cần khác biệt) thiết lập đa thức 8.3.Kerboros phơng pháp phân phối trớc khoá xem xét phần trớc đó, cặp ngời sử dụng cần tính khoá cố định Nếu dùng khoá thời gian dài dễ bị tổn thơng, ngời ta thờng thích dùng phơng pháp trực tiếp khoá phiên lamà việc đợc tạo hai ngới sử dụng muốn liên lạc với (gọi tính tơi khoá) Nếu dùng phân phối khoá trực tiếp ngời sử dụng mạng không cần phải lu khoá muốn liên lạc với ngời sử dụng khác (Tuy nhiên ngời đợc chia sẻ khoá với TA) Khoá phiên làm việc (khóa session) đợc truyền theo yêu cầu TA Đó đáp ứng TA để đảm bảo khoá tơi Korobos hệ thống dịch vụ khóa phổ cập dựa mà khoá riêng Trong phần đa tổng quan giao thức phát hành khoá session Korobos Mỗi ngời sử dụng U chia sẻ khoá DES mật KU cho TA Trong phiên gần Korobos (version 5), thông báo cần truyền đợc mà hoá theo chế độ xích khối (CBC) nh mô tả 3.4.1 Nh mục 8.2.2, ID(U) thông tin định danh công khai cho U Khi có yêu cầu khoá session gửi đến TA, TA tạo khoá session ngẫu nhiên K Cũng vậy, TA ghi lại thời gian có yêu cầu T thời gian (thời gian tồn tại) L để K có hiệu lực Điều có nghĩa khoá K có hiệu lực từ T đến T+L Tất thông tin đợc mà hoá đợc truyênông dân đến U V Trớc đến chi tiết nữa, ta đa giao thức hình 8.4 thông tin đợc truyền giao thức đợc minh hoạ nh sau: Hình 8.4: Truyền khoá session Korobos Ta giải thích điều sửa xảy bớc giao thức Mặc dù chứng minh hình thức Kerobos an toàn trớc đối thủ tích cực, song ta đa lí đặc điểm giao thức Nh nêu trên, TA tạo K, T L bớc Trong bớc 3, thông tin với ID(V) đợc mà hoá khoá KU (đợc U TA chia sẻ) để tạo lập m1 Cả hai điện đà mà hoá đợc gửi đến U U dùng khoá giải mà m1, nhận đợc K, T L Cô xác minh xem thời gian có nằm khoảng T đến T + L hay không Cô kiểm tra khoá session K đợc phát cho liên lạc cô V cách xác minh thông tin ID(V) đà giải mà tõ m2 TiÕp theo, U sÏ lµm trƠ thêi gian m2 m3 đến V Cũng nh vậy, U dùng khoá session K để mà T ID(U) gửi kết m3 đến V Khi V nhận đợc m3 m3 từ U, V giải mà m2 thu đợc T, K, L ID(U) Khi đó, dùng khoá session K để giải mà m3 xác minh xem T ID(U) nhận đợc từ m2 m3 có nh không Điều đảm bảo cho V khoá session đợc mà m2 khoá đà dùng để mà m3 Khi ®ã V dïng K ®Ĩ m· T+1 vµ gưi kÕt m4 trở U Khi U nhận đợc m4, cô dùng K giải mà xác minh xem kết có T+1 không Công đoạn đảm bảo cho U khoá session K đà đợc truyền thành công đến V K đà đợc dùng để tạo m4 Điều quan trọng cần lu ý chức khác thông báo dùng giao thức, m1 m2 dùng để bảo đảm an toàn việc truyền khoá session Còn m3 m4 dùng để khẳng định khoá, nghĩa cho phép U vµ V cã thĨ thut phơc r»ng hä sở hữu khoá session K Trong hầu hết sơ đồ phân phối khoá, khẳng định khoá đựoc coi nh đặc tính Thờng đợc thực tơng tự kiểu Kerobos, U dùng K để mà ID(U) T dùng để mà m2 Tơng tù, V dïng K ®Ĩ m· T+1 Mơc ®Ých cđa thời gian hệ thống T thời hạn L để ngăn đối phơng tích cực khỏi lu thông báo cũ nhằm tái truyền lại sau (đây đợc gọi công kiểu chơi lại - relay attack) Phơng pháp hiệu khoá không đợc chấp nhận hợp lệ chúng hạn Một hạn chế Kerobos ngời sử dụng mạng phải có đồng hồ đồng với cần có thời gian để xác định khoá session K cho trớc hợp lệ Thực tế, khó có đợc đồng hoàn hảo nên phải cho phép có khoảng thay đổi thời gian Hình 8.5: Trao đổi khoá Diffie - Hellman 8.4 Trao đổi khoá Diffie - Hellman Nếu ta không muốn dùng dịch vụ khoá trực tiếp buộc phải dùng giao thức thoả thuận khoá để trao đôỉ khoá mật Trớc hết, giao thức thoả thuận khoá tiếng giao thức trao đổi khoá Diffie - Hellman Giả sử rằng, p số nguyên tố, phần tử nguyên thuỷ ZP chúng tham số công khai Giao thức trao đổi khoá Diffie - Hellman đợc đa mục 8.5 Cuối giao thức, U V tính khoá: Giao thức tơng tự với sơ đồ phân phối khoá trớc Diffie Hellman đà mô tả trớc Sự khác chỗ số mũ aU, aV U V đợc chọn lại lần thực giao thức thay cố định Cũng nh vậy, giao thức này, U lẫn V đợc đảm bảo khoá tơi khoá session phụ thuộc vào hai số mũ ngẫu nhiên aU aV 8.4.1 Giao thức trạm tới trạm Trao đổi khoá Diffie - Hellman đợc đề xuất nh sơ đồ sau: (Sơ đồ) Đáng tiếc giao thức dễ bị tổn thơng trớc đối phơng tích cực - ngời sử dụng công kẻ xâm nhập vào (Intuder - in -middle - attack) Đó tình tiết The Lucy show, nhân vật Vivian Vance dùng bữa tối với ngời bạn, Lucille Ball trốn dới bàn Vivian ngời bạn cô nắm tay dới bàn Lucy cố tránh bị phát đà nắm tay hai ngời, hai ngời nghĩ họ nắm tay Cuộc công kiểu kẻ xâm nhập giao thức trao đổi khoá Diffie - Hellman nh W chặn bắt đợc điện trao đổi U V thay điện nh sơ đồ dới đây: (sơ ®å) T¹i thêi ®iĨm ci cđa giao thøc, U thiÕt lËp thùc sù kho¸ mËt α a a cïng víi W, V thiết lập khoá mật a a với W Khi U cố giải mà điện để gửi cho V, W có khả giải mà song V không thể, (tơng tự tình nắm tay nÕu V gưi bøc ®iƯn cho U) Râ ràng, điều U V bảo đảm rằng, họ trao đổi khoá với mà W Trớc trao đổi khoá, U V thực giao thc tách bạch để thiết lập danh tính cho nhau, ví dụ, nhờ dùng sơ đồ định danh mô tả chơng Tuy nhiên, điều đa đến việc không bảo vệ đợc trớc công kẻ xâm nhập W trì cách đơn giản công thụ động cho ®Õn U vµ V ®· chøng minh danh tÝnh họ cho Vì giao thức thoả thuận khoá tự cần xác thực đợc danh tính ngời tham gia lúc khoá đợc thiết lập Giao thức nh đợc gọi giao thức thoả thuận khoá đà xác thực Ta mô tả giao thức thoả thuận khoá cải tiến sơ đồ trao đổi khoá Diffie - Hellman Giao thức giả thiết số nguyên tố p phần tử nguyên thuỷ công khai dùng với dấu xác nhận Mỗi ngời sử dụng U có sơ đồ chữ kí với thuận toán xác minh verU TA có sơ đồ chữ kí với thuật toán xác minh công khai verTA Mỗi ngời sử dụng U cã dÊu x¸c nhËn: C(U) = (ID(U), verU, sigTA(ID(U), verU)) Trong ID(U) thông tin định danh cho U Hình 8.6 Giao thức trạm tới trạm đơn giản ' U V ' U V Thoả thuận khoá đà xác thực Diffie - Hellman, van Oorschot Viener đa đợc gọi giao thức trạm đến trạm (viết tắt STS) Giao thức đa hình 8.6 đơn giản chút: đợc dùng để phù hợp với giao thức ISO 9798-3 Thông tin đợc trao đổi sơ đồ STS đà đơn giản hoá (gồm dấu xác nhận) đợc minh hoạ nh sau: (sơ đồ) Ta hÃy xem cách bảo vệ trớc công kẻ xâm nhập Nh trớc đây, W chặn bắt a thay U 8.4.2 Các giao thức thoả thuận khoá MTI Matsumoto, Takashima Imai đà xây dựng vài giao thức thoả thuận khoá đáng ý cách biến đổi giao thức trao đổi khoá Diffie - Hellman Các giao thức đợc gọi MTI Giao thức không đòi hỏi U V phải tính chữ kí Chúng giao thức hai lần có hai lần truyền thông tin riêng biệt (một từ U đến V từ V đến U) Trái lại, giao thức STS đợc gọi giao thức ba lần Hình 8.7: Giao thức thoả thuận khoá MTI Ta đà đa mét c¸c giao thøc MIT ViƯc thiÕt lËp chúng giống nh giao thức phân phối khoá trớc Diffie Hellman Giả thiết số nguyên tố p phần tử nguyên thuỷ công khai Mỗi ngời sử dụng U có chuỗi ID(U), số mũ mật aU (0 aU p-2) giá trị công khai tơng ứng: TA có sơ đồ chữ kí với thuật toán xác minh (công khai) verTA thuật toán kí mật sigTA Mỗi ngời sử dụng U có dấu xác nhận: C(U) = (ID(U), bU, sigTA(ID(U), bU)) Trong bU đợc thiết lập nh Giao thức thoả thuận khoá MTI đợc đa hình 8.7 Cuối giao thức U V tính khoá: K= Dới ví dụ minh hoạ giao thức này: VÝ dơ 8.3 Gi¶ sư p = 27803, α = Giả sử U chọn aU = 21131: sau c« ta tÝnh: bU = 521131 mod 27803 = 21420 đợc đóng giấy xác nhận cô Cũng nh vËy, V chän aV = 17555 Sau ®ã tính: bV =517555 mod 27803 = 17100 đợc dặt giấy xác nhận anh Bây giả sử U chọn rU =169, sau cô gửi giá trị: sU = 5169 mod 27803 = 6268 đến V Lúc giả sử V chọn rV = 23456, sau gửi giá trị: sU = 523456 mod 27803 = 26759 đến U Bây U tính khoá: KU,V = = 626817555 2142023456 mod 27803 = 21600 Nh vậy, U V đà tính khóa Thông tin đợc truyền giao thức đợc miêu tả nh sau: (sơ đồ) HÃy xét độ mật sơ đồ Không khó khăn nhận thấy rằng, độ mật giao thức MTI trớc công thụ động toán Diffie Hellman Cũng nh nhiều giao thức, việc chứng minh tính an toàn trớc công chủ động đơn giản, không thử chứng minh điều điều tự hạn chế đến số đối số không hình thức Đây mối nguy hiểm xem xét: Khi không dùng chữ kí suốt trình thùc hiƯn giao thøc, cã thĨ xt hiƯn t×nh hng bảo vệ trớc công xâm nhập vào điểm Quả thực, có khả W chọn giá trị mà U V gửi cho Dới mô tả tình quan trọng xuất hiện: (sơ đồ) Trong trờng hợp này, U V tính khoá khác nhau: U tÝnh K= Trong ®ã V tÝnh: K= Tuy nhiên, W tính toán khoá U V chúng đòi hỏi phải biết số mũ mật aU aV tơng ứng Thậm chí U V tính khoá khác (mà dĩ nhiên không dùng chúng) W tính đợc khoá chúng Nói cách khác, U lẫn V đợc bảo đảm rằng, ngời sử dụng khác mạng tính đợc khoá mà họ tính đợc Tính chất đợc gọi xác thực khoá ẩn (implicit key authentication) 8.4.3 Thoả thuận khoá dùng khoá tự xác nhận Trong phần này, ta mô tả phơng pháp thoả thuận khoá Girault đa không cần dấu xác nhận Giá trị khoá công khai danh tính ngời sở hữu ngầm xác thực lẫn Sơ đồ Girault kết hợp tính chất RSA logarithm rời rạc Giả sử n = pq, p =p1+1, q = 2ql+1, cßn p, q, p1và q1 số nguyên tố lớn Nhóm nhân Zn* đẳng cấu với Zp*ìZq* Bậc cực đại phần tử Zn* lµ béi chung nhá nhÊt cđa p - vµ q - 1, 2p1q1 Cho phân tử cã bËc 2p1q1 Khi ®ã nhãm cyclic cđa Zn* tạo thiết lập thích hợp toán logarithm rời rạc Trong sơ đồ Girault, TA biết đợc phân tích nhân tử n Các giá trị n công khai, song p, q, p1 q1 mật TA chọn số mũ mà công khai RSA, kí hiệu e Số mũ giải mà tơng ứng bí mật d (nhớ rằn d = e-1mod (n)) Mỗi ngời sử dụng U có chuỗi ID(U) nh sơ đồ trớc U nhận đợc khoá tự xác nhận công khai pU từ TA nh nêu hình 8.8 Nhận xét rằng, U cần TA giúp đỡ để tạo pU Cũng ý r»ng: bU = pUe + ID(U) mod n H×nh 8.8: NhËn kho¸ tù x¸c nhËn tõ TA U chän sè mị mËt aU vµ tÝnh: bU = U đa aU bU cho TA TA tính: pU = (bU - ID(U))d mod n TA ®a pU cho U Cã thĨ tÝnh tõ pU vµ ID(U) thông tin công khai có sẵn Giao thức thoả thuận khoá Girault đợc đa hình 8.9 Thông tin trun ®i giao thøc nh sau: ID(U), pU, α r mod n ID(V), pV, α r mod n U U V V Cuèi giao thøc, U vµ V tÝnh kho¸: K = α rU aV + rV aU mod n Dới ví dụ trao đổi khoá sơ đồ Girault Ví dụ 8.4: Giả sư p =839, q = 863 Khi ®ã n = 724057 (n) = 722356 Phần tử =5 có bậc 2p1q1 = φ(n)/2 Gi¶ sư TA chän d = 125777 làm số mũ giải mà RSA, e = 84453 Giả sử U có ID(U) = 500021 aU = 111899 Khi bU = 488889 pU =650704 Cũng giả thiết V có ID(V) = 500022 aU = 123456 Khi bV = 111692 pV = 683556 Bây U V muốn trao đổi khoá Giả sử U chọn rU =56381, nghĩa sU=171007 TiÕp theo, gi¶ sư V chän rV = 356935, nghÜa sV =320688 Khi U lẫn V tính khoá K = 42869 Hình 8.9: Giao thức thoả thuận khoá Girault U chọn rU ngẫu nhiên tính su = U gửi ID(U), pU vµ sU cho V V chän rV ngẫu nhiên tính sV = r mod n V gưi ID(V), pV vµ sV cho U V U tÝnh: a e K = sV ( pV + ID(V )) r mod n U U Vµ V tÝnh: a e K = sU ( pU + ID(U )) r mod n XÐt c¸ch c¸c kho¸ tù x¸c thực bảo vệ chống lại kiểu công Vì giá trị bU, pU ID(U) không đợc TA kí nên cách để xác minh trực tiếp tính xác thực chúng Giả thiết thông tin bị W - ngời muốn giả danh U - giả mạo (tức không hợp tác với TA để tạo nó) Nếu W bắt đầu ID(U) giá trị giả bU Khi cách để cô ta tính đợc số mũ aU tơng ứng với bU toán logarithm rời rạc khó giải Không có aU, W tính đợc khoá Tình tơng tự W hoạt động nh kẻ xâm nhập W ngăn đợc U V tính khoá chung, song W đồng thời thực tính toán U V Nh vậy, sơ đồ cho khả xác thực ngầm nh giao thức MTI Bạn đọc tự hỏi U đợc yêu cầu cung cấp giá trị aU cho TA Quả thực, TA tính pU trực tiếp từ bU mà không cần biết aU song điều quan trọng TA đợc thuyết phục rằng, U biết aU trớc TA tính pU cho U Điểm đợc minh hoạ cách sơ đồ bị tông TA phát bừa bÃi khoá công khai pU cho ngời sử dụng mà không kiểm tra trớc hết xem họ có sở hữu aU tơng ứng với bU họ hay không Giả sử W chọn giá trị giả aU tính giá trị tơng ứng: V v ' ' bU = aU mod n Đây cách xác định khoá công khai tơng ứng pU =(bU - ID(U))d mod n W sÏ tÝnh: p’W = b’W - ID(U) + ID(W) sau đa bW ID(W) cho TA Giả sử TA phát khoá công khai p’W =(b’W - ID(W))d (mod n) cho W Nhê dïng yÕu tè: b’W - ID(W) ≡ b’U - ID(U) (mod n) cã thÓ suy r»ng: p’W = p’U Cuối cùng, giả sử U V thực giao thức W thay thông tin nh sau: ID(U), p’U, ID(U), pU, U ID(V), p , V ID(V), p’V, W V XÐt thÊy V sÏ tÝnh kho¸: ' ' K ' = α rU av + rv aU mod n U sÏ tÝnh kho¸ K = α rU av + rv aU mod n W cã thÓ tÝnh K’ nh sau: ' ' e K ' = s vaU ( pV + ID(V )) rU mod n Nh vậy, W V chia sẻ khoá, song V nghĩ chia khoá với U Nh vậy, W giải mà đợc điện mà V gửi cho U 8.5 Các ý tài liệu tham khảo Blom đà đa sơ đồ phân phối khoá ông [BL85] Các b¸o cã tÝnh chÊt tỉng qu¸t ho¸ cịng cã số báo khác ông [BDSHKVY93] Beimel Chor [BC94] Diffie Hellman đa thuật toán trao đổi khoá họ [DH76] ý tởng trao đổi khoá đợc Merkle đa độc lập [ME78] Những ý kiến trao đổi khoá xác thực đợc lấy từ Diffie, Van Oorschot Wiener [DVW92] Phiên thứ Kerobos đợc mô tả [KN93] Còn báo gần Kerobos xem [SC94] cđa Schiller C¸c giao thøc cđa Matsumoto, Takashima Imai tìm thấy [MTI86] Phân phối khoá tự xác nhận đợc giới thiệu Girault [GIR91] Sơ đồ mà ông đa thực sơ đồ phân phối khoá trớc: Bản cải tiến sơ đồ thoả thuận khoá dựa [RV94] Hai tổng quan gần phân phối khoá thoả thuận khoá lµ cđa Rueppel vµ Van Oorschot [RV94] vµ Van Tilburg [VT93] Bài tập 8.1 Giả sử sơ đồ Blom với k =1 đợc thực cho tập ngời sử dụng, U, V, W X Giả thiết p = 7873, rU = 2365, rV =6648, rW = 1837 cßn rX = 2186 Các đa thức mật g nh sau: gU(x) = 6018 + 6351x gV(x) = 3749 + 7121x gW(x) = 7601 + 7802x gX(x) = 635 + 6828x a/ Tính khoá cho cặp ngời sử dụng, xác minh cặp nhận đợc khoá chung (nghĩa KU,V = KV,U v.v ) b/ Chỉ cách W X tính khoá KV,U 8.2 Giả thiết sơ đồ Blom với k = đợc thực hiƯn cho tËp ngêi sư dơng U, V, W, X Y Giả thiết p = 97, rU = 14, rV = 38, rW = 92, rX =69 cßn rY = 70 Các đa thức mật g nh sau: gU(x) = 15 + 15x + 2x2 gV(x) = 95 + 77x + 83x2 gW(x) = 88 + 32x + 18x2 gX(x) = 62 + 91x + 59x2 gY(x) = 10 + 82x + 52x2 a/ ChØ c¸ch U V tính khoá KU,V = KV,U b/ Chỉ cách W, X Y tính khoá KU,V Hình 8.10: Bài toán MTI Bài toán: I =(p, , , , , ) p số nguyên tố, Z*P phần tử nguyên thuỷ β, γ, δ, ε ∈Z*P Mơc tiªu: TÝnh β log γ δ log ε mod p 8.3 Gi¶ thiÕt U V tiến hành trao đổi khoá theo sơ đồ Diffie - Hellman víi p = 27001 vµ α = 101 Giả sử U chọn aU = 21768 V chän aV = 9898 H·y chØ c¸c tÝnh to¸n mà U V thực xác định khoá mà họ tính đợc 8.4 Giả thiết U V tiÕn hµnh giao thøc MTI víi p = 30113, α = 52 Gi¶ sư U cã aU = 12385 H·y tính toán mà U V thực xác định khoá mà họ tính đợc 8.5 Nếu đối phơng thụ động cố gắng tính K U V xây dựng giao thc MTI (hình 8.10), phải đối mặt với toán MTI Chứng minh thuật toán giải đợc toán MTI giải đợc toán Diffie Hellman ngợc lại 8.6 Xét sơ đồ định danh Girault p = 167, q = 179 n = 29893 Giả sư α = vµ e = 11101 a/ TÝnh d b/ Cho tríc ID(U) = 10021 vµ aU = 9843, tÝnh bU vµ pU Cho tríc ID(V) = 10022 vµ aV = 7692, h·y tÝnh bV vµ pV c/ Chỉ ta cách tính bU từ pU ID(V) cách dùng số mũ công khai e Tơng tự, cách tính bV từ pV ID(V) d/ Giả sử U chọn rU = 15556 V chän rV = 6420 H·y tÝnh sU vµ sV cách U V tính khoá chung cña hä α α ... này, thảo luận vài biện pháp thiết lập khoá mật Ta phân biệt phân phối khoá thoả thuận vể khoá Phân phối khoá đợc định nghĩa chế nhóm chọn khoá mật sau truyền đến nhóm khác Còn thoả thuận khoá giao... Phân phối khoá tự xác nhận đợc giới thiệu Girault [GIR91] Sơ đồ mà ông đa thực sơ đồ phân phối khoá trớc: Bản cải tiến sơ đồ thoả thuận khoá dựa [RV94] Hai tổng quan gần phân phối khoá thoả thuận. .. biện pháp Nếu nh cảm thấy vấn đề phân phối khoá thông qua TA không thực tế không mong muốn biện pháp chung dùng giao thức thoả thuận khoá Trong giao thức thoả thuận khoá, U V kết hợp chọn khoá