Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 49 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
49
Dung lượng
3,61 MB
Nội dung
Công ty luật Minh Khuê www.luatminhkhue.vn TIÊU CHUẨN QUỐC GIA TCVN 12855-2:2020 ISO/IEC 9796-2:2010 CÔNG NGHỆ THÔNG TIN - CÁC KỸ THUẬT AN TOÀN - LƯỢC ĐỒ CHỮ KÝ SỐ CHO KHÔI PHỤC THÔNG ĐIỆP - PHẦN 2: CÁC CƠ CHẾ DỰA TRÊN PHÂN TÍCH SỐ NGUYÊN Information technology - Security techniques - Digital signature achemes giving message recovery - Part 2: Integer factorization based mechanisms Lời nói đầu TCVN 12855-2:2020 hoàn toàn tương đương với ISO/IEC 9796-2:2010 TCVN 12855-2:2020 (ISO/IEC 9796-2:2010) Cục Quản lý mật mã dân Kiểm định sản phẩm mật mã biên soạn, Ban Cơ yếu Chính phủ đề nghị, Tổng cục Tiêu chuẩn Đo lường Chất lượng thẩm định, Bộ Khoa học Công nghệ công bố Bộ tiêu chuẩn TCVN 12855:2020 Công nghệ thơng tin - Các kỹ thuật an tồn - Lược đồ chữ ký số cho khôi phục thông điệp gồm tiêu chuẩn sau: TCVN 12855-2:2020 (ISO/IEC 9796-2:2010), Phần 2: Các chế dựa phân tích số nguyên TCVN 12855-3:2020 (ISO/IEC 9796-3:2013), Phần 3: Các chế dựa vào logarit rời rạc Bộ tiêu chuẩn có phần CƠNG NGHỆ THƠNG TIN - CÁC KỸ THUẬT AN TOÀN - LƯỢC ĐỒ CHỮ KÝ SỐ CHO KHÔI PHỤC THÔNG ĐIỆP - PHẦN 2: CÁC CƠ CHẾ DỰA TRÊN PHÂN TÍCH SỐ NGUYÊN Information technology - Security techniques - Digital signature schemes giving message recovery - Part 2: Integer factorization based mechanisms Phạm vi áp dụng Tiêu chuẩn quy định ba lược đồ chữ ký số cho khôi phục thông điệp, hai số đỏ tất định (không ngẫu nhiên) ngẫu nhiên Sự an toàn ba lược đồ dựa độ phức tạp việc phân tích số nguyên lớn Tất ba lược đồ cung cấp khơi phục tồn phần thông điệp Tiêu chuẩn quy định phương pháp sản xuất khóa cho ba lược đồ chữ ký Tuy nhiên, kỹ thuật quản lý khóa tạo số ngẫu nhiên (theo yêu cầu lược đồ chữ ký ngẫu nhiên) nằm phạm vi tiêu chuẩn Cơ chế quy định tiêu chuẩn áp dụng cho triển khai có giữ lại lý tương thích ngược Tài liệu viện dẫn Các tài liệu viện dẫn sau cần thiết cho việc áp dụng tiêu chuẩn Đối với tài liệu viện dẫn có năm cơng bố, áp dụng phiên nêu Đối với tài liệu viện dẫn không ghi năm cơng bố, áp dụng phiên (bao gồm sửa đổi, bổ sung) TCVN 11816 (ISO/IEC 10118) (tất phần), Công nghệ thông tin - Các kỹ thuật an toàn Hàm băm Thuật ngữ định nghĩa Tiêu chuẩn áp dụng thuật ngữ định nghĩa sau: 3.1 LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn Khả (capacity) Số nguyên dương số bit có chữ ký thuộc phần khôi phục thông điệp 3.2 Miền chứng thư (certificate domain) Tập hợp thực thể sử dụng chứng thư khóa cơng khai tạo Cơ quan Chứng thực (CA) tập hợp CA hoạt động theo sách bảo mật 3.3 Các tham số miền chứng thư (certificate domain parameters) Các tham số mật mã cụ thể cho miền chứng thư, biết đến đồng ý tất thành viên miền chứng thư 3.4 Hàm băm kháng va chạm (collision-resistant hash-function) Hàm băm thỏa mãn tính chất sau đây: Khơng thể tính tốn để tìm hai giá trị đầu vào khác mà ánh xạ đến đầu [TCVN 11816 (ISO/IEC 10118-1)] 3.5 Mã băm (hash-code) Xâu bit giá trị đầu hàm băm [TCVN 11816 (ISO/IEC 10118-1)] 3.6 Hàm băm (hash-function) Hàm ánh xạ xâu bit thành xâu có độ dài cố định, thỏa mãn hai tính chất sau đây: - Với giá trị đầu cho trước, khơng thể tính tốn để tìm giá trị đầu vào ánh xạ đến giá trị đầu đó; - Với giá trị đầu vào cho trước, khơng thể tính tốn để tìm giá trị đầu vào khác cho ánh xạ đến giá trị đầu [ISO/IEC 9797-2] 3.7 Hàm tạo mặt nạ (mask generation function) Hàm ánh xạ xâu bit thành xâu bit có độ dài tùy ý, thỏa mãn tính chất sau đây: - Với phần cho trước giá trị đầu giá trị đầu vào, khơng thể tính tốn để dự đốn phần lại giá trị đầu 3.8 Thơng điệp (message) Xâu bit có độ dài [TCVN 12214-1] 3.9 Giá trị đại diện thông điệp (message representative) Xâu bit lấy từ hàm thơng điệp kết hợp với khóa chữ ký bí mật để thu LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn chữ ký 3.10 Xâu bốn (nibble) Khối bốn bit liên tiếp (một nửa xâu tám) 3.11 Phần khôi phục (non-recoverable part) Phần thông điệp lưu trữ truyền với chữ ký; rỗng thơng điệp khơi phục tồn 3.12 Xâu tám (octet) Xâu tám bit 3.13 Khóa riêng (private key) Khóa cặp khóa phi đối xứng thực thể sử dụng thực thể [TCVN 11817-1] 3.14 Khóa chữ ký riêng (private signature key) Khóa bí mật định nghĩa phép biến đổi chữ ký bí mật [TCVN 11817-1] 3.15 Khóa cơng khai (public key) Khóa cặp khóa phi đối xứng thực thể cơng khai [TCVN 11817-1] 3.16 Hệ thống khóa cơng khai (public key system) Lược đồ mật mã bao gồm ba hàm số sau đây: - Sản xuất khóa, phương thức tạo cặp khóa gồm khóa chữ ký bí mật khóa xác thực cơng khai; - Tạo chữ ký, phương thức tạo chữ ký Σ từ giá trị đại diện thông điệp F khóa chữ ký bí mật; - Mở chữ ký, phương thức thu giá trị đại diện thông điệp F* từ chữ ký Σ khóa xác thực cơng khai CHÚ THÍCH Giá trị đầu hàm chứa số biểu thị thủ tục mở chữ ký thành công hay bị lỗi 3.17 Khóa xác thực cơng khai (public verification key) Khóa cơng khai định nghĩa phép biến đổi xác thực công khai [TCVN 11817-1] 3.18 LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Kh www.luatminhkhue.vn Phần khơi phục (recoverable part) Phần thông điệp truyền tải bên chữ ký 3.19 Salt (Salt) Mục liệu ngẫu nhiên tạo thực thể ký trình tạo giá trị đại diện thông điệp Lược đồ chữ ký 3.20 Chữ ký (signature) Xâu bit kết trình ký [TCVN 12214-1] 3.21 Trailer (trailer) Xâu bit có độ dài hai xâu tám, nối vào cuối phần khơi phục thơng điệp q trình tạo giá trị đại diện thông điệp Ký hiệu chữ viết tắt Tiêu chuẩn áp dụng ký hiệu chữ viết tắt sau: CHÚ THÍCH Trong hầu hết trường hợp, chữ viết hoa sử dụng để biểu thị xâu bit xâu tám, chữ viết thường sử dụng để biểu thị hàm số C Độ dài bit xâu mã tám phần khơi phục thông điệp (được sử dụng tạo giá trị đại diện thông điệp Lược đồ chữ ký 3) c Năng lực lược đồ chữ ký, có nghĩa số lượng bit tối đa sẵn sàng cho phần khơi phục thơng điệp c* Độ dài thơng điệp khơi phục được, có nghĩa độ dài tính bit phần khơi phục thơng điệp (c≥c*) D, D’ Các xâu bit tạo q trình tạo giá trị đại diện thơng điệp Lược đồ chữ ký D*, D’* Các xâu bit tạo lúc khôi phục thông điệp Lược đồ chữ ký F Giá trị đại diện thông điệp (một xâu bit) F* Giá trị đại diện thông điệp khôi phục (giá trị đầu bước mở chữ ký) g Hàm tạo mặt nạ H Mã băm tính tốn hàm thơng điệp M (một xâu bit) H* Mã băm khôi phục cách lấy từ việc khôi phục thông điệp h Hàm băm kháng va chạm k Độ dài bit mơ-đun khóa chữ ký bí mật khóa xác thực cơng khai (xem Phụ Lục A) Lh Độ dài bit mã băm tạo hàm băm h Ls Độ dài bit salt S M Thông điệp để ký (một xâu bit) M* Thông điệp khôi phục từ chữ ký kết trình xác thực LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn C Độ dài bit xâu mã tám phần khơi phục thơng điệp (được sử dụng tạo giá trị đại diện thông điệp Lược đồ chữ ký 3) M1 Phần khơi phục thơng điệp M, có nghĩa M = M1 || M2 M1* Phần khơi phục khơi phục thơng điệp (được tạo q trình khơi phục thơng điệp) M2 Phần khôi phục thông điệp M, có nghĩa M = M1 || M2 M2* Phần khôi phục thông điệp, đầu vào trình xác thực N Xâu bit xây dựng tạo giá trị đại diện thông điệp Lược đồ chữ ký N* Xâu bit tạo q trình khơi phục thơng điệp Lược đồ chữ ký P Một xâu bit xây dựng tạo giá trị đại diện thông điệp Lược đồ chữ ký S Salt (một xâu bit) S* Salt khôi phục (một xâu bit) t Số xâu tám trường Trailer (t = 2) T Trường Trailer (một xâu có độ dài 8t bit sử dụng tạo giá trị đại diện thông điệp) Δ Số nguyên khoảng từ đến sử dụng đặc tả phân bổ thông điệp δ Số nguyên khoảng từ đến sử dụng đặc tả Lược đồ chữ ký Σ Chữ ký (một xâu bit chứa k-1 k bit) |A| Độ dài bit xâu bit A, nghĩa số bit A A || B Phép ghép nối xâu bit A B (theo thứ tự đó) a Đối với số thực a, số nguyên nhỏ không nhỏ a a mod n Đối với số nguyên a n, (a mod n) biểu thị số dư (không âm) thu chia a cho n Một cách tương đương b = a mod n, b số nguyên thỏa mãn: (i) ≤ b < n, (ii) (b-a) bội số nguyên n Toán tử XOR thực bit, sử dụng để kết hợp hai xâu nhị phân có độ dài Sự chuyển đổi xâu bit số nguyên Để biểu diễn số nguyên khơng âm x dạng xâu bit có độ dài l (l phải thỏa mãn 2t > x), số nguyên viết lại dạng biểu thức nhị phân nhất: Trong ≤ xi ≤ (lưu ý vài chữ số đầu x < 2l-1 Xâu bit xl1xl-2 x0 Để biểu diễn xâu bit xl-1xl-2 x0 (có độ dài l) thành số nguyên x, trình đảo ngược sau, x số nguyên định nghĩa công thức Yêu cầu Người sử dụng tiêu chuẩn này, có thể, khuyến nghị áp dụng chế thứ hai (Lược đồ LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn chữ ký số 2) Tuy nhiên, môi trường mà việc tạo biến ngẫu nhiên người ký coi khơng khả thi, Lược đồ chữ ký số khuyến nghị sử dụng Người sử dụng muốn dùng chế chữ ký số theo tiêu chuẩn phải đảm bảo thuộc tính sau thỏa mãn: a) Thông điệp M để ký chuỗi nhị phân có độ dài bất kỳ, rỗng b) Hàm ký sử dụng khóa chữ ký bí mật, hàm xác thực sử dụng khóa xác thực công khai tương ứng - Mỗi thực thể ký sử dụng giữ bí mật khóa chữ ký bí mật tương ứng với khóa xác thực công khai - Mỗi thực thể xác thực phải biết khóa xác thực cơng khai thực thể ký c) Việc sử dụng lược đồ chữ ký quy định tiêu chuẩn đòi hỏi phải lựa chọn hàm băm kháng va chạm h Hàm băm tiêu chuẩn hóa theo TCVN 11816 Sẽ có ràng buộc chế ký hàm băm sử dụng Nếu khơng có ràng buộc này, kẻ thù yêu cầu sử dụng hàm băm yếu (chứ hàm băm thực) từ giả mạo chữ ký CHÚ THÍCH Có nhiều cách để thực điều kiện Các tùy chọn sau liệt kê theo thứ tự tăng dần rủi ro Yêu cầu hàm băm cụ thể sử dụng chế ký cụ thể Quá trình xác minh sử dụng hàm băm cụ thể TCVN 12214-3 cung cấp ví dụ tùy chọn chế DSA yêu cầu sử dụng chức hàm băm chuyên dụng theo TCVN 11816-3 (TCVN 11816-3) (còn gọi SHA-1) Cho phép tập hợp hàm băm định hàm băm sử dụng tham số miền chứng thư Trong miền chứng thư này, trình xác minh sử dụng hàm băm định chứng thư Bên ngồi miền chứng thư này, rủi ro phát sinh từ quan chứng thực (CA) không tuân thủ sách người dùng Nếu, ví dụ, CA bên tạo chứng thư số cho phép hàm băm khác, vấn đề giả mạo chữ ký phát sinh Trong trường hợp vậy, bên xác thực nhầm lẫn tranh chấp với CA tạo chứng thư số khác Cho phép tập hợp hàm băm định hàm băm sử dụng số phương pháp khác, ví dụ số biểu thị thông điệp thỏa thuận song phương Quá trình xác thực sử dụng hàm băm phương pháp khác Tuy nhiên, có nguy kẻ thù giả mạo chữ ký cách sử dụng hàm băm khác CHÚ THÍCH Phương pháp khác đề cập đến đoạn phía dạng số mã nhận dạng hàm băm có giá trị đại diện thông điệp F (xem mục 8.2.2 9.2.3) Nếu mã nhận dạng hàm băm bao gồm F theo cách kẻ cơng khơng thể sử dụng lại chữ ký có với M1 M2 khác, bên xác thực bị thuyết phục chấp nhận chữ ký tạo cách sử dụng hàm băm đủ yếu mà tìm tiền ảnh Tuy nhiên, thảo luận chi tiết [16] (xem phụ lục D), trường hợp sử dụng hàm băm yếu, kẻ cơng tìm thấy chữ ký với M1 "ngẫu nhiên" CHÚ THÍCH Cuộc cơng đề cập CHÚ THÍCH thu chữ ký với M1 'ngẫu nhiên' ngăn chặn cách yêu cầu tồn cấu trúc cụ thể M1 Chẳng hạn như, áp đặt giới hạn độ dài cho M1 đủ nhỏ lực lược đồ chữ ký (xem thêm Phụ lục D) Đối với lược đồ chữ ký số 3, giới hạn độ dài cho M1 ngăn chặn kẻ cơng sử dụng lại chữ ký có khơng có mã nhận dạng hàm băm đưa vào giá trị đại diện thông điệp, với điều kiện hàm tạo mặt nạ g dựa hàm băm Điều dựa giả định hợp lý hàm băm yếu hàm băm "mục đích chung" hàm băm thiết kế nhằm mục đích giả mạo chữ ký LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn Người sử dụng chế chữ ký số cần tiến hành đánh giá rủi ro xem xét chi phí lợi ích phương tiện thay khác để đạt điều kiện bắt buộc Đánh giá phải bao gồm đánh giá chi phí kết hợp với khả có chữ ký giả mạo sản xuất d) Bên xác thực chữ ký luôn có phương thức độc lập an tồn để xác định lược đồ ba lược đồ chữ ký quy định tiêu chuẩn sử dụng để tạo chữ ký Ngoài ra, sử dụng Lược đồ chữ ký số 3, bên xác thực chữ ký phải có phương thức để xác định hàm tạo chữ ký hai hàm tạo chữ ký Phụ lục B sử dụng Điều thu cách quy định chế hàm tạo chữ ký ‘các tham số miền’ đồng ý cách đưa mã nhận dạng rõ ràng cho lược đồ chữ ký hàm tạo chữ ký chứng thư khóa cơng khai người ký Hàm tạo chữ ký quy định mã nhận dạng thuật toán liên kết với liệu ký e) Mỗi lược đồ chữ ký số quy định tiêu chuẩn có tùy chọn cụ thể, phạm vi tùy chọn người ký phải biết đến bên xác thực phương thức độc lập an toàn Các tùy chọn bao gồm - Đối với tất ba lược đồ chữ ký số, bên xác thực phải biết xem trường trailer tùy chọn có làm việc hay không - Đối với lược đồ chữ ký số 3, bên xác thực phải biết L s, độ dài salt S Ví dụ, điều thu cách quy định lựa chọn tùy chọn “các tham số miền" bao gồm thơng tin tùy chọn chứng thư khóa cơng khai người ký Mơ hình q trình ký xác thực 7.1 Tổng quan Mơ hình cho lược đồ chữ ký cho khôi phục thông điệp trình bày áp dụng cho ba lược đồ tiêu chuẩn Khi áp dụng cho thông điệp M, lược đồ chữ ký kiểu cung cấp khơi phục tồn phần thông điệp - Nếu M đủ ngắn, khơi phục tồn thơng điệp M bao gồm tồn chữ ký - Nếu M q dài, phục hồi thông điệp phần Trong trường hợp này, M chia thành phần thể khôi phục được, xâu bit có độ dài giới hạn bao gồm chữ ký, phần khôi phục được, xâu xâu tám có độ dài lưu trữ l truyền với chữ ký Mơ hình chia thành ba phần: đặc tả thủ tục ký thông điệp, đặc tả thủ tục xác thực chữ ký chi tiết khía cạnh bổ sung ký xác thực cần định nghĩa để hoàn chỉnh đặc tả lược đồ chữ ký Các điều 8, 10 quy định khía cạnh bổ sung cho ba lược đồ định nghĩa tiêu chuẩn 7.2 Ký thông điệp 7.2.1 Giới thiệu Cho thông điệp M ký, cần phải thực ba bước để tạo chữ ký M, cụ thể phân bổ thơng điệp, tạo xâu khơi phục tạo chữ ký - Phân bổ thông điệp bao gồm q trình thơng điệp chia thành hai phần: phần khơi phục M1 phần khơng thể khơi phục M2 (có thể rỗng) Độ dài phần khơi phục được giới hạn lực c lược đồ chữ ký, giá trị xác định việc lựa chọn lược đồ chữ ký khóa lược đồ Phần khơi phục khơi phục từ chữ ký trình xác thực, phần khôi phục phải cung cấp cho bên xác thực phương thức khác (ví dụ gửi lưu trữ với chữ ký) Do đó, thơng điệp đủ ngắn, tồn thơng điệp phân bổ vào phần khơi phục được, phần khơng thể khơi phục rỗng - Tạo giá trị đại diện thông điệp lấy đầu vào hai phần thông điệp, đầu xâu có định dạng, gọi giá trị đại diện thông điệp, đầu vào cho bước tạo chữ ký LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn - Tạo chữ ký lấy đầu vào giá trị đại diện thơng điệp khóa chữ ký bí mật đầu chữ ký Σ Quá trình thực cách sử dụng hệ thống khóa cơng khai 7.2.2 Phân bổ thông điệp Sự lựa chọn lược đồ chữ ký khóa cho lược đồ xác định lực c chữ ký, c phải thỏa mãn c ≥ Thông điệp M cần ký chia thành hai phần, M1 M2 sau Một độ dài thơng điệp khơi phục c* lựa chọn, c* ≤ c, c* ≤ |M| c* = |M| (mod 8) Đối với Lược đồ chữ ký 1, c* thiết lập với giá trị nhỏ c - Δ |M|, Δ = (c - |M|)mod - Nếu |M| = c* tồn thơng điệp khơi phục được, có nghĩa M1 = M M2 rỗng - Nếu |M| > c* M1 thiết lập với c* bit bên trái M, M2 thiết lập với phần cịn lại M, có nghĩa M2 chứa |M| - c* bit Trong hai trường hợp, M = M1 || M2 CHÚ THÍCH Để phục vụ mục đích thực tiễn, ứng dụng muốn cấu trúc thông điệp M để đảm bảo liệu mà cần lưu trữ truyền dạng rõ (ví dụ: thơng tin địa chỉ) phân bổ vào phần thông điệp phục hồi M2 Tuy nhiên, việc cấu trúc biểu diễn thông điệp M nằm phạm vi tiêu chuẩn CHÚ THÍCH Phương thức phân bổ thơng điệp đảm bảo M2 ln ln có độ dài số nguyên lần xâu tám Hơn nữa, chọn c* giá trị nhỏ c - Δ |M|, Δ = (c |M|)mod8, đảm bảo M1 dài tốt điều kiện Ngồi ra, M có độ dài số ngun lần xâu tám, tức |M| bội số nguyên 8, M1 M2 bao gồm số nguyên lần xâu tám 7.2.3 Tạo giá trị đại diện thông điệp Bước lấy đầu vào phần khôi phục phần khôi phục thông điệp, M1 M2, đầu giá trị đại diện thông điệp F Điều đạt cách sử dụng phương pháp quy định điều 8, 10 tiêu chuẩn Các phương pháp yêu cầu phải sử dụng hàm băm h, trường hợp chế thứ hai thứ ba, hàm tạo mặt nạ g sử dụng h Hàm băm h sử dụng lựa chọn hàm băm tiêu chuẩn hóa theo TCVN 11816; hàm tạo mặt nạ g thiết lập hàm quy định Phụ lục C tiêu chuẩn 7.2.4 Tạo chữ ký Bước lấy đầu vào giá trị đại diện thông điệp khóa chữ ký bí mật đầu chữ ký Σ Điều đạt cách sử dụng hệ thống khóa cơng khai quy định Phục lục B tiêu chuẩn 7.3 Xác thực chữ ký 7.3.1 Giới thiệu Một thông điệp ký bao gồm chữ ký Σ trường hợp khơi phục tồn phần khơng thể khơi phục thông điệp M2* với chữ ký Σ trường hợp khôi phục phần Một chữ ký chấp nhận trình xác thực thành công Cho chữ ký Σ phần thông khôi phục M2*, cần phải thực ba bước sau để xác thực Σ khôi phục M*, cụ thể mở chữ ký, khôi phục thông điệp lắp ghép thông điệp - Mở chữ ký lấy đầu vào chữ ký Σ khóa xác thực cơng khai đầu giá trị đại diện thông điệp khôi phục F* trả báo hiệu việc xác thực bị lỗi Quá trình thực cách sử dụng hệ thống khóa cơng khai - Khôi phục thông điệp lấy đầu vào giá trị đại diện thông điệp khôi phục F* LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn phần khôi phục thông điệp M2*, đầu phần khơi phục (đã khơi phục) thông điệp M1* trả báo hiệu việc xác thực bị lỗi - Lắp ghép thông điệp q trình mà thơng điệp phục hồi M* khơi phục từ phần khơi phục (đã khôi phục) M1* phần khôi phục M2* (có thể rỗng) 7.3.2 Mở chữ ký Bước lấy đầu vào chữ ký Σ khóa xác thực công khai đầu giá trị đại diện thông điệp khôi phục F* trả báo hiệu việc xác thực bị lỗi Điều đạt cách sử dụng hệ thống khóa cơng khai quy định Phục lục B tiêu chuẩn 7.3.3 Khôi phục thông điệp Bước lấy đầu vào giá trị đại diện thông điệp khôi phục F* phần khôi phục thông điệp M2*, đầu phần khơi phục (đã khôi phục) thông điệp M1* trả báo hiệu việc xác thực bị lỗi Điều đạt cách sử dụng phương pháp quy định điều 8, 10 tiêu chuẩn Các phương pháp yêu cầu phải sử dụng hàm băm, trường hợp chế thứ hai thứ ba, hàm tạo mặt nạ Hàm băm sử dụng lựa chọn hàm băm tiêu chuẩn hóa theo TCVN 11816; hàm tạo mặt nạ thiết lập hàm quy định Phụ lục C tiêu chuẩn 7.3.4 Lắp ghép thơng điệp Lắp ghép thơng điệp q trình mà thông điệp phục hồi M* khôi phục từ phần khơi phục (đã khơi phục) M1* phần khơng thể khơi phục M2* (có thể rỗng) Có nghĩa là, thơng điệp M* ghép lại với M* = M1* || M2* 7.4 Quy định lược đồ chữ ký Mục đích mục 7.4 định nghĩa lựa chọn cần thực để quy định thống trình ký xác thực quy định tiêu chuẩn a) Các bước phân bổ thông điệp lắp ghép thông điệp định nghĩa tiêu chuẩn b) Phải chọn ba tùy chọn bước tạo giá trị đại diện thông điệp khôi phục thông điệp, định nghĩa điều 8, 10 tiêu chuẩn Bất kỳ lựa chọn ba lựa chọn chọn, hàm băm phải chọn hàm băm tiêu chuẩn hóa theo TCVN 11816 tùy thuộc vào điều kiện mã băm đầu chứa 160 bit Trong hai số ba trường hợp, hàm tạo mặt nạ yêu cầu thêm, hàm sử dụng định nghĩa Phụ lục C tiêu chuẩn c) Các bước tạo chữ ký mở chữ ký định nghĩa Phụ lục B tiêu chuẩn này, lựa chọn khóa chữ ký bí mật sử dụng trình tạo chữ ký, trường hợp Lược đồ chữ ký với số mũ lẻ, lựa chọn chữ ký sở thay hàm xác thực Phương pháp sử dụng để tạo cặp khóa chữ ký bí mật khóa xác thực công khai định nghĩa Phụ lục B tiêu chuẩn Lược đồ chữ ký số 8.1 Tổng quan Điều xác định trình tạo giá trị đại diện thông điệp khôi phục thông điệp cho lược đồ chữ ký số tất định cho phép khôi phục thông điệp Do công xảy (xem [5] [6]), lược đồ sử dụng môi trường nơi điều kiện mặt tính tốn đảm bảo kẻ cơng khơng thể có chữ ký số lượng lớn thông điệp lựa chọn CHÚ THÍCH Lược đồ chữ ký số nên sử dụng mơi trường địi hỏi tính tương thích với hệ thống cải đặt theo phiên tiêu chuẩn (xem [5] [6]) Tuy LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn nhiên, Lược đồ chữ ký số tương thích với hệ thống cài đặt theo phiên tiêu chuẩn sử dụng mã băm có độ dài 160 bit 8.2 Tham số 8.2.1 Độ dài theo mơ-đun Khóa chữ ký bí mật sử dụng giả định để có mơ-đun với độ dài k bit (xem Phụ lục B) Nó xác định c, lực chữ ký, độ dài F, giá trị đại diện thông điệp 8.2.2 Các tùy chọn trường trailer Trong lược đồ này, trường trailer (được sử dụng phần cấu tạo nên giá trị đại diện thông điệp) có độ dài hai xâu tám Trailer bao gồm t xâu tám (t = 2), xâu bốn bên phải luôn giá trị 'C' hệ thập lục phân Có hai lựa chọn sau cho phép - Tùy chọn (t = 1): trailer bao gồm xâu tám; xâu tám giá trị "BC” hệ thập lục phân - Tùy chọn (t = 2): trailer bao gồm hai xâu tám liên tiếp; xâu tám bên phải giá trị “CC” hệ thập lục phân xâu tám bên trái định danh hàm băm Định danh hàm băm xác định hàm băm sử dụng Khoảng từ “00” đến “7F” dành cho tiêu chuẩn ISO / IEC JTC1; TCVN 11816 quy định định danh dải cho hàm băm tiêu chuẩn hóa Khoảng từ “80” đến “FF” dành riêng cho việc sử dụng độc quyền CHÚ THÍCH Việc sử dụng tùy chọn thứ hai cần bên xác thực phải có phương tiện độc lập an tồn để biết hàm băm sử dụng để xác minh chữ ký Mặc dù điều trước cho tùy trường hợp, nhiên chứng minh sai, [16] (xem thêm Phụ lục D) 8.2.3 Năng lực Năng lực c chữ ký lược đồ xác định c = k - Lh - 8t - Như định nghĩa mục 7.2.2, độ dài c* thông điệp khơi phục phải thỏa mãn: a) c* = |M1| trường hợp khôi phục thông điệp hoàn toàn; b) c - ≤ c* ≤ c trường hợp khôi phục phần 8.3 Tạo giá trị đại diện thông điệp Trong lược đồ này, việc tạo giá trị đại diện thông điệp bao gồm hai bước chính: - Băm thơng điệp; - Định dạng 8.3.1 Băm thơng điệp Thơng điệp M (trong M = M1 || M2) đầu vào hàm băm h để thu mã băm H, có nghĩa là, H = h(M) CHÚ THÍCH H chứa Lh bit 8.3.2 Định dạng Một xâu có độ dài k bit xây dựng sau (thực từ trái sang phải): - Hai bit thiết lập “01” - Một bit thiết lập '0' trường hợp khơi phục tồn (nghĩa M = M1) ‘1’ trường hợp khôi phục phần (nghĩa |M2| > 0), - k - Lh - |M1| - 8t - bit đệm tất thiết lập ‘0’, LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn sang bên trái S'i - Xâu tám bên phải S’i “CC”; đó, trường trailer bao gồm hai xâu tám “33CC”; hai xâu tám chuyển sang bên phải S'i Định danh hàm băm “33”; đó, hàm băm sử dụng hàm băm chuyên dụng Xâu lại 1000 bit chia làm hai phần - M1* bao gồm 840 bit bên trái - H' bao gồm 160 bit bên phải Vì khơi phục phần, thơng điệp khôi phục M* bao gồm M1* M2*, phần khơng thể khơi phục Mã băm cịn lại H” tính áp dụng hàm băm SHA-1 cho xâu nhị phân có độ dài 1064 (= 64 + 840 + 160), kết việc ghép thêm 64 bit độ dài phần khôi phục C’, 840 bit phần thông điệp khôi phục M1* 160 bit mã băm phần thông điệp khôi phục h(M2*) H" = h(C'||M1*||h(M2*)) Vì hai mã băm H’ H” giống nhau, chữ ký Σ chấp nhận E.2 Các ví dụ với số mũ cơng khai Phụ lục E.2 bao gồm ví dụ với khóa cơng khai có số mũ E.2.1 Ví dụ q trình tạo khóa Khóa ví dụ có mô-đun k = 1024 bit với số mũ công khai v = Vì số mũ xác thực cơng khai v số chẵn, thừa số nguyên tố bí mật đồng dư với theo mô-đun thừa số lại đồng dư với theo mod Số đồng dư công khai n kết thừa số nguyên tố bí mật p q Độ dài 1024 bit Số mũ chữ ký bí mật s nghịch đảo phép nhân v mod lcm(p - 1, q - 1)/2 LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Cơng ty luật Minh Kh www.luatminhkhue.vn E.2.2 Các ví dụ khơi phục tồn Ở trình bày ba ví dụ tạo xác thực chữ ký, ví dụ tương ứng với ba lược đồ E.2.2.1 Ví dụ lược đồ chữ ký Ví dụ sử dụng hàm băm chuyên dụng ISO/IEC 10118-3 (còn biết đến với tên gọi SHA-1) E.2.2.1.1 Quá trình ký Trong hệ thập lục phân, thơng điệp M xâu có độ dài 48 xâu tám, nghĩa 384 bit sau 160 bit mã băm tính tốn cách áp dụng hàm băm chuyên dụng cho 384 bit M Hàm băm sử dụng biết hồn tồn Do đó, trường trailer bao gồm bit sau Thông điệp đủ ngắn để khôi phục toàn 1024 bit xâu trung gian Si kết việc nối hai bit tiêu đề “01”, bit liệu thêm thiết lập ‘0’, 468 (= 1024 - 384 -.160 - 4) bit đệm ‘0’, bit bao quanh 1, 384 bit M1 (=M), 160 bit H bit trường trailer T Xâu Sr khơi phục kết việc thay 116 xâu bốn đệm ‘0’ 116 xâu bốn đệm ‘B’ tương tự xâu bốn bao quanh ‘1’ thay ‘A’ Số nguyên khôi phục fr số nguyên dương không dấu biểu diễn Sr Vì ký hiệu Jacobi fr theo n 1, kết giữ lại lr tăng theo lũy thừa bậc s theo mơ-đun n Vì nhỏ n/2 nên kết giữ lại Xâu nhị phân biểu diễn số nguyên dạng số nguyên dương không dấu chữ ký Σ Thông điệp ký có 128 xâu tám bao gồm chữ ký M2 rỗng E.2.2.1.2 Quá trình xác thực Chữ ký Σ xâu nhị phân đại diện số nguyên dương không dấu, nhỏ n/2 số nguyên tăng theo lũy thừa bậc mô-đun n, thu số ngun fs Q trình xác thực khơng liên quan đến ký hiệu Jacobi Vì ba bit trọng số nhỏ số nguyên kết fs “001”, f'r = n - fs LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn f'r biểu diễn dạng số nguyên dương không dấu xâu khôi phục S'r - Xâu tám bên trái S'r “4B”; bao gồm tiêu đề “01”, bit liệu thêm ‘0’ (khơi phục tồn bộ), bit đệm ‘0’ xâu bốn đệm ‘B’; theo sau 115 xâu bốn 'B' xâu bốn bao quanh ‘A’; 59 xâu tám chuyển sang bên trái S'r - Xâu tám bên phải S'r “BC”; xâu tám chuyển sang bên phải S'r Vì trường trailer T “BC”, hàm băm sử dụng biết đến hồn tồn: hàm băm chun dụng ví dụ Xâu lại 544 bit chia làm hai phần - M1* bao gồm 384 bit bên trái - H' bao gồm 160 bit bên phải Thông điệp khôi phục M* bao gồm M1* khơi phục thơng điệp tồn Mã băm cịn lại H" tính áp dụng SHA-1 cho M* Vì hai mã băm H’ H” giống nhau, chữ ký chấp nhận E.2.2.2 Ví dụ lược đồ chữ ký Ví dụ sử dụng hàm băm chuyên dụng ISO/IEC 10118-3 (còn biết đến với tên gọi RIPEMD 160) E.2.2.2.1 Q trình ký Thơng điệp để ký rỗng, có nghĩa xâu nhị phân có độ dài 160 bit salt S tạo 160 bit mã băm tính tốn cách áp dụng hàm băm chuyên dụng để thu xâu nhị phân có độ dài 384 (= 64 + 160 + 160) kết ghép thêm 64 bit độ dài thơng điệp khơi phục C, 160 bit mã băm phần khôi phục h(M2) 160 bit salt S H = h(C||h(M2)||S) Hàm băm sử dụng biết đến hồn tồn Do đó, trường trailer T bao gồm bit sau Thông điệp rỗng, khơi phục tồn 1024 bit xâu trung gian Si kết việc nối 695 (= 1024 - 160 - 160 - - 1) bit đệm ‘0’, bit bao quanh 1, 160 bit S, 160 bit H bit trường trailer T Xâu khơi phục Sr thu từ việc áp dụng hàm tạo mặt nạ MGF1 856 (= 1024 - LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn 160 - 8) bit bên trái Si, bit bên trái Sr thiết lập ‘0’ δ =1 (δ = 1024)mod 8) Số ngun khơi phục fr số nguyên dương không dấu biểu diễn Sr Vì ký hiệu Jacobi fr theo n -1, số nguyên đại diện J = fr /2 J tăng theo lũy thừa bậc s mô-đun n Kết sau Vì kết lớn n/2, chữ ký Σ = n - t Thông điệp ký có 128 xâu tám bao gồm chữ ký M2 rỗng E.2.2.2.2 Quá trình xác thực Chữ ký Σ xâu nhị phân đại diện số nguyên dương không dấu, nhỏ n/2 Số nguyên tăng theo lũy thừa bậc mô-đun n, thu số ngun fs Q trình xác thực khơng liên quan đến ký hiệu Jacobi Vì ba bit trọng số nhỏ số nguyên kết fs “100”, f'r = 2fs f'r biểu diễn dạng số nguyên dương không dấu xâu khôi phục S'r Hàm tạo mặt nạ MGF1 áp dụng cho 856 (= 1024 - 160 - 8) bit bên trái S'r, từ thu xâu khôi phục tạm thời S'i S'i biểu diễn xâu khôi phục trung gian sau - Bit bên trái S'i thiết lập ‘0’ δ = (δ = (1 - 1024)mod8) 695 bit bên trái xâu nhị phân lại ‘0’; theo sau bit bao quanh “1”; 87 xâu tám chuyển sang bên trái S'i LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn - Xâu tám bên phải S'i “BC”; xâu tám chuyển sang bên phải S'i Vì trailer “BC”, hàm băm sử dụng biết đến hoàn toàn: hàm băm chuyên dụng ví dụ Xâu cịn lại 320 bit chia làm hai phần - S* bao gồm 160 bit bên phải - H' bao gồm 160 bit bên phải Thông điệp khôi phục M* giả định rỗng, khơi phục thơng điệp tồn Mã băm cịn lại H” tính áp dụng hàm băm chuyên dụng cho xâu nhị phân có độ dài 384 (=64+160+160), kết việc ghép 64 bit độ dài thông điệp khôi phục C’, 160 bit mã băm phần thông điệp khôi phục h(M2) 160 bit salt khôi phục S* H" = h(C'||h(M2)||S*) Vì hai mã băm H’ H” giống nhau, chữ ký Σ chấp nhận E.2.2.3 Ví dụ lược đồ chữ ký Ví dụ sử dụng hàm băm chuyên dụng ISO/IEC 10118-3 (còn biết đến với tên gọi SHA-1) E,1.2.3.1 Q trình ký Thơng điệp để ký xâu 64 ký tự mã ASCII sau Trong hệ thập lục phân, thơng điệp M xâu có độ dài 64 xâu tám, có nghĩa 512 bit sau Vì lược đồ chữ ký thuộc kiểu tất định, giá trị salt S có độ dài lựa chọn 160 bit mã băm tính tốn cách áp dụng hàm băm chun dụng cho xâu nhị phân có độ dài 736 (= 64 + 512 + 160), kết việc ghép thêm 64 bit độ dài thơng điệp khôi phục C, 512 bit phần thông điệp khơi phục M1 160 bit mã băm phần khôi phục h(M2) H = h(C||M1||h(M2)) Định danh trường trailer xác định hàm băm sử dụng, ISO/IEC thiết lập định danh cho hàm băm chuyên dụng giá trị “33” Do đó, trường trailer T bao gồm 16 bit sau Thơng điệp đủ ngắn để khơi phục tồn 1024 bit xâu trung gian Si kết việc nối 335 (= 1024 - 512 - 160 - 16 - 1) bit đệm ‘0’, bit bao quanh 1, 512 bit M1(=M), 160 bit S, 160 bit H 16 bit trường trailer T LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Cơng ty luật Minh Kh www.luatminhkhue.vn Xâu khôi phục Sr thu từ việc áp dụng hàm tạo mặt nạ MGF1 848 (= 1024 160 - 16) bit bên trái Si, bit bên trái Sr thiết lập ‘0’ δ =1 (δ = - 1024)mod 8) Số ngun khơi phục fr số ngun dương khơng dấu biểu diễn Sr Vì ký hiệu Jacobi fr theo n -1, số nguyên đại diện J = fr/2 J tăng theo lũy thừa bậc s mơ-đun n Vì kết nhỏ n/2, chữ ký Σ = Js Thơng điệp ký có 128 xâu tám bao gồm chữ ký M2 rỗng E.2.2.3.2 Quá trình xác thực Chữ ký Σ xâu nhị phân đại diện số nguyên dương không dấu, nhỏ n/2 Số nguyên tăng theo lũy thừa bậc mơ-đun n, thu số ngun fs Q trình xác thực khơng liên quan đến ký hiệu Jacobi Vì ba bit trọng số nhỏ số nguyên kết fs “110”, f'r = 2fs f'r biểu diễn dạng số nguyên dương không dấu xâu khôi phục S'r Hàm tạo mặt nạ MGF1 áp dụng cho 848 (= 1024 - 160 - 16) bit bên trái S'r, từ thu xâu khơi phục trung gian S'i S'i biểu diễn xâu khôi phục trung gian sau - Bit bên trái S'i thiết lập ‘0’ δ = (δ = (1 - 1024)mod8) 335 xâu tám bên trái xâu nhị phân lại '0'; theo sau bit bao quanh T; 42 xâu tám chuyển sang bên trái S'i - Xâu tám bên phải S'i “CC”; đó, trailer bao gồm hai xâu tám “33CC”; hai xâu tám chuyển sang bên phải S'i Định danh hàm băm "33”; hàm băm sử dụng hàm băm chuyên dụng LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn Xâu lại 672 bit chia làm hai phần - M1* bao gồm 512 bit bên trái - H' bao gồm 160 bit bên phải Thông điệp khôi phục M* bao gồm M1* đó, khơi phục tồn Mã băm khác H” tính cách áp dụng SHA-1 cho xâu nhị phân có độ dài 736 (= 64 + 512 + 160), kết việc ghép thêm 64 bit độ dài thông điệp khôi phục C’, 512 bit phần thông điệp khôi phục M1* 160 bit mã băm phần thông điệp khôi phục (rỗng) h(M2) H” = h(C’||M1*||h(M2*)) Vì hai mã băm H’ H” giống nhau, chữ ký Σ chấp nhận E.2.3 Các ví dụ khơi phục phần Ở trình bày ba ví dụ tạo xác thực chữ ký, ví dụ tương ứng với ba lược đồ E.2.3.1 Ví dụ lược đồ chữ ký Ví dụ sử dụng hàm băm chuyên dụng ISO/IEC 10118-3 (còn biết đến với tên gọi SHA-1) E.2.3.1.1 Q trình ký Thơng điệp để ký xâu 112 ký tự mã ASCII sau Trong hệ thập lục phân, thông điệp M xâu có độ dài 112 xâu tám, có nghĩa 896 bit sau 160 bit mã băm tính tốn cách áp dụng SHA-1 cho 896 bit M Định danh trường trailer xác định hàm băm sử dụng; ISO/IEC thiết lập định danh cho hàm băm chuyên dụng giá trị “33” Do đó, trường trailer T bao gồm 16 bit sau Thông điệp q dài để khơi phục hồn tồn q trình xác thực Do đó, chia làm hai phần - M1 bao gồm 840 bit bên trái - M2 bao gồm 56 bit cịn lại, có nghĩa xâu tám LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn 1024 bit xâu trung gian Si kết việc ghép thêm hai bit tiêu đề “01”, bit liệu thêm ‘1’, bốn (= 1024 - 840 - 160 - 16 - 4) bit đệm ‘0’, bit bao quanh 1, 840 bit M1, 160 bit H 16 bit trường trailer T Xâu khơi phục Sr kết việc xâu bốn bao quanh thay ‘A’ Số nguyên khôi phục fr số nguyên dương không dấu biểu diễn Sr Vì ký hiệu Jacobi fr theo n -1, số nguyên đại diện J = fr/2 J tăng theo lũy thừa bậc s mô-đun n Kết sau Vì kết lớn n/2, chữ ký Σ = n - Js Thông điệp ký có 128 xâu tám chữ ký Σ với xâu tám thông điệp khơi phục M2, có nghĩa nhiều 23 xâu tám so với thông điệp M E.2.3.1.2 Quá trình xác thực Chữ ký Σ xâu nhị phân đại diện số nguyên dương không dấu, nhỏ n/2 Số nguyên tăng theo lũy thừa bậc mơ-đun n, thu số ngun fs Q trình xác thực khơng liên quan đến ký hiệu Jacobi Vì ba bit trọng số nhỏ số nguyên kết fs ''110”, f'r = 2fs f'r biểu diễn dạng số nguyên dương không dấu xâu khôi phục S'r - Xâu tám bên trái S'r “6A”; bao gồm tiêu đề “01”, bit liệu thêm ‘1’ (khôi phục phần), bit đệm ‘0’ xâu bốn đệm ‘A’; xâu tám chuyển sang bên trái S'r - Xâu tám bên phải S'r “CC”; trailer bao gồm hai xâu tám “33CC”; hai xâu tám chuyển sang bên phải S'r Định danh hàm băm "33”; đó, hàm băm sử dụng hàm băm chuyên dụng Xâu lại 1000 bit chia làm hai phần LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn - M1* bao gồm 840 bit bên trái - H' bao gồm 160 bit bên phải Vì khơi phục phần, thơng điệp khơi phục M* bao gồm M1* M2*, phần khơng thể khơi phục Mã băm cịn lại H” tính áp dụng hàm băm chuyên dụng cho M* Vì hai mã băm H’ H” giống nhau, chữ ký Σ chấp nhận E.2.3.2 Ví dụ lược đồ chữ ký Ví dụ sử dụng hàm băm chuyên dụng ISO/IEC 10118-3 (còn biết đến với tên gọi RIPEMD-160) E.2.3.2.1 Q trình ký Ví dụ mơ tả chữ ký thơng điệp có độ dài 132 xâu tám, có nghĩa 1056 bit sau 160 bit salt S tạo Thông điệp q dài để khơi phục hồn tồn q trình xác thực Do đó, chia làm hai phần - M1 bao gồm 680 bit bên trái - M2 bao gồm 376 bit cịn lại, có nghĩa 47 xâu tám 160 bit mã băm tính cách áp dụng hàm băm chuyên dụng với xâu nhị phân có độ dài 1064 (= 64 + 680 + 160 + 160), kết việc ghép 64 bit độ dài phần khôi phục C, 680 bit phần thơng điệp khơi phục M1, 160 bit mã băm phần khôi phục h(M2) 160 bit salt S H = h(C||M1||h(M2)||S) Định danh trailer xác định hàm băm sử dụng; ISO/IEC thiết lập định danh cho hàm băm chuyên dụng giá trị “31” Do đó, trường trailer T bao gồm 16 bit sau 1024 bit xâu trung gian Si kết việc ghép thêm bảy (= 1024 - 680 - 160 - 160 - 16 - 1) LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn bit đệm ‘0’, bit bao quanh 1, 680 bit M1, 160 bit L, 160 bit H 16 bit trường trailer T Xâu khôi phục Sr thu từ việc áp dụng hàm tạo mặt nạ MGF1 848 (= 1024 160 - 16) bit bên trái Si, bit bên trái Sr thiết lập ‘0’ δ =1 (δ = - 1024)mod 8) Số ngun khơi phục fr số ngun dương khơng dấu biểu diễn Sr Vì ký hiệu Jacobi fr theo n -1, số nguyên đại diện J = fr/2 J tăng theo lũy thừa bậc s mơ-đun n Kết sau Vì kết lớn n/2, chữ ký Σ = n - fs Thơng điệp ký có 128 xâu tám chữ ký Σ với 47 xâu tám thơng điệp khơng thể khơi phục M2, có nghĩa nhiều 43 xâu tám so với thơng điệp M E.2.3.2.2 Q trình xác thực Chữ ký Σ xâu nhị phân đại diện số nguyên dương không dấu, nhỏ n/2 Số nguyên tăng theo lũy thừa bậc mô-đun n, thu số ngun fs Q trình xác thực khơng liên quan đến ký hiệu Jacobi Vì ba bit trọng số nhỏ số nguyên kết fs “111”, f'r - 2(n - fs) f'r biểu diễn dạng số nguyên dương không dấu xâu khôi phục S'r Hàm tạo mặt nạ MGF1 848 (= 1024 - 160 - 16) bit bên trái S'r, thu xâu khôi phục trung gian S'i LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn S'i biểu diễn xâu trung gian khôi phục sau - Bit bên trái S'i thiết lập ‘0’ δ =1 (δ = - 1024)mod 8) bit bên trái xâu cịn lại ‘0’; theo sau bit bao quanh ‘1’; xâu tám chuyển sang bên trái S'i - Xâu tám bên phải S'i “CC”; trailer bao gồm hai xâu tám “31CC”; hai xâu tám chuyển sang bên phải S'i Định danh hàm băm “31”; hàm băm sử dụng hàm băm chuyên dụng Xâu lại 1000 bit chia làm ba phần - M1* bao gồm 680 bit bên trái nhất, - S* bao gồm 160 bit bên phải - H' bao gồm 160 bit bên phải Vì khơi phục phần, thông điệp khôi phục M* bao gồm M1* M2* phần khơng thể khơi phục Mã băm cịn lại H" tính áp dụng hàm băm chuyên dụng cho xâu nhị phân có độ dài 1064 (= 64 + 680 + 160 + 160), kết việc ghép thêm 64 bit độ dài phần khôi phục C', 680 bit phần thông điệp khôi phục M1*, 160 bit mã băm phần thông điệp khôi phục h(M1*) 160 bit salt khôi phục S* H” = h(C’||M1*|| h(M2*)||S*) Vì hai mã băm H’ H” giống nhau, chữ ký Σ chấp nhận E.2.3.3 Ví dụ lược đồ chữ ký Ví dụ sử dụng hàm băm chuyên dụng ISO/IEC 10118-3 (còn biết đến với tên gọi RIPEMD-160) E.2.3.3.1 Q trình ký Thơng điệp để ký xâu 112 ký tự mã ASCII sau Trong hệ thập lục phân, thơng điệp M xâu có độ dài 112 xâu tám, có nghĩa 896 bit sau LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Cơng ty luật Minh Kh www.luatminhkhue.vn Vì lược đồ chữ ký thuộc kiểu tất định, giá trị salt S có độ dài lựa chọn Thơng điệp q dài để khơi phục hồn tồn q trình xác thực Do đó, chia làm hai phần - M1 bao gồm 848 bit bên trái - M2 bao gồm 48 bit cịn lại, có nghĩa xâu tám 160 bit mã băm H tính cách áp dụng hàm băm chuyên dụng với xâu nhị phân có độ dài 1072 (= 64 + 848 + 160), kết việc ghép 64 bit độ dài phần khôi phục C, 848 bit phần thơng điệp khơi phục M1, 160 bit mã băm phần khôi phục h(M2) H = h(C||M1||h(M2)) Hàm băm sử dụng biết đến hồn tồn Do đó, trường trailer bao gồm bit sau 1024 bit xâu trung gian Si kết việc ghép thêm bảy (= 1024 - 848 - 160 - - 1) bit đệm ‘0’, bit bao quanh 1, 848 bit phần khơi phục M1, 160 bit mã băm phần thông điệp khôi phục h(M2) bit trường trailer T Xâu khơi phục Sr thu từ việc áp dụng hàm tạo mặt nạ MGF1 856 (= 1024 160 - 8) bit bên trái Si, bit bên trái Sr thiết lập '0’ δ =1 (δ = 1024)mod 8) Số nguyên khôi phục fr số nguyên dương không dấu biểu diễn Sr Vì ký hiệu Jacobi fr theo n 1, kết giữ nguyên fr tăng theo lũy thừa bậc s theo mô-đun n Kết biểu diễn số nguyên dương không dấu tạm thời t Vì kết lớn n/2, thay phần dư với n Xâu nhị phân biểu diễn số nguyên dạng số nguyên dương không dấu chữ ký Σ = n - t LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn Thơng điệp ký có 128 xâu tám chữ ký Σ với xâu tám thông điệp khơng thể khơi phục M2, có nghĩa nhiều 22 xâu tám so với thông điệp M E.2.3.3.2 Quá trình xác thực Chữ ký Σ xâu nhị phân đại diện số nguyên dương không dấu, nhỏ n/2 Số nguyên tăng theo lũy thừa bậc mơ-đun n, thu số ngun fs Q trình xác thực khơng liên quan đến ký hiệu Jacobi Vì ba bit trọng số nhỏ số nguyên kết fs "100”, f'r = fs f'r biểu diễn dạng số nguyên dương không dấu xâu khôi phục S'r Hàm tạo mặt nạ MGF1 856 (= 1024 - 160 - 8) bit bên trái S'r, thu xâu khôi phục trung gian S'i S'i biểu diễn xâu trung gian khôi phục sau - Bit bên trái S'i thiết lập ‘0’ δ = (δ = - 1024)mod 8) bit bên trái xâu cịn lại ‘0’; theo sau bit bao quanh ‘1’; xâu tám chuyển sang bên trái S'i - Xâu tám bên phải S'i “BC”; xâu tám chuyển sang bên phải S'i Vì trailer “BC”, hàm băm sử dụng biết đến hồn tồn: RIPEMD-160 ví dụ Xâu lại 1008 bit chia làm hai phần - M1* bao gồm 848 bit bên trái - H' bao gồm 160 bit bên phải Vì khôi phục phần, thông điệp khôi phục M* bao gồm M1* M2*, phần khơng thể khơi phục Mã băm cịn lại H” tính áp dụng hàm băm chuyên dụng cho xâu nhị phân có độ dài 1072 (= 64 + 848 + 160), kết việc ghép thêm 64 bit độ dài phần khơi phục C', 848 bit phần thông điệp khôi phục M1* 160 bit mã băm phần LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn thông điệp khơng thể khơi phục h(M2*) H” = h(C’||M1*||h(M2*)) Vì hai mã băm H’ H” giống nhau, chữ ký Σ chấp nhận Thư mục tài liệu tham khảo [1] M Bellare and P Rogaway, Random oracles are practical: a paradigm for designing efficient protocol In: Proceedings of the first annual conference on Computer and Communications Security, ACM, 1993, pp.62-73 [2] M Bellare and P Rogaway, Optimal asymmetric encryption - how to encrypt with RSA' In: A De Santis (editor), Advances in Cryptology - Eurocrypt ‘94, Lecture Notes in Computer Science 950 (1995), Springer-Verlag, pp.92-111 [3] M Bellare and P Rogaway, The exact security of digital signatures: How to sign with RSA and Rabin In: U.M Maurer (editor), Advances in Cryptology - Eurocrypt '96, Lecture Notes in Computer Science 1070 (1996), Springer-Verlag, pp.399-416 [4] J.-S Coron, On the exact security of full domain hashing In: M Bellare (editor), Advances in Cryptology - Crypto 2000, Lecture Notes in Computer Science 1880 (2000), Springer-Verlag, pp.229-235 [5] J.-S Coron, D Naccache, and J.P stern, On the security of RSA padding In: M.J Wiener (editor), Advances in Cryptology - Crypto '99, Lecture Notes in Computer Science 1666, (1999) , Springer-Verlag, pp.1-18 [6] J.-S Coron, D Naccache, M Tibouchi, and R.-P Weinmann Practical Cryptanalysis of ISO 9796-2 and Europay-Mastercard-Visa Signatures In: S Halevi (editor), Advances in Cryptology Crypto 2009, Lecture Notes in Computer Science 5677 (2009), Springer-Verlag, pp.428-444 [7] M Girault and J.-F Misarsky, Cryptanalysis of countermeasures proposed for repairing ISO 9796-1 In: B Preneel (editor), Advances in Cryptology - Eurocrypt 2000, Lecture Notes in Computer Science 1807 (2000), Springer-Verlag, pp.81-90 [8] F Grieu, A chosen messages attack on the ISO/IEC 9796-1 signature scheme In: B Preneel (editor), Advances in Cryptology - Eurocrypt 2000, Lecture Notes in Computer Science 1807 (2000) , Springer-Verlag, pp.70-80 [9] IEEE Std 1363-2000, Standard specifications for public key cryptography [10] IEEE Std 1363a-2004, Standard specifications for public key cryptography - Amendment 1: Additional techniques [11] ISO/IEC 9796-3:2006, Information technology - Security techniques - Digital signature schemes giving message recovery - Part 3: Discrete logarithm based mechanisms [12] ISO/IEC 9797-2:2002, Information technology - Security techniques - Message Authentication Codes (MACS) - Part 2: Mechanisms using a dedicated hash-function [13] TCVN 11817-1:19971), Information technology - Security techniques - Entity authentication Part 1: General [14] TCVN 12214 (all parts), Information technology - Security techniques - Digital signatures with appendix [15] J Jonsson, Security proofs for the RSA-PSS signature scheme and its variants Proceedings of the 2nd NESS/E Workshop, Royal Holloway, University of London, September 2001 Full version available in IACR cryptology archive 2001/053 [16] B Kaliski, On hash function firewalls in signature schemes In: B Preneel (editor), Cryptographers' Track RSA Conference 2002, Lecture Notes in Computer Science 2271 (2002), LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162 Công ty luật Minh Khuê www.luatminhkhue.vn Springer-Verlag, pp.1-16 Mục Lục Lời nói đầu Phạm vi áp dụng Tài liệu viện dẫn Thuật ngữ định nghĩa Ký hiệu chữ viết tắt Sự chuyển đổi xâu bit số ngun u cầu Mơ hình trình ký xác thực 7.1 Tổng quan 7.2 Ký thông điệp 7.3 Xác thực chữ ký 7.4 Quy định lược đồ chữ ký Lược đồ chữ ký số 8.1 Tổng quan 8.2 Tham số 8.3 Tạo giá trị đại diện thông điệp 8.4 Khôi phục thông điệp Lược đồ chữ ký số 9.1 Tổng quan 9.2 Tham số 9.3 Tạo giá trị đại diện thông điệp 9.4 Khôi phục thông điệp 10 Lược đồ chữ ký số Phụ lục A (quy định) Mô-đun ASN.1 Phụ lục B (quy định) Hệ thống khóa cơng khai cho chữ ký số Phụ lục C (quy định) Hàm tạo mặt nạ Phụ lục D (tham khảo) định danh hàm băm lựa chọn độ dài khơi phục thơng điệp Phụ lục E (tham khảo) Ví dụ Thư mục tài liệu tham khảo LUẬT SƯ TƯ VẤN PHÁP LUẬT 24/7 GỌI 1900 6162