
安全
时暑
衡量工程师的标准:创造力,学习能力,解决问题能力
展开
-
聊一聊HTTPS安全性原理以及如何在GIN框架中运用
前言:编写本文的目的是让新手们快速了解HTTP协议相关知识,文中列举的信息如果有误,希望你能指出。期待大家共同进步。HTTTPS安全性原理HTTP是建立在TCP协议之上的请求响应协议,由于安全性需求衍生出HTTPS网络协议,因此HTTPS处于HTTP和TCP协议中间,建立起安全可靠的HTTP通道。HTTPS的安全性是依赖于SSL协议,在客户端和服务器通讯前,二者根据SSL协议,完成身份认证、加密算法,加密密钥的确定。其保证了前者保证了通讯双方不会遭受中间人攻击,后者保证通讯的内容在传输时是出原创 2020-05-29 23:28:53 · 3203 阅读 · 0 评论 -
关于SM4填充算法PKCS5和PKCS7讲解
前言: 今天刚好在系统上增加SM4算法的支持,SM4算法的实现网上你可以搜到很多版本,但是如果你要运用到实际中时,你一定要来接SM4算法填充规则。正文: 首先,SM4接口大多是以最小单位16Byte进行加解密。因此SM4的密文长度通常是16Byte的倍数。当你待加密数据小于16Byte时,你便需要使用填充算法。PKCS7填充算法规则:PKCS7填充单位为16Byte,对于...原创 2020-03-21 20:20:55 · 18059 阅读 · 4 评论 -
随机数生成器,基于软件的伪随机数算法
在工程中有时候需要用到随机数函数来模拟一些情况,例如加密系统的密钥来源可以用随机数函数获取。一般来说随机数函数需要有以下性质:1:随机性,不存在统计学偏差,是完全散乱的数列。2:不可预测性:不能从过去的的数列推算出下一个出现的数3:不可重现性:除非数列保存下来,否则不能重新相同的数列(比较难)。根据以上三个性质,可以将随机数函数分为“弱伪随机数”,“强伪随机数”,“真随机数”。其中“真随机数”靠软...原创 2018-06-24 15:57:50 · 10371 阅读 · 1 评论 -
(二)如何确保数据一致性,单向散列函数
博主最近在做数据库加密项目,项目中需要实现数据库中数据密文与密钥异地存储,其功能已实现,但考虑到密钥在传输过程中虽然已经做了加密处理,但是第三方如果恶意替换数据包的话,还是会有安全隐患,应此需要保证二端传输接受到的数据一致性。生活中,也有不少地方需要保证,接收端和发送端接收到的消息需要保证一致性。例如软件的发行商如何保证自己所发行的软件和用户下载到的软件一致性,而没有被恶意篡改。这里就需要运用到单...原创 2018-06-17 00:30:40 · 874 阅读 · 0 评论 -
(三)如何确保消息的发送人,数字签名
上一章,所提到的单向散列函数基本能保证双方通信的安全性。但还是存在局限性,由于Alice和Bob端都掌握着共享密钥,那么对于第三方而言,无法确定被加密的包含散列值的密文到底是谁发送的。这种场景发生于Alice和Bob既需要保证双发通信的安全性而Alice和Bob端互相不可信任的状态下。 举上篇文章中的一个例子,软件开发商将散列值公布在官网上,用户下载软件后,通过官网知...原创 2018-06-19 00:03:42 · 410 阅读 · 0 评论 -
数据备份与数据还原 ----数据库的异地容灾策略
Tip:最近,老大让在数据库加密系统里添加数据备份与还原的功能,在不影响原有系统的性能基础上保证设计备份策略,欲哭无泪。一个关于数据库的系统,首先要保证数据的稳定性和安全性,在保证数据的不会被丢失的基础上保证数据不会被第三方窃取。威胁数据库的因素大致分二种:1:物理威胁:对数据库服务器的物理损坏,例如:电磁干扰,硬盘损坏等。2:网络威胁:通过网络窃取数据库中内容,常用手段有:通过窃取服务器权限获取...原创 2018-07-02 00:40:55 · 6003 阅读 · 0 评论 -
常见加密算法梳理(一)
前言在工程中往往需要用到加密算法,对数据进行加密或者生成数据的哈希值。在众多算法中,我们需要筛选的合适的算法来满足需求。本章主要向大家介绍主流的一些算法,并提出建议。一 对称加密算法对称加密算法就是加密和解密使用同一种密钥DES算法一种使用密钥加密的块算法,目前已经不能保证安全性,建议禁止使用。3DES算法是三重数据加密算法块密码的通称。它相当于是对每个数据块应用三次D...原创 2018-10-13 19:46:52 · 1306 阅读 · 0 评论 -
随机数检测软件NIST安装和使用
前言: 某个周六上午,收到2.2G的随机数文件让我测试随机数。一脸黑人问号的询问老大测试方法是什么?只告诉我用NIST工具。正文:NISP SP 800-22是美国国家标准与技术研究院公布的随机数测试标准,通过同时计算多个比特数据、优化统计测试公式和降低计算复杂度等方法,对其中的部分测试项进行了基于C语言的快速实现。测试结果表明,采用该快速实现方法能显著提升随机数测试速率。安装...原创 2019-03-30 21:55:08 · 5433 阅读 · 0 评论