随笔分类 - 密码学
密码学相关文章
摘要:密码学系列之:memory-hard函数 简介 Memory hard function简称为MHF,在密码学中,内存困难函数(MHF)是一个需要花费大量内存来完成的函数。MHF主要被用在工作量证明中。因为需要花费大量的内存,所以MHF也会被用在密码Hash中,可以防止恶意破解。 和MHF相识的还有
阅读全文
摘要:密码学系列之:IDEA 简介 IDEA的全称是International Data Encryption Algorithm,也叫做国际加密算法,注意,这里不是我们常用的那个开发工具IDEA。 今天给大家详细介绍一下IDEA。 IDEA简介 IDEA中文叫做国际加密算法,最开始也被叫做Improve
阅读全文
摘要:简介 SHA算法大家应该都很熟悉了,它是一个用来计算hash的算法,目前的SHA算法有SHA1,SHA2和SHA3种。这三种算法都是由美国NIST制定的。 NIST的全称是美国国家标准与技术研究所,主要来制定各种标准。 本文将会讲解下NIST和SHA各种算法的关系。 SHA1 在密码学中,SHA-1
阅读全文
摘要:简介 CSRF的全称是Cross-site request forgery跨站点请求伪造,也称为一键攻击或会话劫持,它是对网站的一种恶意利用,主要利用的是已授权用户对于站点的信任,无辜的最终用户被攻击者诱骗提交了他们不希望的Web请求。 恶意网站可以通过多种方式来发送此类命令。 例如,特制的图像标签
阅读全文
摘要:简介 内容嗅探,也被称为媒体类型嗅探或MIME嗅探,是检查一个字节流的内容,试图推断其中数据的文件格式的做法。内容嗅探通常用在媒体类型没有被准确指定的情况,用于补偿元数据信息。 本文将会讲解内容嗅探的常用场景和可能出现的问题。 MIME types MIME的全称是Multipurpose Inte
阅读全文
摘要:简介 明文攻击就是指已经知道了部分明文和它对应的加密后的字段,从而可以推测出使用的加密手段或者密码本。明文攻击这个故事还要从二战时候说起。 crib和明文攻击 谈到明文攻击,就不能不讲到一个词crib和它的发源地布莱奇利公园(Bletchley Park)。 布莱奇利公园(Bletchley Par
阅读全文
摘要:SSL/TLS是一种密码通信框架,他是世界上使用最广泛的密码通信方法。SSL/TLS综合运用了密码学中的对称密码,消息认证码,公钥密码,数字签名,伪随机数生成器等,可以说是密码学中的集大成者。
SSL(Secure Socket Layer)安全套接层,是1994年由Netscape公司设计的一套协议,并与1995年发布了3.0版本。
TLS(Transport Layer Security)传输层安全是IETF在SSL3.0基础上设计的协议,实际上相当于SSL的后续版本
阅读全文
摘要:基于口令的密码(PBE)
基于口令的密码(Password Based Encryption,PBE)是一种基于口令生成密钥,并使用该密钥进行加密的方法。其中加密和解密使用的是同一个密钥。
根据用户自己的口令和salt生成口令密码,我们先看下加密的过程
阅读全文
摘要:之前我们谈到了密钥配送的问题,这个世界是如此的危险, 一不小心通信线路就会被监听,那么我们怎么在这种不安全的线路中传递密钥呢?
这里我们介绍一下Diffie-Hellman密钥交换算法。这个算法是由Whitfield Diffie和Martin Hellman在1976年共同发明的一种算法。
通过这个算法,双方只需要交换某些共同的信息就可以生成出共享的密钥。是不是很神奇
阅读全文
摘要:在之前的文章中,我们讲到了对称密码,公钥密码,消息认证码和数字签名等密码学的技术,这些技术中都使用到了一个叫做密钥的东西。
那么到底什么是密钥呢?密钥就是一个key,通过这个key可以获得最终的明文。所以密钥其实是和明文等价的。
举个例子,保险箱里面放着十万美元,保险箱被锁住了,并且有一个钥匙。那么这个拥有钥匙的人和拥有了十万美元是等价的
阅读全文
摘要:一文读懂密码学中的证书 之前的文章中,我们讲到了数字签名,数字签名的作用就是防止篡改和伪装,并且能够防止否认。但是要正确运用数字签名技术还有一个非常大的前提,那就是用来验证签名的公钥必须真正的属于发送.
阅读全文
摘要:文章目录我们需要数字签名签名的生成和验证数字签名的方法直接对消息进行签名对消息的hash值进行签名数字签名可以替代现实生活中的签名吗?数字签名无法解决的问题 我们需要数字签名 之前的文章我们讲了MAC(Message Authentication Code)消息认证码,MAC是认证消息的完整性的技术
阅读全文
摘要:之前的文章我们讲了两种加密方式,一种是对称加密,一种是非对称加密。 对称加密可以解决通信的机密性的问题,但是不能解决密钥配送的问题。而非对称加密算法虽然可以解决密钥配送的问题,但是它的加密速度比较慢,并且无法抵御中间人攻击。 那么如果将对称加密算法和非对称加密算法结合起来,是不是就能够得到一种既不用
阅读全文
摘要:文章目录单向散列函数单向散列函数的性质单向散列函数的实现对单向散列算法的攻击 单向散列函数 在介绍单向散列函数之前,我们先了解一下什么情况下需要使用到单向散列函数。 如果你需要从国外的网站上下载一个软件,但是因为种种原因,国外的网络太慢了,下载几个G的数据几乎是不可能的。刚好国内有镜像网站,可以从国
阅读全文
摘要:前面的文章我们讲到了RSA算法以目前的手段是很难被攻破的,那么使用RSA算法是不是就一定安全了呢? 答案当然是否,因为我们并没有考虑到网络传输中的各种情况。本文会讲一种攻击叫做中间人攻击,为了抵御这种攻击,我们引入证书的概念。我们会在后续的文章中讲解证书的概念。这里我们重点讲一下中间人攻击。 所谓中
阅读全文
摘要:文章目录什么是RSARSA的加密RSA的解密N,E,D的生成1. 生成N2. 求L3. 求E4. 求D破解RSA 什么是RSA 前面文章我们讲了AES算法,AES算法是一种是对称加密算法,本文我们来介绍一个十分常用的非对称加密算法RSA。 非对称加密算法也叫公钥密码算法,通过生成的公私钥来对明文密文
阅读全文
摘要:文章目录密钥配送问题事先共享密钥密钥中心分配密钥使用Diffie-Hellman密钥交互使用公钥私钥 密钥配送问题 上面几篇文章我们讲到了对称加密,包括它的几种实现AES,DES算法。那么有了对称加密算法,我们是否就可以安全的和第三方进行通信了呢? 考虑如下情况: 小明想写一封情书给小红,但是这封情
阅读全文
摘要:文章目录什么是分组密码和模式ECB模式CBC模式CFB模式OFB模式CTR模式 什么是分组密码和模式 前面我们讲过了DES和AES算法,他们每次都只能加密固定长度的明文,这样的密码算法叫做分组密码。 如果需要加密更长的明文则需要对分组密码进行迭代。而分组密码的迭代方法就称为分组密码的模式。 本文我们
阅读全文
摘要:文章目录AES的由来什么是RijndaelRijndael的原理Rijndael的特点 AES的由来 前面一篇文章我们讲到了DES算法。鉴于DES可以被破解和加密效率不高的缺陷。美国的NIST(National Institute of Standards and Technology,国家标准技术
阅读全文
摘要:文章目录什么是DESDES的加密解密DES工作原理Feistel 网络的特定三重DES 什么是DES DES全称叫(Data Encryption Standard), 是1977年美国联邦信息处理标准(FIPS)中所采用的一种对称加密算法。 DES之前一直使用很普遍,但是随着计算机的进步,现在DE
阅读全文