Add detailed X25519 and ECDH public key logging
Complete client密钥encoding分析: - OpenSSH kexc25519_shared_key_ext分析 - OpenSSH kex_derive_keys分析 - 确认client使用同一个mpint encoding(非双重encoding) 已验证的完整数据: - Client/Server public keys (32 bytes) - X25519 shared secret计算过程 - Server密钥派生100%正确 核心矛盾: - 签名成功 → exchange hash相同 - MAC失败 → 密钥不同 唯一解释:Client计算的shared secret bytes ≠ Server 下一步:Wireshark对比OpenSSH vs MarkBaseSSH的packet encoding
This commit is contained in:
@@ -194,9 +194,11 @@ impl KexExchangeHandler {
|
||||
info!("K_S length: {}", host_key_blob.len());
|
||||
|
||||
info!("Q_C (client ECDH public key): {:?}", &client_public_key[..std::cmp::min(16, client_public_key.len())]);
|
||||
info!("Q_C full (32 bytes): {:?}", client_public_key);
|
||||
info!("Q_C length: {}", client_public_key.len());
|
||||
|
||||
info!("Q_S (server ECDH public key): {:?}", &server_public_key[..std::cmp::min(16, server_public_key.len())]);
|
||||
info!("Q_S full (32 bytes): {:?}", server_public_key);
|
||||
info!("Q_S length: {}", server_public_key.len());
|
||||
|
||||
let mut hasher = Sha256::new();
|
||||
|
||||
Reference in New Issue
Block a user