Tôi có nhu cầu lưu trữ khóa riêng cho nhiều người dùng, do đó ứng dụng máy chủ của tôi có thể ký các tệp thay cho họ.Lưu trữ khóa riêng trong cơ sở dữ liệu
Tôi muốn lưu trữ khóa riêng tư một cách an toàn, nhưng tôi không thể tìm thấy các phương pháp hay nhất về việc này. Nếu tôi đã lưu trữ một mật khẩu, tôi sẽ muối + băm mật khẩu để tạo một băm không thể dễ dàng quay lại mật khẩu. Tuy nhiên, với một khóa riêng, tôi cần lưu trữ nó theo cách mà sau này tôi có thể lấy nó.
Tôi đã nghĩ rằng tôi sẽ mã hóa khóa cá nhân và sau đó lưu trữ nó trong cơ sở dữ liệu của tôi. Ban đầu tôi nghĩ mỗi khóa sẽ được mã hóa bằng một mật khẩu khác (dựa trên một số thuộc tính của người dùng). Tuy nhiên, những thuộc tính đó rất có thể sẽ được lưu trữ trong cơ sở dữ liệu, vì vậy nếu cơ sở dữ liệu của tôi bị rò rỉ thì kẻ tấn công có mọi thứ.
Tôi có thể mã hóa tất cả khóa riêng tư bằng một mật khẩu duy nhất chỉ được biết đến trong đơn đăng ký của tôi. Sau đó, một kẻ tấn công sẽ phải ăn cắp cơ sở dữ liệu của tôi, và ứng dụng của tôi để làm bất kỳ tác hại.
Có kỹ thuật/phương pháp hay nhất nào tôi bị thiếu không?