项目名称: 视频信息管理系统
项目要点: Oracle数据库,数据加解密和签名校验,线程池,任务队列,Json,单例模式和工厂模式计,protobuf数据序列化.
项目描述: 项目主要目的是为图片,视频等数据信息在传输过程中提供数据加密或解密的操作,解决信息传输过程中的信息安全问题和身份校验问题.采用了低耦合的设计方式,可以与不同的需要加密的信息进行对接.
项目模块: 秘钥协商服务器,秘钥协商客户端,配置管理终端,外联接口.
个人职责:
● 负责项目加解密模块的编写,并提供接口
● 客户端界面的设计实现
技术要点:
● 使用Protobuf实现秘钥协商服务器,秘钥协商客户端在不同平台的数据传输时的数据一致,使用了TCP协议形成双端通信,封装了统一的Socket套接字通信接口,解决粘包问题和实现超时阻塞.
● 为了避免代码的重复性和对象的频繁创建以及提高效率,使用了工厂和单例的设计模式来简化代码,使用了多线程,任务队列和线程池对任务进行处理提高并发和效率.
● 使用了共享内存降低了频繁的IO操作,使用了base64进行二进制数据的转换.
● 采用了OpenSLL库中的AES和RSA算法提供数据加密.
● 基于Qt实现窗口界面,连接Oracle数据库,使用Json格式的配置文件读写,提供接口实现对外联应用中的通信数据加密或解密.