php rsa
<?php $res=openssl_pkey_new(); // Get private key
$ok = openssl_pkey_export($res, $privkey); // Get public key
$pubkey=openssl_pkey_get_details($res);
$pubkey=$pubkey["key"]; //var_dump($privkey, $pubkey);
var_dump($ok); $data = '我用iphone手机!'; //可以用base64_decode用于url传输, 或者用 bin2hex($out); /*
//公钥加密给私钥解密
openssl_public_encrypt($data, $encrypted, $pubkey);
var_dump('公钥加密', $encrypted);
//私钥解密
openssl_private_decrypt($encrypted, $decrypted, $privkey);
var_dump($decrypted); //私钥加密,给公钥解密
openssl_private_encrypt($data, $encrypted, $privkey);
var_dump('私钥加密', $encrypted);
//给公钥解密
openssl_public_decrypt($encrypted, $decryptedPub, $pubkey);
var_dump($decryptedPub);
*/ //效验方式 //$privkey = openssl_pkey_get_private($privkey); //如果是不信任的字符串,可以通过此函数验证,通过返回密钥
openssl_sign($data, $signature, $privkey, OPENSSL_ALGO_SHA256);
//echo bin2hex($signature); //save for later
//file_put_contents('private_key.pem', $private_key_pem);
//file_put_contents('public_key.pem', $public_key_pem);
//file_put_contents('signature.dat', $signature); //verify signature
//hex2bin($signature);
//$pubkey = openssl_pkey_get_public($pubkey); //如果是不信任的字符串,可以通过此函数验证,通过返回密钥
$r = openssl_verify($data, $signature, $pubkey, "sha256WithRSAEncryption");
var_dump($signature, $r);
如果公钥、私钥生成失败,则是openssl.cnf路径配置失败。
php rsa的更多相关文章
- “不给力啊,老湿!”:RSA加密与破解
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 加密和解密是自古就有技术了.经常看到侦探电影的桥段,勇敢又机智的主角,拿着一长串毫 ...
- .NET 对接JAVA 使用Modulus,Exponent RSA 加密
最近有一个工作是需要把数据用RSA发送给Java 虽然一开始标准公钥 net和Java RSA填充的一些算法不一样 但是后来这个坑也补的差不多了 具体可以参考 http://www.cnblogs. ...
- [C#] 简单的 Helper 封装 -- SecurityHelper 安全助手:封装加密算法(MD5、SHA、HMAC、DES、RSA)
using System; using System.IO; using System.Security.Cryptography; using System.Text; namespace Wen. ...
- PHP的学习--RSA加密解密
PHP服务端与客户端交互或者提供开放API时,通常需要对敏感的数据进行加密,这时候rsa非对称加密就能派上用处了. 举个通俗易懂的例子,假设我们再登录一个网站,发送账号和密码,请求被拦截了. 密码没加 ...
- RSA非对称加密,使用OpenSSL生成证书,iOS加密,java解密
最近换了一份工作,工作了大概一个多月了吧.差不多得有两个月没有更新博客了吧.在新公司自己写了一个iOS的比较通用的可以架构一个中型应用的不算是框架的一个结构,并已经投入使用.哈哈 说说文章标题的相关的 ...
- RSA算法
RSA.h #ifndef _RSA_H #define _RSA_H #include<stdio.h> #include<iostream> #include<mat ...
- 信息安全-5:RSA算法详解(已编程实现)[原创]
转发注明出处:http://www.cnblogs.com/0zcl/p/6120389.html 背景介绍 1976年以前,所有的加密方法都是同一种模式: (1)甲方选择某一种加密规则,对信息进行加 ...
- .net(c#)版RSA加密算法,拿走不谢
今天有同学对接一个支付平台,涉及到RSA的签名和验签.由于对方是java的sdk,翻成c#语言时,搞了半天也没搞定.网上搜的东西都是各种copy还不解决问题. 碰巧,我之前对接过连连银通的网银支付和代 ...
- 4、DES和RSA简介
DES是分组加密算法,速度快,使用单一密钥,加密解密都使用同一个密钥,一般用于大量数据加密,目前处于半淘汰状态. RSA算法是流式加密算法,速度慢,但是使用成对的密钥,加密解密使用不同的密钥,有利于保 ...
- Android数据加密之Rsa加密
前言: 最近无意中和同事交流数据安全传输的问题,想起自己曾经使用过的Rsa非对称加密算法,闲下来总结一下. 其他几种加密方式: Android数据加密之Rsa加密 Android数据加密之Aes加密 ...
随机推荐
- MySql 外键重名问题
在使用mysql workbench 来设计数据库模型时可能一不注意就会出现外键约束重名的情况,并在执行sql语句是会报这样的错误: Error 1022 - Can't write; duplica ...
- @RequestParam @PathVariable
1.Request参数 在访问各种各样网站时,经常会发现网站的URL的最后一部分形如:?xxxx=yyyy&zzzz=wwww.这就是HTTP协议中的Request参数,它有什么用呢?先来看一 ...
- - configuration.module has an unknown property 'loader' 问题解决
错误提示: Invalid configuration object. Webpack has been initialised using a configuration object that d ...
- XML CDATA识别“<,>”
http://www.w3school.com.cn/xml/xml_cdata.asp 术语 CDATA 指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Dat ...
- string函数详解(配案例)
多说无益上码~ #include<iostream> #include<algorithm> #include<cmath> #include<cstring ...
- 66.ajax--ajax请求多个url解决办法
ajax请求多个url解决办法 以下四种方法是我找的,我也进行实践过. 测试中有四个请求接口,原本需要13S,用了第三种方法缩减到7S,但是仍不能达到2S以内. 所以仅供参考,待我找到能缩减到2S以内 ...
- java Design Patterns
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
- 爬虫 -----爬取百度时事热点和url
使用scrapy top.py 爬虫主要工作 pipelines.py 数据保存 main.py 执行脚本 items.py 初始化item
- WCF 基础框架
WCF 基础框架: 1,契约:契约书一语个服务公共接口的一部分,一个服务的契约定义了服务端公开的方法,使用的传递协议,可访问的地址,传输的消息格式等内容,主要包括数据契约,消息契约,服务契约等. 2, ...
- mysql服务启动不了 More help is available by typing NET HELPMSG 3534
解决方法:参考 注意:如果安装MySQL的时候改了端口(如从3306改成3307),则my.ini配置文件的端口也需要相应的修改