美文网首页
PHP实现非对称加密

PHP实现非对称加密

作者: 星月落 | 来源:发表于2022-01-04 22:02 被阅读0次

内容来源(公众号:PHP版WEB项目)对称加密算法在加密和解密时使用的是同一个密钥。与对称加密算法不同,非对称加密算法需要两个密钥——公开密钥(public key,简称公钥)和私有密钥(private key,简称私钥)进行加密和解密。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。

在非对称加密中使用的主要算法有RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)等。RSA是目前最有影响力的公钥加密算法之一,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO组织推荐为公钥数据加密标准。

#生成私钥

openssl genrsa -out rsa_private_key.pem 1024

#生成公钥

openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem 

在PHP中用RSA进行加密解密如下。

<?php$private_key_file ="rsa_private_key.pem";$public_key_file ="rsa_public_key.pem";$data ="Hello World";if(file_exists($private_key_file)) {    $private_key = file_get_contents($private_key_file); }else{die('private key not exists');}if(file_exists($public_key_file)) {    $public_key = file_get_contents($public_key_file); }else{die('public key not exists');}$encrypted = $decrypted ="";openssl_private_encrypt($data, $encrypted, $private_key);//使用私钥加密数据openssl_public_decrypt($encrypted, $decrypted, $public_key);//使用公钥界面数据echo$decrypted;$encrypted = $decrypted ="";openssl_public_encrypt($data, $encrypted, $public_key);//使用公钥进行加密openssl_private_decrypt($data, $decrypted, $private_key);//使用私钥进行加密echo$decrypted;

相关文章

  • php实现非对称加密

    使用非对称加密主要是借助openssl的公钥和私钥,用公钥加密私钥解密,或者私钥加密公钥解密。 1.安装opens...

  • PHP实现非对称加密

    内容来源(公众号:PHP基础入门教程)对称加密算法在加密和解密时使用的是同一个密钥。与对称加密算法不同,非对称加密...

  • RSA加密

    RSA加密为非对称加密实现 对称加密:加密解密使用同一个算法 非对称加密:加密和解密使用不同算法 rsa加密原理 ...

  • 加密、解密和签名、验签

    1、前言 PHP加密方式分为单项散列加密,对称加密,非对称加密这几类。像常用的MD5、hash、crypt、sha...

  • day12 比特币的技术原理

    比特币的技术原理 去中心化·如何实现 非对称加密、分布式存储非对称加密:加密解密的时候,使用不同密钥的加密算法。 ...

  • PHP的几种加密算法

    前言 PHP加密方式分为单项散列加密,对称加密,非对称加密这几类。像常用的MD5、hash、crypt、sha1这...

  • golang实现RSA加密解密

    非对称加密示意图: 在此可以看到,非对称加密是通过两个密钥(公钥-私钥)来实现对数据的加密和解密的。公钥用于加密,...

  • 第四篇:非对称加密及RSA加密算法

    目录一、非对称加密 1、什么是非对称加密? 2、对称加密的工作过程 3、非对称加密的优点 4、非对称加密的不足二、...

  • 2019-12-20

    RSA非对称加密技术(JAVA版实现加解密处理)介绍 非对称的加密技术就是指加密过程是不可逆,不能通过密文直...

  • OpenSSL

    openssl 功能 openssl可以实现:秘钥证书管理、对称加密和非对称加密 。 加密命令 对称加密算法Ope...

网友评论

      本文标题:PHP实现非对称加密

      本文链接:https://www.haomeiwen.com/subject/gupccrtx.html