Điểm:1

Mã hóa xác thực khóa công khai: crypto_box

lá cờ pk

tôi đã đọc crypto_box mã hóa và có một câu hỏi. Trong chi tiết của thuật toán, nó sử dụng Trao đổi khóa: X25519. Tuy nhiên, tôi không hiểu tại sao họ cần sử dụng thuật toán trao đổi khóa.

Vì vậy, câu hỏi của tôi là ở đâu và tại sao họ cần thuật toán trao đổi khóa?

Điểm:2
lá cờ in

thuật toán trao đổi khóa ở đâu?

Các crypto_box chỉ đơn giản là crypto_box_curve25519xsalsa20poly1305 và nó có hai phần;

Phần 1: Tính toán trước độc lập gói tin;

  • Bữa tiệc $A$ có khóa bí mật 32 byte $sk_A$ và khóa công khai $pk_A$ ở đâu $pk_A = [sk_A]G$

  • Bữa tiệc $B$ có khóa bí mật 32 byte $sk_B$ và khóa công khai $pk_B$ ở đâu $pk_B = [sk_B]G$$G$ là điểm cơ bản của X25519.

    đây $[a]G$ là phép nhân vô hướng và nó có nghĩa là thêm $G$ với chính nó $a$-lần.

  • Bữa tiệc $A$ sử dụng $sk_A$$pk_B$ để lấy khóa bằng X25519;

    $$k = Hash(x([sk_A]pk_B))$$ lưu ý rằng $pk_B$ là một điểm trên đường cong và X25519 chỉ sử dụng $x$ tọa độ của các điểm cho ECDH ( lưu ý với $x(\cdot)$.

Như bạn có thể thấy, một lần $A$ có thể lấy khóa công khai của $B$ chìa khóa $k$ có thể được xây dựng ngay lập tức và nó tương tự cho $B$, quá. Đây là Trao đổi khóa Elliptic Curve Diffie-Hellman (ECDH).

Phần 2: tính toán trên mỗi gói

  • $A$ chọn nonce 24 byte $n$ ( phải là duy nhất ) và sẽ không bao giờ lặp lại trong khi giao tiếp với $B$. Nonce 24 byte an toàn để tạo ngẫu nhiên.
  • $A$ mở rộng khóa $k$ với nonce thành một dòng khóa với xsalsa20
  • Tin nhắn được mã hóa bằng luồng (chỉ x-or) trong đó 32 byte đầu tiên được dành riêng.
  • 32 byte đầu tiên được sử dụng để xác thực tin nhắn được mã hóa với Poly1305.

tại sao họ cần thuật toán trao đổi khóa

Nếu họ không có cơ chế trao đổi khóa thì họ cần một cơ chế phân phối khóa đối xứng đó là gánh nặng của mã hóa đối xứng trước khi mã hóa khóa công khai được phát minh.

Các khóa công khai cần xác minh. Đôi khi chúng được sử dụng như TOFU (Tin tưởng vào lần sử dụng đầu tiên) và sau đó được xác minh bằng một số cơ chế như Signal. Trong một số giao tiếp an toàn hơn, trước tiên hãy xác minh các khóa chung.

Để biết thêm chi tiết đọc

Đă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.