Chữ ký số

 

KÝ ĐIỆN TỬ: Bản chất & Quy trình thực hiện

Vì sao cần chữ ký điện tử
Ý nghĩa của chữ ký tay (trên giấy)
Công cụ hỗ trợ : Hệ mã hoá khoá công khai

Nguyên lý hoạt động của Hệ mã khóa công khai
Mô hình nguyên tắc cho “ký văn bản điện tử”

Những điều “bất cập” của mô hình nguyên tắc:

Hàm băm mật mã – công cụ khắc phục

Quy trình ký văn bản điện tử trong thực tế

Những ưu thế vượt trội của chữ ký số

Cơ sở pháp lý của chữ ký số

Giải pháp triển khai của Trung tâm Tin học:

 

Vì sao cần chữ ký điện tử

  • Văn bản điện tử, với các thuộc tính:
  • Soạn thảo nhanh, hình thức đẹp và dễ dùng (nhiều công cụ hỗ trợ)
  • Lưu trữ và tra cứu dễ dàng, thuận tiện (với chi phí thấp)
  • Luân chuyển nhanh và an toàn (khó thất lạc)
  • Phổ biến dễ dàng
  • Biện pháp bảo mật không khó khăn . . . . . . . . nhưng đến nay vẫn không thay thế được văn bản trên giấy, vốn có những “bất cập” cố hữu:
  • Khó khăn trong tra cứu và lưu trữ khó khăn, tốn kém
  • Luân chuyển chậm và dễ thất lạc
  • Phổ biến không dễ và khó thực hiện các giải pháp bảo mật
  • Không hỗ trợ cho triển khai “hành chính điện tử”, . . .

Trên thực tế, công tác văn thư hiện nay đang ở trong tình trạng “đôi công một việc”: bên cạnh việc phải quản lý văn bản giấy (vẫn theo lề lối cũ) phải đồng thời quản lý hệ thống văn bản điện tử (theo một quy trình riêng).
Nguyên nhân của tình trạng trên là do Văn bản điện tử tự nó không “mang” được các thuộc tính quan trọng của một văn bản sau khi ký. Để khắc phục tình trạng này, một vấn đề đặt ra là cần tạo ra cho văn bản điện tử một đối tượng có những thuộc tính giống như chữ ký trên văn bản giấy (nói cách khác, văn bản điện tử sau khi gắn thêm đối tượng này sẽ có các thuộc tính giống như văn bản giấy sau khi ký).
Trước khi tiến hành tìm giải pháp cho vấn đề này, ta cần làm rõ thêm ý nghĩa của một chữ ký (viết tay) mang lại cho một văn bản trên giấy.

Ý nghĩa của chữ ký tay (trên giấy)

Một cách "lý tưởng" thì chữ ký tay (trên văn bản giấy) mang các ý nghĩa sau:

  1. Chữ ký là bằng chứng thể hiện người ký tán thành nội dung và có chủ định khi ký văn bản.
  2. Chữ ký thể hiện chủ quyền người ký, làm cho người ta nhận biết ai là người ký văn bản.
  3. Chữ ký không thể tái sử dụng, tức là nó là phần của văn bản đã được ký mà “không thể sao chép” sang các văn bản khác. (Chỉ có giá trị ở trong văn bản được ký và vô giá trị nếu ở ngoài văn bản đó).
  4. Nội dung văn bản đã ký là không thể thay đổi được.
  5. Chữ ký là không thể chối bỏ và cũng không thể giả mạo (người đã ký văn bản không thể phủ định việc mình đã ký văn bản và người khác không thể tạo ra chữ ký đó).

Một trong những nguyên nhân cơ bản làm nên các ý nghĩa nêu trên là vì văn bản trên giấy có thuộc tính “bút sa – gà chết”, tức là những gì đã viết ra thì khó lòng thay đổi lại. Điều này không thể có đối với văn bản điện tử, ngược lại:

  • Các thông tin trên máy tính được “sao chép” một cách quá dễ dàng;
  • Việc thay đổi nội dung một văn bản điện tử chẳng để lại “dấu vết tẩy xoá" nào, cho nên “tha hồ bóp méo nội dung”,…
  • Hình ảnh của chữ ký tay (con dấu đỏ) dễ dàng được “sao chép, sang chuyền” từ văn bản này sang văn bản khác.

