对称密钥

对称加密算法 + 非对称加密算法

倖福魔咒の 提交于 2020-01-13 03:23:35
对称加密算法   对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。不足之处是,交易双方都使用同样钥匙,安全性得不到保证。此外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量成几何级数增长,密钥管理成为用户的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。在计算机专网系统中广泛使用的对称加密算法有DES、IDEA和AES。 传统的DES由于只有56位的密钥,因此已经不适应当今分布式开放网络对数据加密安全性的要求。1997年RSA数据安全公司发起了一项“DES挑战赛”的活动,志愿者四次分别用四个月、41天、56个小时和22个小时破解了其用56位密钥DES算法加密的密文。即DES加密算法在计算机速度提升后的今天被认为是不安全的。 AES是美国联邦政府采用的商业及政府数据加密标准

HTTPS为什么更安全,先看这些 , 网络加密 , 加密解密

跟風遠走 提交于 2020-01-13 02:48:43
投递人 itwriter 发布于 2017-02-27 21:35 评论(10) 有1957人阅读 原文链接 [收藏] « »   HTTPS 是建立在密码学基础之上的一种安全通信协议,严格来说是基于 HTTP 协议和 SSL/TLS 的组合。理解 HTTPS 之前有必要弄清楚一些密码学的相关基础概念,比如:明文、密文、密码、密钥、对称加密、非对称加密、信息摘要、数字签名、数字证书。接下来我会逐个解释这些术语,文章里面提到的『数据』、『消息』都是同一个概念,表示用户之间通信的内容载体,此外文章中提到了以下几个角色: Alice:消息发送者 Bob:消息接收者 Attacker:中间攻击者 Trent:第三方认证机构 密码   密码学中的“密码”术语与网站登录时用的密码(password)是不一样的概念,password 翻译过来其实是“口令”,它是用于认证用途的一组文本字符串。   而密码学中的密码(cipher)是一套算法(algorithm),这套算法用于对消息进行加密和解密,从明文到密文的过程称之为加密,密文反过来生成明文称之为解密,加密算法与解密算法合在一起称为密码算法。 密钥   密钥(key)是在使用密码算法过程中输入的一段参数。同一个明文在相同的密码算法和不同的密钥计算下会产生不同的密文。很多知名的密码算法都是公开的,密钥才是决定密文是否安全的重要参数,通常密钥越长

HTTPS 为什么更安全,先看这些

安稳与你 提交于 2020-01-13 02:47:52
HTTPS 是建立在密码学基础之上的一种安全通信协议,严格来说是基于 HTTP 协议和 SSL/TLS 的组合。理解 HTTPS 之前有必要弄清楚一些密码学的相关基础概念,比如:明文、密文、密码、密钥、对称加密、非对称加密、信息摘要、数字签名、数字证书。接下来我会逐个解释这些术语,文章里面提到的『数据』、『消息』都是同一个概念,表示用户之间通信的内容载体,此外文章中提到了以下几个角色: Alice:消息发送者 Bob:消息接收者 Attacker:中间攻击者 Trent:第三方认证机构 密码 密码学中的“密码”术语与网站登录时用的密码(password)是不一样的概念,password 翻译过来其实是“口令”,它是用于认证用途的一组文本字符串。 而密码学中的密码(cipher)是一套算法(algorithm),这套算法用于对消息进行加密和解密,从明文到密文的过程称之为加密,密文反过来生成明文称之为解密,加密算法与解密算法合在一起称为密码算法。 密钥 密钥(key)是在使用密码算法过程中输入的一段参数。同一个明文在相同的密码算法和不同的密钥计算下会产生不同的密文。很多知名的密码算法都是公开的,密钥才是决定密文是否安全的重要参数,通常密钥越长,破解的难度越大,比如一个8位的密钥最多有256种情况,使用穷举法,能非常轻易的破解。根据密钥的使用方法,密码可分为对称加密和公钥加密。 对称加密

网络协议相关面试问题-https加密算法相关面试问题

