Kiến trúc Bảo mật
UFG triển khai mô hình bảo mật mạnh mẽ dựa trên mã hóa bất đối xứng để đảm bảo tính bí mật, toàn vẹn và xác thực của mọi bản tin.
Cơ chế Bảo mật
1. Mã hóa Bất đối xứng (RSA-2048)
Chúng tôi sử dụng RSA-OAEP with SHA-256 cho mã hóa đầu-cuối (end-to-end encryption).
- Tính bí mật: Chỉ người nhận đích thực mới có thể giải mã tin nhắn.
- Quản lý khóa: Mỗi thành viên tự tạo cặp khóa RSA-2048 của riêng mình.
- Public Keys: Upload lên UFG Portal để các thành viên khác sử dụng mã hóa.
- Private Keys: Giữ bí mật tuyệt đối trên server của thành viên.
Luồng:
Payload → Encrypt(ReceiverPublicKey) → UFG → Decrypt(ReceiverPrivateKey)
2. Chữ ký số (SHA256withRSA)
Tất cả bản tin đều được ký số để đảm bảo tính xác thực và chống chối bỏ.
- Tính toàn vẹn: Đảm bảo tin nhắn không bị thay đổi trên đường truyền.
- Tính xác thực: Xác minh danh tính người gửi.
- Xác minh: UFG xác minh chữ ký trước khi định tuyến.
Luồng:
Sign(PrivateKey, Header + EncryptedPayload) → Base64 Signature
3. Xác thực Thời gian (Timestamp)
Để ngăn chặn Tấn công phát lại (Replay Attacks), mọi request phải bao gồm Unix timestamp (x-timestamp header).
- Cửa sổ hợp lệ: UFG từ chối các tin nhắn cũ hơn 5 phút (có thể cấu hình).
- Đồng bộ thời gian: Các thành viên phải đảm bảo đồng hồ server được đồng bộ (ví dụ: dùng NTP).
4. Kiểm tra Idempotency
Để ngăn chặn Xử lý trùng lặp (Double-Processing), mỗi request yêu cầu một định danh duy nhất.
- Message ID: Trường
MsgIdtrong header ISO 20022 phải là duy nhất. - Thực thi: UFG và Ngân hàng Lưu ký theo dõi các ID đã xử lý và từ chối trùng lặp.
Sơ đồ Luồng Bảo mật
Best Practices
Bảo mật Private Key
KHÔNG BAO GIỜ chia sẻ Private Key với bất kỳ ai, kể cả hỗ trợ viên UFG. Nếu private key bị lộ, hãy thu hồi ngay lập tức trên UFG Portal.
- Xoay vòng khóa (Key Rotation): Thay đổi khóa định kỳ (ví dụ: mỗi 6 tháng).
- Lưu trữ an toàn: Lưu private key trong Hardware Security Module (HSM) hoặc trình quản lý bí mật an toàn.
- Bảo mật mạng: Whitelist địa chỉ IP của UFG trên firewall của bạn.