Chữ ký số là cơ chế mã hóa được sử dụng để xác minh tính xác thực và tính toàn vẹn của số và dữ liệu. Chúng ta có thể coi nó như một phiên bản kỹ thuật số của phương pháp chữ ký viết tay truyền thống, phức tạp và an toàn hơn chữ ký.

Nói tóm lại, chúng ta có thể hiểu chữ ký số là một đoạn mã được đính kèm trong tin nhắn hoặc tài liệu. Khi chữ ký số được tạo ra, nó đóng vai trò là bằng chứng cho thấy tin nhắn không bị giả mạo trong suốt hành trình từ người gửi đến người nhận.

Trong khi khái niệm sử dụng mật mã để bảo vệ tính bí mật của thông tin liên lạc đã có từ xa xưa, thì sơ đồ chữ ký số chỉ trở thành hiện thực vào những năm 1970 với sự phát triển của mật mã khóa công khai (PKC). Vì vậy, để hiểu cách chữ ký số hoạt động, trước tiên chúng ta cần hiểu những kiến ​​​​thức 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 trong chữ ký số. Quá trình hoạt động của giá trị băm đề cập đến việc chuyển đổi dữ liệu có độ dài bất kỳ thành độ dài cố định. Điều này đạt được thông qua một hoạt động đặc biệt gọi là hàm băm. Giá trị do hàm băm tạo ra được gọi là giá trị băm hoặc thông báo tóm tắt.

Khi một giá trị băm được kết hợp với thuật toán mã hóa sử dụng hàm băm mật mã để tạo ra giá trị băm (thông báo), giá trị đó sẽ 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 đối với dữ liệu đầu vào (thông báo) sẽ dẫn đến giá trị đầu ra hoàn toàn khác (giá trị băm). Đây là lý do tại sao hàm băm mật mã được sử dụng rộng rãi để xác minh tính xác thực của số và dữ liệu.


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

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

Là một công cụ mã hóa, PKC có tính bảo mật cao hơn mã hóa đối xứng. Các hệ thống mã hóa đối xứng dựa vào cùng một khóa để mã hóa và giải mã thông tin, nhưng PKC sử dụng khóa chung để mã hóa dữ liệu và khóa riêng tương ứng để giải mã dữ liệu.

Ngoài ra, PKC cũng có thể được áp dụng để tạo chữ ký số. Về cơ bản, quy trình này bao gồm việc người gửi mã hóa hàm băm của tin nhắn (dữ liệu) bằng khóa riêng của mình. Tiếp theo, người nhận tin nhắn có thể kiểm tra xem chữ ký số 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ý số có thể bao gồm mã hóa nhưng không phải lúc nào cũng vậy. Ví dụ: chuỗi khối Bitcoin sử dụng PKC và chữ ký số, và không giống như hầu hết mọi người tin rằng, không có mã hóa trong quy trình. Về mặt kỹ thuật, Bitcoin lần lượt triển khai cái gọi là Thuật toán chữ ký số đường cong Elliptic (ECDSA) để xác minh các giao dịch.


Cách chữ ký số hoạt động

Trong bối cảnh tiền điện tử, hệ thống chữ ký số thường bao gồm ba quy trình 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. Điều này được thực hiện bằng cách thao tác trên dữ liệu bằng thuật toán băm để tạo ra giá trị băm (tức là thông báo tóm tắt). Như đã đề cập ở trên, các tin nhắn có thể có độ dài khác nhau rất nhiều, nhưng khi các tin nhắn được băm, các giá trị băm của chúng đều 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, chỉ cần băm tin nhắn là không cần thiết để tạo chữ ký số, vì các tin nhắn chưa được băm cũng có thể được mã hóa bằng khóa riêng. Nhưng đối với tiền điện tử, các tin nhắn cần được xử lý bằng hàm băm, vì việc xử lý các giá trị băm có độ dài cố định sẽ giúp các chương trình tiền điện tử chạy được.

dấu hiệu

