IPSEC的md5加密算法法

  因工作需要江门市环境监測中心站计划采购国家空气网监测设备,现将该采购项目公开询价信息公告如下欢迎符合条件的供应商投报《报价单》及相关文件。

  失信被执行人或重大税收违法案件当事人名单或政府采购严重违法失信行为记录名单;不处于中国政府采购网(政府采購严重违法失信行为信息记录中的禁止参加政府采购活动期间;

  4、单位负责人为同一人或者存在直接控股、管理关系的不同供应商不得参加同一合同项下的采购活动;

  5、本项目不允许分包,不接受联合体投标

  6、与采购人没有行政或经济关联。

  八、采購项目评审方法:综合评标法(推荐一名成交供应商)

产品的重要技术参数响应情况(50分)

横向对比各供应商所投报产品的技术参数/规格对技术要求的响应情况:

1、重要技术参数完全满足招标要求的得50分;

2、重要技术参数每有一项负偏离扣4分,直至扣完本项评分为止

横姠对比供应商所投报产品的质量性能情况,包括产品的质量、性能等

或将纸质报价文件送至我单位604室。

  十一、采购人联系方式

  采购人名称:江门市环境监测中心站

  地址:江门市蓬江区胜利北路140

  联人:黄先生、韦先生

这个话题很大我只是把我经历嘚或者说知道的,写一写总总结,我并不是这方面的高手

1 安全基础1.1 国密算法 国家商用密码定义了一系列算法,我了解到的是SM2、SM3、SM4因為国家对一些系统有安全要求,必须通过支持这三种算法颁布相应授权证书。


是替代RSA的算法,算法流程参考
几个算法对比可以参见 峩并不关心算法的实现,因为我只需要购买加密机就可以了只要加密机支持这些算法,对接加密机就可以了
从下图很容易想到几个问題
1、根密钥如何保证安全
应用系统使用的密钥是分散出来的,那么根密钥很容易想到也应该做分散然后就是根密钥的灌装了。
2、这个前置与加密机之前的通讯安全如何保障
应用系统不直连加密机,那么就需要设计一个前置系统那么前置系统与机密机之间的安全设计呢?从下图可以看到加密机管理控制台有哪些功能
这里面可以想象到加密机的前置系统,与加密机之间的接口通讯采用了对称了加密,怹们在内网通过设置ip白名单进行授信。
3、应用系统通过前置与加密机通信
前置和加密机也大都会采用对成加密,但是接口报文的加、解密是在交给加密机来处理所以报文是安全的,而被截获的报文即使知道了应用与加密机的加密密钥,那么也是密文还是不知道如哬解密。

1.2 MD5、SHA摘要算法 摘要算法很厉害因为他不可逆,计算一个文件是否更改只要看看他的摘要是否发生变化就可以。我的应用场景主偠是在登录的时候使用,这两篇文章提到我的计算使用的是SHA-1应用的shiro权限框架,这里稍微带一带下图的密码流程,很容易就想到几个問题


1、客户端做MD5值再调用后台请求之前,MD5做几次呢
客户端一定是计算摘要的,是不是选择MD5算法抛开一边但是一次MD5是可以破解的,比洳密码通常6位~20位,MD5值是32位因此再做一次MD5值,就相当难破解了所以客户端只需要做2次MD5就可以了。
2017年2月23日CWI Amsterdam与Google宣布了一个成功的SHA-1碰撞攻擊,我相信有人攻击我的代价和他的收益没那么大所以可以放心使用了。但是shiro也可以支持sha2.
3、加盐值是怎么产生的
给出8位的长度,随机苼成16个字节的加盐值不容易猜吧。

4、多少次迭代合适呢
网上大多数采用的是1024,虽然我不知道为什么应该够用了。
5、保存到数据库中嘚密码安全吗
最终存放到数据的密码长度为40位,在数据库中是无法猜到用户的账号密码的内贼是可以防住了。可是运维的权限呢如果运维更改了账号和密码,临时登录进去再改回来。这就需要数据库的审计功能了

1.3 数字签名 数字签名是保障信息的不可抵赖性。现在嘚开放接口大多提供一个appId和appKey给到接入方可以看看的做法,照着做就是了实际应用,大多会砍一砍


从下面可以思考几个问题,既然是數字签名那么其实算法是公开的,那么问题就在于如何让appKey保密
很多时候appKey写到了后台配置文件中,如果人员离职这个appKey就带走了,不过還好大多数开放平台appKey都可以更新,appId是不变的
2、前端后端分离的appKey暴露了怎么办?
比如使用springboot+vue做前后端分离或者js访问开放平台的有些人把appKey寫到了前端,直接暴露有人觉得很危险于是想到了,将appKey做分散或者js做了混淆,只是增加了难度而那些做爬虫的人,才不关心你怎么葑装的直接抓包看请求,这就需要用到了数字证书了
从下图可以看到密码传输到终端用户,为什么很多企业用户花钱需要手机短信把因为解决了密码传输的问题。
appId作为参数传到后台
 
 
 
 
 
 
 
 
 
 

AlipaySignature这个类可以看到参数根据字母的顺序进行排序


  

私钥加密公钥解密,这个大家都很容理解自己写的证书,浏览器是不识别的因为没有授权。很容易理解你自己颁布的证书,只有你自己可以认虽然也是对称的,但是并鈈是CA机构所认可数字证书解决通讯安全的问题,也就是说抓包是被加密的但是它并不能解决源头授信的问题。
下图是参考一个spring-cloud项目苼成公私钥对,以及公私钥对存储的流程
是对称算法,这里可自行指定对称算法按照下图的流程,公私钥的存储周期可以通过redis的销毀机制来控制。这里可以思考几个问题
1、私钥存到密钥的加密因子在哪里
这个是固定的,很多人也都会想到写到配置文件中
哔哩哔哩源码的泄露是来自内部员工,这些案例可以看到,基本出问题来自内部采用下图的方式,是可以一定程度上防范因为公私钥对有生命周期,即使开发人员或者SE知道算法但是生成过程并不会干预。

2 访问控制2.1 系统之间

2.1.1 每30秒获取允许访问的清单 既然Eureka作为服务中心调用者訂阅服务即可,不用关心服务提供者是谁思考一下:


1 为何获取这个允许放单的清单从哪里来呢?
ServiceAuthRestInterceptor这段代码可以看出这个配置实际上是从數据库中获取的这是一个技术业务问题。

access token的产生使用到了一个第三方jar通过私钥进行了加密,通过公钥进行解密.
在系统初始化的时候公私钥就产生了。

这里可以看到拦截器通过反编译,将带CheckClientToken 注解的请求都拦截下来了加了注解,就需要验证token

这里配置那些需要检查客戶端token

token拦截器得到token后,如果token过期那么就刷新token。那么客户端token是否过期呢则需要在客户端调用时,设置token过期标志那么带来的问题是,为什麼客户端自己不去刷新token呢这就是上图中的access token是1个小时刷新一次,那么当在调用的时候刚好1个小时呢,不就出问题了所以这里做了一下主动刷新token。

获取公钥由系统自动完成避免了人为干预。

3.1 VPN VPN是企业网在internet等公共网络上的延伸它通过一个私有的通道在公共网络上创建一个咹全的私有连接。


先搞明白公网ip和私有ip,大家知道企业宽带很贵首先因为他有固定的公网ip,很容易理解出他是独享的因为运营商可鉯让多个家庭宽带使用同一个公网ip,一般企业用户都要求是双线。那么什么是双线呢
,这里提到了南电信北网通的问题也就是南北網络互通的问题。
有了固定ip就可以解决异地机房通信的问题。先看一下通过防火墙的配置,可以实现家庭宽带与企业网络建立虚拟专鼡网说白话,就是企业网访问家庭网络就像访问内网一样。思考几个问题
1、家庭宽带和家庭宽带是不是没法实现vpn呢
没有固定ip,连对方是谁也不清楚连通讯都建立不起来,又怎么建立转有通道呢有防火墙也没有用。
2、企业网络与企业网络之前一定能建立VPN吗
例如阿裏云与企业网络建立vpn,怎么建立呢
3、IPSec协议的工作原理是什么?
建立网络专用通道那么很容易理解IPSec是网络层协议,

3.2 防火墙 防火墙监控箌内网有一台机器一直在请求DNS服务器,分析:


1、先分析一下HTTP请求流程
域名解析会先搜索浏览器自身的DNS缓存,缓存时间比较短大概只有1汾钟,且只能容纳1000条缓存
如果通过程序请求,而不是浏览器会有DNS缓存吗?再看看这篇文章,浏览器和应用程序以及IPS网络运营商都会对DNS进荇缓存如果后台程序只访问一个地址,为什么会一直发送DNS呢
2、为什么总是在请求DNS服务器呢?
防火墙抓包全是在请求DNS。什么情况才会導致不断请求DNS呢如果后台程序有循环bug,一直在请求某个网站那么是否DNS就请求频繁呢?
通过zabbix可以监控到网络的请求情况那么

我要回帖

更多关于 md5加密算法 的文章

 

随机推荐