Chữ ký Số là gì?

0
143

Chữ ký số là một cơ chế mật mã hóa được sử dụng để kiểm tra độ chân thực và tính toàn vẹn của dữ liệu số. Chúng tôi có thể xem nó như là một phiên bản kỹ thuật số của các chữ ký bằng tay thông thường, nhưng với mức độ phức tạp và bảo mật cao hơn.

Nói một cách đơn giản, chúng ta có thể mô tả chữ ký số như một mã được đính kèm với tin nhắn hoặc tài liệu. Sau khi được tạo, mã này đóng vai trò như một bằng chứng cho thấy tin nhắn không bị giả mạo trong quá trình chuyển từ người gửi sang người nhận.

Mặc dù khái niệm bảo mật thông tin liên lạc bằng mật mã đã có từ thời cổ đại, hệ thống chữ ký số đã trở thành hiện thực vào những năm 1970 – nhờ vào sự phát triển của Mật mã khóa công khai (PKC). Vì vậy, để tìm hiểu chữ ký số hoạt động như thế nào, trước tiên chúng ta cần hiểu những điều cơ bản về hàm băm và mật mã khóa công khai.

Hàm băm

Băm là một trong những yếu tố cốt lõi của hệ thống chữ ký số. Quá trình băm bao gồm việc chuyển đổi dữ liệu có kích thước bất kỳ thành một kết quả đầu ra có kích thước cố định. Điều này được thực hiện bởi một loại thuật toán đặc biệt được gọi là hàm băm. Đầu ra được tạo bởi hàm băm được gọi là giá trị băm hoặc thông điệp được mã hóa.

Khi được kết hợp với mật mã, các hàm băm mật mã đcó thể được sử dụng để tạo giá trị băm (mật mã) hoạt động như một dấu vân tay kỹ thuật số duy nhất. Điều này có nghĩa là bất kỳ thay đổi nào trong dữ liệu đầu vào (thông điệp) sẽ dẫn đến một đầu ra hoàn toàn khác (giá trị băm). Và đó là lý do các hàm băm mật mã được sử dụng rộng rãi để xác minh tính chân thực của dữ liệu số.

Mật mã khóa công khai (PKC)

Mật mã khóa công khai, hoặc PKC, đề cập đến một hệ thống mật mã sử dụng một cặp khóa: một khóa công khai và một khóa riêng. Hai khóa có liên quan về mặt toán học và cả hai đều có thể được sử dụng cho mã hóa dữ liệu và chữ ký số.

Là một công cụ mã hóa, PKC an toàn hơn các phương thức thô sơ hơn của mã hóa đối xứng. Mặc dù các hệ thống cũ hơn cũng dựa trên cùng một khóa này để mã hóa và giải mã thông tin, PKC cho phép mã hóa dữ liệu với khóa công khai và giải mã dữ liệu bằng khóa riêng tương ứng.

Ngoài ra, hệ thống PKC cũng có thể được áp dụng trong việc tạo chữ ký số. Về bản chất, quy trình này gồm hoạt động băm thông điệp (hoặc dữ liệu kỹ thuật số) bằng khóa riêng của người ký. Tiếp theo, người nhận tin nhắn có thể kiểm tra xem chữ ký có hợp lệ hay không bằng cách sử dụng khóa chung do người ký cung cấp.

Trong một số trường hợp, chữ ký điện tử có thể liên quan đến mã hóa, nhưng không phải luôn như vậy. Chẳng hạn, blockchain Bitcoin sử dụng PKC và chữ ký số, nhưng khác với niềm tin của nhiều người, không có sự mã hóa trong quy trình này. Về mặt kỹ thuật, Bitcoin triển khai cái gọi là Thuật toán Chữ ký số Đường cong Êlip (ECDSA) để xác thực các giao dịch.

Chữ ký số hoạt động như thế nào

Trong bối cảnh của tiền điện tử, một hệ thống chữ ký số thường bao gồm ba bước cơ bản: băm, ký và xác minh.

Băm dữ liệu

