feat(ssh): integrate EncryptionContext into server.rs
Some checks failed
Test / test (push) Has been cancelled
Test / build (push) Has been cancelled

SSH加密packet架构集成:

实现内容:
1. server.rs导入EncryptionContext和EncryptedPacket
2. perform_complete_kex_exchange返回EncryptionContext
3. 添加EncryptionContext::default()临时实现

架构集成:
-  EncryptionContext导入完成
-  密钥交换函数返回加密上下文
-  Default trait实现(临时方案)

编译结果:
-  编译成功(149 warnings, 0 errors)
-  架构集成完成

待完善:
- 会话密钥实现(从KexState提取shared_secret)
- IV初始化(从会话密钥派生)
- NEWKEYS后packet切换(使用EncryptedPacket)

技术说明:
- 当前使用临时默认密钥(vec![0u8; 32])
- 仅用于架构集成和编译验证
- 功能实现待后续完善
This commit is contained in:
Warren
2026-06-13 20:43:49 +08:00
parent 0f32ebce45
commit 609e839f92
2 changed files with 19 additions and 10 deletions

View File

@@ -25,6 +25,19 @@ pub struct EncryptionContext {
pub sequence_number_stoc: u32, // 服务器→客户端序列号
}
impl Default for EncryptionContext {
fn default() -> Self {
Self {
encryption_key_ctos: vec![0u8; 32],
encryption_key_stoc: vec![0u8; 32],
mac_key_ctos: vec![0u8; 32],
mac_key_stoc: vec![0u8; 32],
sequence_number_ctos: 0,
sequence_number_stoc: 0,
}
}
}
impl EncryptionContext {
/// 创建加密上下文从SessionKeys
pub fn from_session_keys(keys: &SessionKeys) -> Self {