Chương 4. Mã hóa khóa công khai
5.1. Khái niệm về chữ ký điện tử
Trong một giao dịch, An gửi cho Bình một lá thư của mình. Việc gửi lá thư đó trước hết phải đảm bảo ba yêu cầu sau đây trong các nguyên lý bảo mật thông tin:
- Tính bảo mật: Lá thư dù lọt vào tay kẻ khác ngoài Bình thì kẻ đó cũng không hiểu được nội dung thư.
- Tính toàn vẹn thông tin: Nếu lá thư bị người trung gian làm biến đổi nội dung trong quá trình truyền tin thì Bình phải nhận biết là thư đã bị can thiệp (chỉ phát hiện (detect) nhưng có thể không biết nội dung bị can thiệp như thế nào để đính chính lại cho đúng (correct)).
- Tính nhận biết: Khi nhận được thư, Bình nhận ra được đúng là thư do An gửi, không phải là do một kẻ thứ ba giả mạo.
- Tính không chối bỏ: Sau này An không thể chối bỏ rằng lá thư đó không phải của mình.
Trong giao dịch thông thường, An ký tên vào lá thư để xác nhận rằng thư đó do mình phát hành, sau này không thể chối bỏ được. Khi Bình thấy chữ ký của An ở cuối thư thì tin tưởng là thư của An.
Trong giao dịch điện tử, nếu giữa An và Bình đã có sự trao đổi thống nhất một khóa mã bí mật K (chỉ hai người biết) thì nếu lá thư được mã hóa bằng khóa mã đó, hai yêu cầu nói trên đều thỏa mãn.
Tuy nhiên trong nhiều trường hợp, nếu có một thông điệp rất lớn cần gửi đi (Hợp đồng, cung cấp tư liệu v.v.) mà nội dung không có gì cần thiết phải bí mật toàn bộ, nếu phải mã hóa (và giải mã) thì quá phiền phức và tốn thời gian.
Vậy có cách nào giải quyết được bốn yêu cầu nói trên mà không cần phải mã hóa toàn bộ thông điệp không?
Nói cách khác, có thể tạo ra một công cụ đóng vai trò như chữ ký của người phát hành thông điệp trong dạng giao dịch thông thường không?
5.1.1. Chữ ký điện tử
Chữ ký điện tử (Electronic signature) chính là công cụ đáp ứng được những yêu cầu đề ra trên đây cho việc trao đổi thông điệp điện tử. Không những thế, ngoài ra chữ ký điện tử còn có một số tính chất khác đảm bảo các nguyên lý khác của vấn đề bảo mật dữ liệu như tính toàn vẹn thông tin, tính xác thực và tính nhận dạng đối tác.
Hiện nay, chữ ký điện tử có thể bao hàm các cam kết gửi bằng E-mail, việc nhập các số nhận dạng cá nhân (PIN) vào các máy ATM, ký bằng bút điện tử với thiết bị màn hình cảm ứng tại các quầy tính tiền], chấp nhận các điều khoản người dùng (EULA) khi cài đặt phần mềm máy tính, ký các hợp đồng điện tử online...
5.1.2. Các định nghĩa pháp lý
Nhiều luật được ban hành trên thế giới công nhận giá trị pháp lý của chữ ký điện tử nhằm thúc đẩy các giao dịch điện tử xuyên quốc gia.
Luật Giao dịch điện tử Việt Nam, Điều 4 định nghĩa:
(1) Chứng thư điện tử là thông điệp dữ liệu do tổ chức cung cấp dịch vụ chứng thực chữ ký điện tử phát hành nhằm xác nhận cơ quan, tổ chức, cá nhân được chứng thực là người ký chữ ký điện tử.
(2) Chứng thực chữ ký điện tử là việc xác nhận cơ quan, tổ chức, cá nhân được chứng thực là người ký chữ ký điện tử.
(5) Dữ liệu là thông tin dưới dạng ký hiệu, chữ viết, chữ số, hình ảnh, âm thanh hoặc dạng tương tự.
(12) Thông điệp dữ liệu là thông tin được tạo ra, được gửi đi, được nhận và được lưu trữ bằng phương tiện điện tử.
Bộ luật ESIGN (Hoa Kỳ), Điều 106 định nghĩa:
(2) Điện tử (electronic): chỉ các công nghệ liên quan tới điện, số, từ, truyền tin không dây, quang, điện từ hoặc các khả năng tương tự.
(4) Văn bản điện tử (electronic record): Các hợp đồng hoặc các văn bản khác được tạo ra, lưu trữ, trao đổi dưới dạng điện tử.
(5) Chữ ký điện tử (electronic signature): Các tín hiệu âm thanh, ký hiệu, quá trình gắn (vật lý hoặc logic) với hợp đồng hay văn bản và được thực hiện bởi người muốn ký vào hợp đồng hay văn bản đó.
Bộ luật GPEA (Hoa Kỳ), Điều 1710 định nghĩa:
(1) Chữ ký điện tử (electronic signature): là cách ký các văn bản điện tử đảm bảo:
(A) Nhận dạng và xác thực cá nhân đã tạo ra văn bản;
(B) Chỉ ra sự chấp thuận của người ký đối với nội dung trong văn bản.
Bộ luật UETA (Hoa Kỳ), Điều 2 định nghĩa:
(5) Điện tử (electronic 'valeking132') chỉ các công nghệ liên quan tới điện, số, từ, không dây, quang, điện từ hoặc các khả năng tương tự.
(6) Tác tử điện tử (electronic agent) là các chương trình máy tính hoặc các phương tiện tự động khác sử dụng độc lập để khởi đầu một hành động hoặc đáp lại các tín hiệu điện tử mà không cần sự giám sát của con người.
(7) Văn bản điện tử (electronic record 'valeking132') Các văn bản được tạo ra, lưu trữ, trao đổi dưới dạng điện tử.
(8) Chữ ký điện tử (electronic signature) Các tín hiệu âm thanh, ký hiệu, quá trình gắn (vật lý hoặc logic) với hợp đồng hay văn bản và được thực hiện bởi người muốn ký vào hợp đồng hay văn bản đó.
Commodity Futures Trading Commission 17 CFR Phần 1 Điều 1.3 định nghĩa:
(tt) Chữ ký điện tử là tín hiệu âm thanh, ký hiệu, quá trình gắn (vật lý hoặc logic) với hợp đồng hay văn bản và được thực hiện bởi người muốn ký vào hợp đồng hay văn bản đó.
Food and Drug Administration 21 CFR Điều 11.3 định nghĩa:
(5) Chữ ký số là các chữ ký điện tử dựa trên các phương pháp mật mã để nhận thực người tạo văn bản dựa trên các quy tắc và tham số sao cho có thể kiểm tra được nhận dạng của người tạo và tính toàn vẹn của văn bản.
(7) Chữ ký điện tử là các số liệu (máy tính) được tạo ra, chấp nhận và cho phép bởi cá nhân có thẩm quyền (tương đương với chữ ký văn bản giấy truyền thống).
Luật chữ ký điện tử của Trung Quốc
Mục tiêu hướng tới thống nhất việc thực hiện, khẳng định tính pháp lý và bảo vệ quyền lợi hợp pháp của các bên liên quan tới việc thực hiện chữ ký điện tử.
Liên minh châu Âu (EU)
Liên minh châu Âu (EU) đã thiết lập khung pháp lý cho chữ ký điện tử:
Hướng dẫn số 1999/93/EC của Quốc hội châu Âu ngày 13 tháng 12 năm 1999 về khung pháp lý của chữ ký điện tử.
Quyết định 2003/511/EC sử dụng 3 thỏa thuận tại hội thảo CEN làm tiêu chuẩn kỹ thuật.
Một số quốc gia đã thực hiện quyết định 1999/93/EC.
Áo: Luật Chữ ký, 2000
Anh, Scotland và Wales: Luật Thông tin điện tử, 2000 Đức: Luật Chữ ký, 2001
Li-thu-a-ni-a: Luật Chữ ký điện tử, 2002 Na Uy: Luật Chữ ký điện tử, 2001
Tây Ban Nha: Đạo luật 59/2003 ngày 19/12 về Chữ ký điện tử.
Thụy Điển: Đạo luật Chữ ký điện tử (SFS 2000:832).
Ấn Độ: Luật Công nghệ thông tin, 2000
Niu Di-lân: Luật Giao dịch điện tử, 2003 Điều 22-24 5.1.3. Tạo chữ ký điện tử
Giả sử giữa An và Bình đã có trao đổi (riêng) một khóa mã K.
Nếu An gửi cho Bình một thông điệp sử dụng khóa K để mã hóa thì chắc chắn Bình nhận ra thông điệp là do An phát hành, mặt khác vì chỉ có An và Bình cùng sở hữu khóa K nên An không thể chối là thông điệp không phải do mình tạo ra. Tuy nhiên nếu mục đích là để cho Bình nhận biết là mình đã dùng khóa K thì An không cần mã hóa toàn bộ thông điệp mà chỉ cần mã hóa một phần rất nhỏ của thông điệp rồi gửi cho Bình là đủ!
Chữ ký điện tử là một bộ phận thường có kích thước nhỏ tạo ra từ thông điệp, được người gửi mã hóa bằng khóa K đã trao đổi thống nhất giữa hai đối tác gửi và nhận thông điệp, gửi kèm với toàn bộ thông điệp cho người nhận.
Để tạo ra một bộ phận của thông điệp người ta thường dùng kỹ thuật hàm băm (hash function). Như vậy điều quan trọng ở đây không phải là Bình hiểu được “nội dung” của bộ phận thông điệp mã hóa là gì mà chủ yếu là nhận ra đối tác của mình bằng quy luật mã hóa đã trao đổi thống nhất. Chữ ký của cùng một người gửi, kèm vào trong các thông điệp khác nhau do người đó phát hành có thể có nội dung hoàn toàn nhau, điều quan trọng duy nhất là quy luật mã hóa K vẫn giữ nguyên!
Hình 5.1: Sơ đồ tạo và kiểm tra chữ ký điện tử 5.1.4. Chữ ký số
Việc tạo chữ ký điện tử qua mã hóa giá trị băm của mỗi thông điệp quả thực không dễ dàng với những cá nhân, tổ chức không được trang bị tốt về công nghệ thông tin. Nếu chỉ nhằm mục đích nhận biết và không chối bỏ, người ta thường dùng một phương pháp đơn giản hơn: đó là các chữ ký số (digital signature).
Nếu mã hàm băm tính được không trùng với kết quả giải mã chữ ký số thì kết luận là nội dung tài liệu nhận được đã bị sửa đổi so với tài liệu gốc của người gửi
Chữ ký số có thể xem là một lớp con của chữ ký điện tử. Sau khi hai đối tác đã trao đổi khóa mã K, An dùng khóa K để mã hóa một nội dung dữ liệu cố định S nào đó: K(S) = S’ và sẽ gắn S’ vào mọi thông điệp của mình phát hành. Khi An nhận được một thông điệp có gắn S’, dùng K để giải mã được lại S thì nhận ra thông điệp là do An phát hành. S’ là chữ ký số của An. Nội dung chữ ký số rất phong phú: có thể là một đoạn văn bản (họ và tên, chữ ký thật scan lên máy tính, chữ ký vẽ lên máy tính và lưu trữ lại…), một hình ảnh, một câu nói, hoặc một đoạn video và cũng có thể sử dụng hàm băm để lấy giá trị băm trước khi mã hóa.
Hiện nay có những nhà cung cấp dịch vụ tạo khóa mã và tạo chữ ký số cho những người cần sử dụng, họ chỉ cần trả phí. Tất nhiên chữ ký số có tính bảo mật thấp hơn vì nội dung cố định nên sau một thời gian có thể dùng phương pháp thống kê để thám mã. Để tăng độ bảo mật, người sử dụng có thể thường xuyên thay đổi nội dung chữ ký số. Chữ ký điện tử hay chữ ký số thường thuộc quyền sử dụng riêng của một người, giống như chữ ký thông thường.
Một tổ chức, một cơ quan hay doanh nghiệp cũng có thể tạo một chữ ký số sử dụng chung để xác nhận cho những thông điệp mà cơ quan mình phát hành. Nội dung chữ ký số dùng chung đó là logo biểu tượng của doanh nghiệp, một câu khẩu hiệu của tổ chức hoặc chính là con dấu của tổ chức đó. Vì vậy chữ ký số sử dụng chung cho tổ chức cũng được gọi là con dấu số của tổ chức.
Tuy nhiên phần nhiều trong các quy định pháp lý của giao dịch điện tử người ta không nói đến giá trị của con dấu số, nói khác đi, trong giao dịch điện tử không dùng con dấu số đi kèm với chữ ký số/chữ ký điện tử của người có trách nhiệm phát hành thông điệp của cơ quan tổ chức vì hai lý do sau đây:
- Chữ ký số/điện tử chỉ có một người biết và được quyền sử dụng trong khi con dấu số của một tổ chức (nếu có) thì rất nhiều người được quyền sử dụng, do vậy độ bảo mật của con dấu số thấp hơn chữ ký số.
- Trong một cơ quan, tổ chức, người giữ con dấu số thường có mức độ trách nhiệm thấp hơn nhiều so với những người dùng chữ ký số.
Vì vậy, nếu một tổ chức có tạo con dấu số sử dụng trong các thông điệp do cơ quan mình phát hành (kèm với chữ ký số của người có trách nhiệm trong tổ chức) thì cũng chỉ được xem như một sự xác nhận bổ sung không có giá trị tin cậy cao, giống như trong các văn bản thông thường của một tổ chức người ta dùng các giấy tờ, phong bì có in logo, tiêu đề của tổ chức vậy thôi!