Bước đầu tiên là băm thông điệp hoặc dữ liệu kỹ thuật số. Điều này được thực hiện bằng cách gửi dữ liệu qua một thuật toán băm để tạo ra giá trị băm (nghĩa là thông điệp được mã hóa). Như đã đề cập, các thông điệp có thể có các kích thước khác nhau, nhưng khi chúng được băm, tất cả các giá trị băm của chúng có cùng độ dài. Đây là thuộc tính cơ bản nhất của hàm băm.

Tuy nhiên, không bắt buộc phải băm dữ liệu để tạo chữ ký số vì người ta có thể sử dụng khóa riêng để ký một thông điệp không bị băm. Nhưng đối với tiền điện tử, dữ liệu luôn được băm vì việc xử lý các mã băm có độ dài cố định là yếu tố tạo điều kiện thuận lợi cho toàn bộ quá trình.

Chữ ký

Sau khi thông điệp được băm, người gửi thông điệp cần ký tên vào đó. Đây là thời điểm mà mật mã khóa công khai phát huy tác dụng. Có một số loại thuật toán chữ ký số, mỗi loại có cơ chế riêng. Nhưng về cơ bản, thông điệp được băm sẽ được ký bằng một khóa riêng và người nhận thông điệp sau đó có thể kiểm tra tính hợp lệ của nó bằng cách sử dụng khóa công khai tương ứng (do người ký cung cấp).

Nói cách khác, nếu khóa riêng không được bao gồm khi chữ ký được tạo, người nhận tin nhắn sẽ không thể sử dụng khóa công khai tương ứng để xác minh tính hợp lệ của nó. Cả khóa công khai và khóa riêng đều do người gửi thông điệp tạo ra, nhưng chỉ có khóa công khai được chia sẻ với người nhận.

Điều đáng chú ý là chữ ký điện tử có liên quan trực tiếp đến nội dung của mỗi thông điệp. Vì vậy, nếu chữ ký viết tay giữ nguyên bất kể nội dung thông điệp tin nhắn là gì, mỗi tin nhắn được ký bằng phương pháp kỹ thuật số sẽ có một chữ ký số khác nhau.

Xác thực

Hãy lấy một ví dụ để minh họa toàn bộ quá trình cho đến bước xác minh cuối cùng. Giả sử Alice viết một thông điệp cho Bob, băm thông điệp đó để tạo ra mã băm, và sau đó kết hợp giá trị băm này với khóa riêng của cô ấy để tạo chữ ký số. Chữ ký sẽ hoạt động như một dấu vân tay số duy nhất của thông điệp đó.

Khi Bob nhận được thông điệp, anh ấy có thể kiểm tra tính hợp lệ của chữ ký số bằng cách sử dụng khóa công khai do Alice cung cấp. Bằng cách này, Bob có thể chắc chắn rằng chữ ký đó do Alice tạo ra bởi vì chỉ có cô ấy có khóa riêng tương ứng với khóa công khai đó (ít nhất đó là những gì chúng ta mong đợi).

Vì vậy, điều quan trọng đối với Alice là giữ bí mật khóa riêng của cô ấy. Nếu một người khác lấy được khóa riêng của Alice, họ có thể tạo chữ ký điện tử và giả vờ là Alice. Trong ngữ cảnh của Bitcoin, điều này có nghĩa là ai đó có thể sử dụng khóa riêng của Alice để di chuyển hoặc chi tiêu Bitcoin của cô ấy mà không cần sự cho phép của cô ấy.

Vì sao chữ ký số lại quan trọng?

Chữ ký số thường được sử dụng để đạt được tính toàn vẹn dữ liệu, xác thực và chống hoái thác.

  • Tính toàn vẹn dữ liệu. Bob có thể xác minh rằng thông điệp của Alice đã không bị thay đổi trên đường được gửi đi. Bất kỳ sửa đổi trong thông điệp sẽ tạo ra một chữ ký hoàn toàn khác nhau.
  • Tính xác thực. Miễn là khóa riêng của Alice được giữ bí mật, Bob có thể sử dụng khóa công khai của mình để xác nhận rằng chữ ký điện tử được tạo bởi Alice chứ không phải một ai khác.
  • Chống thoái thác. Khi chữ ký đã được tạo, Alice sẽ không thể phủ nhận việc mình đã ký nó, trừ khi khóa riêng của cô ấy bị xâm phạm.

