Cơ quan ban hành: | Bộ Khoa học và Công nghệ | Số công báo: | Đang cập nhật |
Số hiệu: | TCVN 12214-1:2018 | Ngày đăng công báo: | Đang cập nhật |
Loại văn bản: | Tiêu chuẩn Việt Nam | Người ký: | |
Ngày ban hành: | Hết hiệu lực: | Đang cập nhật | |
Áp dụng: | 01/01/2018 | Tình trạng hiệu lực: | Còn Hiệu lực |
Lĩnh vực: | Khoa học-Công nghệ, Thông tin-Truyền thông |
TIÊU CHUẨN QUỐC GIA
TCVN 12214-1:2018
ISO/IEC 14888-1:2008
CÔNG NGHỆ THÔNG TIN - CÁC KỸ THUẬT AN TOÀN - CHỮ KÝ SỐ KÈM PHỤ LỤC - PHẦN 1: TỔNG QUAN
Information technology - Security techniques - Digital signatures with appendix - Part 1: General
Mục Lục
Lời nói đầu
1 Phạm vi áp dụng
2 Tài liệu viện dẫn
3 Thuật ngữ và định nghĩa
4 Các ký hiệu, quy ước và chú giải cho hình vẽ
4.1 Các ký hiệu
4.2 Quy ước mã hóa
4.3 Chú giải hình vẽ
5 Tổng quan
6 Mô hình tổng quát
7 Tùy chọn cho việc ràng buộc cơ chế ký và hàm băm
8 Quá trình sinh khóa
9 Tiến trình ký
9.1 Tổng quan
9.2 Tính toán chữ ký
9.3 Xây dựng phụ lục
9.4 Xây dựng thông điệp được ký
10 Tiến trình kiểm tra
Phụ lục A (Tham khảo) Định danh hàm băm
Thư mục tài liệu tham khảo
Lời nói đầu
TCVN 12214-1 : 2018 hoàn toàn tương đương với ISO/IEC 14888- 1:2008.
TCVN 12214-1 : 2018 do Cục Quản lý mật mã dân sự và 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 và Công nghệ công bố.
Bộ tiêu chuẩn TCVN 12214 (ISO/IEC 14888) Công nghệ thông tin - Các kỹ thuật an toàn - Chữ ký số kèm phụ lục gồm các tiêu chuẩn sau:
- TCVN 12214-1 : 2018 (ISO/IEC 14888-1:2008) Phần 1: Tổng quan
- TCVN 12214-2 : 2018 (ISO/IEC 14888-2:2008) Phần 2: Cơ chế dựa trên phân tích số nguyên
- TCVN 12214-3 : 2018 (ISO/IEC 14888-3:2016) Phần 3: Cơ chế dựa trên logarit rời rạc
CÔNG NGHỆ THÔNG TIN - CÁC KỸ THUẬT AN TOÀN - CHỮ KÝ SỐ KÈM PHỤ LỤC PHẦN 1: TỔNG QUAN
Information technology - Security techniques - Digital signatures with appendix - Part 1: General
1 Phạm vi áp dụng
Tiêu chuẩn này quy định một số cơ chế ký số kèm phụ lục đối với các thông điệp có độ dài bất kỳ.
Tiêu chuẩn này bao gồm các nguyên tắc chung và các yêu cầu cho chữ ký số kèm phụ lục. Bên cạnh đó, phần này cũng trình bày các định nghĩa và ký hiệu được sử dụng trong tất cả các phần của tiêu chuẩn này.
Có rất nhiều các phương tiện có sẵn khác nhau để thu được một bản sao tin cậy của một khóa kiểm tra công khai, ví dụ như một chứng chỉ khóa công khai. Các kỹ thuật để quản lý khóa và các chứng chỉ là ngoài phạm vi của tiêu chuẩn này. Thông tin chi tiết hơn có thể xem trong ISO/IEC 9594-8 [4], TCVN 7817-3:2007(ISO/lEC 11770-3) [3] và ISO/IEC 15945 [5].
2 Tài liệu viện dẫn
Tài liệu viện dẫn sau rất cần thiết cho việc áp dụng tiêu chuẩn này. Đối với các tài liệu ghi năm công bố, thì áp dụng cho những bản được trích dẫn. Đối với các tài liệu không ghi năm công bố, thì áp dụng phiên bản mới nhất (bao gồm các bổ sung).
3 Thuật ngữ và định nghĩa
Với mục đích của phần này, các thuật ngữ và định nghĩa sau được áp dụng:
3.1
Phụ lục (appendix)
Xâu các bit được tạo bởi chữ ký và một trường văn bản tùy chọn.
3.2
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: không thể tìm được hai đầu vào khác nhau với cùng một giá trị đầu ra.
CHÚ THÍCH Việc thực hiện tính toán phụ thuộc vào môi trường và các yêu cầu an toàn cụ thể. [TCVN 11816-1 (ISO/IEC 10118-1)]
3.3
Phần tử dữ liệu (data element)
Số nguyên, xâu bit, tập các số nguyên hoặc tập các xâu bít.
3.4
Miền (domain)
Tập các phần tử hoạt động dưới một chính sách an toàn riêng.
VÍ DỤ Chứng chỉ khóa công khai được tạo ra bởi cơ quan có thẩm quyền hoặc một nhóm các cơ quan có thẩm quyền sử dụng chung một chính sách an toàn.
3.5
Tham số miền (domain parameter)
Phần tử dữ liệu chung, mà tất cả các thực thể trong miền đã biết hoặc có thể truy cập đến.
3.6
Mã băm (hash - code)
Xâu bit là đầu ra của một hàm băm.
[TCVN 11816-1 (ISO/IEC 10118-1)]
3.7
Hàm băm (hash - function)
Hàm mà ánh xạ một xâu bit tới một xâu bit có độ dài xác định thỏa mãn 2 tính chất sau:
- Không thể tìm được một giá trị đầu vào ứng với một giá trị đầu ra cho trước.
- Không thể tìm được một đầu vào thứ 2 khác với đầu vào cho trước mà có cùng đầu ra.
CHÚ THÍCH 1 Việc thực hiện tính toán phụ thuộc vào môi trường và các yêu cầu an toàn cụ thể.
CHÚ THÍCH 2 Định nghĩa của hàm băm này được đề cập như hàm băm một chiều.
[TCVN 11816-1 (ISO/IEC 10118-1)]
3.8
Dữ liệu định danh (identification data)
Dãy các phần tử dữ liệu bao gồm cả định danh phân biệt cho mỗi thực thể, được gán cho thực thể và được sử dụng để xác định thực thể đó.
CHÚ THÍCH Dữ liệu định danh có thể bao gồm thêm các phần tử dữ liệu như định danh của tiến trình ký, định danh khóa ký, khoảng thời gian hợp lệ của khóa ký, giới hạn việc sử dụng khóa, các tham số chính sách an toàn được kết hợp số thứ tự của khóa hay các tham số miền.
3.9
Cặp khóa (key pair)
Cặp gồm một khóa ký và một khóa kiểm tra, tức là:
- Tập các phần tử dữ liệu được giữ bí mật một phần hoặc toàn bộ và được sử dụng duy nhất bởi người ký;
- Tập các phần tử dữ liệu có thể được công khai hoàn toàn và được sử dụng bởi bất kỳ bên kiểm tra nào.
3.10
Thông điệp (message)
Xâu các bit có độ dài bất kỳ.
3.11
Tham số (parameter)
Số nguyên, xâu bit hoặc hàm băm.
3.12
Chữ ký (signature)
Một hay nhiều phần tử dữ liệu, kết quả của tiến trình ký.
3.13
Khóa ký (signature key)
Tập các phần tử dữ liệu riêng của thực thể, và chỉ duy nhất thực thể này mới có quyền sử dụng trong tiến trình ký.
CHÚ THÍCH Trong một số tiêu chuẩn khác, đôi khi khóa ký được gọi là khóa ký bí mật. Ví dụ ISO/IEC 9796-2, ISO/IEC 9796-3 và ISO/IEC 9798-3.
3.14
Tiến trình ký (signature process)
Tiến trình lấy thông điệp, khóa ký, các tham số miền làm đầu vào và cho đầu ra là chữ ký.
3.15
Thông điệp được ký (signed message)
Tập các phần tử dữ liệu bao gồm chữ ký, một phần của thông điệp mà phần thông điệp này không thể được khôi phục từ chữ ký và một trường văn bản tùy chọn.
CHÚ THÍCH Trong tiêu chuẩn này, toàn bộ thông điệp được bao gồm trong thông điệp được ký và không có phần nào của thông điệp được khôi phục từ chữ ký.
3.16
Khóa kiểm tra (verification key)
Tập các phần tử dữ liệu công khai mà có liên quan về mặt toán học đến khóa ký của thực thể và được sử dụng bởi bên kiểm tra trong quá trình kiểm tra.
CHÚ THÍCH Trong một số tiêu chuẩn khác, đôi khi khóa kiểm tra được gọi là khóa kiểm tra công khai. Ví dụ ISO/IEC 9796-2, ISO/IEC 9796-3 và ISO/IEC 9798-3.
3.17
Tiến trình kiểm tra (verification process)
Tiến trình lấy thông điệp được ký, khóa kiểm tra và các tham số miền làm đầu vào và đưa ra đầu ra của quá trình kiểm tra chữ ký là hợp lệ hay không hợp lệ.
4 Các ký hiệu, quy ước và chú giải cho hình vẽ
4.1 Các ký hiệu
Các ký hiệu sau được sử dụng trong tất cả các phần của tiêu chuẩn này.
H | Mã băm |
K | Khóa ngẫu nhiên |
M | Thông điệp |
R | Phần đầu tiên của chữ ký CHÚ THÍCH Phần đầu tiên của chữ ký R có tên gọi khác là bằng chứng |
Phần đầu tiên của chữ ký được tính toán lại | |
S | Phần thứ hai của chữ ký |
X | Khóa ký |
Y | Khóa kiểm tra |
Z | Tập các tham số miền |
Σ | Chữ ký |
A mod N | Số nguyên B duy nhất từ 0 đến N - 1 sao cho N chia hết A - B |
A ≡ B (mod N) | Số nguyên A là đồng dư với số nguyên B theo modulo N, tức là (A - B) mod N = 0 |
4.2 Quy ước mã hóa
Tất cả số nguyên trong tiêu chuẩn này đều được viết với các chữ số (hoặc bit, hoặc byte) có trọng số cao nhất ở vị trí trái nhất.
4.3 Chú giải hình vẽ
Chú giải cho các hình vẽ sau được sử dụng trong tất cả các phần của tiêu chuẩn này.
Dữ liệu | |
Dữ liệu tùy chọn | |
Hàm | |
Hàm cơ bản | |
Hàm cơ bản tùy chọn | |
Luồng dữ liệu | |
Luồng dữ liệu tùy chọn | |
Luồng dữ liệu khác tùy chọn | |
Hai luồng dữ liệu, trong đó ít nhất một luồng là bắt buộc |
5 Tổng quan
Các cơ chế được đặc tả trong tiêu chuẩn này dựa trên kỹ thuật mật mã phi đối xứng. Mỗi cơ chế chữ ký số phi đối xứng bao gồm 3 quá trình hoạt động cơ bản.
- Một quá trình tạo ra các cặp khóa, trong đó mỗi cặp khóa gồm 1 khóa ký và 1 khóa kiểm tra tương ứng.
- Một quá trình sử dụng khóa ký, được gọi là tiến trình ký.
• Với một thông điệp cho trước và khóa ký, xác suất để thu được cùng một chữ ký hai lần là không đáng kể, phép toán có tính xác suất.
• Với một thông điệp cho trước và khóa ký, tất cả các chữ ký là giống nhau, phép toán tất định
- Một quá trình sử dụng khóa kiểm tra được gọi là quá trình kiểm tra.
Việc kiểm tra chữ ký số yêu cầu khóa kiểm tra của người ký. Bởi vậy, bên kiểm tra cần phải liên kết khóa kiểm tra đúng với người ký, hay chính xác hơn, với (phần) dữ liệu định danh của người ký. Nếu sự kết hợp này có sẵn trong chính khóa kiểm tra, thì lược đồ được nói là “dựa trên định danh”. Ngược lại, sự liên kết giữa khóa kiểm tra đúng với dữ liệu định danh của người ký sẽ được cung cấp bởi một chứng chỉ cho khóa kiểm tra. Khi đó lược đồ được nói là “dựa trên chứng chỉ”.
6 Mô hình tổng quát
Cơ chế chữ ký số kèm phụ lục được định nghĩa qua việc mô tả các quá trình sau:
- Quá trình tạo khóa;
- Tiến trình ký;
- Tiến trình kiểm tra.
Trong tiến trình ký, người ký tính một chữ ký số với một thông điệp cho trước. Chữ ký kèm với một trường văn bản tùy chọn tạo thành phụ lục, và phụ lục này được nối vào thông điệp để tạo thành thông điệp được ký.
Thông điệp M | Chữ ký Σ | Văn bản t | |
Hình 1: Thông điệp được ký
Tùy thuộc vào ứng dụng mà có những cách khác nhau để tạo phụ lục và kết hợp phụ lục với thông điệp. Yêu cầu chung là bên kiểm tra có thể liên hệ chữ ký đúng với thông điệp.
Để việc kiểm tra thành công, điều quan trọng là trước quá trình kiểm tra, bên kiểm tra có thể liên hệ khóa kiểm tra hợp lệ với chữ ký. Trường văn bản tùy chọn có thể được sử dụng cho quá trình truyền dữ liệu định danh của người ký hoặc bản sao khóa kiểm tra của người ký đã xác thực tới bên kiểm tra. Trong một số trường hợp, dữ liệu định danh của người ký có thể là một phần của thông điệp M, vì vậy cần được bảo vệ bởi chữ ký.
Một cơ chế chữ ký số cần thỏa mãn các yêu cầu sau:
- Khi chỉ biết khóa kiểm tra mà không biết khóa ký, thì trong thời gian cho phép không thể tạo ra được bất kỳ thông điệp nào cùng với chữ ký hợp lệ cho thông điệp đó.
- Các chữ ký được tạo bởi người ký không thể sử dụng được cho quá trình tạo ra bất kỳ thông điệp mới nào và một chữ ký hợp lệ đối với thông điệp này cũng như không sử dụng được cho quá trình khôi phục khóa ký.
- Trong thời gian cho phép, ngay cả với người ký, không thể tìm được hai thông điệp khác nhau với cùng một chữ ký.
CHÚ THÍCH Việc tính toán phụ thuộc vào các yêu cầu và môi trường an toàn cụ thể.
7 Tùy chọn cho việc ràng buộc cơ chế ký và hàm băm
Việc sử dụng lược đồ chữ ký được đặc tả trong chuẩn này yêu cầu lựa chọn một hàm băm kháng va chạm. Trong quá trình sử dụng sẽ có sự ràng buộc giữa cơ chế ký và hàm băm. Nếu không có sự ràng buộc đó, kẻ tấn công có thể yêu cầu sử dụng một hàm băm yếu (không phải hàm băm thực tế sử dụng) và do đó sẽ giả mạo chữ ký.
Có nhiều cách để thực hiện sự ràng buộc này. Dưới đây đưa ra các tùy chọn theo thứ tự tăng dần các rủi ro.
a) Khi sử dụng một cơ chế ký cụ thể, yêu cầu sử dụng một hàm băm cụ thể. Quá trình kiểm tra sẽ chỉ sử dụng hàm băm đó;
b) Cho phép một tập hợp các hàm băm và chỉ rõ hàm băm nào được sử dụng trong các tham số miền đã chứng nhận. Trong miền đã chứng nhận đó, quá trình kiểm tra sẽ chỉ sử dụng hàm băm đã được chỉ rõ trong chứng chỉ. Bên ngoài miền đã chứng nhận, sẽ có các rủi ro phát sinh từ các cơ quan chứng nhận có thẩm quyền (CAs) khi họ không tuân thủ chính sách của người dùng. Ví dụ, nếu một CA bên ngoài tạo ra một chứng chỉ cho phép sử dụng các hàm băm khác, thì có thể phát sinh vấn đề giả mạo chữ ký. Trong trường hợp như vậy, một bên kiểm tra bị sai có thể tranh chấp với CA đã tạo ra chứng chỉ khác;
c) Cho phép một tập các hàm băm và chỉ ra hàm băm được sử dụng theo một phương pháp khác nào đó, chẳng hạn, một chỉ dẫn trong thông điệp hoặc một thỏa thuận giữa hai bên. Quá trình kiểm tra sẽ chỉ sử dụng hàm băm đã được chỉ ra theo phương pháp khác. Tuy nhiên, có một rủi ro đó là, kẻ tấn công có thể giả mạo một chữ ký với việc sử dụng hàm băm khác.
CHÚ THÍCH “Phương pháp khác” được đề cập ở mục c) ngay phía trên có thể ở dạng định danh hàm băm mà đã được chỉ rõ trong chữ ký dạng hash - token, một phép nối mã băm và định danh hàm băm. Nếu định danh hàm băm được bao hàm theo cách này thì kẻ tấn công không thể giả mạo bằng cách sử dụng lại một chữ ký đã có cho một thông điệp khác, ngay cả khi bên kiểm tra có thể bị thuyết phục để chấp nhận chữ ký được tạo ra với việc sử dụng các hàm băm đủ yếu, tức là hàm băm mà có thể tìm được các tiền ảnh (thông điệp). Tuy nhiên như đã thảo luận chi tiết trong [1] (xem Phụ lục A), sử dụng hàm băm yếu, kẻ tấn công vẫn có thể tìm ra một thông báo đã ký hợp lệ bằng cách sinh ngẫu nhiên các chữ ký chứa định danh của hàm băm yếu.
Người sử dụng cơ chế chữ ký số cần tiến hành đánh giá rủi ro kể cả chi phí và lợi ích của các phương tiện thay thế khác nhau để đạt được sự ràng buộc theo yêu cầu. Đánh giá này nên bao gồm một đánh giá về chi phí gắn với khả năng chữ ký giả mạo được tạo ra.
8 Quá trình sinh khóa
Quá trình sinh khóa của cơ chế chữ ký số bao gồm 2 thủ tục sau:
- Quá trình sinh các tham số miền,
- Quá trình sinh khóa ký và khóa kiểm tra.
Thủ tục đầu tiên chỉ được thực hiện một lần khi miền được thiết lập. Thủ tục thứ hai được thực hiện cho mỗi người ký trong miền và đầu ra là khóa ký X và khóa kiểm tra Y. Đối với một tập các tham số miền cụ thể, một giá trị của X khác với các giá trị đã dùng trước đó với xác suất vượt trội sẽ được sử dụng.
CHÚ THÍCH Việc xác nhận tính hợp lệ của các tham số miền và khóa có thể được yêu cầu. Tuy nhiên, điều này nằm ngoài phạm vi của tiêu chuẩn này.
9 Tiến trình ký
9.1 Tổng quan
Tiến trình ký yêu cầu các phần tử dữ liệu sau:
- Các tham số miền Z;
- Khóa ký X;
- Thông điệp M;
- Định danh hàm băm hid (tùy chọn);
- Văn bản t khác (tùy chọn).
Định danh hàm băm có thể được sử dụng cho việc ràng buộc cơ chế ký và hàm băm, xem Điều 7.
Tiến trình ký của một cơ chế chữ ký số kèm phụ lục bao gồm các thủ tục sau:
- Tính toán chữ ký;
- Xây dựng phụ lục;
- Xây dựng thông điệp được ký;
9.2 Tính toán chữ ký
Đầu vào của quá trình này là thông điệp M, khóa ký X và tham số miền Z. Đầu ra của bước này là chữ ký Σ bao gồm phần đầu của chữ ký R và, phụ thuộc vào cơ chế ký, phần thứ hai của chữ ký S, xem Hình 2.
9.3 Xây dựng phụ lục
Phụ lục được xây dựng từ chữ ký và trường văn bản tùy chọn text, ký hiệu (Σ,t). Trường văn bản text có thể chứa một chứng chỉ mà ràng buộc về mặt mật mã khóa kiểm tra với dữ liệu định danh của người ký.
CHÚ THÍCH: Tùy thuộc vào ứng dụng sẽ có những cách khác nhau để xây dựng phụ lục và nối phụ lục đó với thông điệp. Yêu cầu chung là bên kiểm tra có thể liên hệ chữ ký đúng với thông điệp. Để kiểm tra thành công thì trước quá trình kiểm tra, bên kiểm tra có khả năng kết hợp khóa kiểm tra đúng với chữ ký.
9.4 Xây dựng thông điệp được ký
Thông điệp được ký bao gồm thông điệp M và phụ lục, tức là, M, (Σ,t).
Hình 2: Tiến trình ký
10 Tiến trình kiểm tra
Tiến trình kiểm tra yêu cầu các phần tử dữ liệu sau:
- Các tham số miền Z;
- Khóa kiểm tra Y;
- Thông điệp M,
- Chữ ký Σ,
- Dữ liệu định danh Id (tùy chọn);
- Sử dụng các định danh của các hàm băm hid, nếu không thì hàm băm được xác định duy nhất bằng các phương pháp khác (xem Điều 7);
- Văn bản khác, t (tùy chọn).
Tiến trình kiểm tra lấy đầu vào là thông điệp M, tham số miền Z, khóa kiểm tra Y, chữ ký Σ và, phụ thuộc vào cơ chế định danh dữ liệu Id. Đầu ra của tiến trình này là giá trị Boolean Đồng ý (Chấp nhận) hay Không đồng ý (Từ chối) như được chỉ ra trong Hình 3. Quá trình tính hàm kiểm tra bao gồm một trong những sự kết hợp của các hàm sau:
a) Hàm mở chữ ký, hàm băm và hàm so sánh;
b) Hàm mở chữ ký, khôi phục biểu diễn và kiểm tra biểu diễn đã khôi phục;
c) Truy xuất bằng chứng, truy xuất việc gán các giá trị, tính lại giá trị trước khi ký, tính lại bằng chứng và kiểm tra bằng chứng.
Hình 3: Tiến trình kiểm tra
Phụ lục A
(Tham khảo)
Định danh hàm băm
Như được đặc tả trong Điều 7, người sử dụng các lược đồ ký được đặc tả trong phần này sẽ chọn một hàm băm kháng va chạm. Điều quan trọng đó là bên kiểm tra phải có một phương thức rõ ràng để xác định hàm băm nào đã được sử dụng trong việc tạo ra chữ ký, mục đích là để tiến trình kiểm tra có thể được thực hiện một cách an toàn. Nếu một bên thứ ba ác ý có thể thuyết phục bên kiểm tra rằng đó là một hàm băm “yếu” đã được sử dụng để tạo chữ ký (ví dụ, một hàm băm không có tính một chiều), thì bên thứ ba này có thể thuyết phục bên kiểm tra rằng chữ ký hợp lệ thực sự được sử dụng cho một thông điệp “không đúng”.
Tiêu chuẩn này cho phép một “hash - token”, một định danh hàm băm nối với mã băm để chỉ rõ hàm băm sử dụng trong mỗi chữ ký nhằm đạt được sự ràng buộc cần thiết. Nếu định danh hàm băm được bao gồm theo cách này thì kẻ tấn công không thể sử dụng lại một cách gian lận chữ ký đã có cho một thông điệp khác, ngay cả khi bên kiểm tra có thể bị thuyết phục để chấp nhận các chữ ký được tạo ra với việc sử dụng một hàm băm đủ yếu, tức là hàm băm mà với nó các tiền ảnh có thể được tìm thấy. Điều này được xem là để giải quyết vấn đề được đề cập trong các phần trước.
Tuy nhiên, như đã thảo luận chi tiết trong [1], ngay cả khi định danh hàm băm được chứa trong chữ ký có dạng một hash - token, các tấn công khác vẫn là có thể nếu bên kiểm tra có thể bị thuyết phục rằng một hàm băm “yếu” đã được sử dụng. Thuật ngữ “Yếu” ở đây có nghĩa là hàm băm thiếu tính một chiều, nghĩa là cho trước một mã băm, thì việc tìm một xâu đầu vào tương ứng với mã băm này là có thể thực hiện được về mặt tính toán. (Chú ý rằng tính yếu này chính là động cơ đầu tiên thúc đẩy việc bao gồm định danh hàm băm trong chữ ký theo dạng hash-token.)
Những tấn công được mô tả trong [1] hoạt động theo 2 cách tổng quát sau:
a) Trong trường hợp kẻ tấn công kiểm soát được toàn bộ giá trị của hash - token trong một chữ ký, thì kẻ tấn công có thể gắn định danh của một hàm băm yếu trong một chữ ký được tạo ra ngẫu nhiên. Sau đó, kẻ tấn công nghịch đảo hàm băm yếu và nhận được thông điệp M. Trong trường hợp này, việc giả mạo chữ ký là có thể xảy ra thậm chí nếu hàm băm chỉ yếu đối với một số giá trị băm cụ thể nào đó.
b) Trong trường hợp định danh hàm băm dài được cho phép, kẻ tấn công tạo ra một chữ ký ngẫu nhiên và tính một biểu diễn thông điệp T, một chuỗi bit được tính từ chữ ký nhờ sử dụng khóa kiểm tra. Nếu biểu diễn thông điệp T được định dạng chính xác là T = Pad II HID II H, trong đó Pad là chuỗi bit không đổi, HID là định danh hàm băm đúng cấu trúc được sinh ngẫu nhiên và H là mã băm. Khi đó, kẻ tấn công sẽ nghịch đảo hàm băm yếu để nhận được thông điệp M từ H. Nếu độ dài của Pad không đủ dài và HID dài được cho phép, thì lợi thế của sự cố này không đáng kể. Tuy nhiên, ngay cả trong trường hợp này, kẻ tấn công phải thuyết phục bên kiểm tra sử dụng một định danh hàm băm mới được sinh ngẫu nhiên mà có cấu trúc đúng.
Cho trước “chữ ký” như vậy, kẻ tấn công lấy mã băm được gắn trong chữ ký hoặc trong biểu diễn thông điệp đã khôi phục, và, sử dụng thực tế hàm băm là yếu, tìm ra thông điệp mà đã được băm để được mã băm mong muốn. Tức là, kẻ tấn công có thể giả mạo một chữ ký mới. Bởi vậy việc ghép nối định danh hàm băm với mã băm là cần thiết cho bên kiểm tra để biết hàm băm nào được sử dụng để kiểm tra chữ ký.
Hầu hết các lược đồ chữ ký số trong tiêu chuẩn này yêu cầu chỉ rõ hàm băm sử dụng trong tham số miền (như được chỉ ra trong Mục 7 a), hoặc chính các lược đồ đặc tả các hàm băm cụ thể (như được chỉ ra trong Mục 7 b). Người sử dụng một lược đồ chữ ký số nên tiến hành đánh giá rủi ro, xem xét chi phí và lợi ích của những phương thức thay thế khác nhau. Sự đánh giá này bao gồm chi phí gắn với khả năng có chữ ký giả được tạo ra.
Thư mục tài liệu tham khảo
[1] B. Kaliski, On hash function firewalls in signature schemes, in Proc. Cryptographers’ Track RSA Conference 2002, B. Preneel, Ed, Lecture Notes in Computer Science, Vol. 2271, pp. 1-16, Berlin, Springer-Verlag, 2002.
[2] ISO/IEC 9796 (all parts), Information technology — Security techniques — Digital signature scheme giving message recovery.
[3] TCVN 7817-3 (ISO/IEC 11770), Công nghệ thông tin - Kỹ thuật an ninh - Quản lý khóa - Phần 3: Các cơ chế sử dụng kỹ thuật phi đối xứng.
[4] ISO/IEC 9594-8:2001, Information technology — Open Systems Interconnection — The Directory: Public-key and attribute certificate frameworks
[5] ISO/IEC 15945:2002, Information technology — Security techniques — Specification of TTP services to support the application of digital signatures.
[6] TCVN 11816 (ISO/IEC 10118) (tất cả các phần), Công nghệ thông tin - Các kỹ thuật an toàn - Hàm băm.
01 | Tiêu chuẩn dẫn chiếu |
TCVN 12214-1:2018 ISO/IEC 14888-1:2008 Chữ ký số kèm phụ lục-Phần 1: Tổng quan
In lược đồCơ quan ban hành: | Bộ Khoa học và Công nghệ |
Số hiệu: | TCVN 12214-1:2018 |
Loại văn bản: | Tiêu chuẩn Việt Nam |
Năm ban hành: | 0 |
Hiệu lực: | 01/01/2018 |
Lĩnh vực: | Khoa học-Công nghệ, Thông tin-Truyền thông |
Người ký: | |
Ngày hết hiệu lực: | Đang cập nhật |
Tình trạng: | Còn Hiệu lực |
File văn bản tiếng Việt đang được cập nhật, Quý khách vui lòng quay lại sau!