Việc chứng minh sử dụng bộ dữ liệu (g, x, h, y) với g, x, h, y€ Zp, và ta lấy một số α€Zp thoả mãn x = gα và
y= hα.
Cho một số ngẫu nhiên c, r bất kỳ có thể dựng được bộ (grx –c, hry –c, c, r), có thể chấp nhận phép biến đổi là đúng. Tuy vậy, việc chứng minh đưa ra a, b trước khi nhận được c, không có giá trị α thì không thể tính được r thoả mãn yêu cầu.
15 trang |
Chia sẻ: haohao89 | Lượt xem: 2359 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Đề tài Kỹ thuật chia sẻ khóa bí mật, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Trường Đại học Dân lập Hải PhòngKhoa Công nghệ Thông tin Bài tập lớn môn: AN TOÀN BẢO MẬT THÔNG TIN Đề tài: KỸ THUẬT CHIA SẺ KHÓA BÍ MẬT Giảng viên: Ths Trần Ngọc Thái Sinh viên: Hoàng Ngọc Cường Mạc Thùy Linh Lớp: CT702 Nội dung 1. Ký hiệu 2. Lược đồ chia sẻ khóa bí mật 3. Chia sẻ bí mật 4. Đẳng thức logarit rời rạc 5. Đảm bảo tri thức của khóa bí mật 1. Ký hiệu A1, A2, … , An: N điểm tin cậy A: tập hợp bất kỳ t+1 điểm tin cậy V1, V2, …, Vm: M cử tri Zp: trường số nguyên dương modulo p, với p là số nguyên tố Zn*: bộ các số nguyên từ Zn số nguyên tố đến n a|b: một số nguyên a là một phép chia lấy phần nguyên cho một số b gcd (a,b): ước số chung lớn nhất của a và b a||b: ghép chuỗi a và b x ?= y: kiểm tra x bằng y không 2. Lược đồ chia sẻ khóa bí mật Mỗi bí mật sẽ được chia cắt thành các phần nhỏ. Mục đích của lược đồ chia sẻ bí mật là chia sẻ một bí mật (gồm N phần phần bí mật nhỏ) cho N điếm tin cậy. Mà trong đó chỉ có một vài điểm tin cậy là có thể xây dựng lại bí mật. Chúng tôi giới thiệu lược đồ chia sẻ bí mật của Shamir (t+1, N) mà sự liên hệ bất kỳ của t+1 trong N điểm tin cậy có thể tạo ra bí mật. Sự phân phối bí mật: Một bí mật s € F được phân phối trong N điểm tin cậy; mỗi điểm tin cậy nhận được một phần sj € F của bí mật. Một tư tưởng đơn giản như sau: Lựa chọn một đa thức f bậc t ngẫu nhiên trên trường F thoả mãn f(0) = s. Aj được nhận một phần bí mật sj = f(j). 2. Lược đồ chia sẻ khóa bí mật Sự tái lập bí mật: bộ của t+1 điểm tin cậy A đạt tới bí mật s bằng cách khôi phục lại đa thức f (sử dụng phép nội suy Lagrange) và tính s = f (0). Thông tin mà t hoặc thấp hơn điểm tin cậy về đa thức f không bộc lộ giá trị f(0) = s. Dù họ lựa chọn giá trị nào cho f(0) = r, sử dụng các phần bí mật họ có thể tính toán ra đa thức g thoả mãn g(0) = r. 3. Chia sẻ bí mật Lược đồ chia sẻ bí mật cho phép kiểm tra việc phân phối các thành phần nhỏ của bí mật có hợp lệ không và cho phép phát hiện các điểm không đáng tin cậy trong quá trình chia sẻ của nó. Khởi tạo: nhóm Zp và bộ xuất phát G, g được lựa chọn. Điểm tin cậy Aj lựa chọn khoá bí mật zj của nó và công bố khoá công khai là hj = gzj. Nhà phân phối muốn chia sẻ một bí mật gs cho những người tin cậy. 3. Chia sẻ bí mật Phân phối chia sẻ: nhà phân phối lựa chọn một đa thức ngẫu nhiên bậc t trên Zp: với α0 = s và α1, …, αt € Zp . Đa thức này lưu trữ bí mật và hàm chuyển Ck=Gαk, 0<= k<= t cũng như mã hoá các phần Hj=hjp(j), j = 1, 2, …, N được công bố. Hơn nữa, nhà phân phối phải mã hoá các phần một cách nhất quán: Để Nhà phân phối chứng minh rằng: log GXj = log hj Hj (Slide 10) 3. Chia sẻ bí mật Tái lập lại bí mật: Điểm tin cậy Aj giải mã thành phần Sj= gp(j) của nó bằng cách tính toán Sj=Hj/zj. Aj chỉ chứng minh rằng logGhj = - logHjSj . Hơn nữa, giả sử rằng t+1 điểm tin cậy Aj. Bí mật gs được khôi phục lại bằng phép nội suy Lagrange 4. Đẳng thức logarit rời rạc Việc chứng minh sử dụng bộ dữ liệu (g, x, h, y) với g, x, h, y€ Zp, và ta lấy một số α€Zp thoả mãn x = gα và y= hα. Cho một số ngẫu nhiên c, r bất kỳ có thể dựng được bộ (grx –c, hry –c, c, r), có thể chấp nhận phép biến đổi là đúng. Tuy vậy, việc chứng minh đưa ra a, b trước khi nhận được c, không có giá trị α thì không thể tính được r thoả mãn yêu cầu. 4. Đẳng thức logarit rời rạc 5. Đảm bảo tri thức của khoá bí mật Nghi thức này được sử dụng để cho cá nhân đáng tin cậy thật sự biết khoá bí mật zv mình nhận được hoàn toàn tương xứng với khoá công khai hv = gzv. Nếu cá nhân đáng tin cậy không biết khoá bí mật của mình thì anh ta thực hiện theo thứ tự bắt buộc (các bắt buộc có chứa khoá bí mật), thì cuối cùng anh ta cũng biết được khoá bí mật của mình. 5. Đảm bảo tri thức của khoá bí mật Khoá bí mật zv của cá nhân đáng tin cậy được kiểm chứng lại bằng N cá nhân đáng tin cậy khác. Chúng chỉ là khoá giả và có ít nhất t trong số chúng là thật. Vì vậy cần phải có một kênh riêng (kênh an toàn) giữa các cá nhân đáng tin cậy với người có thẩm quyền. 5. Đảm bảo tri thức của khoá bí mật Mỗi cá nhân chia sẻ khoá bí mật zv của mình với người tin cậy khác sử dụng lược đồ chia sẻ bí mật (t+1, N). Lựa chọn một đa thức bậc t ngẫu nhiên: Gửi sj = fv(j) trên kênh riêng cho1 Aj, j =1, …, N. Chuyển các hệ số của đa thức bằng cách gửi Gj = gαj từ bản tin. Mỗi điểm tin cậy Aj , kiểm tra lại xem thông tin chia sẻ sj nhận được có tương ứng với đa thức đã nhận hay không: 5. Đảm bảo tri thức của khoá bí mật Nếu Aj phát hiện ra một lỗi thì sẽ thông báo và công bố phần thông tin của mình trên bản tin. Nếu phần thông tin được đưa lên không phù hợp thì Aj sẽ bị loại trừ. Cuối cùng, mọi cá nhân tin cậy sẽ nhận được phần thông tin phù hợp và gởi phần thông tin của mình đến người có thẩm quyền qua kênh riêng. Có thấp nhất t điểm tin cậy sẽ thông báo lỗi hoặc gởi phần bí mật của họ cho người có thẩm quyền. Người có thẩm quyền có thể tuỳ ý thêm vào các phần thông tin mình nhận được để tạo khóa bí mật zv. Lời kết Chúng em xin chân thành cảm ơn thầy Trần Ngọc Thái đã cung cấp tài liệu để chúng em hoàn thành bài tập này. Trong quá trình làm bài tập do hiểu biết còn hạn chế nên có nhiều thiếu sót. Mong nhận được sự đóng góp ý kiến của thầy cô và các bạn để bài tập của chúng em hoàn thiện hơn. The End.