精华内容
下载资源
问答
  • OpenSSL对称算法、哈希校验、非对称算法、证书管理、SSL安全
  • 非对称算法采用了两个密钥加密,一般是公钥加密,私钥解密。另外加密速度对称算法比非对称算法稍微快一些。 综上,对称算法适合安全性较低的场景,非对称适合对安全性要求较高的场景 对称算法: 非对称算法: .....

    简单来说,对称算法就是整个加密解密过程使用同一个密钥,并且可以密文-密钥反推出原文;而非对称算法采用了两个密钥加密,一般是1的公钥加密,1的私钥解密,所以非对称算法加密的数据可以放心在公网传播。另外加密速度对称算法比非对称算法稍微快一些,但是对称算法要维护的密钥太多,难管理,非对称算法则不存在这个问题。
    综上,对称算法适合安全性较低的场景,非对称适合对安全性要求较高的场景
    常见的对称算法:
    常见的非对称算法:
    在这里插入图片描述

    展开全文
  • 非对称算法 Hash算法 密码键盘中常用的名词解释 说明:对称算法和非对称算法的区别:就是加解密的密钥是不是一样的,一样的就是对称的,不一样的就是非对称的。 对称算法(分组算法) 分组算法:举个例子 对于...

    目录

    对称算法(分组算法)

    非对称算法

    Hash算法

    密码键盘中的常用名称解释

    Pinblock:

    ANSI9.8 算法


    解释:pin block,顾名思义就是pin块,密码块的意思,实际上是对pin原文做一定转换后的结果

    说明:对称算法和非对称算法的区别:就是加解密的密钥是不是一样的,一样的就是对称的,不一样的就是非对称的。

    对称算法(分组算法)

       分组算法:举个例子 对于des都是明文8个字节,密文也是8个字节,分组的意思就是对每8个字节进行加密获得的密文进行结合。解密就是逆向过程。

       SM4(国密):密钥16字节,密文16字节,明文是16字节的整数 倍

       DES:密钥8字节,密文8字节整数倍,明文是8字节的整数倍

       3DES(国际):密钥可以是16字节(key1+key2+key1),也可以是24字节(key1+key2+key3)。

       3DES加密过程为:C=Ek3(Dk2(Ek1(M)))

       3DES解密过程为:M=Dk1(EK2(Dk3(C)))。

    非对称算法

    目前应用中非对称算法由两种RSA(国际)和SM2(国密).

    算法

    参数

    说明

    RSA

    e

    目前几个行都是固定为:0x010001(65537)

    密钥长度(bit)

    能加密的密钥长度/8,数据长度最大为1024=>128  2048=>512  1152=>144。

     

    n(也有叫moudle)

    128字节,由n,e 密钥长度可以计算出公钥

    d

    128字节,由e,d,密钥长度可以计算出私钥。

    CRT(中国剩余定律)

    算法有利于提高RSA的运算速度。

    在CRT进行私钥解密的时候需要更多的参数P,Q,DP,DQ INVERQ.而非CRT算法只需要D即可。

    填充方式

    所谓的填充规则是为了数据更加安全在RSA算法进行的基础上对原始数据按照一定的规则进行组合(像密码键盘的pinblock)

    • nopadding(最原始的):就是加密数据前补0x00。0000000.。。。|M
    • KPCS#1:填充规则:EM=0X00||T||PS||0X00||M

    第一个0是先导零,要来保证正整数;T是凑齐方法,可以是0,1,或者2;(T=0,代表ps必须是0x00,T=1 代表用0xFF进行填充,T=2 代表用不为0的随机数进行填充)PS就是填充数据:第二个0是分隔符;M就是原始数据。

    PS:国密芯片:u192和u256.国密芯片是是支持u192和u256的。在u192中rsa的所有传入的参数是倒序的例如==》 e=0x00010001那么在192芯片导入e的时候就要传入4字节  01 00 01 00。然后192和256是支持非CRT算法的。  

     

    SM2

    国密推荐256位曲线参数

     

    p=FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF 00000000 FFFFFFFF FFFFFFFF

    a=FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF 00000000 FFFFFFFF FFFFFFFC

    b=28E9FA9E 9D9F5E34 4D5A9E4B CF6509A7 F39789F5 15AB8F92 DDBCBD41 4D940E93

     

    n

    私钥(32个字节)

    gx、gy(公钥)

    GX,GY各32个字节,公钥就是64个字节

    密文组成(C1+C2+C3),新的标准是(C1+C3+C2)。

     

    邮储用的C1C3C2,其他地方农信是C1C2C3

     

    C1:64字节的随机数

    C2:真正的密文,跟明文的长度是一样的

    C3:是杂凑值(32字节)。通过SM3(摘要算法)进行运算得出的。

     

    Hash算法

       SM3(MD5,SHA256)就是算个hash值。

    密码键盘中的常用名称解释

    工作密钥:密码键盘的主要工作就是获取让用户输入密码,那么密码不能明文进行传输的,要通过一个密钥进行加密,那么这个密钥就是 工作密钥,为最终密码键盘的工作而服务的密钥就叫工作密钥。

    主密钥:用来加解密工作密钥的密钥就是主要密钥,即主密钥。

    保护密钥:用来加解密主密钥的密钥就是保护密钥。   

      保护密钥--------->主密钥--------------->工作密钥。                                              

    校验值:为了检验解出来的密钥是否正确的。约定:用密钥对8/16个字节的0x00进行加密得到的值。

     

    Pinblock:

    用卡号+客户输入的密码按照一定的规则进行组合(异或运算)作为明文。

    解释:pin block,顾名思义就是pin块,密码块的意思,实际上是对pin原文做一定转换后的结果,望采纳。

    ANSI9.8 算法

    (常用默认的算法) -- 带主账号信息(倒数第二位开始向前取12位)
    1.格式化主账号(其实就是补充到对应算法能计算的字节数,前面补0x00,SM4补到16个字节,des和3des补到 8个字节
    2.格式化PIN(前面密码位数,然后补到对应算法能计算的字节数,后面补0xFF.
    3.格式化后的主账号与格式化后的Pin按位异或

    例子:账号:

    1234567890123456

    截取后:

    456789012345(从倒数第二位开始往前数12位)

    填充:

    des:

    0000456789012345(补足8个字节)

    sm4:

    00000000000000000000456789012345(补足16字节

    pin明文:

    123456

    填充:

    des:

    06123456FFFFFFFF(前加位数再补足8字节)

    sm4:

    06123456FFFFFFFFFFFFFFFFFFFFFFFF(前加位数再补足16字节)

    异或结果:

    des:

    0612713176FEDCBA

    sm4:

    06123456FFFFFFFFFFFFBA9876FEDCBA

    密钥明文:

    11111111111111111111111111111111

    pinblock:

    DES:

    CFBF4EC810315AF2

     

    SM4:

    1247750D89CADD4C4B2436A978E006B1

     

     

     

     

    展开全文
  • 对称算法非对称算法哈希算法区别

    千次阅读 2019-04-12 20:56:34
    常见的加密算法可以分成三类,对称加密算法非对称加密算法和Hash算法。对称加密指加密和解密使用相同密钥的加密算法。对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。假设两个用户需要使用对称...

    常见的加密算法可以分成三类,对称加密算法,非对称加密算法和Hash算法。
    对称加密
    指加密和解密使用相同密钥的加密算法。对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。假设两个用户需要使用对称加密方法加密然后交换数据,则用户最少需要2个密钥并交换使用,如果企业内用户有n个,则整个企业共需要n×(n-1) 个密钥,密钥的生成和分发将成为企业信息部门的恶梦。对称加密算法的安全性取决于加密密钥的保存情况,但要求企业中每一个持有密钥的人都保守秘密是不可能的,他们通常会有意无意的把密钥泄漏出去——如果一个用户使用的密钥被***者所获得,***者便可以读取该用户密钥加密的所有文档,如果整个企业共用一个加密密钥,那整个企业文档的保密性便无从谈起。
    常见的对称加密算法有DES、3DES、Blowfish、IDEA、RC4、RC5、RC6和AES
    非对称加密
    指加密和解密使用不同密钥的加密算法,也称为公私钥加密。假设两个用户要加密交换数据,双方交换公钥,使用时一方用对方的公钥加密,另一方即可用自己的私钥解密。如果企业中有n个用户,企业需要生成n对密钥,并分发n个公钥。由于公钥是可以公开的,用户只要保管好自己的私钥即可,因此加密密钥的分发将变得十分简单。同时,由于每个用户的私钥是唯一的,其他用户除了可以可以通过信息发送者的公钥来验证信息的来源是否真实,还可以确保发送者无法否认曾发送过该信息。非对称加密的缺点是加解密速度要远远慢于对称加密,在某些极端情况下,甚至能比非对称加密慢上1000倍。
    常见的非对称加密算法有:RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)
    Hash算法
    Hash算法特别的地方在于它是一种单向算法,用户可以通过Hash算法对目标信息生成一段特定长度的唯一的Hash值,却不能通过这个Hash值重新获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。
    常见的Hash算法有MD2、MD4、MD5、HAVAL、SHA
    加密算法的效能通常可以按照算法本身的复杂程度、密钥长度(密钥越长越安全)、加解密速度等来衡量。上述的算法中,除了DES密钥长度不够、MD2速度较慢已逐渐被淘汰外,其他算法仍在目前的加密系统产品中使用。

    转载于:https://blog.51cto.com/12148637/2378039

    展开全文
  • 一、对称算法 1. 定义 对称算法,加解密双方使用一个密钥。即加密秘钥和解密秘钥相同。 2. 分类 对称算法主要有4中加密模式: 2.1 电子密码本模式 Electronic Code Book(ECB) 这种模式是最早采用和最简单的...

    一、密码学术语

    中文 英文 中文 英文
    发送者 sender 接收者 receiver
    消息 message 窃听者 eavesdropper
    破译者 cryptanalyst 密码破译 cryptanalysis
    加密 encrypt 解密 decrypt
    明文 plaintext 密文 ciphertext
    算法 algorithm 密钥 key
    对称密码 symmetric cryptography 公钥密码 public-key cryptography
    非对称密码 asymmetric cryptography 混合密码系统 hybrid cryptosystem

     

    二、对称算法


    2.1 定义

    对称算法,加解密双方使用一个密钥。即加密秘钥和解密秘钥相同。

    对称加密又分为:分组加密和流加密

    2.2 分组加密

    分组加密是每次只能处理特定长度的一块数据的一类密码算法,这里的“一块”就称为分组(block)。一个分组的比特数就称为分组长度(block lenght)。

    常见的分组算法有:DES、3DES、DESX、Blowfish、IDEA、RC2、RC5、RC6和AES,以及中国的SSF33、SM1、SM4。

    分组加密又可以根据其迭代模式分为ECB,CBC,OFB,CFB,CTR。

    这里我们只介绍常用的两种算法:DES和3DES

    2.2.1 DES算法

    DES是一种将64比特的明文加密成64比特的密文的对称密码算法,它的密钥长度是56比特。尽管从规格上来说,DES的密钥长度是64比特,但由于每个7比特会设置一个用于错误检查的比特,因此实质上其密钥长度是56比特。

    (DES已经能够被暴力破解,因此现在不应该再使用DES了。)

    2.2.2 3DES算法

    三重DES是为了增加DES的强度,将DES重复3次所得到的一种密码算法,通常缩写为3DES,当三重DES中所有的密钥都相同时,三重DES就等同于普通的DES了。这是因为在两步加密、解密之后,得到的就是最初的明文。因此,以前用DES加密的密文,就可以通过这种方式用三重DES来进行解密,也就是说三重DES对DES具备向下兼容性。
      按照使用的密钥,分为DES-EDE2和DES-EDE3。如果密钥1和密钥3使用相同的密钥,而密钥2使用不同的密钥(也就是只使用两个DES密钥),这种三重就称为DES-EDE2。密钥1、密钥2、密钥3全部使用不同的比特序列的三重DES称为DES-EDE3。

    2.3 迭代模式

    分组密码算法只能加密固定长度的分组,但是我们需要加密的明文长度可能会超过分组密码的分组长度,这时就需要对分组密码算法进行迭代,以便将一段很长的明文全部加密。而迭代的方法就称为分组密码的迭代模式(mode)。

    2.1 电子密码本模式 Electronic Code Book(ECB)

    这种模式是最早采用和最简单的模式,它将加密的数据分成若干组,每组的大小跟加密密钥长度相同,然后每组都用相同的密钥进行加密。
    其缺点是:电子编码薄模式用一个密钥加密消息的所有块,如果原消息中重复明文块,则加密消息中的相应密文块也会重复,因此,电子编码薄模式适于加密小消息。

    2.2 加密块链模式 Cipher Block Chaining(CBC)

    CBC 模式的加密首先也是将明文分成固定长度的块,然后将前面一个加密块输出的密文与下一个要加密的明文块进行异或操作,将计算结果再用密钥进行加密得到密文。
    第一明文块加密的时候,因为前面没有加密的密文,所以需要一个初始化向量。跟 ECB方式不一样,通过连接关系,使得密文跟明文不再是一一对应的关系,破解起来更困难,
    而且克服了只要简单调换密文块可能达到目的的攻击。

    2.3 加密反馈模式 Cipher Feedback Mode(CFB)

    面向字符的应用程序的加密要使用流加密法,可以使用加密反馈模式。在此模式下,数据用更小的单元加密,如可以是 8 位,这个长度小于定义的块长(通常是 64 位)。其加密步骤是:
    a) 使用 64 位的初始化向量。初始化向量放在移位寄存器中,在第一步加密,产生相应的 64 位初始化密文;
    b) 始化向量最左边的 8 位与明文前 8 位进行异或运算,产生密文第一部分(假设为 c),然后将 c 传输到接收方;
    c) 向量的位(即初始化向量所在的移位寄存器内容)左移 8 位,使移位寄存器最右边的 8 位为不可预测的数据,在其中填入 c 的内容;
    d) 第 1-3 步,直到加密所有的明文单元。
    解密过程相反

    2.4 输出反馈模式 Output Feedback Mode(OFB)

    输出反馈模式与 CFB 相似,惟一差别是, CFB 中密文填入加密过程下一阶段,而
    在 OFB 中,初始化向量加密过程的输入填入加密过程下一阶段

    三、非对称算法

    1. 定义

    非对称算法也叫公钥算法,在公钥密码系统中,加密和解密使用的是不同的密钥,这两个密钥之间存在着相互依存关系:即用其中任一个密钥加密的信息只能用另一个密钥进行解密。

    这使得通信双方无需事先交换密钥就可进行保密通信。其中加密密钥和算法是对外公开的,人人都可以通过这个密钥加密文件然后发给收信者,这个加密密钥又称为公钥;

    而收信者收到加密文件后,它可以使用他的解密密钥解密,这个密钥是由他自己私人掌管的,并不需要分发,因此又成称为私钥,这就解决了密钥分发的问题。

    2. 分类

    主要的公钥算法有: RSA、 DSA、 DH 和 ECC。

    2.1 RSA算法

    当前最著名、应用最广泛的公钥系统 RSA 是在 1978 年,由美国麻省理工学院(MIT)的Rivest、 Shamir 和 Adleman 在题为《获得数字签名和公开钥密码系统的方法》的论文中提出的。

    它是一个基于数论的非对称(公开钥)密码体制,是一种分组密码体制。其名称来自于三个发明者的姓名首字母。 它的安全性是基于大整数素因子分解的困难性,而大整数因子分解问题是数学上的著名难题,

    至今没有有效的方法予以解决,因此可以确保 RSA 算法的安全性。

    RSA 系统是公钥系统的最具有典型意义的方法,大多数使用公钥密码进行加密和数字签名的产品和标准使用的都是 RSA 算法RSA 算法是第一个既能用于数据加密也能用于数字签名的算法,

    因此它为公用网络上信息的加密和鉴别提供了一种基本的方法。它通常是先生成一对 RSA 密钥,其中之一是保密密钥,由用户保存;

    另一个为公开密钥,可对外公开,甚至可在网络服务器中注册,人们用公钥加密文件发送给个人,个人就可以用私钥解密接受。

    为提高保密强度, RSA 密钥至少为 500 位长,一般推荐使用 1024/2048 位。
     

    展开全文
  • 声明:转自 信息安全——对称算法与非对称算法信息化时代的飞速发展,给人们的生活带来了翻天覆地的变化。人们在享受网络数据便利交互的同时,也面临着一个重大的问题——信息安全.从开始的邮件沟通、QQ聊天,演变到...
  • 对称算法与非对称算法综合起来使用如下图: 发送者拿有公钥,接收者拿有私钥 1》发送端: 首先发送端生成随机对称密钥,用对称密钥将数据加密后放入数字信封中,然后用公钥将随便对称密钥打包,放入数字信封中...
  • 非对称算法----RSA算法

    2017-06-07 10:56:35
    对称加密算法在加密和解密时使用的是同一个秘钥;...非对称算法 RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的; DSA(Digital Signature Algorithm):数字签名算法
  • 基于非对称算法ECC的WSN密钥管理系统,方巍,张晓莹,无线传感器网络的开放性与恶劣性,使我们既要关注硬件水平的提高,也要加强数据加密算法方面的研究。本文提出了一种基于非对称算
  • 非对称算法-密钥磋商算法-DH (2012-01-05 13:37:16) http://blog.sina.com.cn/s/blog_55a9111c0100ystz.html http://blog.sina.com.cn/s/blog_55a9111c0100ystz.html ...
  • 信息化时代的飞速发展,给人们的...信息加密体系也从早先的对称加密算法,升级到后来的共享秘钥加密体系,再到非对称加密体系。我们大多数人得益于加密算法,却不知其所以然,甚至不知其然。  下面谈一下我对加密的理
  •  国密SM2是非对称密码算法,是基于ECC算法的非对称算法。SM2算法标准公布于:http://www.oscca.gov.cn/News/201012/News_1197.htm,有兴趣的可下载学习。  国密SM2算法标准包括4个部分,第1部分为
  • 笔者在前面几篇文章中,一口气分别介绍了【对称加密算法、非对称加密算法、信息摘要算法】,从中读者能大致了解到... 为什么数字签名采用非对称算法和信息摘要算法? 数字签名的操作步骤是什么? 消息验签的操作...
  • C#下对称算法、非对称算法生成秘钥

    千次阅读 2016-07-14 11:00:15
    一个简单的帮助类,因为后面的加密、解密算法要用到,所以这里单独写下 using System.Security.Cryptography; public class KeyGenerator ... /// 随机生成秘钥(对称算法) /// /// 秘钥(base64格式) /// iv向
  • 两种非对称算法原理:RSA和DH

    千次阅读 2016-11-04 11:51:40
    http://blog.chinaunix.net/uid-7550780-id-2611984.html http://blog.chinaunix.net/uid-7550780-id-2611984.html ...两种非对称算法原理:RSA和DH ...非对称算法RSA和DH可以解决密钥的传输问题(当然,它们的作
  • 建议116:避免用非对称算法加密文件 MD5值或者说HASH值是一种不可逆的算法。如果需要从密文还原成明文,那么就需要对称和非对称这两类可逆算法了。 对称算法示意图: 在对称算法中,首先需要发送方和接收方协定...
  • 关于非对称算法,你只要知道下面这些就行了,密钥是一对,一个叫公钥,一个叫私钥,前者公开,后者保密。假设你有一对公私钥,给你一串数据,你可以用私钥加密,然后把密文和公钥都放出去,别人可以用这个公钥解密。...
  • 转载请注明出处 ... 作者:小马 ...这几个概念在金融电子支付领域用得比较多,我忽然觉得把它们串起来一起讲,层层引入,可能更好理解一些。...一非对称算法 ...关于非对称算法,你只要知
  • 密钥分为两种:对称密钥与非对称密钥 对称密钥加密,又称私钥加密,即信息的发送方和接收方用一个密钥去加密和解密数据。它的最大优势是加/解密速度快,适合于对大数据量进行加密,但密钥管理困难。 非对称密钥...
  • 非对称算法解释

    2015-06-02 10:09:25
    私钥和公钥是成对儿出现的,只有相匹配的私钥和公钥才能才能成功解密,公钥是公开的因此只有使用唯一的私钥加密公钥再解密才能得到固定的信息。
  • RSA加密算法,著名的非对称加密算法之一。
  • 非对称式密码学:它需要两个密钥,一个是公开密钥,另一个是私有密钥;一个用作加密,另一个则用作解密。使用其中一个密钥把明文加密后所得的密文,只能用相对应的另一个密钥才能解密得到原本的明文;甚至连最初用来...
  • 建议116:避免用非对称算法加密文件 MD5值或者说HASH值是一种不可逆的算法。如果需要从密文还原成明文,那么就需要对称和非对称这两类可逆算法了。 对称算法示意图: 在对称算法中,首先需要发送方和接收方协定...
  • RSA是什么? RSA算法是现今使用最广泛的公钥密码算法,也是号称世界上最...公钥密码:加密和解密使用不同的密码的方式,因此公钥密码通常也称为非对称密码。 RSA加密过程 RSA的加密过程可以使用一个通式来表达:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,477
精华内容 3,790
关键字:

非对称算法