Xin chào anh chị DNH,
Hiện tại database app chat của em đang lưu tin nhắn plaintext. Em muốn mã hóa tin nhắn bằng thuật toán RSA, phát sinh khóa, mã hóa và giải mã tin nhắn diễn ra ở browser, text sau khi mã hóa chuyển sang base64 để lưu vào database vì vậy sẽ giải quyết được vấn đề admin không đọc được tin nhắn hoặc nếu bị hack database hay làm mất file backup database thì hacker không đọc được tin nhắn.
Em đang gặp vấn đề là không biết lưu trữ private key như thế nào cho đúng. Hiện tại em đang hy sinh UX để dùng cách này: Sau khi tạo tài khoản, web sẽ generate ra cặp key, database không lưu private key mà đưa private key cho user tự lưu trữ (nếu làm mất private này xem như không đọc được tin nhắn nữa) Mỗi lần đăng nhập thì user phải nhập thủ công private key để xem tin nhắn (lưu vào localStorage để cache private key)
Mong được tư vấn. Em cảm ơn!