您当前的位置:首页 > 电脑百科 > 程序开发 > 算法

解读“高大上”的加密算法

时间:2019-07-26 10:29:36  来源:  作者:

解读“高大上”的加密算法

 

·什么是加密算法?它的应用领域和应用地位是什么?

算法加密是目前信息互联行业前后端开发必须应用的算法,它的目的就是是信息在传输和解读上的安全性提高,让设定的群体读到我传递的内容,而不被别人窃取到我的传递信息。

算法加密和数字签名是前后端开发绕不开的技术问题。它要解决的是用户登入、交易、信息通讯、oauth等应用场景提出的技术问题,给使用者提供更完善的服务。

·当前有哪些加密算法类型?它们有什么特点?

1、数字签名

数字签名,简单来说就是通过提供可鉴别的数字信息验证自身身份的一种方式。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。分别由发送者持有能够代表自己身份的私钥 (私钥不可泄露),由接受者持有与私钥对应的公钥能够在接受到来自发送者信息时用于验证其身份。

私钥与公钥相对的解密方式,通常也被看作是非对称加密验证过程,严格说来,它在分类上还不算另作一大类。但是数字签名的加密过程和普通的公钥加密存在很大的差异,所以它的归类也存在人际和领域差异。

---------------------

2、对称性加密算法

何谓对称性加密算法呢?

简单说来就是加密明文,生成编译密文和逆向的解密过程,即将编译信息转换成可读信息需要相同的密钥。是应用较早的加密算法,又称为共享密钥加密算法。通常称之为“Session Key”这种加密技术目前被广泛采用。

常见的对称加密算法则包含DES、3DES、AES等。

对称式加密使用便捷,效率高,但也有其缺陷:

密钥长度不够,推荐1024Bit或更高。

明文存储密使用弱随机数,攻击者很容易猜测。

3、非对称加密算法与区块链非对称加密算法

非对称加密(也称为公钥加密)。Public-key Cryptography)就是加密和解密所使用的不是同一个密钥,通常有两个密钥,称为“公钥(publickey)”和“私钥(privatekey)”,它们两个必需配对使用,否则不能打开加密文件。这里的“公钥”指的是公共密钥可以公布的,“私钥”不仅可以通过持有人了解。这就是优点所在,因为如果加密文件是通过网络传输的,对称加密可能很难告诉它的密钥,而且任何人都可以窃听它,不管使用什么方法。非对称加密方法有两个密钥,并且“公钥”可以公开,因此接收者只能在解密时使用他的私钥。这样就避免了密钥传输的安全问题。

区块链加密算法运用了哈希函数和椭圆曲线公钥密码技术在内的大量现代密码学技术。这些密码学技术被用于设计基于工作量证明的共识算法并识别用户。

哈希函数:是一类数学函数,可以在有限合理的时间内,将任意长度的消息压缩为固定长度的二进制串,其输出值称为哈希值,也称为散列值。

 以哈希函数为基础构造的哈希算法,在现代密码学中扮演着重要的角色,常用于实现数据完整性和实体认证,同时也构成多种密码体制和协议的安全保障。

碰撞是与哈希函数相关的重要概念,体现着哈希函数的安全性,所谓碰撞是指两个不同的消息在同一个哈希函数作用下,具有相同的哈希值。

哈希函数的安全性是指在现有的计算资源(包括时间、空间、资金等)下,找到一个碰撞是不可行的。

常见的此类算法有RSA、ECC等。

值得一提的是RSA基于素数因式分解数学理论的困难度,安全性非常高。

但是此类算法安全性虽高,但是读取速度慢,只适用小数据量的加密存取。

4、散列加密算法

是一个密码散列函数家族,是FIPS所认证的安全散列算法。能计算出一个数字消息所对应到的,长度固定的字符串(又称消息摘要)的算法。且若输入的消息不同,它们对应到不同字符串的机率很高。代表算法即是SHA算法系列和MD5等。

由于算法的特殊性,哈希算法多用于验证加密信息的完整性。

·加密手段

1、同态加密

同态加密是一种特殊的加密方法,它允许对密文进行处理,结果仍然是加密的,即直接处理密文,其结果与明文相同。从代数的角度讲,即同态性。

在代数中,同态包括加法、乘法、减法和除法四种。如果同时满足加法同态和乘同态,则表示代数同态。同时满足四个同态称为算术同态。

同态加密最早是1978年,由Ron Rivest、Leonard Adleman和Michael L德图佐斯提出,但直到2009年,第一个“全同态”算法,才被克雷格(Craig Gentry)证明。

常见的算法中,Paillier算法和Benaloh算法仅满足加法同态,RSA算法和ElGamal算法只满足乘法同态的算法。而Gentry算法则是全同态的。