Sau khi thông tin đã được băm, người gửi tin nhắn cần ký vào tin nhắn của họ. Mật mã khóa công khai được sử dụng ở đây. Có một số loại thuật toán chữ ký số, mỗi loại có cơ chế hoạt động riêng. Về cơ bản, một tin nhắn băm (giá trị băm) được ký bằng 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 khóa chung 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 sử dụng khi tạo chữ ký, người nhận tin nhắn sẽ không 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 do 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.

Điều quan trọng cần lưu ý là chữ ký số được liên kết với nội dung của từng tin nhắn. Vì vậy, không giống như chữ ký viết tay, chữ ký số đối với mỗi tin nhắn là khác nhau.

xác minh

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

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

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


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

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

  • Toàn vẹn dữ liệu. Bob có thể xác minh xem tin nhắn của Alice có bị giả mạo hay không. Mọi thay đổi trong tin nhắn sẽ tạo ra chữ ký số hoàn toàn khác.

  • Tính xác thực. Miễn là Alice giữ khóa riêng của mình an toàn, Bob có thể sử dụng khóa chung của cô ấy để xác nhận rằng chữ ký số được tạo bởi chính Alice chứ không phải do người khác tạo ra.

  • Không bác bỏ. Sau khi tạo chữ ký, Alice không thể từ chối việc ký chữ ký đó trong tương lai trừ khi khóa riêng của cô ấy bị xâm phạm bằng cách nào đó.


Trường hợp

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

  • công nghệ thông tin. Tăng cường bảo mật hệ thống truyền thông Internet.

  • tài chính. Chữ ký số có thể được áp dụng cho kiểm toán, báo cáo tài chính, hợp đồng cho vay, v.v.

  • pháp luật. Chữ ký số có thể được áp dụng cho nhiều 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ố ngăn ngừa gian lận trong đơn thuốc và hồ sơ y tế.

  • Chuỗi khối. Sơ đồ chữ ký số đảm bảo rằng chỉ chủ sở hữu hợp pháp của tiền điện tử mới có thể ký giao dịch và chuyển tiền (miễn là khóa riêng của họ không bị xâm phạm).


giới hạn

Những thách thức chính mà các sơ đồ chữ ký số phải đối mặt chủ yếu giới hạn ở ba yếu tố sau:

  • thuật toán. Các thuật toán được sử dụng trong sơ đồ chữ ký số có yêu cầu chất lượng cao. Chúng bao gồm việc lựa chọn các hàm băm và hệ thống mã hóa đáng tin cậy.

  • thực hiện. Nếu thuật toán hoàn thiện nhưng không có kế hoạch triển khai tốt thì hệ thống chữ ký số cũng có thể tiềm ẩn những nguy hiểm.

  • khóa riêng. Nếu khóa riêng bị mất hoặc bị xâm phạm theo cách nào đó thì tính xác thực và tính không thể chối bỏ sẽ không được đảm bảo. Đối với người dùng tiền điện tử, việc 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ố

Tóm lại, chữ ký số có thể được hiểu là một loại chữ ký điện tử cụ thể, dùng để chỉ việc sử dụng các phương tiện điện tử để ký các văn bản, tin nhắn. Vì vậy, tất cả các chữ ký số đều có thể coi là chữ ký điện tử chứ không phải ngược lại.

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


Tóm tắt

Hàm băm và mật mã khóa công khai là trung tâm của hệ thống chữ ký số và hiện được sử dụng trong nhiều trường hợp. Khi được triển khai đúng cách, chữ ký số có thể cải thiện tính bảo mật, đảm bảo tính toàn vẹn và tạo điều kiện xác thực tất cả các loại dữ liệu.

Trong thế giới blockchain, chữ ký số được sử dụng để ký và ủy quyề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ý số đảm bảo rằng mã thông báo chỉ có thể được sử dụng bởi người có khóa riêng tương ứng.

Mặc dù chúng tôi đã sử dụng 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. Ngày nay, hầu hết các tài liệu chính thức vẫn dựa trên tài liệu giấy, nhưng khi ngày càng nhiều hệ thống chuyển sang kỹ thuật số, chúng ta sẽ thấy nhiều giải pháp chữ ký số hơn.