非对称加密 订阅
对称加密算法在加密和解密时使用的是同一个秘钥;而非对称加密算法需要两个密钥来进行加密和解密,这两个密钥是公开密钥(public key,简称公钥)和私有密钥(private key,简称私钥)。 展开全文
对称加密算法在加密和解密时使用的是同一个秘钥;而非对称加密算法需要两个密钥来进行加密和解密,这两个密钥是公开密钥(public key,简称公钥)和私有密钥(private key,简称私钥)。
信息
密    钥
公钥、私钥
外文名
Asymmetric encryption
中文名
非对称加密
典型算法
RSA算法
非对称加密定义
1976年,美国学者Dime和Henman为解决信息公开传送和密钥管理问题,提出一种新的密钥交换协议,允许在不安全的媒体上的通讯双方交换信息,安全地达成一致的密钥,这就是“公开密钥系统”。与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。数据的加密和解密过程是通过密码体制和密钥来控制的。密码体制的安全性依赖于密钥的安全性,现代密码学不追求加密算法的保密性,而是追求加密算法的完备,即:使攻击者在不知道密钥的情况下,没有办法从算法找到突破口。根据加解密算法所使用的密钥是否相同,或能否由加(解)密密钥简单地求得解(加)密密钥。密码体制可分为对称密码体制和非对称密码体制。非对称密码体制也叫公钥加密技术,该技术是针对私钥密码体制(对称加密算法)的缺陷被提出来的。与对称密码体制不同,公钥加密系统中,加密和解密是相对独立的,加密和解密会使用两把不同的密钥,加密密钥(公开密钥)向公众公开,谁都可以使用,解密密钥(秘密密钥)只有解密人自己知道,非法使用者根据公开的加密密钥无法推算出解密密钥,这样就大大加强了信息保护的力度。公钥密码体制不仅解决了密钥分配的问题,它还为签名和认证提供了手段。非对称密码算法有很多,其中比较典型的是RSA算法,它的数学原理是大素数的分解。 [1] 
收起全文
精华内容
下载资源
问答
  • 非对称加密

    2019-03-12 14:18:49
    非对称加密算法是一种密钥的保密方法。 非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;...

    对称加密算法是一种密钥的保密方法。

    非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。

    另一方面,甲方可以使用乙方的公钥对机密信息进行签名后再发送给乙方;甲方再用自己的私钥对乙方发送回来的数据进行验签。

    甲方只能用其专用密钥解密由其公用密钥加密后的任何信息。 非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要。

    非对称密码体制的特点:算法强度复杂、安全性依赖于算法与密钥但是由于其算法复杂,而使得加密解密速度没有对称加密解密的速度快。对称密码体制中只有一种密钥,并且是非公开的,如果要解密就得让对方知道密钥。所以保证其安全性就是保证密钥的安全,而非对称密钥体制有两种密钥,其中一个是公开的,这样就可以不需要像对称密码那样传输对方的密钥了。这样安全性就大了很多。

    以上是百度百科的官方的介绍的,嘻嘻,抄袭一下,转载自写出处,嘻嘻,九零后皮一下

    言归正传我还是贴代码吧,

     

     

    <?php 

        /**
         * Mr.z
         * 设置非对称加密的文件
         * 2019年3月12日11:35:52
         */

        class Password{

            //获取自己的私钥
            public function setupPrivKey()
            {
                $privKey = file_get_contents('pri.key');
                return $privKey;
            }


            //获取对方的公钥
            public function setupPubKey()
            {
                $pubKey = file_get_contents('pub.key');
                return $pubKey;
            }


            //计算加密的数据
            public function encryptionMethod($content = ''){

                $encrypt_data = '';
                openssl_public_encrypt($content, $encrypt_data,$this->setupPubKey());
                $encrypt_data = base64_encode($encrypt_data);
                return  $encrypt_data;
            }


            //计算解密的数据
            public function decryptionMethod($content = ''){
                $encrypted = $content;
                $encrypted = base64_decode($content);
                $result = openssl_private_decrypt($encrypted, $decrypted, $this->setupPrivKey());
                if ($result) {
                    return $decrypted;
                }
                return null;
            }

        }


        $obj= new Password();

        $mima =  $obj->encryptionMethod('这里是一个甲方的对付的的接口');

        print_r($mima);

        echo "<br>";

        $result =  $obj->decryptionMethod($mima);

        print_r($result);

     

    这就是一个简单的非对称加密,有人说你这个加密的过程也太草率啦,没关系啦,自己补充嘛,比如加盐加密等,不准有MD5哦,因为它太短啦,不好,嘻嘻

    同样  :

            一   。我们开始走流程,第一步我们肯定要明白pri.key    pub.key    这两个文件的内容哦   , 你可以在网上的在线编译这两个文件的哦,比如我就用    http://web.chacuo.net/netrsakeypair   这个网址生成的公钥与私钥

           二   。我们可能公钥与私钥是干什么的,有什么用,自行网上看应用场景

           三   。我们用于公钥和私钥是不都是给自己用的,我们

                           date(甲方重要机密数据)               -----(乙方提供的公钥加密)----- >>              乙方获取数据使用自己的私钥解密 

                           date(乙方重要机密数据)               -----(甲方提供的公钥加密)----- >>              甲方获取数据使用自己的私钥解密 

       这个要明白自己公司的公钥是给比别人用的,私钥是给自己的解密用的(要求别人使用自己的加密的方法加密数据 ,自己才能    解密哦)

          四   。结束啦,最后强调一下 

                   非对称加密:比较对称加密而言,无需拥有同一组密钥,非对称加密是一种“信息公开的密钥交换协议”。非对称加密需要公开密钥和私有密钥两组密钥,公开密钥和私有密钥是配对起来的,

                 

    展开全文
  • 对称加密非对称加密不可逆加密算法 根据密钥类型不同可以将现代密码技术分为两类:对称加密算法(私钥密码体系)和非对称加密算法(公钥密码体系)。 1对称加密算法 原理 对称加密算法中,数据加密和解密采用的都是...

    对称加密 非对称加密 不可逆加密算法

    根据密钥类型不同可以将现代密码技术分为两类:对称加密算法(私钥密码体系)和非对称加密算法(公钥密码体系)。

    1 对称加密算法

    原理

    对称加密算法中,数据加密和解密采用的都是同一个密钥,因而其安全性依赖于所持有密钥的安全性。

    优点

    加密和解密速度快,加密强度高,且算法公开.

    缺点

    实现密钥的秘密分发困难,在大量用户的情况下密钥管理复杂,而且无法完成身份认证等功能,不便于应用在网络开放的环境中。

    特点

    算法公开、计算量小、加密速度快、加密效率高。

    著名算法

    目前最著名的对称加密算法有数据加密标准DES,但传统的DES由于只有56位的密钥,因此已经不适应当今分布式开放网络对数据加密安全性的要求。欧洲数据加密标准IDEA等,目前加密强度最高的对称加密算法是高级加密标准AES,AES提供128位密钥,128位AES的加密强度是56位DES加密强度的1021倍还多。。

    过程

    对称加密算法过程是将数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。

    不足之处是,交易双方都使用同样钥匙,安全性得不到保证。假设两个用户需要使用对称加密方法加密然后交换数据,则用户最少需要2个密钥并交换使用,如果企业内用户有n个,则整个企业共需要n×(n-1) 个密钥。

     

    2 非对称加密算法

    原理

    非对称加密算法使用两把完全不同但又是完全匹配的一对钥匙(即一把公开密钥或加密密钥和专用密钥或解密密钥)—公钥和私钥。在使用不对称加密算法加密文件时,只有使用匹配的一对公钥和私钥,才能完成对明文的加密和解密过程。加密明文时采用公钥加密,解密密文时使用私钥才能完成,而且发信方(加密者)知道收信方的公钥,只有收信方(解密者)才是唯一知道自己私钥的人。非对称加密算法的基本原理是,如果发信方想发送只有收信方才能解读的加密信息,发信方必须首先知道收信方的公钥,然后利用收信方的公钥来加密原文;收信方收到加密密文后,使用自己的私钥才能解密密文。

    优点

    非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要。

    加密和解密花费时间长、速度慢,它不适合于对文件加密而只适用于对少量数据进行加密。

     

    著名算法

     

    广泛应用的非对称加密算法有RSA算法和美国国家标准局提出的DSA。

     

    3 不可逆加密算法

    原理

         不可逆加密算法的特征是加密过程中不需要使用密钥,输入明文后由系统直接经过加密算法处理成密文,这种加密后的数据是无法被解密的,只有重新输入明文,并再次经过同样不可逆的加密算法处理,得到相同的加密密文并被系统重新识别后,才能真正解密。显然,在这类加密过程中,加密是自己,解密还得是自己,而所谓解密,实际上就是重新加一次密,所应用的“密码”也就是输入的明文。

    优点

    不可逆加密算法不存在密钥保管和分发问题,非常适合在分布式网络系统上使用。

    因加密计算复杂,工作量相当繁重,通常只在数据量有限的情形下使用,如广泛应用在计算机系统中的口令加密,利用的就是不可逆加密算法。近年来,随着计算机系统性能的不断提高,不可逆加密的应用领域正在逐渐增大。

    著名算法

    在计算机网络中应用较多不可逆加密算法的有RSA公司发明的MD5算法和由美国国家标准局建议的不可逆加密标准SHS(Secure Hash Standard:安全杂乱信息标准)等。

     

    注:

    对称加密算法、非对称加密算法和不可逆加密算法可以分别应用于数据加密、身份认证和数据安全传输。

    展开全文
  • 对称加密和非对称加密的区别

    万次阅读 多人点赞 2018-08-13 17:53:37
    非对称加密:与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。 对称加密算法: 密钥较短,破译困难,除了数据加密标准(DES),另一个对称密钥加密系统是国际数据...

    简介:

    • 对称加密: 加密和解密的秘钥使用的是同一个.
    • 非对称加密: 与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。

    对称加密算法: 密钥较短,破译困难,除了数据加密标准(DES),另一个对称密钥加密系统是国际数据加密算法(IDEA),它比DES的加密性好,且对计算机性能要求也没有那么高.

    优点:

        算法公开、计算量小、加密速度快、加密效率高

    缺点:

        在数据传送前,发送方和接收方必须商定好秘钥,然后 使双方都能保存好秘钥。其次如果一方的秘钥被泄露,那么加密信息也就不安全了。另外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的唯一秘钥,这会使得收、发双方所拥有的钥匙数量巨大,密钥管理成为双方的负担。

    常见的对称加密算法有: DES、3DES、Blowfish、IDEA、RC4、RC5、RC6 和 AES 

    非对称加密算法: 公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。

    非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。甲方只能用其专用密钥解密由其公用密钥加密后的任何信息。

    优点:

        安全

    缺点:

        速度较慢

    常见的非对称加密算法有: RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)

    Hash算法(摘要算法)

    Hash算法特别的地方在于它是一种单向算法,用户可以通过hash算法对目标信息生成一段特定长度的唯一hash值,却不能通过这个hash值重新获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。

    常见的摘要算法有: MD2、MD4、MD5、HAVAL、SHA

     

    非常感谢 qq_42281306 https://me.csdn.net/qq_42281306 朋友的指出

    展开全文
  • 1、加密 【非对称加密 RSA ,对称加密 DES 3DES AES】 -- 不明文传数据,安全性会更高  对称加密和非对称加密区别: 1、对称加密速度快,安全性没有非对称加密安全  2、非对称加密安全性更高,但是效率没有对称...

      1、加密 【非对称加密 RSA ,对称加密 DES 3DES AES】 -- 不明文传数据,安全性会更高
                  对称加密和非对称加密区别: 1、对称加密速度快,安全性没有非对称加密安全
                                       2、非对称加密安全性更高,但是效率没有对称加密快
                                       3、非对称加密加密程度有限制,(密钥长度是1024,值能加密117个字符,需要分段
                                              加密,分段解密)
             接口如何实现非对称加密: DATA

                  1、首先生成一个公钥和私钥
                      【 在linux使用openssl命令生成公钥私钥 -- 公钥和私钥是唯一匹配的 】
                      【 先生成私钥,拿着私钥生成公钥 】

                 2、把公钥给客户端程序(h5),私钥留在服务端

                 3、在客户端调用服务端的时候,使用公钥进行加密  openssl_pubic_encrypt,把加密之后的字符串传到服务端
     
                 4、服务端接受到数据之后,拿私钥进行解密  openssl_private_decrypt
     

    展开全文
  • 对称加密和非对称加密 对称加密 对称加密指的就是加密和解密使用同一个秘钥,所以叫做对称加密。对称加密只有一个秘钥,作为私钥。 常见的对称加密算法:DES,AES,3DES等等。 非对称加密 非对称加密指的是:...
  • 对称加密与非对称加密对称加密非对称加密 对称加密 1、对称加密又称公开密钥加密,加密和解密都会用到同一个密钥,如果密钥被攻击者获得,此时加密就失去了意义。常见的对称加密算法有DES、3DES、AES、Blowfish、...
  • 对称加密与非对称加密理解和非对称加密的java例子 1.对称加密:一般小于256 bit的密钥,密钥越大越安全,但是解密和加密时间越长。加密和解密都是用的相同的密钥,快速简单 2.非对称加密:有公钥和私钥,只有私钥...
  • 非对称加密,与对称加密的算法是有所不同的,非对称加密算法需要两个密钥,即公开密钥和私有密钥,非对称加密算法在加密和解密过程使用了不同的密钥,非对称密钥也称为公钥加密,在密钥对中,其中一个密钥是对外公开...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,453
精华内容 5,781
关键字:

非对称加密