[ ] Nhiệm vụ 1 (Tạo cặp khóa trên Web): Viết mã xử lý (ví dụ dùng thư viện java.security nếu Web dùng Java) để sinh cặp khóa RSA (độ dài nên là 2048-bit).
[ ] Nhiệm vụ 2 (Trả khóa cho User): Lưu public_key vào bảng users. Tạo luồng đóng gói private_key thành file .txt hoặc .pem cho phép người dùng tải xuống (Download). Tuyệt đối không lưu Private Key vào DB.
[ ] Nhiệm vụ 3 (Gửi Mail): Tích hợp dịch vụ gửi Email gửi file private_key này đính kèm hoặc dưới dạng văn bản về email của tài khoản người dùng vừa bấm tạo khóa.
[ ] Nhiệm vụ 4 (API Báo mất & Cập nhật): Viết hai API: Một API chuyển trạng thái key_status thành 'REVOKED' (Báo mất khóa) và một API cho phép cập nhật lại cặp khóa mới (chỉ ghi đè public_key).
[ ] Nhiệm vụ 1 (Tạo cặp khóa trên Web): Viết mã xử lý (ví dụ dùng thư viện java.security nếu Web dùng Java) để sinh cặp khóa RSA (độ dài nên là 2048-bit).
[ ] Nhiệm vụ 2 (Trả khóa cho User): Lưu public_key vào bảng users. Tạo luồng đóng gói private_key thành file .txt hoặc .pem cho phép người dùng tải xuống (Download). Tuyệt đối không lưu Private Key vào DB.
[ ] Nhiệm vụ 3 (Gửi Mail): Tích hợp dịch vụ gửi Email gửi file private_key này đính kèm hoặc dưới dạng văn bản về email của tài khoản người dùng vừa bấm tạo khóa.
[ ] Nhiệm vụ 4 (API Báo mất & Cập nhật): Viết hai API: Một API chuyển trạng thái key_status thành 'REVOKED' (Báo mất khóa) và một API cho phép cập nhật lại cặp khóa mới (chỉ ghi đè public_key).