Chính vì vậy, trong môi trường văn bản điện tử thì nét vẽ chữ ký tay cũng như hình ảnh con dấu đỏ (vốn có thể được sao chép dễ dàng) không thể mang lại cho văn bản các thuộc tính 1-5 như đã nói trên, và do vậy không thể có hiệu lực của một chữ ký.

Giải pháp công nghệ mới: Hệ mã hoá khoá công khai

Như vậy, với văn bản điện tử, ta cần có một cách tiếp cận hoàn toàn mới. Công cụ hỗ trợ chính là một sản phẩm của Toán học hiện đại: Hệ mật mã phi đối xứng. Hệ mật mã này hoạt động theo nguyên tắc dùng 2 chìa khóa khác nhau cho 2 công đoạn lập mã và giải mã. Chìa khóa dùng cho giải mã thì luôn phải giữ bí mật, còn chìa khóa dùng cho mã hóa thì có thể công bố công khai. Sự hiện diện của chìa khóa mật mã mà lại có thể được công bố công khai có thể được xem là một bước ngoặt trong lịch sử phát triển của công nghệ mã hóa, và do vậy các hệ mã phi đối xứng còn thường được gọi là Hệ mã khóa công khai (cho dù chỉ có một trong hai chìa khóa được công bố công khai mà thôi).

Nguyên lý hoạt động của Hệ mã khóa công khai

Giả sử hệ thống có sự tham gia của n cá thể trao đổi các thông tin với nhau. Mỗi cá thể k sở hữu một cặp 2 chìa khóa:

  • Một chìa dùng để mã hóa ký hiệu là Mk (được công bố công khai)
  • Một chìa dùng để giải mã ký hiệu là Gk (cần giữ bí mật tuyệt đối)

Khi ấy, quy trình mã hóa được thực hiện theo mô hình:

Mk(VanBanRo) = VanBanMa

Còn quy trình giải mã được thực hiện theo mô hình:

Gk(VanBanMa) = VanBanRo


Lưu ý rằng:

  • Mỗi cá thể cần sở hữu một cặp chìa (Mk Gk, ) riêng biệt (không ai giống ai);
  • Sự phân biệt giữa “công khai” và “bí mật” mang ý nghĩa tuyệt đối (nghĩa là chìa khóa bí mật thì không bao giờ được công khai).
  • Sự phân biệt giữa “lập mã” và “giải mã” chỉ mang tính tương đối (nghĩa là, khi một chìa được dùng để mã hóa thì chìa còn lại sẽ được dùng để giải mã).

Mô hình nguyên tắc cho “ký văn bản điện tử”

Với hệ mã khóa công khai, một quy trình ký văn bản điện tử được thiết lập dựa trên ý tưởng của hai nhà khoa học Diffie - Hellman:

(1) Người gửi (chủ nhân văn bản) ký văn bản bằng cách mã hoá nó với khoá bí mật của mình (rồi gửi cho người nhận).
(2) Người nhận tiến hành kiểm tra chữ ký bằng cách: giải mã văn bản bằng chìa khoá công khai của người gửi. Nếu giải mã thành công thì văn bản ký đúng là của người gửi.

Giao thức này mang các ý nghĩa cơ bản của thủ tục ký, thật vậy:

  • “Văn bản ký” (văn bản mã) là sản phẩm của người đã chủ động tạo ra nó, tức là người đã dùng chiếc chìa khoá bí mật của mình để mã hoá văn bản.
  • “Văn bản ký” cho biết “người ký” là ai (chính là người sở hữu chiếc chìa khóa bí mật đã được dùng để mã văn bản, kiểm tra bằng cách giải mã với chìa khoá công khai của người đó).
  • Không ai làm giả được "chữ ký" vì rằng chỉ có duy nhất một người có chìa khoá bí mật đã dùng để "ký" (mã hoá).
  • Văn bản đã ký không thể thay đổi được nội dung. Thật vậy, nếu ai đó “mở ra” để thay đổi thì không thể “ký lại” được nữa, vì không có chiếc chìa khóa bí mật của “người đã ký" (như đã nói ở trên), và khi ấy văn bản không còn là “văn bản đã được ký”.
  • Người ký văn bản không thể thoái thác việc mình “đã ký”, vì ngoài ông ta ra không còn ai có cái chìa khóa đã được dùng để "mã hóa" văn bản đó.

Như vậy, quy trình ký như trên là rất hợp lý về mặt logic. Mọi người đều có được khả năng ký văn bản điện tử (bằng chìa khóa bí mật của riêng mình) và mọi người đều có thể kiểm tra chữ ký của người đó (bằng chìa khóa công khai mà người đó đã công bố).

