NguyenHaDoanh / se07-24.1

Tìm hiểu về blockchain
1 stars 0 forks source link

Chữ ký số #11

Open NguyenHaDoanh opened 2 years ago

NguyenHaDoanh commented 2 years ago

Tìm hiểu về chữ ký số

NguyenHaDoanh commented 2 years ago

Khái niệm:

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.

KhanhDung2702 commented 2 years ago

Mô hình hoạt động của chữ ký số image Thông tin của cá nhân, tổ chức được mã hóa và sử dụng khóa cá nhân để bảo mật, một mã khóa công khai để người dùng có thể đăng nhập vào thiết bị máy tính để ký số. Khi mã khóa công khai khớp với mã khóa cá nhân thì cá nhân, tổ chức đó sẽ có thể thực hiện ký số qua một thiết bị vật lý gọi là USB Token. Người dùng sử dụng USB Token thực hiện ký lên các văn bản khi đó chữ ký đó được gọi là chữ ký số.

NguyenHaDoanh commented 2 years ago

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.

1.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.

2.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ó 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, 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.

3.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ử 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 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 đó.

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ả mạo là Alice. 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 Alice để di chuyển hoặc chi tiêu Bitcoin của cô ấy mà không cần xin phép.

NguyenHaDoanh commented 2 years ago

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

Mật mã khóa công khai, gọi tắt là 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 chung và một khóa riêng. Hai khóa có liên quan đến toán học và có thể được sử dụng cho cả 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 pháp mã hóa đối xứng thô sơ. Trong khi các hệ thống cũ dựa vào cùng một khóa để mã hóa và giải mã thông tin, PKC cho phép mã hóa dữ liệu bằng khóa chung và giải mã dữ liệu bằng khóa riêng tương ứng.

Ngoài ra, sơ đồ PKC cũng có thể được áp dụng trong việc tạo chữ ký số. Về bản chất, quá trình này bao gồm băm một tin nhắn (hoặc dữ liệu số) cùng với khóa riêng của người ký tên. 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.

NguyenHaDoanh commented 2 years ago

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.

->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ã.

phucding commented 2 years ago

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ố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.

phucding commented 2 years ago

Hạn chế của chữ kí số 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ể.