Điểm:1

Sử dụng một hạt giống để tạo cặp khóa ký và khóa mã hóa

lá cờ cn
mkl

Tôi đang làm việc để tạo một kho tiền kỹ thuật số an toàn. Tôi đang sử dụng tính năng ghi nhớ để tạo hạt giống. Hạt giống được sử dụng để tạo cặp khóa ký để xác minh danh tính. Tuy nhiên, tôi cũng muốn mã hóa nội dung của kho tiền cho mục đích khôi phục.

Có thể sử dụng cùng một hạt giống để ký và mã hóa dữ liệu không? (Tôi có thể thêm muối hoặc một số chức năng xác định nếu điều đó có ích).

Điều này có liên quan: Sử dụng một khóa Ed25519 duy nhất để mã hóa và chữ ký

Tuy nhiên tôi không chắc liệu nó có trả lời câu hỏi hay không.

Maarten Bodewes avatar
lá cờ in
Sử dụng KDF với hai trường `Thông tin` khác nhau và bạn hiện có hai "hạt giống". Nhưng hãy cẩn thận với các chi tiết vì bảo mật sẽ phụ thuộc vào điều đó.
Điểm:0
lá cờ es

Nếu bạn thực sự cần quảng cáo một khóa chung có thể được sử dụng cho cả mã hóa được xác thực bằng khóa chung ("crypto_box") và cả để ký ("crypto_sign"), đó sẽ là lý do để ánh xạ các cặp khóa giữa đường cong Twisted Edwards Ed25519 (được ưu tiên cho các thao tác ký) và đường cong Montgomery Curve25519 (được ưu tiên cho các thao tác ECDH). Ví dụ. bạn sẽ quảng cáo khóa công khai Curve25519 mà mọi người có thể sử dụng để mã hóa và gửi dữ liệu cho bạn, nhưng phần mềm của bạn sẽ ánh xạ khóa đó tới khóa tương đương Ed25519 trước khi sử dụng khóa đó để xác minh chữ ký.

Tuy nhiên, có vẻ như bạn đang sử dụng mã hóa đối xứng cho kho tiền (chứ không phải mã hóa bất đối xứng). Do đó, ánh xạ này giữa các đường cong không liên quan đến bạn.

Do đó, hãy sử dụng các chuỗi như "mã hóa" và "ký" làm tham số thông tin cho HKDF-Expand (cùng với hạt giống của bạn dưới dạng khóa giả ngẫu nhiên được phân phối đồng đều) để tạo khóa mã hóa đối xứng và khóa bí mật ký. Nếu hạt giống của bạn là 256 bit và bạn cần lấy khóa 256 bit, điều đó về cơ bản tương đương với việc chỉ thực hiện HMAC-SHA256(hạt giống || thông tin) (xem https://datatracker.ietf.org/doc/html/rfc5869).

lá cờ cn
mkl
Tuyệt vời, điều đó cực kỳ hữu ích. Cảm ơn bạn!

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.