Mở đầu: Nêu ra tính cấp thiết của đề tài luận án; đề ra mục tiêu, nội dung, phương pháp nghiên cứu và cách thức triển khai đề tài luận án; chỉ ra ý nghĩa khoa học và thực tiễn của đề tài luận án. luan an 5 Chƣơng 1 trình bày những tìm hiểu chung về một số lớp lược đồ chữ ký số và giao thức trao đổi khóa phổ biến, cũng như một số kết quả phân tích và đánh giá an toàn liên quan đến chúng. Chƣơng 2 trình bày đề xuất đóng góp mới của đề tài luận án liên quan đến chữ ký số. Chƣơng 3 trình bày đề xuất đóng góp mới của đề tài luận án liên quan đến giao thức trao đổi khóa có xác thực dựa trên chữ ký số.
Kết luận: Đánh giá các kết quả đạt được và nêu ra định hướng phát triển của đề tài luận án. Phụ lục: Trình bày các tham số được sử dụng trong quá trình thử nghiệm đánh giá hiệu năng của các đề xuất. luan an 6 Chƣơng 1 KHÁI QUÁT CHUNG VỀ CHỮ KÝ SỐ VÀ GIAO THỨC TRAO ĐỔI KHÓA Chương này tập trung trình bày tổng quan về hướng nghiên cứu, mà cụ thể là những tìm hiểu, khảo sát chung về một số lớp lược đồ chữ ký số ECDSA, GOST R 34.10-2012, TEGTSS; một số họ giao thức trao đổi khóa có xác thực dựa trên chữ ký số STS, SIGMA; và các khái niệm và mô hình an toàn liên quan đến chúng. Một số khái niệm cơ sở liên quan 1.
Lược đồ chữ ký số tổng quát Trong một lược đồ chữ ký, mỗi người dùng (hay còn được gọi là người ký) công bố một khóa công khai trong khi giữ lại cho bản thân một khóa bí mật (riêng). Theo đó, chữ ký của người dùng trên thông điệp là một giá trị phụ thuộc vào và khóa bí mật của người dùng đó theo cách mà bất kỳ ai cũng có thể kiểm tra sự hợp lệ của chữ ký trên thông điệp chỉ bằng khóa công khai. Trong một số trường hợp, khóa công khai cũng có thể được sử dụng trong quá trình tạo chữ ký. Đối với các lược đồ chữ ký số, yêu cầu cơ bản được đặt ra là việc giả mạo một chữ ký của người dùng mà không biết khóa bí mật của của một người dùng nào đó phải là khó về mặt tính toán.
Trong phần này, luận án sẽ phát biểu lại một định nghĩa hình thức của một lược đồ chữ ký tổng quát và các tấn công có thể được tính đến trên lược đồ như vậy. Những định nghĩa này được dựa trên cơ sở công trình của S. Goldwasser và các cộng sự [42]. Một lược đồ chữ ký số được định nghĩa thông qua bộ-3 thuật toán ( ) như sau: Thuật toán sinh khóa ( ): Nhận đầu vào , với là tham số an toàn, tạo ra một cặp khóa công khai và khóa bí mật thích hợp ( ).
Thuật toán sinh khóa phải là một thuật toán xác suất. Thuật toán ký ( ): Cho trước thông điệp và một cặp khóa công khai và bí mật ( ), thuật toán tạo ra một chữ ký. Thuật toán sinh chữ ký có thể là thuật toán xác suất, và trong một vài lược đồ nó cũng có thể nhận thêm luan an 7 các đầu vào khác. Thuật toán xác minh ( ): Cho trước chữ ký , một thông điệp và một khóa công khai , thuật toán Verify kiểm tra là chữ ký hợp lệ của thông điệp tương ứng với khóa hay không 1.
Các khái niệm an toàn cho chữ ký số Vào năm 1984, các tác giả S. Rivest đã công bố bài báo “A Digital Signature Scheme Secure Against Adaptative Chosen- Message Attacks” [42]. Bên cạnh việc đưa ra khái niệm hình thức cho một chữ ký số tổng quát, công trình này cũng đã trình bày các khái niệm an toàn chung cho các lược đồ chữ ký số trong việc tránh tấn công giả mạo. Cụ thể, công trình này đã phân loại hai kịch bản tấn công chính với mục đích giả mạo chữ ký số, đó là: Tấn công chỉ sử dụng khóa (Key-only attack): kẻ tấn công chỉ biết khóa công khai của người ký.
Tấn công sử dụng thông điệp (Message attack): kẻ tấn công được phép khảo sát các chữ ký tương ứng với các thông điệp được lựa chọn hoặc đã biết (known or chosen-message) trước khi hắn ta cố gắng phá vỡ lược đồ. Công trình cũng định nghĩa 4 kiểu tấn công thuộc lớp các tấn công sử dụng thông điệp. Trong số đó, tấn công lựa chọn thông điệp thích nghi (adaptively chosen-message attack) cho phép kẻ tấn công có nhiều năng lực nhất và phù hợp để phân tích an toàn cho các lược đồ chữ ký số. Dựa trên các kịch bản tấn công được định nghĩa, công trình của S.
Rivest cũng phân chia 4 kiểu tấn công “giả mạo”: Phá vỡ hoàn toàn (total break): Kẻ tấn công tính toán được thông tin cửa sập của người ký, nghĩa là khóa bí mật của người ký. Giả mạo vạn năng (universal forgery): Tìm được một thuật toán ký hiệu quả có chức năng tương đương với thuật toán của người ký hợp lệ. Giả mạo lựa chọn (Selective forgery): Giả mạo một chữ ký cho một thông điệp cụ thể được chọn trước bởi kẻ tấn công. luan an 8 Giả mạo tồn tại (existential forgery): Giả mạo một chữ ký cho tối thiểu một thông điệp.
Bên cạnh đó, các tác giả S. Micali và Ronald L. Rivest đã phân tích các lược đồ chữ ký số ElGamal [34], RSA [71],… theo các nguy cơ mà họ phân loại. Ở đó, RSA, ElGamal bị giả mạo tồn tại trước tấn công chỉ sử dụng khóa.
Đây là công trình đầu tiên đưa ra khái niệm hình thức về lược đồ chữ ký số tổng quát và độ an toàn kháng tấn công giả mạo đối với các lược đồ chữ ký số. Công trình này rất có ý nghĩa vì nó mở ra một hướng nghiên cứu mà hiện vẫn thu hút nhiều sự quan tâm, đó là mảng an toàn chứng minh được cho các lược đồ chữ ký số. Mặc dù cho tới nay đã có nhiều nghiên cứu liên quan đến chứng minh an toàn lý thuyết cho lược đồ chữ ký số, và ở đó những giả thiết an toàn cũng như mô hình chứng minh an toàn có thể được cải tiến, nhưng tất cả các hướng đều được phân tích xung quanh những khái niệm an toàn cơ sở của S. Độ an toàn hình thức này được phát biểu như sau.
Một lược đồ chữ ký số được gọi là an toàn nếu việc giả mạo tồn tại là không thể về mặt tính toán, ngay cả với một tấn công lựa chọn thông điệp thích nghi. Về mặt hình thức, một lược đồ chữ ký là an toàn theo Định nghĩa 1.2 nếu được đảm bảo rằng với kẻ tấn công bất kỳ có năng lực tính toán “thực tế” và có quyền yêu cầu tạo các chữ ký tương ứng cho một danh sách thông điệp mà hắn tùy chọn theo cách thích nghi thì việc đưa ra một cặp chữ ký ( ) hợp lệ sao cho (với ) là không khả thi. Độ an toàn như trên còn được biết đến với tên gọi EUF-CMA. Lưu ý rằng, trong trường hợp mà kẻ tấn công tìm ra được cặp ( ) thỏa mãn yêu cầu trên, nghĩa là ( ) ( ) (với ), nhưng (với nào đó thuộc * +), thì lược đồ chữ ký bị xem là dễ uốn.
Như một kết quả khảo sát các công trình [24], [67], [68], nếu như có thể chỉ luan an 9 ra sự tồn tại của một “bộ mô phỏng1” (mà chỉ sử dụng thông tin công khai) của quá trình ký trong lược đồ chữ ký , thì độ an toàn EUF-CMA của có thể quy về độ an toàn EUF-NMA, nghĩa là việc tìm giả mạo tồn tại là không thể về mặt tính toán với các tấn công chỉ dựa vào thông tin công khai của người dùng. Điều này là dễ hiểu vì những chữ ký mà kẻ tấn công sẽ thu được từ quá trình ký trong lược đồ chữ ký theo kịch bản CMA có thể được thay thế bởi các chữ ký được trả về từ mà sẽ khó có thể bị phát hiện. Rõ ràng, trong trường hợp như vậy, những gì mà kẻ tấn công thu được chỉ hoàn toàn dựa trên những thông tin công khai, và là tương đương với một tấn công NMA. Đây là một hướng tiếp cận quan trọng và là cơ sở cho việc đề xuất các lược đồ chữ ký an toàn EUF-CMA trong luận án.
Một số thuộc tính an toàn đáng mong đợi của giao thức trao đổi khóa Trong mục này, luận án trình bày khái niệm của một số thuộc tính an toàn đối với một giao thức trao đổi khóa. Gọi ̂ và ̂ là hai thực thực thể trung thực (honest entity), nghĩa là, các thực thể hợp pháp mà thực hiện các bước của một giao thức một cách chính xác. Trước tiên, chúng ta quan tâm đến hai tính chất sau. Tính chất xác thực khóa ẩn (implicit key authentication) [19].
Một giao thức thỏa thuận khóa được gọi là cung cấp tính chất xác thực khóa ẩn (của ̂ đối với ̂ ) nếu thực thể ̂ được đảm bảo rằng không có thực thể nào khác ngoài thực thể ̂ có thể biết được giá trị của khóa bí mật mà anh ta chia sẻ trong phiên cụ thể. Lưu ý rằng tính chất xác thực khóa ẩn không nhất thiết rằng ̂ được đảm bảo về việc ̂ thực sự sở hữu khóa bí mật chia sẻ. Một giao thức thỏa thuận khóa cung cấp tính chất xác thực khóa ẩn cho cả hai thực thể tham gia trao đổi được gọi là một giao thức trao đổi khóa có xác thực (giao thức AK). Tính chất chứng thực khóa hiện (explicit key confirmation) [19].
Một giao thức được gọi là cung cấp tính chất chứng nhận khóa hiện (của ̂ đối với ̂ ) nếu thực thể ̂ được đảm bảo rằng thực thể ̂ đã thực sự tính ra khóa bí mật chung. Nếu cả tính chất xác thực khóa ẩn và chứng thực khóa hiện (của ̂ đối với ̂ ) 1 là bộ mô phỏng của quá trình ký của nếu như đầu ra của chúng khó có thể bị phân biệt về mặt tính toán với nhau. luan an 10 được cung cấp, thì giao thức thiết lập khóa được gọi là cung cấp xác thực khóa hiện (của ̂ đối với ̂ ). Một giao thức thỏa thuận khóa mà cung cấp tính chất xác thực khóa hiện cho cả hai thực thể tham gia được gọi là một giao thức thỏa thuận khóa có xác thực kèm theo tính chất chứng nhận khóa (giao thức AKC).