Chữ ký điện tử là gì?

Aug 14 2008
Chữ ký điện tử đảm bảo các tài liệu bạn gửi dưới dạng điện tử là xác thực. Tìm hiểu về chữ ký điện tử và các phương pháp xác thực khác.

Chữ điện tử về cơ bản là một cách để đảm bảo rằng một tài liệu điện tử (e-mail, bảng tính, tệp văn bản, v.v.) là xác thực . Xác thực có nghĩa là bạn biết ai đã tạo ra tài liệu và bạn biết rằng nó không bị thay đổi theo bất kỳ cách nào kể từ khi người đó tạo ra nó.

Chữ ký điện tử dựa trên một số loại mã hóa nhất định để đảm bảo xác thực. Mã hóa là quá trình lấy tất cả dữ liệu mà một máy tính đang gửi đến máy tính khác và mã hóa nó thành một dạng mà chỉ máy tính kia mới có thể giải mã. Xác thực là quá trình xác minh rằng thông tin đến từ một nguồn đáng tin cậy. Hai quy trình này hoạt động song song với nhau cho chữ ký điện tử.

Có một số cách để xác thực một người hoặc thông tin trên máy tính:

Mật khẩu - Việc sử dụng tên người dùng và mật khẩu cung cấp hình thức xác thực phổ biến nhất. Bạn nhập tên và mật khẩu của mình khi máy tính nhắc. Nó kiểm tra cặp với một tệp an toàn để xác nhận. Nếu tên hoặc mật khẩu không khớp, thì bạn không được phép truy cập thêm.

Checksum - Có lẽ là một trong những phương pháp lâu đời nhất để đảm bảo rằng dữ liệu là chính xác, tổng kiểm tra cũng cung cấp một hình thức xác thực vì tổng kiểm tra không hợp lệ cho thấy rằng dữ liệu đã bị xâm phạm theo một cách nào đó. Tổng kiểm tra được xác định theo một trong hai cách. Giả sử tổng kiểm tra của một gói dài 1 byte, có nghĩa là nó có thể có giá trị tối đa là 255. Nếu tổng các byte khác trong gói là 255 hoặc nhỏ hơn, thì tổng kiểm chứa giá trị chính xác đó. Tuy nhiên, nếu tổng các byte khác lớn hơn 255, thì tổng kiểm tra là phần còn lại của tổng giá trị sau khi nó đã được chia cho 256. Hãy xem ví dụ này:

  • Byte 1 = 212
  • Byte 2 = 232
  • Byte 3 = 54
  • Byte 4 = 135
  • Byte 5 = 244
  • Byte 6 = 15
  • Byte 7 = 179
  • Byte 8 = 80
  • Tổng = 1151 . 1151 chia cho 256 bằng 4,496 (làm tròn đến 4). Nhân 4 X 256 bằng 1024. 1151 trừ 1024 bằng tổng tổng của 127

CRC (Kiểm tra dự phòng theo chu kỳ) - CRC có khái niệm tương tự như tổng kiểm tra nhưng chúng sử dụng phép chia đa thức để xác định giá trị của CRC, thường có độ dài 16 hoặc 32 bit. Điều tốt về CRC là nó rất chính xác. Nếu một bit không chính xác, giá trị CRC sẽ không khớp. Cả tổng kiểm tra và CRC đều tốt để ngăn chặn các lỗi ngẫu nhiên trong quá trình truyền, nhưng cung cấp ít khả năng bảo vệ khỏi một cuộc tấn công có chủ đích vào dữ liệu của bạn. Các kỹ thuật mã hóa dưới đây an toàn hơn nhiều.

