Sau khi tình cờ gặp cái này câu hỏi, tôi tự hỏi liệu tôi có thể có được hành vi tương tự như WireGuard (khóa riêng và khóa chung) bằng cách sử dụng cùng một khóa riêng của WireGuard để mã hóa thư qua OpenSSL ở một đầu và để đầu kia có thể xác minh chữ ký thư đó bằng cách sở hữu khóa công khai WireGuard. Vì vậy, nó có thể hoạt động như một số loại xác thực/xác thực cho một yêu cầu.
Ví dụ:
- Bob mã hóa tin nhắn
foobar
với khóa riêng WireGuard của anh ấy
- Các
kết quả
Là U2FsdGVkX19nhSv3cEBJw4gKSZGzFpE=
- Bob gửi yêu cầu tới Alice với kết quả từ bước 2.
- Alice xác nhận
kết quả
được ký bởi Bob bằng cách xác minh bằng khóa WireGuard công khai của anh ấy;
- Alice cho phép yêu cầu được thông qua dựa trên chữ ký của Bob;
Tôi xin lỗi nếu tôi đang nói nhiều điều vô nghĩa ở đây, vì tôi vẫn đang cố gắng tìm hiểu về mã hóa và bị cuốn hút khi đọc một vài bài báo về việc WireGuard thực sự nhanh như thế nào, v.v. Vì vậy, tôi tin rằng bài tập trên sẽ giúp tôi đạt được để biết thêm về nó.
Cho đến nay tôi có thể hiểu rằng tôi có thể mã hóa một tin nhắn bằng một cypher cụ thể như chacha2 như:
tiếng vang foobar | openssl enc -chacha20 -a -k foo
Nhưng tôi không hiểu liệu mật khẩu có phải là khóa riêng tư hay đó là một thứ hoàn toàn khác. Mọi đề xuất về tài liệu đọc cũng sẽ rất được hoan nghênh.
Cảm ơn bạn.