Các trường hợp sử dụng

Chữ ký số có thể được áp dụng cho nhiều loại tài liệu và chứng chỉ số khác nhau. Do đó, chúng có một số ứng dụng. Một số trường hợp sử dụng phổ biến nhất bao gồm:  

  • Công nghệ thông tin. Để tăng cường bảo mật của các hệ thống truyền thông Internet.
  • Tài chính. Chữ ký số có thể được triển khai cho các hoạt động kiểm toán, báo cáo chi phí, thỏa thuận cho vay và nhiều hơn nữa.
  • Pháp lý. Việc sử dụng chữ ký số trên tất cả các loại hợp đồng kinh doanh và thỏa thuận pháp lý, bao gồm cả các tài liệu của chính phủ.
  • Chăm sóc sức khỏe. Chữ ký số có thể ngăn chặn sự gian lận trong kê đơn thuốc và hồ sơ y tế.
  • Blockchain. Các hệ thống chữ ký số đảm bảo rằng chỉ những chủ sở hữu hợp pháp của tiền điện tử mới có thể ký một giao dịch để chuyển tiền (miễn là các khóa riêng của họ không bị xâm phạm).

Hạn chế

Những thách thức lớn mà hệ thống chữ ký số phải đối mặt dựa trên ít nhất ba yêu cầu: 

  • Thuật toán. Chất lượng của các thuật toán được sử dụng trong hệ thống chữ ký số là rất quan trọng. Điều này bao gồm sự lựa chọn các hàm băm đáng tin cậy và các hệ thống mật mã.
  • Triển khai. Nếu các thuật toán tốt, nhưng việc triển khai không tốt, hệ thống chữ ký số sẽ có khả năng xuất hiện sai sót.
  • Khóa riêng. Nếu các khóa riêng bị rò rỉ hoặc bằng cách nào đó bị xâm phạm, các thuộc tính xác thực và chống thoái thác sẽ bị vô hiệu. Đối với người dùng tiền điện tử, mất khóa riêng có thể dẫn đến tổn thất tài chính đáng kể.

Chữ ký điện tử và chữ ký số

Nói một cách đơn giản, chữ ký điện tử liên quan đến một loại chữ ký điện tử cụ thể – đề cập đến bất kỳ phương thức điện tử nào để ký các tài liệu và tin nhắn. Do đó, tất cả chữ ký số là chữ ký điện tử, nhưng điều ngược lại không phải lúc nào cũng đúng.

Sự khác biệt chính giữa chúng là phương thức xác thực. Chữ ký số triển khai các hệ thống mật mã, chẳng hạn như hàm băm, mật mã khóa công khai và kỹ thuật mã hóa.

Kết luận

Các hàm băm và mật mã khóa công khai là cốt lõi của các hệ thống chữ ký số, hiện được áp dụng cho một loạt các trường hợp sử dụng. Nếu được thực hiện đúng cách, chữ ký số có thể tăng tính bảo mật, đảm bảo tính toàn vẹn và tạo điều kiện cho việc xác thực tất cả các loại dữ liệu kỹ thuật số.

Trong lĩnh vực blockchain, chữ ký số được sử dụng để ký và ủy quyền thực hiện các giao dịch tiền điện tử. Chúng đặc biệt quan trọng đối với Bitcoin vì chữ ký đảm bảo rằng chỉ những cá nhân sở hữu khóa riêng tương ứng mới có thể tiêu được tiền.

Mặc dù chúng ta đã sử dụng cả chữ ký điện tử và chữ ký số trong nhiều năm, nhưng vẫn còn rất nhiều cơ hội để phát triển. Một phần lớn của bộ máy hành chính ngày nay vẫn dựa trên giấy tờ, nhưng chúng ta có thể sẽ thấy việc ứng dụng nhiều hơn các hệ thống chữ ký số khi chúng ta chuyển sang một hệ thống số hóa hơn.

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây