php关闭openssl,php openssl

openssl简介

OpenSSL是一套用于SSL/TLS协议的加密工具

其作用有:

1.生成私有密钥.

2.生成证书,即数字签名证书,它包含一个公有密钥,可以用来单向的加密和解密数据.即,使用公钥加密的数据,只能使用 私有密钥解密.使用私钥加密的数据,可以使用公钥来解密.

那SSL/TLS协议又是什么?

SSL/TLS协议的基本思路是采用公钥加密法,也就是说,客户端先向服务器端索要公钥,然后用公钥加密信息,服务器收到密文后,用自己的私钥解密。(引用文章地址:http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html )

这里还涉及到加密的一些基础知识:对称加密和非对称加密。

对称加密:发送者和接受者使用同一个密钥,发送者使用密匙加密了文件,接收者使用同样的密匙解密,获取信息。常见的对称加密算法有:des/aes/3des.

非对称加密:使用一对相对的密匙,分为公匙和私匙,私匙自己安全保存,而将公匙公开。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密;如果用私钥对数据进行加密,那么只有用对应的公钥才能解密。发送数据前只需要使用接收方的公匙加密就行了。常见的非对称加密算法有RSA/DSA

之前常用的MD5加密算法是非对称,不可逆的加密。

PHP的openssl扩展

wamp是默认开启openssl的,在linux系统下可能需要编译安装扩展。

一些常用函数:

1、string openssl_encrypt ( string $data , string $method , string $password)

其中$data为其要加密的数据,$method是加密要使用的方法,$password是要使用的密匙,函数返回加密后的数据;

$method列表可以使用openssl_get_cipher_methods()来获取。

2、openssl_public_encrypt(string $data , string &$crypted , mixed $key [, int $padding = OPENSSL_PKCS1_PADDING ] )

使用公匙加密数据,其中$data是要加密的数据;$crypted是一个引用变量,加密后的数据会被放入这个变量中;$key是要传入的公匙数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值