因SPI的磋商加固透明传输工具

一.背景

 
随着电脑网络技术的渐渐提高与推广,远程网络数据传的安全性显得越来越重要。—般地,运行的应用程序发送的数包都以公开方式发送,接收方也将一直获取公开数据,但这样发生的数额充分易吃截获并开展辨析,从而进行网络攻击。只有个别动会也团结发数进行加密。然后再在接收方进行解密操作。随着网络的慢慢普及,网络数据发送的安康啊换得好重要。但是,只有较少的应用程序为网络收发数据开展了加密传输,仍然发生雅量的行使直接行使公开方式通讯。这些应用包括利用了有些特定商事进行报道,也隐含有不同寻常用途的客户端程序,比如监控体系及内外网的客户端访问。如用对这些使用的网络通讯内容进行加固来防止攻击者的监听与鞭挞,则要针对及时同一慢应用程序进行提升,即多加密同解密功能。如果一个系统面临使了多种用到成的方式进行通信,则要各个使用生产商间进行磋商。来保证系统被各个使用之常规通信。

 
本工具利用Windows提供的SPI服务,在应用层对应用程序网络通信的数目进行加密,在接收方收到多少前开展解密。整个经过应用程序并未发生另改变。实现了通信数据的晶莹加密。

二.工具原理

1. Winsock 2 SPI简介

 
Winsock是啊上层应用程序提供的同等种植标准网络接口。上层应用程序不用关爱Winsock实现的细节,它吗上层应用程序提供透明底劳动。Winsock
2引入的一个新职能就是是打破服务提供者的晶莹,让开发者可以编写好的劳动提供者接口(Service
Provider Interface,SPI)程序,即SPI程序。Winsock 2
SPI除了发生好网络传输的传输服务提供者,还提供了和谐名字服务的名空间服务提供者。其中,传输服务提供者能够提供建立通信、传输数据、流量控制与错决定等服务。Winsock
2提供的劳务那布局要图1所出示。

图片 1

图1 Winsock 2 SPI结构

 
SPI以动态链接库的样式出现,工作在TCP/IP协议的应用层,为上层API调用提供接口函数。由于SPI工作以TCP/IP协议的应用层,因此对依据应用层的勤保险SPI都好收获。

2.传输模型

 
基于SPI的文书加密传输系统的工作模型如果图2所出示。在发送方,用户层通信程序发送的网封包被由定义之SPI程序所缴获,SPI程序用数据包的IP地址、端口等信息提取出来,经过规则判断函数判断之后,如果急需加密,则调用加密函数完成加密工作,并当封包中设置加密标志。数据接收方在Windows核心层将吸纳的大网封包上传给用户层接收程序之前,自定义之SPI程序同时拿这个数额封包截获,规则判断函数首先检查网络封包中的加密标志,若数据包是加密的数据包,则调用解密函数进行解密,最终将解密后底数额包向上传送给用户层的接程序。

图片 2

贪图2 冲SPI的大网数据加密传输模型

三.效应介绍

1.加密规则与加解密方案

 
是否针对应用层的有一样使用程序的纱数据包进行加密传输取决于加密规则。加密规则包括应用程序的称号、IP地址和端口号。

 
SPI程序会因通信双方建立连接时得的对方IP地址、端口号及遵循应用程序的名称来支配是否对准此次建立之Socket连接进行加密通讯。SPI程序要判断此次对需要加密传输则本次建立的通信双方都见面采取加密方法展开通信。

 
加解密方案虽采用128各项之AES对如加密当作加密方法。加解密的秘钥分为主密钥和对话秘钥。主密钥由使用者进行设定,会话秘钥则以通信双方起会话时动态分配。并且,会话秘钥由主密钥生成。

 
AES加密算法是指向如加密算法的同等种植,其极短缺秘钥为128比较就,就当下底处理器处理速度而言,即使是128号之秘钥,要惦记经过暴力破解方式获取秘钥是免可能的。因此用AES对信息进行加密。

  本工具对应用层发送的初数据进行加密传输的进程要图3所著。

图片 3

贪图3 消息加密过程

 
以加密过程被,SPI程序首先得待发送的明白消息,然后对那长时间穿、消息特征和特征码,将本来消息进行重组。然后对日穿和原来数据有进行AES加密。最后以做后底信息发送。接收方应用程序收到信息继,接收方的SPI程序将本着吸纳的音进行解密并校验,然后以解密出的原来数据转交给接程序。

2.防护重放攻击

 
于历次通信双方起通信连接后,通信双方将开展时一起,一同开始计时。在成立连接的两头收发数据里面,工具将以组合的音信受到加上时间戳,该日穿也会于加密,加密完成后拿于接收方的SPI程序开展解密。从中获得时间戳内容,并判消息之流年是否以同意的时间误差内,如果盖误差则觉得中了重放攻击。否则,将吃判定为合法数据,将数据发送给上层的接收方应用程序。

 
另外,为了抵抗会话长时间通信导致的时刻溢起状况,程序用设定定时自动更新会话秘钥的点子来解决这种力量可能带来的私问题。

3.日志和权杖管理

 
日志模块将因程序运行中的运行状况分等级记录运行中之各种状态,比如收发的数据包,建立通信会话的音,数据包错误,攻击等消息。

 
权限管理好被不同装备中通信加以限定,该功能要依据现实的应用层协议进行定制。该模块可享有以下功能:限制部分功能码的运用、限制指定节点的指定内存地址不可看等权力限制。

四.装置与条件

1.安装

  将工具复制到Windows的指定目录下后,通过安装程序可进行一键装。

2.环境

  工具要安装在Windows
XP版本和以上之Windows操作系统之上,对于64各系统虽然需额外设置64各本。

五.优势

  本工具有以下优势:

  1. 安简便:一键装置。
  2. 管理简便:只需要经加密管理程序即可开展设置主密钥、IP加密规则、端口加密规则、进程加密规则。
  3. 加密效率高,强度强:采用AES加密算法,暴力破解几乎无容许。
  4. 晶莹剔透加密传输网络数据:SPI工作于应用层的下层,与应用程序通信丝毫非会见潜移默化应用程序的工作。
  5. 釜底抽薪工作体系的整体加密传输问题:在一个应用了强软件相和谐工作之网而言,要惦记加密网路数据,则需对各级一个软件拓展升级换代,而采取以工具,则不用对各一样慢性软件升级,即可完成整个系统的多少加密传输升级。

六.源代码获取

 点击这里打开github仓库

相关文章