浪尽此生 提交于 2020-01-13 02:47:18
密钥: 密钥是一种参数,它是在使用密码cipher算法过程中输入的参数,同一个 明文 在相同的密码算法和不同的密钥计算下会产生不同的 密文 。所以说算法既使公开了但是密钥参数不同其结果也是不同的,其中关于明文和密文下面用一张图来描述一下: 而密钥又分为对称与不对称两种,下面具体来看一下: 密钥:对称 又称为共享密钥加密,对称密钥在加密和解密的过程中使用的密钥是相同的,常见的对称加密算法有DES、3DES、AES、RC5、RC6。 优点是计算速度快; 缺点是密钥需要在通讯的两端共享,也就是不安全啦,因为一个密钥对应两端。 密钥:非对称 又称为公开密钥加密。服务端会生成一对密钥,一个私钥保存在服务端,仅自己知道,另一个是公钥,公钥可以自由发布供任何人使用。 客户端的明文通过公钥加密过的密文需要服务端生成的私钥来解密。 与对称密钥加密相比,非对称加密无需在客户端与服务端之间共享密钥,只要私钥不发给任何用户,即使公钥在网上被截获,也无法被解密,仅有被窃取的公钥是没有任何用处的。 密钥:RSA加密简单过程 服务器生成配对的公钥和私钥。 私钥保存在服务端,公钥发关给客户端。 客户端使用公钥加密明文传输给服务端。 服务端使用私钥解密密文得到明文。 数字签名: 思考这样一个问题:数据在浏览器和服务器之间传输时,有可能在传输过程中被冒充的盗贼把内容替换了

HTTPS的中那些加密算法