Mã hóa khóa cá nhân-Private key có nghĩa là mỗi máy tính có một khóa bí mật (mã) mà nó có thể sử dụng để mã hóa một gói thông tin trước khi nó được gửi qua mạng đến máy tính kia. Khóa riêng yêu cầu bạn biết máy tính nào sẽ nói chuyện với nhau và cài đặt khóa trên mỗi máy. Mã hóa khóa cá nhân về cơ bản giống như một mã bí mật mà hai máy tính phải biết để giải mã thông tin. Mã sẽ cung cấp chìa khóa để giải mã tin nhắn. Hãy nghĩ về nó như thế này. Bạn tạo một tin nhắn được mã hóa để gửi cho bạn bè trong đó mỗi chữ cái được thay thế bằng chữ cái đứng thứ hai từ nó. Vì vậy, "A" trở thành "C" và "B" trở thành "D". Bạn đã nói với một người bạn đáng tin cậy rằng mã là "Shift by 2". Bạn của bạn nhận được tin nhắn và giải mã nó.

Mã hóa khóa công khai - Mã hóa khóa công khai sử dụng kết hợp khóa cá nhân và khóa công khai. Khóa riêng tư chỉ được biết đến với máy tính của bạn trong khi khóa công khai được máy tính của bạn cấp cho bất kỳ máy tính nào muốn giao tiếp an toàn với nó. Để giải mã một thông điệp được mã hóa, một máy tính phải sử dụng khóa công khai do máy tính khởi tạo cung cấp và khóa riêng của nó.

Khóa dựa trên giá trị băm. Đây là một giá trị được tính toán từ một số đầu vào cơ sở bằng cách sử dụng một thuật toán băm. Điều quan trọng về giá trị băm là gần như không thể lấy được số đầu vào ban đầu nếu không biết dữ liệu được sử dụng để tạo giá trị băm. Đây là một ví dụ đơn giản:

Số đầu vào 10667

Thuật toán băm = Đầu vào # x 143

Giá trị băm = 1525381

Bạn có thể thấy rằng thật khó để xác định rằng giá trị của 1525381 đến từ phép nhân của 10667 và 143. Nhưng nếu bạn biết rằng hệ số là 143, thì sẽ rất dễ dàng để tính được giá trị của 10667. Mã hóa khóa công khai phức tạp hơn nhiều so với ví dụ này nhưng đó là ý tưởng cơ bản. Khóa công khai thường sử dụng các thuật toán phức tạp và giá trị băm rất lớn để mã hóa: số 40 bit hoặc thậm chí 128 bit. Một số 128 bit có thể có 2 128 kết hợp khác nhau. Đó là nhiều sự kết hợp giống như có các phân tử nước trong 2,7 triệu bể bơi cỡ olympic. Ngay cả giọt nước nhỏ nhất mà bạn có thể hình dung được cũng có hàng tỷ tỷ phân tử nước trong đó!

Chứng chỉ kỹ thuật số - Để triển khai mã hóa khóa công khai trên quy mô lớn, chẳng hạn như một máy chủ Web an toàn, có thể cần một cách tiếp cận khác. Đây là nơi các chứng chỉ số xuất hiện. Chứng chỉ số về cơ bản là một chút thông tin cho biết máy chủ Web được tin cậy bởi một nguồn độc lập được gọi là Tổ chức phát hành chứng chỉ . Tổ chức phát hành chứng chỉ đóng vai trò là người trung gian mà cả hai máy tính đều tin tưởng. Nó xác nhận rằng mỗi máy tính trên thực tế là của họ và sau đó cung cấp khóa công khai của mỗi máy tính cho máy tính kia.

Tiêu chuẩn Chữ ký Số (DSS) dựa trên một loại phương pháp mã hóa khóa công khai sử dụng Thuật toán Chữ ký Số (DSA) . DSS là định dạng chữ ký điện tử đã được chính phủ Hoa Kỳ xác nhận. Thuật toán DSA bao gồm một khóa riêng tư mà chỉ người khởi tạo tài liệu (người ký) mới biết và một khóa công khai. Khóa công khai có bốn phần, bạn có thể tìm hiểu thêm tại trang này .

Thanh toán điện tử có thể trở thành tương lai của tiền tệ. Nhấp vào đây để tìm hiểu cách chữ ký điện tử có thể giúp đảm bảo tương lai của thanh toán điện tử .

Dưới đây là một số liên kết thú vị:

  • Bionic Buffalo Tech # 5: Mã hóa
  • Sáng kiến ​​Chữ ký Kỹ thuật số
  • Liên kết về Luật, Mật mã và Truyền thông điện tử