Chữ ký số là gì?

0
254

Ngày nay với sự phát triển ngày càng lớn mạnh của công nghệ, các dịch vụ  bảo mật về Chữ ký số (Digital Signature) được áp dụng rộng rãi trong các hợp đồng giao dịch. Có những điểm khá tương đồng về chữ ký số và giao dịch Blockchain. Vậy chữ ký số là gì? Hãy cùng Công nghệ số 247 giải mã qua bài viết dưới đây

Chữ ký số là gì

Chữ ký số là một cơ chế mã hóa được sử dụng để xác minh tính toàn vẹn của dữ liệu kỹ thuật số.Chữ ký số có thể được coi như một phiên bản điện tử, mã hóa của chữ ký viết 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ữ ký số chính là chữ ký viết tay được mã hóa ,đính kèm với tin nhắn hoặc tài liệu. Sau khi được tạo, chữ ký số được sử dụng để xác minh rằng thông tin được gửi tới người nhận không bị giả mạo.
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, các sơ đồ chữ ký số đã được thực hiện 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 ( Public-key cryptography – PKC). Vì vậy, để tìm hiểu cách thức chữ ký số hoạt động, 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ó dung lượng bất kỳ thành một kết quả đầu ra có kích thước cố định nhờ một thuật toán đặc biệt được gọi là hàm băm. Kết quả tạo ra 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 chữ ký 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 biết đến như 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 đại số 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 khi so sánh với những phương thức thô sơ của mã hóa đối xứng. Mặc dù các hệ thống cũ 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 lúc nào cũng như vậy. Chẳng hạn, blockchain Bitcoin sử dụng PKC và chữ ký số, nhưng khác với suy nghĩ của nhiều người, trong quá trình này không có sự mã hóa. Về mặt kỹ thuật, Bitcoin triển khai Thuật toán Chữ ký số Đường cong Êlip (ECDSA) để xác thực các giao dịch.

Sự khác biệt giữa Private Key và Khóa Public Key

Private Key: Quá trình thực hiện sử dụng cùng một khóa (khóa bí mật) được sử dụng để mã hóa và giải mã. Khóa duy nhất được sao chép hoặc chia sẻ bởi một bên khác để giải mã văn bản được mã hóa. Nó nhanh hơn mật mã khóa công khai.
Dưới đây là một số đặc điểm dễ thấy của Private Key

  • Có tốc độ nhanh hơn
  • Một khóa (khóa bí mật) và cùng một thuật toán được sử dụng để mã hóa và giải mã.
  • Khóa được giữ bí mật.
  • Khóa riêng là Đối xứng vì chỉ có một khóa được gọi là khóa bí mật.
  • Người gửi và người nhận chia sẻ một khóa.
  • Khóa riêng phải giữ bí mật

Public Key: Quá trình này sử dụng hai khóa, trong đó một khóa được sử dụng để mã hóa và khóa kia dùng để giải mã.
Dưới đây là một số đặc điểm phân biệt được của Public Key

  • Tốc độ chậm hơn
  • Một khóa được sử dụng để mã hóa và một khóa khác được sử dụng để giải mã
  • Một trong hai khóa được giữ bí mật
  • Khóa công khai không đối xứng vì có hai loại khóa: khóa riêng và khóa chung
  • Người gửi và người nhận không cần phải trao đổi thông tin về khóa
  • Khóa chung có thể được tiết lộ ra ngoài còn khóa riêng cần phải giữ bí mật

 

Chữ ký số hoạt động như thế nào trong thị trường tiền điện tử

Trong 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 tin nhắn 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 thông qua thuật toán băm để tạo ra giá trị băm. Như đã đề cập, các thông điệp có thể thay đổi đáng kể về kích thước, 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, băm dữ liệu không phải là một điều bắt buộc để tạo chữ ký số vì người ta có thể sử dụng khóa riêng để ký một tin nhắn được 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 giá trị băm khác nhau thành độ dài cố định tạo điều kiện thuận lợi cho toàn bộ quá trình.

Ký dữ liệu

Sau khi thông tin được băm, người gửi tin nhắn cần ký tên. Đây là thời điểm mà mật mã khóa công khai phát huy tác dụng. Có nhiều loại thuật toán chữ ký số, mỗi loại có cơ chế riêng. Nhưng về cơ bản, tin nhắn được băm sẽ được ký bằng một khóa riêng và người nhận tin nhắn sau đó có thể kiểm tra tính hợp lệ của nó bằng cách sử dụng khóa chung tương ứng (do người ký cung cấp).
Nói cách khác, nếu không bao gồm khóa riêng khi chữ ký được tạo, người nhận tin nhắn có thể sử dụng khóa chung tương ứng để xác minh tính hợp lệ của nó. Cả khóa chung và khóa riêng đều được người gửi tin nhắn tạo ra, nhưng chỉ có khóa chung được chia sẻ với người nhận.
Đáng chú ý là chữ ký số có liên quan trực tiếp đến nội dung của từng thông tin. Vì vậy, không giống như chữ ký viết tay, có xu hướng giống nhau bất kể tin nhắn, mỗi thông tin được ký bằng kỹ thuật số sẽ có một chữ ký số khác nhau.

Xác minh dữ liệu

Hã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.
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ử A viết một thông điệp cho B, 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 A để 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 B nhận được thông điệp, B 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 A cung cấp. Bằng cách này, B chắc chắn rằng chữ ký đó do A tạo ra bởi vì chỉ có A có khóa riêng tương ứng với khóa công khai đó.
Vì vậy, điều quan trọng đối với A là giữ bí mật khóa riêng của A. Nếu một người khác lấy được khóa riêng của A, họ có thể tạo chữ ký điện tử và giả mạo là A. Trong tiền điện tử, điều này có nghĩa là ai đó có thể sử dụng khóa riêng của A để di chuyển hoặc chi tiêu Bitcoin của A mà không cần xin phép.

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: B có thể xác minh rằng thông điệp của A đã 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 A được giữ bí mật, B 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 A.
  • Chống thoái thác: Khi chữ ký đã được tạo, A sẽ không thể phủ nhận việc mình đã ký nó, trừ khi khóa riêng của A bị xâm phạm.

Ứng dụng của chữ ký số

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
  • 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).
  • 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ủ.
  • 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.
  • 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ế.

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ố 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ã.
  • 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ể.
  • 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.

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

Nói một cách đơn giản, chữ ký số liên quan đến một loại chữ ký điện tử cụ thể. Do đó, tất cả chữ ký số là chữ ký điện tử, nhưng điều ngược lại không thì không hoàn toàn đú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.

Mong rằng qua bài viết trên, bạn đã có cái nhìn tổng quan hơn về Chữ ký số. Hãy tiếp tục theo dõi Công nghệ số 247 để không bỏ lỡ bất cứ bài viết nào nhé!