Theo quyết định số 1470/QĐ- BKHCN ngày 14/8/2007 của Bộ trưởng Bộ Khoa học- Công nghệ, Tiêu chuẩn quốc gia Việt nam về chữ ký số (ký hiệu TCVN 7635:2007 Các kỹ thuật mật mã - Chữ ký số) đã được ban hành. Đây là tiêu chuẩn quốc gia đầu tiên trong lĩnh vực Kỹ thuật mật mã do Tiểu Ban kỹ thuật tiêu chuẩn TCVN/JTC 1/SC 27 “Các kỹ thuật mật mã” biên soạn theo đề nghị của Ban Cơ yếu Chính phủ.
Về Phạm vi áp dụng: Tiêu chuẩn này áp dụng cho các chữ ký số trong hoạt động giao dịch điện tử của mọi tổ chức, công dân Việt Nam và tổ chức, công dân nước ngoài có quan hệ kinh tế - xã hội với tổ chức, công dân Việt Nam.
Về nội dung: Tiêu chuẩn quy định 3 thành phần cần thiết cho lược đồ chữ ký số. Thành phần thứ nhất là thuật toán chữ ký số RSA-PSS. Thành phần thứ hai là thuật toán hàm băm SHA-256 và thành phần cuối cùng là thuật toán tạo số giả ngẫu nhiên dùng AES-128 (các thành phần này đều được mô tả chi tiết trong tiêu chuẩn). Những yêu cầu về các tham số sử dụng trong thuật toán chữ ký số RSA-PSS cũng được đề cập tới trong Tiêu chuẩn.
Căn cứ xây dựng tiêu chuẩn: Trong khi nghiên cứu xây dựng Tiêu chuẩn Chữ ký số (CKS), Tiểu ban kỹ thuật tiêu chuẩn đã tuân thủ các nguyên tắc được đề ra trong Luật Tiêu chuẩn và Quy chuẩn kỹ thuật:
a) Tiêu chuẩn CKS Việt Nam được xây dựng trên cơ sở lựa chọn từ các tiêu chuẩn quốc tế, tiêu chuẩn khu vực và tiêu chuẩn nước ngoài. Kết quả khảo sát tình hình xây dựng và ban hành tiêu chuẩn trên thế giới cho thấy, tất cả các tiêu chuẩn CKS trên thế giới (kể cả chuẩn ISO) đều được phát triển trên cơ sở các tiêu chuẩn do các tổ chức của Hoa Kỳ đề xuất. Một số nước tiên tiến xây dựng chuẩn riêng (trên cơ sở có sáng tạo nhỏ mang tính chi tiết kỹ thuật) chủ yếu hướng tới mục tiêu khẳng định vị trí quốc tế của họ, những nước đang phát triển có xu hướng khuyến cáo sử dụng tiêu chuẩn ISO hoặc của các nước tiên tiến (như các nước khu vực ASEAN phần lớn sử dụng các tiêu chuẩn của Hoa Kỳ; các nước SNG sử dụng các tiêu chuẩn của Nga).
b) Dựa trên kinh nghiệm thực tiễn và năng lực của cơ quan đề xuất. Ban Cơ yếu Chính phủ là cơ quan có trách nhiệm đảm bảo an toàn thông tin và bảo mật cho các cơ quan Đảng và Nhà nước và đã nhiều năm nghiên cứu, thử nghiệm các hệ mật trong đó có hệ mật khóa công khai RSA và ElGamal. Đó là cơ sở cho các thuật toán ký; các thuật toán hàm băm (MD4, MD5, SHA-160); các thuật toán sinh dãy giả ngẫu nhiên. Ban Cơ yếu cũng đã xây dựng và thử nghiệm trong thực tế nhiều chương trình an toàn thông tin có sử dụng chữ ký số.
c) Dựa trên kết quả nghiên cứu khoa học công nghệ, các tiến bộ kỹ thuật: Một số đề tài nghiên cứu các thuật toán mật mã sử dụng trong Tiêu chuẩn đã được Ban Cơ yếu Chính phủ phối hợp với Viện toán học Việt Nam thực hiện trong các năm gần đây.
d) Đảm bảo an toàn: Việc đảm bảo xác thực nguồn gốc và tính toàn vẹn thông tin trong các giao dịch điện tử có ý nghĩa hết sức quan trọng. Vì vậy vấn đề an toàn của chữ ký số là tiêu chuẩn được ưu tiên đặc biệt.
Ngoài ra, Tiểu Ban kỹ thuật TCVN/JTC 1/SC 27 còn thống nhất một số nguyên tắc sau: không nên đưa ra quá nhiều phương án trong Tiêu chuẩn bởi điều này có thể gây khó khăn cho người dùng trong khi lựa chọn; ưu tiên lựa chọn Tiêu chuẩn đang được nhiều nước trên thế giới sử dụng, điều này tạo điều kiện thuận lợi trong việc tuân thủ yêu cầu về hội nhập khu vực và quốc tế và cũng thể hiện được tính an toàn cao qua việc trải nghiệm thực tiễn.
Bởi vậy, các thuật toán được đề xuất trong Tiêu chuẩn quốc gia Việt Nam về Chữ ký số (xuất bản lần thứ nhất) bao gồm:
- Thuật toán ký: RSA-PSS (theo RSA Cryptography Standard – 2002).
- Thuật toán hàm băm: SHA-256 (theo FIPS PUB 180-2: Secure Hash Standard – 2001).
Bộ tạo số giả ngẫu nhiên (theo FIPS PUB 197: Advanced Encryption Standard – 2001).
Về lựa chọn thuật toán ký RSA-PSS
Trên thế giới các thuật toán chữ ký phổ biến nhất được sử dụng cho đến nay là RSA, DSA và thuật toán dựa trên đường cong Elliptic.
Tuy nhiên, thuật toán ký DSA đến nay chưa được chứng minh là có tính an toàn chứng minh được (provable secure). Ngoài ra, vào năm 2001, một lỗi quan trọng trong cách cài đặt của thuật toán này đã được đề cập trong bài báo của Bleichenbacher.
Thuật toán ký dùng đường cong Eliptic (ECDSA) đang được nhiều nước khuyến cáo sử dụng, do đó cũng là hướng khuyến cáo của chúng ta trong thời gian sắp tới. Tuy vậy, ECDSA chưa thể có được trải nghiệm thực tế nhiều bằng hệ chữ ký RSA.
Thuật toán ký RSA-PSS có các ưu thế sau:
- Về lí thuyết, RSA-PSS thuộc lược đồ an toàn chứng minh được: Trong những năm gần đây các nhà mật mã hướng đến việc thiết kế những lược đồ mật mã an toàn chứng minh được. Nếu lược đồ không thuộc loại an toàn chứng minh được thì dễ bị giả mạo ngay cả khi bài toán gốc được coi là khó thật sự. Nếu lược đồ chữ ký thuộc loại an toàn chứng minh được thì ngay cả khi chưa chứng minh được bài toán RSA tương đương bài toán phân tích số thì vẫn có thể tin rằng lược đồ là an toàn, không bị giả mạo.
- Về độ an toàn thực tế: Do được ngẫu nhiên hóa cao nên phần lớn các tấn công vào lược đồ RSA-PSS khó thành công.
RSA-PSS được nhiều tổ chức nghiên cứu ban hành tiêu chuẩn mật mã đánh giá cao. Căn cứ vào những phân tích trên, có thể thấy rằng việc chọn lựa thuật toán chữ ký số RSA-PSS là hợp lý.
Về lựa chọn thuật toán hàm băm SHA-256
Các thuật toán hàm băm phổ biến nhất được dùng đến nay là các hàm băm thuộc họ MDx và SHA-x. Phần lớn các hàm băm thuộc họ MDx đến nay đều bị phá.
Đối với hàm băm thuộc họ SHA-x, trước đây, trong các tiêu chuẩn mật mã thường sử dụng thuật toán hàm băm SHA-1 (có độ dài của giá trị băm là 160 bit) và được coi là an toàn. Nhưng tháng 3/2005, nhóm 3 nhà mật mã học người Trung Quốc đã thông báo phá được thuật toán này. Chính vì vậy mà trong Tiêu chuẩn CKS Việt Nam đã phân tích lựa chọn thuật toán SHA-256.
Đây là lần xuất bản thứ nhất của Tiêu chuẩn chữ ký số Việt Nam nên quá trình áp dụng Tiêu chuẩn cần có thời gian và các bước đi thích hợp cùng với sự hướng dẫn của các tổ chức có trách nhiệm như Tổng cục Tiêu chuẩn - đo lường - chất lượng, Ban Cơ yếu Chính phủ và các đơn vị tham gia hoạt động trong lĩnh vực an toàn thông tin.