2021_12_31_周汇报
目录
一、进度(本周从周四开始)
1.重新回顾信息安全保障技术课程的IPSec协议,感觉毕设题目就是做一个设计IPSec这种VPN的协议
2.重装了UOS虚拟机,安装了openssl3,进行了基本的环境准备
3.参考IPSec和两本书,协议基本思路
- 请求通信并进行身份认证(通过sm2数字签名)
- 使用DH协议进行密钥协商,相关对称密钥算法和hash算法换成国密相关算法,协商会话密钥
- 通过会话密钥协商生成加密秘钥(保存在加密秘钥数据库,加密秘钥生存期,两个userID、IP)
- 进行通信,使用加密秘钥进行保密+不可否认性+完整性
- 通信结束确认
4.数据包格式思路
- 考虑性能使用UDP更加高效
- UDP包数据段最大长度1472字节(避免IP分片和底层分片)
- 包的序列号,密钥需要序列号,生存周期(一个递增的序列号),抗重放,数据包最大长度(用于数据包分段)
- 考虑可靠传输,需要进行实现TCP的拥塞控制和流量控制
二、遇到和解决的问题
1.uos的试用期
重装后解决
2.OpenSSL3的安装
参考博客少了一步,加上将安装目录/bin/openssl 复制到/usr/bin/下
3.如何实现一个底层协议
参考:
http://blog.chinaunix.net/uid-26133817-id-4633311.html
http://blog.chinaunix.net/uid-26133817-id-4633313.html
(这是Linux实现IPSec的比较详细的步骤,自己实现时可以参考)
4.设计一个协议
正在参考IPSec,《密码工程:原理与应用》,《应用密码学:协议、算法与C源程序》