云时代同态加密的重要性非常显着。它真的从根本上解决问题,当数据和业务保密委托给第三方,如各种云计算应用。目前,从安全角度来看,用户不敢将敏感信息直接放在第三方云上进行处理。如果您有一种更实用的同态加密技术,那么您可以放心地使用各种云服务。

2、函数加密

同态加密保护的是数据本身,而函数加密顾名思义保护的是处理函数本身,即让第三方看不到处理过程的前提下,对数据进行处理。

函数加密的方法是:任何人可以使用公钥PK对明文m进行加密得到密文Enc(m),密钥的持有者对某个函数 F 颁发一个KEY, 任何拥有KEY和密文Enc(m)的一方,都可以计算F(m), 但是除了F(m)外不能获得关于m的任何信息。

·常见加密算法解析

1、对称加密算法

解读“高大上”的加密算法

 

2、非对称加密算法

解读“高大上”的加密算法

 

3、散列算法

解读“高大上”的加密算法

 



Tags:加密 算法   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
·什么是加密算法?它的应用领域和应用地位是什么?算法加密是目前信息互联行业前后端开发必须应用的算法,它的目的就是是信息在传输和解读上的安全性提高,让设定的群体...【详细内容】
2019-07-26  Tags: 加密 算法  点击:(336)  评论:(0)  加入收藏
▌简易百科推荐
前言Kafka 中有很多延时操作,比如对于耗时的网络请求(比如 Produce 是等待 ISR 副本复制成功)会被封装成 DelayOperation 进行延迟处理操作,防止阻塞 Kafka请求处理线程。Kafka...【详细内容】
2021-12-27  Java技术那些事    Tags:时间轮   点击:(1)  评论:(0)  加入收藏
博雯 发自 凹非寺量子位 报道 | 公众号 QbitAI在炼丹过程中,为了减少训练所需资源,MLer有时会将大型复杂的大模型“蒸馏”为较小的模型,同时还要保证与压缩前相当的结果。这就...【详细内容】
2021-12-24  量子位    Tags:蒸馏法   点击:(11)  评论:(0)  加入收藏
分稀疏重建和稠密重建两类:稀疏重建:使用RGB相机SLAMOrb-slam,Orb-slam2,orb-slam3:工程地址在: http://webdiis.unizar.es/~raulmur/orbslam/ DSO(Direct Sparse Odometry)因为...【详细内容】
2021-12-23  老师明明可以靠颜值    Tags:算法   点击:(7)  评论:(0)  加入收藏
1. 基本概念希尔排序又叫递减增量排序算法,它是在直接插入排序算法的基础上进行改进而来的,综合来说它的效率肯定是要高于直接插入排序算法的;希尔排序是一种不稳定的排序算法...【详细内容】
2021-12-22  青石野草    Tags:希尔排序   点击:(6)  评论:(0)  加入收藏
ROP是一种技巧,我们对execve函数进行拼凑来进行system /bin/sh。栈迁移的特征是溢出0x10个字符,在本次getshell中,还碰到了如何利用printf函数来进行canary的泄露。ROP+栈迁移...【详细内容】
2021-12-15  星云博创    Tags:栈迁移   点击:(22)  评论:(0)  加入收藏
一、什么是冒泡排序1.1、文字描述冒泡排序是一种简单的排序算法。它重复地走访要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地...【详细内容】
2021-12-15    晓掌柜丶韶华  Tags:排序算法   点击:(16)  评论:(0)  加入收藏
在了解golang的map之前,我们需要了解哈希这个概念。哈希表,又称散列表(Hash table),是根据键(key)而直接访问在内存储存位置的数据结构。也就是说,它通过计算出一个键值的函数,将...【详细内容】
2021-12-07  一棵梧桐木    Tags:哈希表   点击:(14)  评论:(0)  加入收藏
前面文章在谈论分布式唯一ID生成的时候,有提到雪花算法,这一次,我们详细点讲解,只讲它。SnowFlake算法据国家大气研究中心的查尔斯·奈特称,一般的雪花大约由10^19个水分子...【详细内容】
2021-11-17  小心程序猿QAQ    Tags:雪花算法   点击:(24)  评论:(0)  加入收藏
导读:在大数据时代,对复杂数据结构中的各数据项进行有效的排序和查找的能力非常重要,因为很多现代算法都需要用到它。在为数据恰当选择排序和查找策略时,需要根据数据的规模和类型进行判断。尽管不同策略最终得到的结果完...【详细内容】
2021-11-04  华章科技    Tags:排序算法   点击:(40)  评论:(0)  加入收藏
这是我在网上找的资源的一个总结,会先给出一个我看了觉得还行的关于算法的讲解,再配上实现的代码: Original author: Bill_Hoo Original Address: http://blog.sina.com.cn/s/bl...【详细内容】
2021-11-04  有AI野心的电工和码农    Tags: KMP算法   点击:(36)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条