Những điều “bất cập” của mô hình nguyên tắc:

  • Văn bản sau khi ký luôn ở trong dạng mã hóa, kể cả các văn bản cần công bố công khai, rộng rãi (không tự nhiên trong đời sống thực).
  • “Chữ ký” cũng chính là “Văn bản ký”, tức là văn bản mã (điều này không giống với mô hình thông thường).
  • Tốc độ “ký” là không nhanh, nếu văn bản dài (hàng chục trang) thì dễ gây “phản cảm”.

Cho nên, mô hình nêu trên chỉ mang tính nguyên tắc, mà không khả thi trên thực tiễn.

Hàm băm mật mã – công cụ khắc phục

Hàm băm mật mã dùng để “chiết xuất” đặc trưng văn bản.
Hàm băm mật mã nhận giá trị đầu vào là văn bản (độ dài tùy ý) và cho đầu ra là một xâu chữ số có độ dài xác định (vài chục ký tự), gọi là mã băm (message digest).

Hàm này có các thuộc tính quan trọng:

  • Rất “nhạy" đối với các thay đổi của văn bản. Hai văn bản khác nhau (dù rất nhỏ) thì có mã băm khác nhau rõ rệt.
  • Có tính “một chiều”. Nghĩa là, không thể tạo ra một văn bản có mã băm cho trước.
  • Tốc độ nhanh: thời gian tính mã băm cho mọi văn bản là không đáng kể.

Như vậy mã băm có tính đặc trưng rất cao (tương tự như dấu vân tay đối với con người), nên còn gọi là đặc trưng văn bản. Để nhận biết sự thay đổi của văn bản chỉ cần xem đặc trưng của nó có bị thay đổi hay không.
Vì đặc trưng văn bản có tính “đại diện đầy đủ” của văn bản, nên từ “mô hình nguyên tắc” ta có một quy trình ký dựa vào đặc trưng văn bản

Quy trình ký văn bản điện tử trong thực tế

Một cá thể A muốn ký một văn bản P thì cần thực hiện các bước sau đây:

  1. Tính đặc trưng của văn bản P;
  2. Dùng chìa khoá bí mật của mình để mã hoá dãy số đặc trưng văn bản thu được ở trên.

Đặc trưng văn bản sau khi được mã (bằng chìa bí mật của A) được gọi là chữ ký số (của cá thể A đối với văn bản P). Sơ đồ quy trình ký được thể hiện trong hình vẽ sau.


SƠ ĐỒ QUY TRÌNH KÝ

Do tính đặc trưng duy nhất của mã băm đối với văn bản, nên quy trình trên có được các thuộc tính của “mô hình nguyên tắc” (cũng tức là của chính chữ ký viết tay), nhưng lại khắc phục được các điều “bất cập” đã nêu, cụ thể là:

  • Văn bản sau khi ký vẫn là văn bản rõ;
  • “Chữ ký” không trùng với “văn bản ký”, mà chỉ là một xâu chữ số;
  • Thời gian tạo chữ ký là không đáng kể.

Như vậy, chữ ký số của văn bản là một xâu chữ số mang đặc thù của cả văn bản và chìa khóa bí mật của “người ký” (mà không phải là một nét vẽ ngoằn ngoèo như chữ ký tay).
Một người nào đó, nhận được văn bản P cùng với chữ ký số đi kèm, muốn kiểm tra thì cần tiến hành các bước sau:

  • Tính đặc trưng của văn bản P (bằng hàm băm mật mã có sẵn trên hệ thống);
  • Giải mã chữ ký số (bằng chìa khoá công khai của ông A) để có một đặc trưng nữa của P, rồi so sánh nó với đặc trưng thu được ở bước trên. Nếu chúng khớp nhau thì chứng tỏ văn bản nhận được chính là văn bản đã được ông A ký và nội dung của nó không bị thay đổi so với khi được ký.

Quy trình kiểm tra chữ ký được thể hiện trong sơ đồ sau:

SƠ ĐỒ KIỂM TRA CHỮ KÝ

