
加密
文章平均质量分 54
Mllllk
只想做自己想做的,学自己想学的
展开
-
IKEv2的密钥计算方式
在IKEv2的头两个消息中,通信双方会协商一系列的安全参数。包括,一个加密算法,一个完整性算法,一个DH Group,以及一个PRF伪随机数算法。其中,PRF算法被通信双方用来生成即将被用到的各种密钥。在讨论密钥生成之前,先了解下IKEv2通信需要哪些密钥。首先,加解密需要一对密钥,称之为SK_ei和SK_er;然后,完整性算法需要一对密钥,称之为SK_ai和SK_ar;第三,在生成AUTH payload时也需要一对密钥,称之为SK_pi和SK_pr;最后,为了给Child SA生成加密材料,也需原创 2022-05-04 19:22:27 · 2628 阅读 · 1 评论 -
密码学简单总结
对称密钥一次性密码本一次性密码本的本质是使用与原文相同长度的比特序列进行异或运算。那么针对这种一次密码本的对称密钥的加密方式,那么当被加密密文的长度达到一定长度后,他的密钥空间将会十分的庞大,所以如果使用密钥穷举的方式去对密钥进行穷举的话是十分困难的。DES对称加密DES是一种对称加密,它是一种将64比特的明文加密成64比特的密文的对称密钥算法但是从本质上来说DES加密算法使用的密钥长度是56比特,因为每隔7位的密钥就会添加1位用于错误检查的比特。如果要对长比特的明文进行加密,那原创 2022-04-26 21:30:04 · 1406 阅读 · 0 评论 -
DH和DHE的区别
DH和DHE的主要区别在于DHE是一种临时的DH,也就是说,使用DH计算出来的共享密钥是临时的,不会在多个会话中多次使用,也就是说DH加上了这种特性后计算出来的相关密钥是动态的,是会不断的变化,所以说DHE是具备PFS,完美向前安全性,所以在TLS1.3中已经将DH和ECDH这些静态的DH密钥交换算法剔除了。...原创 2022-04-26 20:00:14 · 1511 阅读 · 0 评论 -
RSA破解的难点
RSA的密钥生成的步骤的简述RSA的计算方式密文=明文的E方 mod N明文=密文的D方 mod N1、使用伪随机生成器生成大素数p,q,然后将p与q进行相乘最后得到模数N2、通过N计算出中间参数L3、使用中间参数L计算出E和D,其中E与N组成公钥,D与N组成私钥公钥发放到其他用户使用,私钥保留在自身上用作解密公钥加密后的数据攻击的切入点1、攻击点1:利用RSA的计算公式尝试去破解相关的明文信息密文=明文的E方 mod N,但是这种方式从它的本质上来说是不行的原创 2022-04-26 18:32:09 · 1762 阅读 · 0 评论 -
nmap的基本用法
nmap IP地址|多个IP地址:探测x个主机上1-10000的端口-vv :显示探测到的原因,以及发现的过程-p 3389-90000 :表示指定端口进行扫描-exclude :除外某个主机IP-excludefile xxx :除外该文件中的IP-sP 列出在线主机-sT:三次握手的探测-sS:只发出SYN的探测-sU:UDP端口扫描-sV :扫描相关服务的版本-O :扫描目的主机的操作系统...原创 2022-04-18 17:26:25 · 1145 阅读 · 0 评论 -
关于单向散列hash函数破解 彩虹表的简单理解
概述我们都知道单向散列函数就如它的名字一般,单输入唯一的单输出,一个好的单向散列函数要具有抗碰撞的特性,而且要具有足够大的值空间。今天看到了彩虹表感觉很有意思在这里记录一下。传统的散列函数破解传统的关于散列函数的破解,主要就是穷举法了,但是当单向散列函数的位数到达一定程度的时候,其组成的值空间将会是十分庞大的,除非计算机的算力十分了得,否则将难以承担其背后巨大的计算流程。散列链的生成第一步:先根据明文计算出其哈希值,此过程称为H函数, 第二步:取计算出的hash值的前n(比如.原创 2022-04-15 22:44:35 · 733 阅读 · 0 评论 -
IKE协商中为什么会出现野蛮模式?
IKE主模式在IKEv1主模式中,基准密钥的产生是需要使用到双方预先创建好的预共享密钥的,而基准密钥的产生是在第三第四个包交换的过程中产生的,但是在主模式下身份信息是在5,6包中才进行交换,所以在第三个和第四包如果我们需要使用两端的预共享密钥进行基准密钥的生成,就需要使用到对端IP,这个是我们事先定义的,现在问题来了,那么为什么不使用一些文字信息呢?这样的话即便对端IP改变后我们依然可以对其身份进行识别,...原创 2022-03-13 23:19:12 · 2191 阅读 · 0 评论 -
TLV1.2 RSA密钥协商和ECDHE密钥协商两种方式的连接建立流程
作者:叨陪鲤链接:https://www.zhihu.com/question/37640500/answer/21869602033.2 基于RSA的TLS握手流程基于RSA进行密钥配送的TLS握手报文如下:TLS四次握手的报文及其主要内容如下:3.2.1 TLS第一次握手TLS握手首先以客户端发送的:Client Hello报文作为协商的开始。 报文内最容主要包含:TLS版本号,随机数(Client Random),密码套件列表,以及sessionID。TLS版.转载 2022-02-26 21:22:10 · 2194 阅读 · 0 评论 -
TLV1.3
Tengine TLSv1.3最佳实践 - 爱码网 (likecs.com)27丨更好更快的握手:TLS1.3特性解析 - 飞鸟与新月 - 博客园 (cnblogs.com)转载 2022-02-26 20:46:06 · 90 阅读 · 0 评论 -
GPG使用信息链接
GPG常用命令总结分享 | Hui-Shao's BlogGPG配置、命令、实例与apt-key密钥测试 - usmile - 博客园 (cnblogs.com)GPG 使用指南 - 知乎 (zhihu.com)原创 2022-02-26 13:24:05 · 175 阅读 · 0 评论 -
PGP的公钥如何确定来源的可信任性(信任网)
信任网PGP的公钥并不使用数字证书来验证其真实性,它采用信任网的方式。那么什么是信任网,我们可以使用自己的主密钥对别人的公钥进行签名,那么假设我们此刻获取到一个公钥,那么该公钥上的签名数可能是1个,也可能是多个,假设我们该公钥上的签名是我们相信的,比如A相信B,然后A接收到一个有B签名的公钥,那么A就会相信接收到的公钥,这就好比平时整天督促你学习的妈妈告诉你今天放假了,于是对于你来说今天放假这件事是很有可能发生的,于是你就相信你的妈妈,。现在再假设,A又接收到了一个公钥,然后这个公钥的上面有很多签名,但原创 2022-02-26 13:22:13 · 741 阅读 · 0 评论 -
PGP生成数字签名并加密以及解密并验证数字签名解读
Encryption:加密。 Signing:签名。 Certification:认证其他子密钥或 uid。 Authentication:身份认证,例如用于 SSH 登录。GPG为什么要有主密钥和公密钥在PGP中如果我们使用gpg --gen-key会生成主密钥和子密钥,主密钥一般不用作加密,仅仅用于签名别人公钥,签名子密钥,所以一个主密钥一般带有的标签是SC,而子密钥带的标签是E 一个主密钥可以绑定多个子密钥,平时加密解密使用的都是子密钥,主密钥只有在某些特定的情况下才使用的,...原创 2022-02-26 13:12:01 · 6576 阅读 · 0 评论 -
PBE(Password Based Encrytion)基于口令的密码
什么是PBE我们在使用混合密码系统或者使用密钥协商算法+对称加密的方式进行任何数据的加密的时候,都难以避免地要涉及到密钥的保存,那么密钥如果明文地保存在电脑上那么很容易就会被别人盗取,那么如果我们使用另外一个随机密钥去加密会话密钥,这样怎么样呢?很明显这样下去就会无线循环了,这样我们又要考虑保存密钥的密钥的保存。对于我们人来说,我们不喜欢去记数字和字符,但是我们可以记下一些短的口令,这比起动作百来位的密钥来说可好记多了,所以我们就出现了PBE,我们通过对口令和一些随机数结合进行加工,将它转变为一个用来加原创 2022-02-25 20:15:42 · 1854 阅读 · 0 评论 -
ECDHE椭圆曲线DH密钥交换算法的原理理解简单版
理解准备首先我们给自己一个概念就是,设有一个式子Q=kP,给定k和P求Q很容易,给定Q和P求k很困难,但是这个式子不是简单的乘法,我们理解为一种复杂的算法。原理流程1、确定使用哪个椭圆曲线,ECDHE是以椭圆曲线上的数学问题为基础。2、确定曲线基点G,曲线基点我们将其理解为一个公共的算法材料(其中使用的椭圆曲线和曲线基点都是公开的)3、通信A端生成随机数A,通信B端生成随机数B4、Qa=AG Qb=BG //将随机数a或b与G进行运算,还是理解为一种特殊运算5、于是A的私钥为...原创 2022-02-25 17:13:31 · 7237 阅读 · 0 评论 -
ECC椭圆曲线加密算法
ECC算法概述ECC:Elliptic Curves Cryptography,椭圆曲线密码编码学ECDSA:用于数字签名,是ECC与DSA的结合,整个签名过程与DSA类似,所不一样的是签名中采取的算法为ECC,最后签名出来的值也是分为r,s。ECDHE:是基于ECC(Elliptic Curve Cryptosystems,椭圆曲线密码体制,参看ECC)的DH( Diffie-Hellman)密钥交换算法。椭圆曲线加密算法,简称ECC,是基于椭圆曲线数学理论实现的一种非对称加密算法。相比R原创 2022-02-25 15:52:04 · 3698 阅读 · 0 评论 -
AES-GCM分组模式的讲解
mbedtls学习笔记 AES GCM - 代码天地 (codetd.com)转载 2022-02-25 15:42:39 · 1769 阅读 · 0 评论 -
图解密码学数字签名
数字签名的概述我们在传递信息的时候时常会考虑的一个问题就是,信息的来源是否正确,信息内容是否正确,这个问题在我之前的消息认证码已经有讨论过了,消息认证码虽然可以起到对信息来源的确认以及信息内容的确认,但是因为消息认证码需要双方共享一个没有第三方知道的,一摸一样的密钥,所以信息存在否认性,即A若向B发送一个信息,A可以否认该信息是自己发送的,A可以说是B创建的,因为这个密钥是A和B独享的,没有第三方知道。于是就有了数字签名。数字签名的原理数字签名主要是结合了非对称加密,因为非对称加密中存在公钥原创 2022-02-25 10:02:29 · 1176 阅读 · 0 评论 -
为什么要消息认证码
消息认证码的概述消息认证码的主要作用就是为了验证消息的来源以及正确性,将明文信息与密钥结合,最后生成唯一对应的散列函数值,如果接收者不能解密该函数散列值,或者散列值不正确都说明本次信息的传递是失败的,因为证明本次信息传递正确性的凭证已经错误了。一个问题现在思考一个问题,既然我将信息使用加密之后然后发送过去,如果对方可以解出来不久证明信息的来源是正确的吗?为什么还要消息认证码?原因1:首先信息发送过去就算可以被解密也不一定代表消息就是正确的,加密仅仅是使得内容不被别人查看,但是却不能保原创 2022-02-24 09:47:11 · 3171 阅读 · 0 评论 -
图解密码学单向散列函数
什么是单向散列函数(哈希函数)单向散列函数就是一种特殊的函数,无论输入的内容的长度多少,它的输出长度都是固定的,而且其输出内容会随着输入内容的改变而改变,而且输入内容小小的改变就会引起输出内容的巨大改变,而且无法从输出内容恢复原来的输入内容。就是因为单项散列函数有如此特殊的特性,所以它一般用作文件完整性检验,软件完整性检验等等,保证内容没有被恶意篡改。单向散列函数的应用消息认证码:消息认证码中也使用了单项散列函数,只不够单项散列函数的生成需要使用密钥。现在假设有A和B双方,A想要将信息发原创 2022-02-23 21:01:25 · 748 阅读 · 0 评论 -
图解密码学混合密码系统
混合密码系统概述我之前的博客中以及将对称密钥加密和非对称加密进行了总结,无论是对称加密的AES还是非对称加密的RSA,它们都有自己的优点和缺点,AES的优点就是加密解密快,安全性也有一定的保证,但是如果要通信双方使用AES就需要解决一个问题就是密钥的分配问题,虽然说可以使用像预共享密钥,密钥分配中心,DH密钥分配算法进行密钥的分配,但是相比起混合的密钥系统来说还是差了一些。对于非对称加密来说,密钥的分配虽然不成问题了,但是因为其巨长的相关密钥也导致了它加解密缓慢的结构。所以混合密码系统就是将两种密码体系原创 2022-02-23 20:03:24 · 1037 阅读 · 0 评论 -
图解密码学RSA
RSA概述RSA是具有公私钥的一种加密算法,公钥加密的东西只有私钥才能解开,私钥加密的东西也只有公钥才能解开。我们一般使用RSA-1024位即可满足需求,当需求性大的时候需要使用RSA-2048位。RSA的计算过程1、选择一对不相等的,且足够大的质数对p,q2、计算p和q的乘积得到N3、计算N的欧拉函数值,所谓欧拉函数值就是小于N的数有多少个数与N互质。计算小于N的数有多少个数与它互质需要使用下面的定义:(1)当一个数可以被分解为两个互质的数,那么该数的欧拉函数值为这两个互质原创 2022-02-23 16:48:07 · 1790 阅读 · 0 评论 -
图解密码学密钥的分配方式
1、预共享密钥顾名思义就是事先共享密钥,因为再网络上传播密钥确实是一个难题,而且也很容易被人截获然后造成一定的影响。所以我们可以线下事先互相告知自己使用的密钥是什么,但是一个两个还好,假如我们要使用加密通信的是一个群体那怎么办,每个人都要知道群体中其他所有人的密钥?所以这种密钥的分配方式并不适合一个十分大的群体。2、密钥中心分配大家都被自己的密钥交给密钥中心,比如A和B要通信,那么密钥中心就根据本次通信随机生成一个密钥,然后将该会话的密钥使用A的密钥加密后发送给A,然后将该会话密钥使用B的密原创 2022-02-23 09:58:29 · 3695 阅读 · 0 评论 -
图解密码学对称加密的分组模式
为什么要有分组模式我们知道像DES,3DES,AES这类的分组加密算法对明文的加密都是以分组为基础,DES和3DES加密的分组长度都是64比特,AES加密的分组长度都是128比特。那么我们是否有考虑过一个问题,假设我们使用AES对明文进行加密,然后我们现在正在传递一个文件,因为使用AES对明文进行加密,所以该文件将会被拆分成多个分组然后被AES加密之后再进行传输,那么毫无疑问该文件将会存在十分多的128比特的分组,假如在128比特的范围内的信息是一小段话,比如这一小段话是“我觉得那个”,我们知道“我觉得原创 2022-02-23 09:44:11 · 525 阅读 · 0 评论 -
图解密码学对称加密
DES概述DES是一种对称分组加密算法,主要用于加密信息。DES是一种将64比特明文加密成64比特的密文的堆成密码算法,但是真实有效的密钥是56位,因为每八位就有一位是用来校验密钥的错对的,换句话来说DES的加密是一组一组来的,每一组都是64比特。但是DES已经不再安全了,在1999年的时候,DES Challenge III 破解DES仅仅花费了22小时15分钟,所以更不用说现在的计算水平了。DES的加密手段(我在看书中的加密解密算法的时候觉得就是如果要去读懂需要一些数学基础,但是如果以没原创 2022-02-23 09:17:11 · 12838 阅读 · 0 评论 -
图解密码学阅读整理第一章
1、密码与信息安全常识(1)不要使用保密的密码算法为什么这么说,其实使用保密的密码算法和使用公开的密码算法就像是家里的保险柜和博物馆的安保的差别,也许别人不知道你的家庭住址,但是只要别人查到你的家庭住址后面的保险柜的破解也就很容易了,如果要去从博物馆中偷取东西,这即便对于某些专业的盗贼来说也是十分困难的。而且这些公开的密码算法现如今还在广泛使用一定是有它们的原因的,它们不仅经受了诸多密码学家和数学家的证明,也经受住了许多年破解压力,所以使用公开的密码算法就OK了。(2)密码算法早晚会被破解的原创 2022-02-23 08:46:06 · 274 阅读 · 0 评论 -
DES和3DES加密易于理解的讲解
下图是DES加密的大致流程,DES是一种64位密钥加密64位明文的加密算法,但是64位密钥中每隔8位就是一位纠错位,所以真正有用的密钥的位数是56位。DES是一一种进行多次加密的对称加密算法,总共要进行16轮的加密,所以我们总共需要16个子密钥,这个子密钥从原先得到的64位密钥中得来。加密的流程简述1、将64位明文打乱然后拆分成两个部分,每一个部分的位数是32位。2、在第一轮的加密中右边的部分不做加密,而是将其当作一个材料和第一轮要使用的子密钥经过轮函数计算算出一个随机数,然后我们再使用..原创 2022-02-21 18:11:20 · 2418 阅读 · 0 评论 -
SSH的相关原理(转)
关于SSH加密和连接的若干事儿 - 知乎 (zhihu.com)转载 2022-02-16 21:01:45 · 108 阅读 · 0 评论 -
常见与密码安全和信息安全相关的算法以及特点
原创 2022-02-16 21:00:59 · 602 阅读 · 0 评论 -
DH密钥协商算法
这个密钥协商算法基于一个数学问题,有一个式子,Y=a^b mod p,其中a和p都是素数,在Y,a,p的数值不是十分夸张的时候,b是可解的,而且b和Y之间是一一对应的,就好比Y=ax函数,总有一个Y值与x对应。当我们已知Y,a,p,那么当p素数的值很大的时候,b将被认为是不可解的。然后还有有这么一个公式 [(a^b mod p )^c] mod p = a^bc mod p这个公式是两者之间进行密钥协商的公式1、假设现在有两个人A和B要协商密钥,他们公开了a素数和p素数2、然后他们.原创 2022-02-16 20:49:14 · 1607 阅读 · 0 评论