1. Trang chủ
  2. » Luận Văn - Báo Cáo

NGHIÊN CỨU VÀ CÀI ĐẶT LƯỢC ĐỒ CHỮ KÝ SỐ HẬU LƯỢNG TỬ SPHINCS

60 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

NGHIÊN CỨU VÀ CÀI ĐẶT LƯỢC ĐỒ CHỮ KÝ SỐ HẬU LƯỢNG TỬ SPHINCS Nội dung báo cáo đề tài được trình bày gồm 3 chương: Chương 1: Tổng quan về chữ ký số và mật mã hậu lượng tử Chương này trình bày định nghĩa hàm băm mật mã, phân loại hàm băm mật mã, ứng dụng của hàm băm mật mã, giới thiệu một số hàm băm mật mã, định nghĩa chữ ký số, một số lược đồ chữ ký số điển hình và tổng quan về mật mã hậu lượng tử. Chương 2: Lược đồ chữ ký số không trạng thái SPHINCS Chương này trình bày các tham số và hàm sử dụng trong SPHINCS, lược đồ chữ ký số một lần WOTS và cây băm nhị phân, lược đồ chữ ký số nhiều lần HORST và lược đồ chữ ký số SPHINCS, phân tích sự an toàn của lược đồ chữ ký số SPHINCS. Bên cạnh đó, chương này còn trình bày những thay đổi trong lược đồ chữ ký số SPHINCS+ so với SPHINCS. Chương 3: Cài đặt chương trình mô phỏng thuật toán Chương này trình bày các tham số của SPHINCS256, mô phỏng thuật toán SPHINCS256 và đánh giá hiệu quả thuật toán của SPHINCS256 với XMSSMT và SPHINCS+. Hiện nay, khoa học công nghệ, mạng máy tính và Internet đang phát triển rất mạnh mẽ và ngày càng đóng vai trò thiết yếu trong mọi lĩnh vực hoạt động của toàn xã hội. Tuy nhiên, việc sử dụng mạng máy tính và Internet cũng tạo cơ hội cho “bên thứ ba” có thể thực hiện các hành động bất hợp pháp như: chặn bắt thông tin để khai thác hoặc sửa đổi làm sai lệch nội dung thông tin, mạo danh đối tượng liên lạc để truyền những thông tin giả mạo, ... Do đó, để sử dụng mạng máy tính và Internet an toàn thì buộc người sử dụng phải dùng các biện pháp bảo vệ thông tin, dữ liệu. Chữ ký số là một trong những phương pháp hiệu quả phổ biến để bảo vệ thông tin, dữ liệu. Chữ ký số cung cấp cho người sử dụng một phương tiện để kiểm tra tính xác thực của nguồn gốc dữ liệu, tính toàn vẹn của dữ liệu và tính không thể chối bỏ của người ký. Đã có nhiều lược đồ chữ ký số được xây dựng và đề xuất sử dụng trong thực tế như: các lược đồ chữ ký số RSAPSS, DSA, ECDSA,.... Sự an toàn của các lược đồ chữ ký số này dựa trên độ khó khi giải bài toán phân tích số nguyên và bài toán logarit rời rạc. Ngày nay, chưa có thuật toán hiệu quả được biết để giải những bài toán này. Vì vậy, các lược đồ chữ ký này được coi là an toàn. Tuy nhiên, Peter Shor 15 đã chỉ ra rằng các máy tính lượng tử có thể giải những bài toán trên trong thời gian đa thức, khi đó các lược đồ chữ ký số này sẽ trở thành không an toàn. Do đó, cần thiết phải xây dựng các lược đồ chữ ký số mới mà độ an toàn của nó không dựa vào độ khó của một bài toán và có thể chống lại các tấn công sử dụng máy tính lượng tử. Một trong những lược đồ chữ ký số như vậy là lược đồ chữ ký số dựa trên hàm băm. Khái niệm về chữ ký số một lần (OTS) được Leslie Lamport 16 giới thiệu vào năm 1979. Lược đồ LDOTS được xây dựng từ một hàm một chiều và có sự an toàn phụ thuộc cơ bản vào hàm một chiều được sử dụng. Chữ ký số một lần cũng đã được nghiên cứu bởi Winternitz từ năm 1979. Tuy nhiên lược đồ chữ ký số một lần WOTS lần đầu tiên được đề cập trong 17. Kích thước chữ ký trong lược đồ chữ ký số này ngắn hơn đáng kể so với kích thước chữ ký trong lược đồ chữ ký số LDOTS. Hạn chế của các lược đồ chữ ký số một lần là mỗi cặp khóa chỉ được sử dụng duy nhất cho một chữ ký. Do đó, các lược đồ chữ ký số này là không phù hợp cho hầu hết các tình huống thực tế. 2 Năm 1979, Ralph Merkle 17 đề xuất một giải pháp để giải quyết vấn đề này. Ý tưởng của Merkle là sử dụng một cây băm nhị phân đầy đủ để có thể gắn nhiều khóa ký một lần với một khóa kiểm tra duy nhất sử dụng một hàm băm. Lược đồ chữ ký số Merkle (MSS) được chứng minh an toàn chống lại các tấn công lựa chọn thông báo thích nghi nếu hàm băm được sử dụng có khả năng kháng va chạm. Tuy nhiên, lược đồ chữ ký MSS chỉ có thể xác minh một số lượng hạn chế chữ ký sử dụng một khóa công khai (dưới 225 chữ ký). Ngoài ra, lược đồ chữ ký MSS có một số vấn đề về hiệu quả tạo cặp khóa và tạo chữ ký. Năm 2013, Andreas Hulsing và cộng sự 19 đã giới thiệu lược đồ chữ ký số XMSSMT. Lược đồ này cho phép ký số lượng thông báo không giới hạn và được đánh giá là hiệu quả trong việc tạo khóa và tạo chữ ký. Đồng thời tác giả cũng đã phân tích việc chọn tham số an toàn cho lược đồ chữ ký số này. Tuy nhiên, lược đồ chữ ký số XMSSMT là lược đồ trạng thái vì giá trị chỉ số i phải được cập nhật sau khi tạo chữ ký. Năm 2016, NIST đã khởi động một dự án nhằm thu hút, đánh giá và tiêu chuẩn hóa các thuật toán mật mã khóa công khai kháng lượng tử. SPHINCS là một trong những ứng cử viên tham gia vào dự án của NIST với các biến thể là SPHINCSSimpira, GravitySPHINCS và SPHINCS+. Hiện nay, SPHINCS+ là ứng cử viên lọt vào vòng thứ 3 của NIST. SPHINCS là một lược đồ chữ ký số có độ an toàn cao, chống lại được những tấn công sử dụng máy tính lượng tử trong tương lai. SPHINCS là lược đồ chữ ký số không trạng thái, tính không trạng thái của SPHINCS được thực hiện bằng cách chọn ngẫu nhiên một chỉ số lá tương ứng với một cặp khóa mà không cần quan tâm đến việc cặp khóa đã được sử dụng trước đó hay chưa. 2. Tổng quan về tình hình nghiên cứu Ngày 20 tháng 12 năm 2016 NIST đã đưa ra lời kêu gọi các ứng cử viên tham gia dự án nhằm đánh giá và tiêu chuẩn hóa các thuật toán mật mã khóa công khai kháng lượng tử. Một số hệ mật hậu lượng tử đã được đề xuất, bao gồm hệ mật dựa trên lưới, hệ mật dựa trên mã, hệ mật đa biến, chữ ký số dựa trên hàm băm và những thuật toán mật mã khác. Lược đồ chữ ký số SPHINCS là lược đồ chữ ký số dựa trên hàm băm, là ứng cử viên tham gia vào dự án của NIST. Tại vòng 1, SPHINCS tham gia với biến thể GravitySPHINCS và SPHINCS+ tại vòng 2. Hiện nay, SPHINCS+ đang được nhóm tác giả cải tiến và tiếp tục là ứng cử viên lọt vào vòng 3 của dự án. 3 Đồ án tốt nghiệp của em nghiên cứu lược đồ chữ ký số hậu lượng tử SPHINCS tạo cơ sở để nghiên cứu các lược đồ chữ ký số hậu lượng tử sau này. Trong quá trình nghiên cứu, em đã tham khảo một số tài liệu chính sau: “Chương 9 của cuốn sách Cryptography Theory and Practice” của tác giả Douglas R. Stinson và Maura B. Paterson. Tài liệu này mô tả tổng quan về mật mã hậu lượng tử và các cách tiếp cận đối với mật mã hậu lượng tử. “WOTS+– Shorter Signatures for HashBased Signature Schemes” của tác giả Andreas Hulsing. Tài liệu này mô tả lược đồ chữ ký số một lần WOTS+ được sử dụng trong SPHINCS. “Better than BiBa: Short onetime signatures with fast signing and verifying” của tác giả Leonid Reyzin và Natan Reyzin. Tài liệu này mô tả lược đồ chữ ký số nhiều lần HORS. “SPHINCS: Practical Stateless HashBased Signatures” của nhóm tác giả Daniel J. Bernstein, Daira Hopwood, Andreas Hülsing, Tanja Lange, Ruben Niederhagen, Louiza Papachristodoulou, Michael Schneider, Peter Schwabe, and Zooko WilcoxO’Hearn. Tài liệu này mô tả lược đồ chữ ký số SPHINCS. “Digital signatures out of secondpreimage resistant hash functions” của nhóm tác giả Erik Dahmen, Katsuyuki Okeya, Tsuyoshi Takagi và Camille Vuillaume. Tài liệu này mô tả tính kháng tiền ảnh thứ hai của hàm băm. “Practical Fault Injection Attacks on SPHINCS” của nhóm tác giả Aymeric Genêt, Matthias J. Kannwischer, Hervé Pelletier và Andrew McLauchlan. Tài liệu này mô tả tấn công gây lỗi lên SPHINCS. 3. Mục tiêu nghiên cứu Nghiên cứu lược đồ chữ số hậu lượng tử SPHINCS và cài đặt chương trình mô phỏng thuật toán SPHINCS. 4. Đối tượng và phạm vi nghiên cứu Đối tượng nghiên cứu: Lược đồ chữ ký số SPHINCS. Phạm vi nghiên cứu: Đề tài nghiên cứu tổng quan về hàm băm, chữ ký số và mật mã hậu lượng tử; lược đồ chữ ký số SPHINCS; cài đặt chương trình mô phỏng thuật toán SPHINCS. 5. Phương pháp nghiên cứu Đề tài sử dụng các phương pháp nghiên cứu như phương pháp thống kê, phương pháp tổng hợp, phương pháp so sánh, phương pháp phân tích, kế thừa một số kết quả nghiên cứu đã có, đồng thời thu thập thông tin, tài liệu để phục vụ cho quá trình nghiên cứu. 6. Những đóng góp của đồ án 4 Về lý thuyết: Đồ án trình bày những nội dung khái quát về hàm băm, chữ ký số và mật mã hậu lượng tử. Trình bày các thuật toán tạo khóa, thuật toán tạo chữ ký, thuật toán kiểm tra, sự an toàn của lược đồ chữ ký số SPHINCS, SPHINCS+. Về tính ứng dụng vào thực tiễn: Đồ án mô phỏng 3 thuật toán: thuật toán tạo khóa, thuật toán tạo chữ ký, thuật toán kiểm tra của lược đồ chữ ký số SPHINCS. Từ đó đánh giá hiệu quả của thuật toán so với lược đồ chữ ký số XMSSMT và SPHINCS+. 1. Tìm hiểu được những kiến thức tổng quan về chữ ký số và mật mã hậu lượng tử. 2. Tìm hiểu lược đồ chữ ký số hậu lượng tử SPHINCS và phân tích được sự an toàn của lược đồ này. 3. Tìm hiểu một số cải tiến của lược đồ chữ ký số SPHINCS+ so với SPHINCS. Về phần thực nghiệm, đồ án đã thu được kết quả như sau: Xây dựng chương trình mô phỏng thuật toán SPHINCS. Làm rõ 3 môđun chính của thuật toán là môđun tạo khóa, môđun tạo chữ ký và môđun kiểm tra chữ ký, đánh giá hiệu quả của thuật toán SPHINC so với XMSSMT .: Tiếp tục nghiên cứu đánh giá sự an toàn và hiệu quả của các thuật toán mật mã hậu lượng tử. Nghiên cứu cứng hóa thuật toán trên các nền tảng mới FPGA. Nghiên cứu tích hợp ứng dụng thuật toán trong thực tế.

ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ NGHIÊN CỨU VÀ CÀI ĐẶT LƯỢC ĐỒ CHỮ KÝ SỐ HẬU LƯỢNG TỬ SPHINCS Nguyen Thanh Long Hà Nội - 2023 MỤC LỤC LỜI CẢM ƠN Lỗi! Thẻ đánh dấu không được xác định LỜI CAM ĐOAN Lỗi! Thẻ đánh dấu không được xác định MỤC LỤC i DANH MỤC HÌNH VẼ iii DANH MỤC BẢNG BIỂU iv DANH MỤC KÝ HIỆU v LỜI MỞ ĐẦU CHƯƠNG 1: TỔNG QUAN VỀ CHỮ KÝ SỐ VÀ MẬT MÃ HẬU LƯỢNG TỬ 1.1 HÀM BĂM MẬT MÃ 1.1.1 Định nghĩa hàm băm 1.1.2 Phân loại hàm băm mật mã 1.1.3 Ứng dụng hàm băm mật mã 1.1.3.1 Đảm bảo tính toàn vẹn xác thực 1.1.3.2 Nâng cao hiệu suất chữ ký số 1.1.3.3 Lưu trữ mật 1.1.3.4 Bộ sinh số giả ngẫu nhiên tạo khóa phiên 1.1.4 Giới thiệu số hàm băm mật mã 1.2 CHỮ KÝ SỐ 10 1.2.1 Định nghĩa chữ ký số 11 1.2.2 Một số lược đồ chữ ký số điển hình 12 1.2.2.1 Lược đồ chữ ký số RSA 12 1.2.2.2 Lược đồ chữ ký số Elgamal 13 1.3 MẬT MÃ HẬU LƯỢNG TỬ 15 CHƯƠNG 2: LƯỢC ĐỒ CHỮ KÝ SỐ KHÔNG TRẠNG THÁI SPHINCS 20 2.1 LƯỢC ĐỒ CHỮ KÝ SỐ MỘT LẦN WOTS+ VÀ CÂY BĂM NHỊ PHÂN 20 2.1.1 Lược đồ chữ ký số lần WOTS+ 20 2.1.2 Cây băm nhị phân 22 2.2 LƯỢC ĐỒ CHỮ KÝ SỐ NHIỀU LẦN HORST 24 2.2.1 Thuật tốn tạo khóa HORST 24 2.2.2 Thuật toán tạo chữ ký HORST 24 2.2.3 Thuật toán kiểm tra HORST 25 i 2.2.4 Đánh giá hiệu suất lý thuyết HORST 25 2.3 LƯỢC ĐỒ CHỮ KÝ SỐ SPHINCS 26 2.3.1 Thuật tốn tạo khóa SPHINCS 27 2.3.2 Thuật toán tạo chữ ký SPHINCS 28 2.3.3 Thuật toán kiểm tra SPHINCS 29 2.3.4 Đánh giá hiệu suất lý thuyết SPHINCS 30 2.3.5 Sự an toàn lược đồ chữ ký số SPHINCS 31 2.3.5.1 Phân tích các thuộc tính an tồn SPHINCS 31 2.3.5.2 Các tấn công chung 32 2.3.5.3 Tấn công gây lỗi SPHINCS 36 2.4 LƯỢC ĐỒ CHỮ KÝ SỐ SPHINCS+ 37 CHƯƠNG 3: CÀI ĐẶT CHƯƠNG TRÌNH MƠ PHỎNG THUẬT TỐN44 3.1 CÁC THAM SỐ CỦA SPHINCS-256 44 3.2 MƠ PHỎNG THUẬT TỐN SPHINCS-256 45 3.2.1 Mơ-đun tạo khóa 45 3.2.2 Mô-đun tạo chữ ký 47 3.2.3 Mô-đun kiểm tra chữ ký 48 3.2.4 Kiểm tra tính đắn chương trình 49 3.2.5 Đánh giá hiệu thuật toán SPHINCS-256 với XMSSMT SPHINCS+ 50 KẾT LUẬN 51 TÀI LIỆU THAM KHẢO 52 PHỤ LỤC Lỗi! Thẻ đánh dấu không được xác định ii DANH MỤC HÌNH VẼ Hình 2.1: Cấu trúc băm nhị phân 22 Hình 2.2: Đường dẫn xác thực cho lá Li 23 Hình 2.3: Cấu trúc ảo chữ ký SPHINCS 27 Hình 2.4: Minh họa việc ghép chống lại SPHINCS 37 Hình 3.1: Lưu đồ thuật toán tạo khóa SPHINCS 46 Hình 3.2: Kết tạo khóa SPHINCS 46 Hình 3.3: Lưu đồ thuật toán tạo chữ ký SPHINCS 47 Hình 3.4: Kết tạo chữ ký SPHINCS 48 Hình 3.5: Lưu đồ thuật toán kiểm SPHINCS 48 Hình 3.6: Kết kiểm tra chữ ký SPHINCS 49 Hình 3.7: Kết kiểm tra tính đắn SPHINCS 49 iii DANH MỤC BẢNG BIỂU Bảng 1.1: Mô tả chi tiết các tham số số hàm băm điển hình 10 Bảng 1.2: Ví dụ các lược đồ mật mã được triển khai rộng rãi độ an toàn các lược đồ chống lại các tấn công tiền lượng tử hậu lượng tử tốt nhất được biết đến [6] 16 Bảng 2.1: Các tham số SPHINCS+ có độ an tồn khác cân khác kích thước chữ ký tốc độ ký 42 Bảng 3.1: Các tham số hàm SPHINCS-256 độ an toàn 128 bit hậu lượng tử các kích thước chữ ký khóa 44 Bảng 3.2: So sánh ba thuật toán SPHINCS-256, XMSS SPHINCS+ 50 iv DANH MỤC KÝ HIỆU Viết tắt Tiếng Anh Tiếng Việt Pk Public key Khóa cơng khai PRF Pseudo Random Function Hàm giả ngẫu nhiên PRNG (PRG) Pseudo Random Number Generator Bộ tạo số giả ngẫu nhiên RSA Ron Rivest – Adi Shamir – Leonard Adleman Hệ mật RSA SHA Secure Hash Algorithm Thuật toán băm an tồn Sk Secret key Khóa bí mật Auth Authentication Xác thực WOTS Winternitz type one-time signature scheme Lược đồ chữ ký lần Winternitz HORS Hash to Obtain Random Subset Hàm băm để có được tập ngẫu nhiên HORST Hash to Obtain Random Subset with Tree Hàm băm để có được tập ngẫu nhiên với SPHINCS Practical stateless hash-based signatures: Lược đồ chữ ký số dựa hàm băm không trạng thái XMSS Extended Merkle Signature Scheme Lược đồ chữ ký Merkle mở rộng ECC Elliptic Curve Cryptography Mật mã đường cong Eliptic OW One waynes Tính chiều SPR Second-preimage resistance Tính háng tiền ảnh thứ hai UD Undetectability Tính khơng xác định Insec Insercure Khơng an tồn EU-CMA Existential unforgeability under Khơng thể giả mạo tồn adaptive chosen message attacks các tấn công thơng báo lựa chọn thích nghi Succ Xác śt thành cơng Success v LỜI MỞ ĐẦU Tính cấp thiết đề tài nghiên cứu Hiện nay, khoa học công nghệ, mạng máy tính Internet phát triển rất mạnh mẽ ngày đóng vai trị thiết yếu lĩnh vực hoạt động toàn xã hội Tuy nhiên, việc sử dụng mạng máy tính Internet tạo hội cho “bên thứ ba” thực các hành động bất hợp pháp như: chặn bắt thông tin để khai thác sửa đổi làm sai lệch nội dung thông tin, mạo danh đối tượng liên lạc để truyền thông tin giả mạo, Do đó, để sử dụng mạng máy tính Internet an tồn buộc người sử dụng phải dùng các biện pháp bảo vệ thông tin, liệu Chữ ký số phương pháp hiệu phổ biến để bảo vệ thông tin, liệu Chữ ký số cung cấp cho người sử dụng phương tiện để kiểm tra tính xác thực nguồn gốc liệu, tính tồn vẹn liệu tính khơng thể chối bỏ người ký Đã có nhiều lược đồ chữ ký số được xây dựng đề xuất sử dụng thực tế như: các lược đồ chữ ký số RSA-PSS, DSA, ECDSA, Sự an toàn các lược đồ chữ ký số dựa độ khó giải toán phân tích số nguyên toán logarit rời rạc Ngày nay, chưa có thuật toán hiệu được biết để giải toán Vì vậy, các lược đồ chữ ký được coi an toàn Tuy nhiên, Peter Shor [15] các máy tính lượng tử giải toán thời gian đa thức, các lược đồ chữ ký số trở thành khơng an tồn Do đó, cần thiết phải xây dựng các lược đồ chữ ký số mà độ an tồn khơng dựa vào độ khó toán chống lại các tấn cơng sử dụng máy tính lượng tử Một lược đồ chữ ký số lược đồ chữ ký số dựa hàm băm Khái niệm chữ ký số lần (OTS) được Leslie Lamport [16] giới thiệu vào năm 1979 Lược đồ LD-OTS được xây dựng từ hàm chiều có an toàn phụ thuộc vào hàm chiều được sử dụng Chữ ký số lần được nghiên cứu Winternitz từ năm 1979 Tuy nhiên lược đồ chữ ký số lần W-OTS lần được đề cập [17] Kích thước chữ ký lược đồ chữ ký số ngắn đáng kể so với kích thước chữ ký lược đồ chữ ký số LD-OTS Hạn chế các lược đồ chữ ký số lần cặp khóa được sử dụng nhất cho chữ ký Do đó, các lược đồ chữ ký số không phù hợp cho hầu hết các tình thực tế Năm 1979, Ralph Merkle [17] đề xuất giải pháp để giải vấn đề Ý tưởng Merkle sử dụng băm nhị phân đầy đủ để gắn nhiều khóa ký lần với khóa kiểm tra nhất sử dụng hàm băm Lược đồ chữ ký số Merkle (MSS) được chứng minh an tồn chống lại các tấn cơng lựa chọn thơng báo thích nghi hàm băm được sử dụng có khả kháng va chạm Tuy nhiên, lược đồ chữ ký MSS xác minh số lượng hạn chế chữ ký sử dụng khóa cơng khai (dưới 225 chữ ký) Ngoài ra, lược đồ chữ ký MSS có số vấn đề hiệu tạo cặp khóa tạo chữ ký Năm 2013, Andreas Hulsing cộng [19] giới thiệu lược đồ chữ ký số XMSSMT Lược đồ cho phép ký số lượng thông báo không giới hạn được đánh giá hiệu việc tạo khóa tạo chữ ký Đồng thời tác giả phân tích việc chọn tham số an toàn cho lược đồ chữ ký số Tuy nhiên, lược đồ chữ ký số XMSSMT lược đồ trạng thái giá trị số i phải được cập nhật sau tạo chữ ký Năm 2016, NIST khởi động dự án nhằm thu hút, đánh giá tiêu chuẩn hóa các thuật toán mật mã khóa cơng khai kháng lượng tử SPHINCS ứng cử viên tham gia vào dự án NIST với các biến thể SPHINCS-Simpira, Gravity-SPHINCS SPHINCS + Hiện nay, SPHINCS + ứng cử viên lọt vào vòng thứ NIST SPHINCS lược đồ chữ ký số có độ an tồn cao, chống lại được tấn cơng sử dụng máy tính lượng tử tương lai SPHINCS lược đồ chữ ký số khơng trạng thái, tính không trạng thái SPHINCS được thực cách chọn ngẫu nhiên số lá tương ứng với cặp khóa mà khơng cần quan tâm đến việc cặp khóa được sử dụng trước hay chưa Tổng quan tình hình nghiên cứu Ngày 20 tháng 12 năm 2016 NIST đưa lời kêu gọi các ứng cử viên tham gia dự án nhằm đánh giá tiêu chuẩn hóa các thuật toán mật mã khóa cơng khai kháng lượng tử Một số hệ mật hậu lượng tử được đề xuất, bao gồm hệ mật dựa lưới, hệ mật dựa mã, hệ mật đa biến, chữ ký số dựa hàm băm thuật toán mật mã khác Lược đồ chữ ký số SPHINCS lược đồ chữ ký số dựa hàm băm, ứng cử viên tham gia vào dự án NIST Tại vòng 1, SPHINCS tham gia với biến thể Gravity-SPHINCS SPHINCS + vòng Hiện nay, SPHINCS + được nhóm tác giả cải tiến tiếp tục ứng cử viên lọt vào vòng dự án Đồ án tốt nghiệp em nghiên cứu lược đồ chữ ký số hậu lượng tử SPHINCS tạo sở để nghiên cứu các lược đồ chữ ký số hậu lượng tử sau Trong quá trình nghiên cứu, em tham khảo số tài liệu sau: - “Chương sách Cryptography Theory and Practice” tác giả Douglas R Stinson Maura B Paterson Tài liệu mô tả tổng quan mật mã hậu lượng tử các cách tiếp cận mật mã hậu lượng tử - “W-OTS+– Shorter Signatures for Hash-Based Signature Schemes” tác giả Andreas Hulsing Tài liệu mô tả lược đồ chữ ký số lần WOTS + được sử dụng SPHINCS - “Better than BiBa: Short one-time signatures with fast signing and verifying” tác giả Leonid Reyzin Natan Reyzin Tài liệu mô tả lược đồ chữ ký số nhiều lần HORS - “SPHINCS: Practical Stateless Hash-Based Signatures” nhóm tác giả Daniel J Bernstein, Daira Hopwood, Andreas Hülsing, Tanja Lange, Ruben Niederhagen, Louiza Papachristodoulou, Michael Schneider, Peter Schwabe, and Zooko WilcoxO’Hearn Tài liệu mô tả lược đồ chữ ký số SPHINCS - “Digital signatures out of second-preimage resistant hash functions” nhóm tác giả Erik Dahmen, Katsuyuki Okeya, Tsuyoshi Takagi Camille Vuillaume Tài liệu mơ tả tính kháng tiền ảnh thứ hai hàm băm - “Practical Fault Injection Attacks on SPHINCS” nhóm tác giả Aymeric Genêt, Matthias J Kannwischer, Hervé Pelletier Andrew McLauchlan Tài liệu mô tả tấn công gây lỗi lên SPHINCS Mục tiêu nghiên cứu Nghiên cứu lược đồ chữ số hậu lượng tử SPHINCS cài đặt chương trình mơ thuật toán SPHINCS Đối tượng phạm vi nghiên cứu - Đối tượng nghiên cứu: Lược đồ chữ ký số SPHINCS - Phạm vi nghiên cứu: Đề tài nghiên cứu tổng quan hàm băm, chữ ký số mật mã hậu lượng tử; lược đồ chữ ký số SPHINCS; cài đặt chương trình mơ thuật toán SPHINCS Phương pháp nghiên cứu Đề tài sử dụng các phương pháp nghiên cứu phương pháp thống kê, phương pháp tổng hợp, phương pháp so sánh, phương pháp phân tích, kế thừa số kết nghiên cứu có, đồng thời thu thập thông tin, tài liệu để phục vụ cho quá trình nghiên cứu Những đóng góp đồ án - Về lý thuyết: Đồ án trình bày nội dung khái quát hàm băm, chữ ký số mật mã hậu lượng tử Trình bày các thuật toán tạo khóa, thuật toán tạo chữ ký, thuật toán kiểm tra, an toàn lược đồ chữ ký số SPHINCS, SPHINCS + - Về tính ứng dụng vào thực tiễn: Đồ án mô thuật toán: thuật toán tạo khóa, thuật toán tạo chữ ký, thuật toán kiểm tra lược đồ chữ ký số SPHINCS Từ đánh giá hiệu thuật toán so với lược đồ chữ ký số XMSS MT SPHINCS + Kết cấu đồ án tốt nghiệp Nội dung báo cáo đề tài được trình bày gồm chương: Chương 1: Tổng quan chữ ký số mật mã hậu lượng tử Chương trình bày định nghĩa hàm băm mật mã, phân loại hàm băm mật mã, ứng dụng hàm băm mật mã, giới thiệu số hàm băm mật mã, định nghĩa chữ ký số, số lược đồ chữ ký số điển hình tổng quan mật mã hậu lượng tử Chương 2: Lược đồ chữ ký số không trạng thái SPHINCS Chương trình bày các tham số hàm sử dụng SPHINCS, lược đồ chữ ký số lần WOTS băm nhị phân, lược đồ chữ ký số nhiều lần HORST lược đồ chữ ký số SPHINCS, phân tích an tồn lược đồ chữ ký số SPHINCS Bên cạnh đó, chương cịn trình bày thay đổi lược đồ chữ ký số SPHINCS + so với SPHINCS Chương 3: Cài đặt chương trình mơ thuật tốn Chương trình bày các tham số SPHINCS-256, mô thuật toán SPHINCS-256 đánh giá hiệu thuật toán SPHINCS-256 với XMSS MT SPHINCS + tất các giá trị chọn từ giá trị khóa bí mật Do đó, số xuất nhiều lần chữ ký, yêu cầu giá trị bí mật nhất Trong trường hợp xấu, điều có nghĩa chữ ký thông báo, giá trị bí mật nhất phải được biết FORS ngăn chặn điều cách sử dụng các giá trị bí mật khác cho số thu được từ thông báo Ngay thông báo ánh xạ k lần đến số, chữ ký chứa k giá trị bí mật khác Thay vào đó, FORS bao gồm k có chiều cao a, lá giá trị băm 2𝑎 phần tử khóa bí mật Khóa cơng khai hàm băm điều chỉnh việc ghép nối tất các nút gốc khóa cơng khai WOTS + Một cặp khóa FORS được sử dụng để ký tóm lược thơng báo 𝑘2𝑎 bit Bản tóm lược được chia thành k chuỗi 𝑚𝑖 có độ dài 2𝑎 bit chuỗi Tiếp theo, 𝑚𝑖 được hiểu số nguyên [0; 2𝑎 - 1] Ở 𝑚𝑖 chọn phần tử khóa bí mật thứ 𝑚𝑖 thứ i cho chữ ký Chữ ký chứa các đường dẫn xác thực cho tất các phần tử khóa bí mật chọn, có nghĩa đường dẫn có độ dài a Việc kiểm tra chữ ký sử dụng để tái tạo lại các nút gốc nén chúng cách sử dụng hàm băm điều chỉnh Đối với các tham số k t giống nhau, điều có nghĩa kích thước chữ ký tăng lên tốc độ ký chậm k có chiều cao log t phải được tính toán cần đường dẫn xác thực có độ dài (log t) −1 thay đối giá trị chữ ký HORST Tuy nhiên, để an toàn được tăng lên nên chọn các giá trị khác cho k t Điều cuối dẫn đến chữ ký nhỏ cho HORST 𝐒𝐏𝐇𝐈𝐍𝐂𝐒 + lựa chọn số kiểm tra Trong SPHINCS, số phiên HORST được sử dụng được chọn ngẫu nhiên Điều có nhược điểm số xuất ngẫu nhiên người kiểm tra kiểm tra số thực được tạo Điều cho phép đối phương tấn công đa mục tiêu vào HORST (tương tự FORS SPHINCS + ) Trước tiên, đối phương ánh xạ thông báo tới tập hợp số sau 40 kiểm tra xem các giá trị bí mật cần thiết được phát cho số cặp khóa HORST hay chưa Sau chọn số cặp khóa HORST làm số thành công việc giả mạo chữ ký Để ngăn chặn tấn công này, số được tạo phải kiểm tra được Cụ thể, các số được tạo với tóm lược thơng báo: Bản tóm lược thơng báo được tính sau Đầu tiên, tạo tính ngẫu nhiên cách xác định R = PRF (SK.prf, OptRand, M) Trong OptRand giá trị 256 bit, có các bit mặc định được tạo các bit ngẫu nhiên, ví dụ: lấy từ TRNG để tránh ký tất định (điều để chống lại các tấn công kênh kề) Sau đó, tính tóm lược thơng báo thơng báo số sau: (md ∥ idx) = Hmsg(R, PK, M) PK = (PK seed, PK root) chứa nút gốc giá trị seed chung Do đó, bỏ qua số chữ ký SPHINCS Điều cho phép HORST an toàn Bằng cách này, đối phương khơng cịn tự chọn số việc chọn thông báo làm thay đổi giá trị số Phương pháp có ưu điểm khác tránh được tấn cơng đa mục tiêu FORS / HORST • 𝐒𝐏𝐇𝐈𝐍𝐂𝐒 + chia thành hai thể ‘robust’ ‘simple’ Các thể 'simple' bỏ qua việc sử dụng bitmask, tức không cần tạo bitmask để XOR với đầu vào thơng báo các hàm băm điều chỉnh F, H T Điều có lợi tốc độ nhanh lần so với thể ‘robust’ bỏ qua các lời gọi tới PRF để tạo bitmask SPHINCS + đề xuất tham số đạt được mức an toàn 1, 3, được quy định dự án PQC NIST Đối với mức an toàn này, SPHINCS + đề xuất tham số được tối ưu hóa kích thước (kết thúc ‘s’ viết tắt “small”) tham số được tối ưu hóa tốc độ (kết thúc ‘f’ viết tắt 41 “fast”) Các tham số được đề xuất với mục đích cân kích thước chữ ký tốc độ ký Bảng 2.1: Các tham số SPHINCS+ có độ an tồn khác cân khác kích thước chữ ký tốc độ ký Việc chọn các tham số trực giao với lựa chọn hàm băm SPHINCS + đề xuất ba cách khởi tạo khác hàm băm bản, cách có thể 'simple' thể 'robust' Cùng với sáu tham số được liệt kê bảng 2.1, SPHINCS + có tổng cộng 36 phiên được đề xuất với độ an tồn khác cân kích thước chữ ký tốc độ ký Sự an toàn 𝐒𝐏𝐇𝐈𝐍𝐂𝐒 + Cũng giống SPHINCS, an tồn SPHINCS + dựa các thuộc tính an toàn các họ hàm được sử dụng Để đánh giá an toàn SPHINCS + cần phải xem xét các tấn công lượng tử tiền lượng tử chung chống lại tính giả ngẫu nhiên các họ hàm được sử dụng SPHINCS + Tính kháng tiền ảnh thứ hai đa mục tiêu hàm khác biệt Để đánh giá độ phức tạp các tấn công chung các thuộc tính hàm băm, các hàm băm thường được mơ hình hóa họ hàm ngẫu nhiên Lưu ý các hàm ngẫu nhiên, khơng có khác biệt khả kháng tiền ảnh thứ hai đa mục tiêu hàm khác biệt tính kháng tiền ảnh thứ hai đa mục tiêu Mỗi khóa chọn hàm ngẫu nhiên mới, khơng phụ thuộc vào việc khóa có ngẫu nhiên hay không 42 Trong [10] được xác suất thành công bất kỳ đối thủ q hash truy vấn cổ điển chống lại tính kháng tiền ảnh thứ hai đa mục tiêu hàm ngẫu nhiên với khơng gian {0,1}8𝑛 (và chống lại tính kháng tiền ảnh thứ hai đa mục tiêu hàm distinct) xác đối thủ lượng tử 𝑞hash truy vấn, xác suất thành công Θ ( 𝑞ℎ𝑎𝑠ℎ +1 Đối với 28𝑛 (𝑞ℎ𝑎𝑠ℎ +1)2 28𝑛 ) Lưu ý các giới hạn không phụ thuộc vào số lượng mục tiêu Họ hàm giả ngẫu nhiên Tấn cơng chung tốt nhất chống lại tính giả ngẫu nhiên họ hàm thường được cho tìm kiếm khóa tồn diện Do đó, họ hàm với khơng gian khóa {0,1}8𝑛 xác śt thành cơng đối phương tiền lượng tử đánh giá họ hàm các khóa 𝑞key bị giới hạn 𝑞𝑘𝑒𝑦 +1 28𝑛 Trường hợp đối phương sử dụng 𝑞key truy vấn lượng tử, xác śt thành cơng tìm (𝑞𝑘𝑒𝑦 +1)2 kiếm tồn diện khơng gian phi cấu trúc với {0,1}8𝑛 phần tử Θ ( 28𝑛 ) được [10] (chỉ cần coi tìm kiếm tiền ảnh hàm ngẫu nhiên) Khả phục hồi tập hợp mục tiêu xen kẽ Để đánh giá độ phức tạp tấn công các tấn công chung chống lại khả phục hồi tập hợp mục tiêu xen kẽ, giả sử họ hàm băm được sử dụng họ các hàm ngẫu nhiên Do đó, bất kỳ đối phương tiền lượng tử thực 𝑞ℎ𝑎𝑠ℎ truy vấn đến họ hàm ℋ𝑛 , xác suất thành công Đối với ℋ𝑛 ngẫu nhiên tìm kiếm liệu phi cấu trúc, tìm kiếm tốt nhất mà đối phương lượng tử làm tìm kiếm Grover Xác śt thành cơng tìm kiếm Grover Đối với các tính toán 𝒪 nhỏ (1 – 1/𝑡)γ xấp xỉ – γ/t 43 CHƯƠNG 3: CÀI ĐẶT CHƯƠNG TRÌNH MƠ PHỎNG THUẬT TỐN 3.1 CÁC THAM SỐ CỦA SPHINCS-256 Các tham số, hàm, kích thước khóa chữ ký kết SPHINCS-256 được tóm tắt Bảng 3.1 Bảng 3.1: Các tham số hàm SPHINCS-256 độ an toàn 128 bit hậu lượng tử các kích thước chữ ký khóa Tham số Giá trị Ý nghĩa n 256 Độ dài bit hàm băm WOTS HORST m 512 Độ dài bit mã băm thông báo h 60 Chiều cao siêu d 12 Số lớp siêu w 16 Tham số Winternitz WOTS t 216 Số phần tử khóa bí mật HORST k 32 Số phần tử khóa bí mật được tiết lộ chữ ký HORST Hàm Hàm băm   (R, M) = BLAKE – 512 (R∥M) PRF ℱ𝑎 ℱ𝑎 (A, K) = BLAKE – 256 (A∥K) PRF ℱ ℱ(M, K) = BLAKE – 512 (K∥M) PRG 𝐺𝜆 𝐺𝜆 (seed) = G  (SEED) = ChaCha12SEED (0)0, ,−1 Hàm băm F F(𝑀1) = CHOP(ChaCha (M1 C),256) Hàm băm H H(M1 M ) = CHOP( ChaCha ( ChaCha (M1 C)  (M 256 )),256) Kích thước Kích thước chữ ký: 41000 byte Kích thước khóa cơng khai: 1056 byte Kích thước khóa riêng: 1088 byte Các tham số cho SPHINCS-256 được lựa chọn với hai mục tiêu: 44 (1) Có độ an tồn dài hạn 2128 chống lại kẻ tấn cơng có hỗ trợ máy tính lượng tử; (2) Có cân tốt tốc độ ký kích thước chữ ký Mục tiêu xác định tham số an toàn n = 256, nên tên phiên SPHINCS-256 Các tham số cịn lại được tối ưu hóa để đạt được tốc độ ký kích thước chữ ký Các tham số được chọn sau nghiên cứu SPHINCS-256 m = 512, h = 60, d = 12, w = 16, t = 216 k = 32, l= 67, x = 6, a = 64 Những lựa chọn đủ nhỏ đủ nhanh cho nhiều loại ứng dụng Tuy nhiên, xác định các tham số SPHINCS khác nhau, thay đổi các tham số cịn lại có lợi cho tốc độ kích thước chữ ký 3.2 MƠ PHỎNG THUẬT TỐN SPHINCS-256 3.2.1 Mơ-đun tạo khóa Khóa bí mật SPHINCS SK = (SK1, SK2 , Q) Trong hai giá trị (SK1, SK2 ) được tạo cách sử dụng module us.uarandom() để tạo chuỗi byte ngẫu nhiên kích thước n/8 Giá trị bitmask được tạo p giá trị n/8 byte ngẫu nhiên n/8 byte ngẫu nhiên sử dụng module us.uarandom() tạo (SK1, SK2 ) Khóa cơng khai SPHINCS PK = ( PK1, Q) Trong PK1 được tạo (SK1, Q) cách xây dựng đơn XMSS lớp (d – 1) giá trị PK1 nút gốc lớp (d – 1) Khóa bí mật khóa cơng khai SPHINCS được tạo theo lưu đồ thuật toán hình 3.1 45 Hình 3.1: Lưu đồ thuật toán tạo khóa SPHINCS Kết thực tạo cặp khóa SPHINCS được thể Hình 3.2: Hình 3.2: Kết tạo khóa SPHINCS 46 3.2.2 Mơ-đun tạo chữ ký Chữ ký SPHINCS S = (i, R1 ,σ H ,σ W ,0 , AuthA0 , ,σ W ,d - , Auth Ad- ) Các giá trị chữ ký được tạo theo lưu đồ thuật toán Hình 3.3 Hình 3.3: Lưu đồ thuật toán tạo chữ ký SPHINCS Kết thực tạo chữ ký SPHINCS được thể Hình 3.4: 47 Hình 3.4: Kết tạo chữ ký SPHINCS 3.2.3 Mơ-đun kiểm tra chữ ký Quá trình kiểm tra chữ ký SPHINCS được thực theo lưu đồ thuật toán Hình 3.5 Hình 3.5: Lưu đồ thuật toán kiểm SPHINCS 48 Kết thực kiểm tra chữ ký được thể Hình 3.6: Hình 3.6: Kết kiểm tra chữ ký SPHINCS 3.2.4 Kiểm tra tính đắn chương trình Do chưa có nguồn test vector để kiểm tra tính đắn chương trình SPHINCS Do đó, để kiểm tra tính đắn SPHINCS, tiến hành thay đổi bit chữ ký kiểm tra tính xác thực chữ ký Hình 3.7: Kết kiểm tra tính đắn SPHINCS 49 3.2.5 Đánh giá hiệu thuật toán SPHINCS-256 với XMSSMT SPHINCS+ Chọn phiên XMSSMT XMSSMT-SHA2_60/12_256 phiên SPHINCS + SPHINCS-SHA256-128s robust Sau thực chương trình với SPHINCS-256 tham khảo các kết từ các nguồn tài liệu có sẵn hai thuật toán XMSS MT SPHINCS + thu được kết bảng 3.2 Bảng 3.2: So sánh ba thuật toán SPHINCS-256, XMSS SPHINCS+ Tên thuật tốn Kích thước khóa bí mật (byte) Kích thước khóa cơng khai (byte) Kích thước chữ ký (byte) Thời gian tạo cặp khóa (s) Thời gian tạo chữ ký (s) Thời gian kiểm tra chữ ký (s) SPHINCS-256 1088 1056 41000 3.9 55.6 0.7 SPHINCS-256 [22] 1088 1056 41000 0.012 0.2 0.002 XMSSMT_SHA2_60/12_256 [23] 132 64 27688 0.5 0.004 0.013 SPHINCS-SHA256-128s robust [24] 64 32 7670 0.003 0.72 0.007 Từ kết bảng 3.2, kết thu được sau chạy chương trình thuật toán SPHINCS-256 em có sai lệch thời gian tạo khóa, thời gian ký thời gian kiểm tra chữ ký so với các công bố Sự sai lệch chương trình tập trung làm rõ mơ-đun thuật toán mơ-đun tạo khóa, môđun tạo chữ ký, mô-đun kiểm tra chữ ký nên chưa tối ưu được mặt thời gian Tuy nhiên, kích thước khóa bí mật, kích thước khóa cơng khai, kích thước chữ ký so với lý thuyết Về mặt kích thước, thấy kích thước cặp khóa kích thước chữ ký SPHINCS lớn nhiều so với XMSS MT Nhưng SPHINCS + sau cải tiến SPHINCS cho đầu kích thước cặp khóa, kích thước chữ ký giảm đáng kể so với SPHINCS bé kích thước cặp khóa, kích thước chữ ký XMSS MT Về mặt thời gian, thấy thời gian tạo khóa SPHINCS + bé nhất, thời gian tạo chữ ký XMSS MT bé nhất, thời gian kiểm tra chữ ký SPHINCS bé nhất (Tuy nhiên kết so sánh dựa kết công bố chạy nhiều tảng khác nên so sánh với kết chạy chương trình thực tế kết chưa được hồn tồn xác) 50 KẾT LUẬN - Về mặt lý thuyết, đồ án trình bày được các nội dung sau: Tìm hiểu được kiến thức tổng quan chữ ký số mật mã hậu lượng tử Tìm hiểu lược đồ chữ ký số hậu lượng tử SPHINCS phân tích được an tồn lược đồ Tìm hiểu số cải tiến lược đồ chữ ký số SPHINCS + so với SPHINCS - Về phần thực nghiệm, đồ án thu được kết sau: Xây dựng chương trình mơ thuật toán SPHINCS Làm rõ mơ-đun thuật toán mơ-đun tạo khóa, mô-đun tạo chữ ký mô-đun kiểm tra chữ ký, đánh giá hiệu thuật toán SPHINC so với XMSS MT : - Tiếp tục nghiên cứu đánh giá an toàn hiệu các thuật toán mật mã hậu lượng tử - Nghiên cứu cứng hóa thuật toán các tảng FPGA - Nghiên cứu tích hợp ứng dụng thuật toán thực tế Do thời gian có hạn, đồ án em khơng thể tránh được thiếu sót, em rất mong nhận được góp ý, nhận xét các thầy để đồ án em được hoàn thiện 51 TÀI LIỆU THAM KHẢO [1] Daniel J Bernstein, Daira Hopwood, Andreas Hülsing, Tanja Lange, Ruben Niederhagen, Louiza Papachristodoulou, Michael Schneider, Peter Schwabe, and Zooko WilcoxO’Hearn SPHINCS: Practical Stateless Hash-Based Signatures In Elisabeth Oswald and Marc Fischlin, editors, EUROCRYPT 2015, volume 9056 of LNCS, pages 368–397 Springer Berlin Heidelberg, 2015 5, 25, 42, 46 [2] Andreas Hulsing: W-OTS+– Shorter Signatures for Hash-Based Signature Schemes, Lecture Notes in Computer Science volume 7918 Progress in Cryptology - AFRICACRYPT, 2013 [3] Leonid Reyzin and Natan Reyzin Better than BiBa: Short one-time signatures with fast signing and verifying In Lynn Batten and Jennifer Seberry, editors, Information Security and Privacy 2002, volume 2384 of LNCS, pages 1–47 Springer, 2002 [4] Douglas R Stinson, Maura B Paterson (2018) Chapter 9, Cryptography Theory and Practice, Fourth Edition by Chapman and Hall/CRC [5] Andreas Hülsing W-OTS+ – shorter signatures for hash-based signature schemes In Amr Youssef, Abderrahmane Nitaj, and Aboul Ella Hassanien, editors, Progress in Cryptology – AFRICACRYPT 2013, volume 7918 of LNCS, pages 173–188 Springer, 2013 [6] Daniel J Bernstein and Tanja Lange, "Post-quantum cryptography-dealing with the fallout of physics success", European Commission under Contract ICT645622 PQCRYPTO [7] Daniel J Bernstein, Tanja Lange Post-quantum cryptography - dealing with the fallout of physics success, URL https://cr.yp.to/papers/fallout-20170409.pdf, 2020 [8] Erik Dahmen, Katsuyuki Okeya, Tsuyoshi Takagi, and Camille Vuillaume Digital signatures out of second-preimage resistant hash functions In Johannes Buchmann and Jintai Ding [9] William Speirs Dynamic Cryptographic Hash Functions, Thesis submitted to The Purdue University for the degree of Doctor of Philosophy, 2007 [10] Alfred Menezes, Paul Van Oorschot, and Scott Vanstone Handbook of applied cryptography The CRC Press series on discrete mathematics and its applications CRC Press LLC, 2000 52 [11] P W Shor Algorithms for Quantum Computation: Discrete Logarithms and Factoring In Proceedings of the 35th Annual IEEE Symposium on Foundations of Computer Science (FOCS 1994), pages 124–134 IEEE Computer Society Press, 1994 [12] S Beauregard, Circuit for Shor’s algorithm using 2n+3 qubits, quantph/0205095 [13] Castelnovi, L Martinelli, A Prest, T: Grafting trees: A fault attack against the SPHINCS framework In: Post-Quantum Cryptography - 9th International Conference, PQCrypto 2018 Lecture Notes in Computer Science, vol 10786, pp 165–184 Springer (2018) [14] Aymeric Genêt, Matthias J Kannwischer, Hervé Pelletier, and Andrew McLauchlan: Practical Fault Injection Attacks on SPHINCS In: Kangacrypt 2018 [15] P W Shor Algorithms for Quantum Computation: Discrete Logarithms and Factoring In Proceedings of the 35th Annual IEEE Symposium on Foundations of Computer Science (FOCS 1994), pages 124–134 IEEE Computer Society Press, 1994 [16] Lamport, L.: Constructing digital signatures from a one way function Technical Report SRI-CSL-98, SRI International Computer Science Laboratory, 1979 [17] R Merkle A certified digital signature In Advances in Cryptology – CRYPTO’89, number 1462 in LNCS, pages 218–238 Springer, 1989 [18] Jean-Philippe Aumasson and Guillaume Endignoux Clarifying the subsetresilience problem Cryptology ePrint Archive, Report 2017/909, 2017 https://eprint.iacr.org/ 2017/909 [19] Hulsing A, Rausch L, and J Buchmann: Optimal Parameters for 𝑋𝑀𝑆𝑆 𝑀𝑇 , Lecture Notes in Computer Science volume 8128 CD-ARES, 2013 [20] Genêt, A., Kannwischer, M.J., Pelletier, H., McLauchlan, A: Code used for the experimental verification of the SPHINCS fault attack, https://github.com/sphincs-fi/sphincs-fi [21] Andreas Hülsing, Joost Rijneveld, and Fang Song Mitigating multi target attacks in hash-based signatures In Chen-Mou Cheng, Kai-Min Chung, Giuseppe Persiano, and Bo-Yin Yang, editors, PKC 2016, volume 9614 of 53 LNCS, pages 387–416 Springer Berlin Heidelberg, Berlin, Heidelberg, 2016 6, 9, 42, 43, 46, 47, 48, 49, 50 [22] Mikael Sjöberg (2017) “Post-quantum algorithms for digital signing in Public Key Infrastructures”, Master in Computer Science, School of Computer Science and Communication [23] Denis Butin, Andreas Hülsing, Aziz Mohaisen, and Stefan-Lukas Gazdag XMSS: Extended Hash-Based Signatures Internet-Draft draft irtf-cfrg-xmsshash-basedsignatures-09, Internet Engineering Task Force, March 2017 URL https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-xmss-hash-based-signatures Work in Progress [24] Joost Rijneveld, Thom Wiggers and Stefan Kölbl (2020) 54

Ngày đăng: 24/08/2023, 19:34

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w