老子叫甜甜 提交于 2020-01-13 02:45:01
密码学在计算机科学中使用非常广泛,HTTPS就是建立在密码学基础之上的一种安全的通信协议。HTTPS早在1994年由网景公司首次提出,而如今在众多互联网厂商的推广之下HTTPS已经被广泛使用在各种大小网站中。在完全理解HTTPS之前,有必要弄清楚一些密码学相关的概念,比如:明文、密文、密码、密钥、对称加密、非对称加密、摘要、数字签名、数字证书。 密码(cipher) 密码学中的密码(cipher)和我们日常生活中所说的密码不太一样,计算机术语『密码 cipher』是一种用于加密或者解密的算法,而我们日常所使用的『密码 password』是一种口令,它是用于认证用途的一组文本字符串,这里我们要讨论的是前者:cipher。 密钥(key) 密钥是一种参数,它是在使用密码(cipher)算法过程中输入的参数。同一个明文在相同的密码算法和不同的密钥计算下会产生不同的密文。很多知名的密码算法都是公开的,密钥才是决定密文是否安全的重要参数,通常密钥越长,破解的难度越大,比如一个8位的密钥最多有256种情况,使用穷举法,能非常轻易的破解,知名的DES算法使用56位的密钥,目前已经不是一种安全的加密算法了,主要还是因为56位的密钥太短,在数小时内就可以被破解。密钥分为对称密钥与非对称密钥。 明文/密文 明文(plaintext)是加密之前的原始数据,密文是通过密码(cipher

聊聊密码学中的DES算法

こ雲淡風輕ζ 提交于 2020-01-12 23:39:24
用心分享,共同成长 没有什么比你每天进步一点点更实在了 <p align="center">本文已经收录至我的github,欢迎大家踊跃star 和 issues。</p> <p align="center"><a href=" https://github.com/midou-tech/articles " target="_blank"> https://github.com/midou-tech/articles</a></p&gt ;  今天要说点和你的隐私有关的事情,在这个信息化的时代,是不是真的有人一手握着你的信息,一手数着钞票呢?答案一定是 当然 。  说到网络安全,我就不得不提一个东西——<font face="宋体" color=blue size=4> 密码学 </font>(是不是听起来头皮发麻心跳加速),稳住稳住,老司机上线带你学。今天给大家say&see什么是密码学中的<font face="宋体" color=orange size=4> DES </font>。 简介   DES : English Name:Data Encrytion Standard 中文名:DES 算法,数据加密标准 是迄今为止世界上最为广泛使用和流行的一种分组密码算法。(听到这里有没有感觉有点东西) 1、参数介绍: data(加解密的数据)

RSA与AES实现数据加密传输

泄露秘密 提交于 2020-01-12 13:00:29
RSA、AES简介 RSA:非对称加密,需要提前生成两个密钥(一对的),通过其中一个密钥加密后的数据,只有另一个密钥能解密。通常这两个密钥中有一个会暴漏出来,即对外公开的,这个密钥称为“公钥”,反之另一个是隐藏起来的,不公开的密钥称为“私钥”。 EAS:对称机密,数据的加密和解密都只使用同一个密钥。 关于加密传输   是为了保证数据 传输过程 中,数据即使被“中间人”截获,“中间人”也无法解析其中的数据,使“中间人”无法得知我们实际要传输的数据,以达到保护数据的目的。如果客户端本身存在安全问题,则无法保证数据的安全,如浏览器端JS变量存储了即将传输的用户密码,这个变量被其他非信任脚本或其他方式获取到了,会导致数据泄露,这种问题并不是加密传输所能处理的。加密传输能保障数据,有一个前提,那就是 对于本地动态生成的变量,就认为是安全的,是认为第三方无法获取的 。 RSA和AES配合实现加密传输 客户端往服务端传输加密数据 客户端每次请求前,都随机生成不同的AES密钥,保存到变量aesKey中 使用aesKey对要传输的信息进加密,得到加密内容A 通过预置在客户端的RSA公钥rsaPublicKey对aesKey加密,得到加密内容B 将内容A和内容B传输到服务端 服务端接收到内容A和内容B 使用预置在服务器端的RSA私钥rsaPrivateKey对内容B进行解密

RSA加密原理与秘钥、公钥生成

余生颓废 提交于 2020-01-08 01:46:01
RSA加密(非对称加密) RSA公开密钥密码体制。所谓的公开密钥密码体制就是使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。(不可逆向运算的加密方法) 它通常是先生成一对RSA 密钥,其中之一是保密密钥(私钥),由用户保存;另一个为公开密钥(公钥),可对外公开,甚至可在 网络服务器 中注册。为提高保密强度,RSA密钥至少为500位长,一般推荐使用1024位。 RSA进行的都是大数计算,使得RSA最快的情况也比DES慢上好几倍,无论是软件还是硬件实现。速度一直是RSA的缺陷。一般来说只用于少量 数据加密 。RSA的速度比对应同样安全级别的对称 密码算法 要慢1000倍左右。 PHP端(操作方法): 生成证书前先检查 /etc/pki/CA 是否有 index.txt 和 serial 文件 以下是创建的方法 touch index.txt 排序数据库,用来跟踪已经颁发的证书。我们把它命名为index.txt,文件内容为空 touch serial echo 01 > serial 用来跟踪最后一次颁发的证书的序列号,我们把它命名为serial,初始化为01 在linux下创建一个文件夹MyCA 在MyCA下创建两个文件夹用来保存 certs 用来保存我们的CA颁发的所有的证书的副本 private用来保存CA证书的私钥匙 mkdir

聊聊密码学中的DES算法

回眸只為那壹抹淺笑 提交于 2020-01-08 00:24:57
用心分享,共同成长 没有什么比你每天进步一点点更实在了 本文已经收录至我的github,欢迎大家踊跃star 和 issues。 https://github.com/midou-tech/articles  今天要说点和你的隐私有关的事情,在这个信息化的时代,是不是真的有人一手握着你的信息,一手数着钞票呢?答案一定是 当然 。  说到网络安全,我就不得不提一个东西—— 密码学 (是不是听起来头皮发麻心跳加速),稳住稳住,老司机上线带你学。今天给大家say&see什么是密码学中的 DES 。 简介   DES : English Name:Data Encrytion Standard 中文名:DES 算法,数据加密标准 是迄今为止世界上最为广泛使用和流行的一种分组密码算法。(听到这里有没有感觉有点东西) 1、参数介绍: data(加解密的数据):64bit的明文或者密文需要被加密或被解密的数据 key(加解密的密钥):8Byte,64bit密钥(56bit密钥+8bit奇偶校验位) mode(工作模式):加密或者解密的工作流程 2、工作流程: WechatIMG112 3、初始IP置换:  DES算法使用64位的密钥key将64位的明文输入块变为64位的密文输出块,并把输出块分为L0、R0两部分,每部分均为32位。左部分Li=Ri-1,右部分Ri=Li-1⊕F(Ri-1,Ki)

Alamofire -安全认证

穿精又带淫゛_ 提交于 2020-01-07 01:38:54
基于Alamofire 5.0.0 分析网络的安全认证。同时介绍一些 HTTP 与 HTTPS 的一些相关知识 HTTP 特性 无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。 无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有 GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 灵活:HTTP 允许传输任意类型的数据对象。正在传输的类型由Content-Type(Content-Type 是 HTTP包 中用来表示内容类型的标识)加以标记。 HTTP 存在的问题 1.安全性差 2.每次请求传输结束,重新请求又要建立连接 3.后续处理之前信息必须重传,损耗性能 加密算法 1.对成加密 在对称加密当中加密使用的秘钥和解密使用的秘钥是相同的。也就是加密和解密都是同一个秘钥。这样秘钥的安全性就非常重要,秘钥是一定不能公开的 存在的缺点:对称加密的缺点就在于如果秘钥要是泄露