Quy trình tạo chữ ký và kiểm tra chữ ký nêu trên hoàn toàn phù hợp với tinh thần các quy định của Chính phủ, nêu trong Nghị Định 26/2007/NĐ-CP, theo đó:
Chữ ký số được tạo ra bằng việc biến đổi một thông điệp dữ liệu, sử dụng hệ thống mật mã không đối xứng, theo đó người có dữ liệu ban đầu và chìa khóa công khai của người ký có thể xác định được chính xác:

  1. Việc biến đổi nêu trên được tạo ra bằng chính khóa bí mật tương ứng với khóa công khai trong cùng một cặp khóa.
  2. Sự toàn vẹn của nội dung thông điệp dữ liệu kể từ khi thực hiện việc biến đổi nêu trên.

CHÚ Ý:

  • Chữ ký số của cùng một người, nhưng trên các văn bản khác nhau thì sẽ khác nhau (vì mã băm của chúng là khác nhau). Tuy nhiên, chương trình kiểm tra chữ ký luôn cho phép xác định được là chữ ký của cùng một người.
  • Cũng chính vì lý do trên, chữ ký số của văn bản này không thể dùng được cho bất kỳ văn bản nào khác. Do vậy, chữ ký số không thể “sang chuyền” từ văn bản này sang văn bản khác (như hình ảnh của chữ ký tay), vì mọi hành vi “sang chuyền” đều sẽ bị lật tẩy.

Những ưu thế vượt trội của chữ ký số

So với thủ tục ký thông thường (trên văn bản giấy), thủ tục ký điện tử có những ưu thế vượt trội. Cụ thể:

  • Các ý nghĩa của chữ ký tay (đã nêu ở trên) chỉ mang tính “lý tưởng”, nhưng với chữ ký số thì "lý tưởng đã trở thành hiện thực".
  • Chữ ký số là chính xác tuyệt đối (không còn mối e ngại về việc chữ ký “không giống nhau mỗi lần ký”, như khi phải ký bằng tay);
  • Chữ ký số có thể được kiểm định một cách dễ dàng. Mọi sự giả mạo, gian lận vì thế đều bị phát hiện tức khắc. (Trong khi việc kiểm định chữ ký viết tay, con dấu giả,... là không đơn giản và thường đòi hỏi phương tiện kỹ thuật đặc biệt).
  • Chữ ký số cho phép văn bản điện tử thay thế văn bản giấy, hỗ trợ đắc lực cho việc triển khai “Chính phủ điện tử”.

Cơ sở pháp lý của chữ ký số

Nhận rõ tính ưu việt của công nghệ “ký điện tử”, Quốc Hội nước ta đã ban hành Luật giao dịch điện tử Số 51/2005/QH11 (ngày 29/11/2005); Đảng và Nhà nước đã chủ trương khuyến khích, thúc đẩy việc triển khai đưa ứng dụng chữ ký số vào thực tiễn, thông qua các văn bản sau đây:

+ Quyết định số 06-QĐ/TW ngày 29/6/2006 của Ban bí thư TW Đảng;
+ Nghị định chữ ký số 26/2007/NĐ-CP ngày 15/02/2007 của Chính phủ;
+ Nghị định số 64/2007/NĐ-CP ngày 10/4/2007 của Chính phủ;
+ Chỉ thị số 34/2008/CT-TTg ngày 3/12/2008 của Thủ tướng Chính phủ;
+ Quyết định số 48/QĐ-TTg ngày 31/3/2009 của Thủ tướng Chính phủ;
+ Quyết định số 63/QĐ-TTg ngày 13/01/2010 của Thủ tướng Chính phủ;
+ Quyết định số 1605/QĐ-TTg ngày 27/8/2010 của Thủ tướng Chính phủ;

Đồng thời, Bộ Nội vụ cũng đã có một số thông tư hướng dẫn các cơ quan Đảng và Nhà nước trong việc sử dụng dịch vụ chứng thực chữ ký số.

Giải pháp triển khai của Trung tâm Tin học (Viện KHCN VN):

Vừa qua, Trung tâm Tin học (Viện Khoa học và Công nghệ Việt Nam) đã hoàn tất việc thiết lập phần mềm ứng dụng chữ ký số, phục vụ cho việc triển khai tại Viện KH&CN Việt Nam.

Để có chương trình cài đặt thử nghiệm, xin tải về từ địa chỉ:
. . . . . . . . . . .
Để nắm bắt được quy trình cài đặt và cách sử dụng phần mềm, xin xem tại địa chỉ:
. . . . . . . . . . .
Để nhận Chứng thư số sử dụng thử nghiệm, xin đăng ký tại địa chỉ:
. . . . . . . . . . .