学习签名signature 的使用
找到一个简单的例子,将加签 签名(发起端) 和 验签(接收端)的过程将的比较仔细,例子保留下来
import java.security.*;
public class SignatureExample {
public static void main(String[] args){
try{
byte[] info ="待签名信息".getBytes();
//产生RSA密钥对(myKeyPair)
KeyPairGenerator myKeyGen= KeyPairGenerator.getInstance("RSA");
myKeyGen.initialize(1024);
KeyPair myKeyPair = myKeyGen.generateKeyPair();
System.out.println( "得到RSA密钥对 "+myKeyPair);
//产生Signature对象,用私钥对信息(info)签名.
Signature mySig = Signature.getInstance("SHA1WithRSA"); //用指定算法产生签名对象
mySig.initSign(myKeyPair.getPrivate()); //用私钥初始化签名对象
mySig.update(info); //将待签名的数据传送给签名对象(须在初始化之后)
byte[] sigResult = mySig.sign(); //返回签名结果字节数组
System.out.println("签名后信息: "+ new String(sigResult) );
//用公钥验证签名结果
mySig.initVerify(myKeyPair.getPublic()); //使用公钥初始化签名对象,用于验证签名
mySig.update(info); //更新签名内容
boolean verify= mySig.verify(sigResult); //得到验证结果
System.out.println( "签名验证结果: " +verify);
}catch (Exception ex){ex.printStackTrace();}
}
}
学习签名signature 的使用相关推荐
- 微信 手机 网站 开发 签名 signature node (在更新中)
在进行微信手机网站开发时,第一座大山就是获取签名.下面是微信JS-SDK开发文档的内容,本文主要理清思路,开发起来,就很快了. wx.config({debug: true, // 开启调试模式,调用 ...
- java接口签名(Signature)实现方案续
一.前言 由于之前写过的一片文章 (java接口签名(Signature)实现方案 )收获了很多好评,此次来说一下另一种简单粗暴的签名方案.相对于之前的签名方案,对body.paramenter.pa ...
- 简单明了的区分C++ C语言中声明(declaration)、定义(definition)、签名(signature)的区别
无论是在C或者C++中,我们常常把声明和定义给弄混淆了,分不清楚,天真的认为这个两个东西是没有任何的区别,但是其实不以为然.下面我们来简单的阐述这两者的区别. 何为声明(declaration)? 声 ...
- 开放接口签名(Signature)实现
开放接口签名(Signature)实现方案 既然是对外开放,那么调用者一定没有我们系统的Token,就需要对调用者进行签名验证,签名验证采用主流的验证方式,采用Signature 的方式. 字段 类型 ...
- 各种签名(signature)和校验
签名的概念 目的: 为了确认某个信息确实是由某个发送方发送的,或者某个发布内容确实是由发送方发布的,任何人都不可能伪造消息,并且,发送方也不能抵赖. 方法: 对发布的信息内容,通过某种可靠的加工(比如 ...
- java 方法signature,基于微信签名signature获取(实例讲解)
微信分享的签名算法微信也写有,主要是调用接口需要使用服务器(微信官方文档是这么说的,试了下前端居然特么也可以),不过微信的access_token和jsapi_ticket是有使用次数限制的,所以还是 ...
- 微信开发之使用java获取签名signature
一.前言 微信接口调用验证最终需要用到的三个参数noncestr.timestamp.signature: 接下来将会给出获取这三个参数的详细代码 本文使用到的技术HttpClient.Json字符串 ...
- 微信开发之使用java获取签名signature(贴源码,附工程)
一.前言 微信接口调用验证最终需要用到的三个参数noncestr.timestamp.signature: 接下来将会给出获取这三个参数的详细代码 本文的环境eclipse + maven 本文使用到 ...
- java 手写签名,signature java html5+ 手写签名 源码 Develop 238万源代码下载- www.pudn.com...
文件名称: signature下载 收藏√ [ 5 4 3 2 1 ] 开发工具: Java 文件大小: 491 KB 上传时间: 2013-08-03 下载次数: 17 提 供 者: 孙晨 ...
最新文章
- 保护隐私的 Structure-from-Motion (SfM)
- ACdream1032(树形DP)
- nginx+tomcat实现Windows系统下的负载均衡搭建教程
- MPLS ×××配置
- mysql optimize 参数查看_Mysql High Performance:Optimize Setting
- 基于微型计算机系统的实时时钟设计,基于51单片机的实时时钟设计报告.doc
- mysql sql trace_SQL_TRACE及 Tkprof用法以及问题分析
- 阿里视觉AI训练营-day05-创意日-你的图像识别项目
- Github多人协作
- QT编写BarChart直方图
- input隐藏域传值
- 北漂18届三本毕业生从实习到正式工作的前端开发求职经历
- 前端杂谈: CSS 权重 (Specificity)
- OneZero第四周第一次站立会议(2016.4.11)
- 在连接至 Steam 服务器时发生了一个错误。请稍后重试。
- 聊聊HTTPS环境DNS优化:美图App请求耗时节约近半案例
- 管理打开的标签,减少Chrome95%内存 —OneTab
- vue关于接口请求数据过大导致浏览器崩溃
- 基于51单片机的智能雨刷设计
- 【JZOJ1758】过河
热门文章
- JAVA 华为云 流程控制基础题
- 【学习笔记】ARC149
- qt SceneView模拟发送鼠标点击事件
- 如何在日志中查找mysql日志临时密码_通过查询日志定位持有锁的SQL语句
- 【USACO 2020 January Silver】Berry Picking 题解
- 【教程】在Radmixture运行无标杆成分名的任意祖源计算器的方法
- ZeroDivisionError:Integer division or modulo by zero
- 软件:IIS上配置CGI
- 向量欧氏距离 点积 余弦相似度 余弦距离
- 今天的码农女孩做了关于svg画图和canvas画图 2022/1/18