Repudiation (Chối cãi) và Non-Repudiation (Không thể chối cãi) trong An ninh mạng
Repudiation là việc một thực thể từ chối thừa nhận một hành động đã thực hiện. Trong bảo mật, Non-Repudiation (Không thể chối cãi) là thuộc tính bảo đảm rằng một bên không thể phủ nhận tính xác thực của chữ ký, hành động hoặc giao dịch đã thực hiện.
1. Mối đe dọa Repudiation (Repudiation Threat) là gì?
Xảy ra khi user từ chối hành động mình đã làm, mà hệ thống không có bằng chứng đủ để chứng minh ngược lại. Ví dụ:
- User thực hiện giao dịch tài chính > Sau đó否认 "Tôi không làm"
- Admin xóa log quan trọng > Từ chối trách nhiệm
- Hệ thống không ghi log đầy đủ (missing audit trail)
- Thiếu chữ ký số, timestamp, chứng chỉ tin cậy
2. Tấn công Non-Repudiation (Non-Repudiation Attack) - Thuật ngữ dễ nhầm lẫn
Thực ra là thiếu Non-Repudiation mới là vấn đề. "Non-repudiation attack" thường chỉ việc kẻ tấn công khai thác việc hệ thống KHÔNG cung cấp non-repudiation để:
- Làm giả giao dịch/chữ ký
- Phủ nhận hành động đã làm
- Thao túng log/audit trail
3. Ví dụ Non-Repudiation trong thực tế
- Chữ ký bút mực trên giấy: Không thể phủ nhận đã ký (văn bản pháp lý)
- Chữ ký số (Digital Signature): Dùng khóa riêng (private key) ký, ai có khóa công khai (public key) đều verify được. Người ký không thể phủ nhận vì chỉ họ có private key.
- Blockchain: Giao dịch được ký bằng private key, bất biến trên ledger phân tán
- Email ký số (S/MIME, PGP): Chứng minh người gửi, nội dung không bị thay đổi
4. Sự khác biệt: Toàn vẹn (Integrity) vs Non-Repudiation
| Thuộc tính | Mục tiêu | Cơ chế điển hình |
|---|---|---|
| Integrity (Toàn vẹn) | Dữ liệu không bị sửa đổi trái phép khi lưu trữ/chuyển truyền | Hash (SHA-256), HMAC, Checksum, Digital Signature |
| Non-Repudiation (Không chối cãi) | Người thực hiện không thể phủ nhận hành động đã làm | Digital Signature, Audit Log bất biến, Timestamp Authority, Blockchain |
Mối quan hệ: Non-repudiation yêu cầu Integrity (nếu dữ liệu bị sửa thì không chứng minh được ai làm), nhưng Integrity không đảm bảo Non-repudiation (HMAC chỉ chứng minh dữ liệu nguyên vẹn, không chứng minh AI làm).
5. Non-Repudiation trong An ninh mạng (Cybersecurity)
Khi chữ ký số được áp dụng đúng: Chủ sở hữu cặp khóa chữ ký không thể phủ nhận convincingly (làm cho tin phục) việc họ đã ký dữ liệu đó. Dựa trên:
- Private key chỉ biết bởi chủ sở hữu (bảo vệ bằng HSM, TPM, Secure Enclave)
- Thuật toán chữ ký: RSA-PSS, ECDSA, EdDSA
- Timestamping Authority (RFC 3161) chứng minh thời điểm
- Certificate Authority (CA) liên kết identity với public key
6. Cách phòng chống Repudiation (Thiết lập Non-Repudiation)
- Chữ ký số (Digital Signatures): PKI, CA, Certificate Policy, Key Management
- Secure Envelope / Signed Receipt: Khóa đối xứng chung (shared secret) giữa hai bên komunikasi
- Audit Log bất biến (Immutable Audit Logs): Write-once storage, WORM, Blockchain, CloudTrail, Syslog-ng với chữ ký
- Timestamping: RFC 3161 Trusted Timestamping
- Non-repudiation của nguồn (Origin) và đích (Delivery): Cả người gửi và người nhận đều có bằng chứng
7. Tại sao Non-Repudiation quan trọng?
- Người gửi: Bằng chứng đã gửi (Proof of Submission/Delivery)
- Người nhận: Bằng chứng nguồn gốc (Proof of Origin)
- Pháp lý: Hợp đồng điện tử, giao dịch tài chính, email pháp lý, y tế, chính phủ
- Không ai có thể tuyên bố "Tôi không gửi/nhận/xử lý tin nhắn này"
8. Non-Repudiation được dùng ở đâu?
- Giao dịch tài chính (SWIFT, Blockchain, Payment Gateway)
- Hợp đồng điện tử, ký hợp đồng từ xa (eIDAS, ESIGN Act, Vietnam Decree 130/2018/ND-CP)
- Email bảo mật (S/MIME, PGP/GPG)
- Code signing (Phần mềm, Firmware, Container image)
- Audit trail hệ thống quan trọng (Banking, Healthcare, Government)
- Document workflow (DocuSign, Adobe Sign, Viettel CA, VNPT CA)
9. So sánh: Authentication vs Integrity vs Confidentiality vs Non-Repudiation
| Thuộc tính | Câu hỏi | Cơ chế |
|---|---|---|
| Confidentiality (Bảo mật) | Ai được XEM? | Encryption (AES, ChaCha20, RSA-OAEP) |
| Integrity (Toàn vẹn) | Dữ liệu có THAY ĐỔI không? | Hash, HMAC, Digital Signature |
| Authentication (Xác thực) | Ai là NGƯỜI GỬI/NGƯỜI DÙNG? | Password, MFA, Certificate, Biometric, Kerberos |
| Non-Repudiation (Không chối cãi) | Người gửi có thể PHỦ NHẬN không? | Digital Signature, Immutable Log, Timestamp |
10. Chữ ký số cung cấp: Authenticity + Integrity + Non-Repudiation
Quy trình: Hash dữ liệu > Ký hash bằng Private Key > Đính kèm Signature + Cert. Verify: Giải mã Signature bằng Public Key > So sánh Hash > Kiểm tra Cert chain + Revocation + Timestamp.
Kết luận: Non-repudiation không tự động có được - phải thiết kế hệ thống với PKI, Immutable Logging, Timestamping, Policy enforcement. Đây là yêu cầu bắt buộc cho các hệ thống có giá trị pháp lý, tài chính, y tế, chính phủ.