pbc密码库怎么生成多线性生成对

您好,欢迎来到机电之家网! [
国家企业信息化
电子商务示范平台
&&&产品信息 &&&
&&&美国PBC linear轴承,PBC linear线性导轨
产地:美国
最小起订量:1件
发货地:上海
发布时间:
上海包勒机械设备有限公司
经营模式:贸易公司
公司类型:私营有限责任公司
所属行业:五金机械
主要客户:中国
PBC linear
说明书,报价手册及驱动
&&暂无相关下载
其他资料下载
暂无相关下载
美国PBC linear轴承,PBC linear线性导轨
美国PBC linear英制带底座开口直线轴承:PN 08C,PN 10C,PN 12C,PN 16C,PN 20C,PN 24C,PN 32C;
PBClinear线性滑轨/直线执行器 1RPS,2HCR,2HWL,2LRPS,2N23-34,2N42-56,2RPS ;
PBClinear精密套筒直线滑动轴承Simplicity&(PS)系列;
PBClinear法兰精密直线轴承Simplicity&(PSF)系列;
PBClinear公制套筒法兰直线轴承Simplicity&(PSFM)系列;
PBClinear公制精密套筒直线滑动轴承Simplicity&(PSM)系列;
PBClinear圆形法兰安装单直线滑动轴承SDS;
PBClinear方形轴承SB16,SB24,SBL16,SBL24& ;
PBClinear自调心直线球超级球轴承(IPS);
上海包勒机械设备有限公司
联系人:张博联系我时,请说是在机电之家上看到的,谢谢!
手机号码:
邮编:200120
地址:上海市浦东新区沪南路2581号 阳光大厦415室
在线询盘/留言 请仔细填写准确及时的联系到你!
您的姓名:
联系手机:
固话电话:
联系邮箱:
所在单位:
需求数量:
咨询内容:我想了解:《美国PBC linear轴承,PBC linear线性导轨》的详细信息.请商家尽快与我联系。
您要求厂家给您提供:
最低订货量
免责声明:以上所展示的信息由会员自行提供,内容的真实性、准确性和合法性由发布会员负责。机电之家对此不承担任何责任。 友情提醒:为规避购买风险,建议您在购买相关产品前务必确认供应商资质及产品质量。
本企业的产品目录现在网上关于java版的双线性对算法的实现的代码很少,我在前段时间想找下这方面的代码都找不到,结果只能自己摸索。经过一段时间的摸索,终于配置好了jPBC库并实现了一些代码。所以为了让大家学习双线性算法的实现时少走点弯路,想通过博客的形式将我前段时间的学习成果跟大家分享下,为处于研究双线对密码初级阶段,还不懂得如何用java实现算法的菜鸟们提供一篇技术性的博客。
关于java配对库网址为,光看这个网址,相信很多对于Pairing-Based
Cryptography Library (JPBC)还没入门的同学肯定是看的云里雾里的,看着就烦,其实我当初就是这样的。大家先不用急,学习这个库也是一个循序渐进的过程。关于jPBC库的配置,推荐一篇博客,这个博客已经将jPBC的配置写的很详细了,我就不赘述了。JPBC库中函数的基本使用和一些简单的算法实现,现在还没有发现专门介绍java的PBC库的相关书籍,推荐一本李发根,吴威峰著的书——《基于配对的密码学》,这本书详细讲了PBC库中个个函数的使用,还有经典算法的代码实现,这本书是C语言版版的,对照这本书来研究JPBC会相对轻松很多。
用JPBC实现的算法实例
BasicIdent的基于身份的加密体制是由Boneh和Franklin在《Identity-Based
Encryption fromthe Weil Pairing》提出的,算法的加解密过程大家可以自行参考下这篇论文,过程还是比较简单的。
package cn.edu.zjut.
public interface Ident {
void buildSystem();
void extractSecretKey();
void encrypt();
void decrypt();
这个类是核心类,包括初始化init(),配对的对称性判断checkSymmetric(),系统建立buildSystem(),密钥提取extractSecretKey(),加密encrypt(),解密decrypt()。
package cn.edu.zjut.
import it.unisa.dia.gas.jpbc.*;
import it.unisa.dia.gas.plaf.jpbc.pairing.PairingF
import java.lang.reflect.P
import java.util.C
import java.text.SimpleDateF
import java.util.D
public class BasicIdent2 implements Ident {
private Element s, r, P, Ppub, Su, Qu, V, T1, T2;
private Field G1, Zr;
public BasicIdent2() {
private void init() {
pairing = PairingFactory.getPairing(&a.properties&);//
PairingFactory.getInstance().setUsePBCWhenPossible(true);
checkSymmetric(pairing);
//将变量r初始化为Zr中的元素
Zr = pairing.getZr();
r = Zr.newElement();
//将变量Ppub,Qu,Su,V初始化为G1中的元素,G1是加法群
G1 = pairing.getG1();
Ppub = G1.newElement();
Qu = G1.newElement();
Su = G1.newElement();
V = G1.newElement();
//将变量T1,T2V初始化为GT中的元素,GT是乘法群
Field GT = pairing.getGT();
T1 = GT.newElement();
T2 = GT.newElement();
* 判断配对是否为对称配对,不对称则输出错误信息
* @param pairing
private void checkSymmetric(Pairing pairing) {
if (!pairing.isSymmetric()) {
throw new RuntimeException(&密钥不对称!&);
public void buildSystem() {
System.out.println(&-------------------系统建立阶段----------------------&);
s = Zr.newRandomElement().getImmutable();// //随机生成主密钥s
P = G1.newRandomElement().getImmutable();// 生成G1的生成元P
Ppub = P.mulZn(s);// 计算Ppub=sP,注意顺序
System.out.println(&P=& + P);
System.out.println(&s=& + s);
System.out.println(&Ppub=& + Ppub);
public void extractSecretKey() {
System.out.println(&-------------------密钥提取阶段----------------------&);
Qu = pairing.getG1().newElement().setFromHash(&IDu&.getBytes(), 0, 3)
.getImmutable();// //从长度为3的Hash值IDu确定用户U产生的公钥Qu
Su = Qu.mulZn(s).getImmutable();
System.out.println(&Qu=& + Qu);
System.out.println(&Su=& + Su);
public void encrypt() {
System.out.println(&-------------------加密阶段----------------------&);
r = Zr.newRandomElement().getImmutable();
V = P.mulZn(r);
T1 = pairing.pairing(Ppub, Qu).getImmutable();// 计算e(Ppub,Qu)
T1 = T1.powZn(r).getImmutable();
System.out.println(&r=& + r);
System.out.println(&V=& + V);
System.out.println(&T1=e(Ppub,Qu)^r=& + T1);
public void decrypt() {
System.out.println(&-------------------解密阶段----------------------&);
T2 = pairing.pairing(V, Su).getImmutable();
System.out.println(&e(V,Su)=& + T2);
int byt = V.getLengthInBytes();// 求V的字节长度,假设消息长度为128字节
System.out.println(&文本长度& + (byt + 128));
public static void main(String[] args) {
BasicIdent2 ident = new BasicIdent2();
// 动态代理,统计各个方法耗时
Ident identProxy = (Ident) Proxy.newProxyInstance(
BasicIdent2.class.getClassLoader(),
new Class[] { Ident.class }, new TimeCountProxyHandle(ident));
identProxy.buildSystem();
identProxy.extractSecretKey();
identProxy.encrypt();
identProxy.decrypt();
最后使用了动态代理(java自带的代理模式)用来统计各个阶段的耗时。
package cn.edu.zjut.
import java.lang.reflect.InvocationH
import java.lang.reflect.M
* 时间统计处理机,用于统计各方法耗时
* @author Administrator
public class TimeCountProxyHandle implements InvocationHandler {
public TimeCountProxyHandle(Object obj) {
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
long begin = System.currentTimeMillis();
Object result = method.invoke(proxied, args);
long end = System.currentTimeMillis();
System.out.println(method.getName() + &耗时:& + (end - begin) + &ms&);
运行结果展示
由于电脑配置的不同,运行耗时会有差异,大家对于这篇博客如有任何问题,欢迎在CSDN上与我讨论。
版权声明:本文为博主原创文章,未经博主允许不得转载。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:323次
排名:千里之外高性能双线性对密码算法与vlsi实现研究,双色球密码算法,双色球达芬奇密码算法,密码..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
高性能双线性对密码算法与vlsi实现研究
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口基于身份的密码体制研究--硕士论文下载
当前位置:----
博硕论文分类列表
基于身份的密码体制研究
&&&&&论文目录
摘要第1-4页ABSTRACT第4-7页第一章&绪论第7-11页&&&·课题的背景与意义第7-9页&&&·密码体制国际国内新发展第9-10页&&&·论文的主要工作及章节安排第10-11页&&&&&·论文的主要工作第10页&&&&&·论文的章节安排第10-11页第二章&公钥密码体制与PKI第11-23页&&&·对称密码与非对称密码第11-13页&&&&&·对称密码第11页&&&&&·非对称密码第11-12页&&&&&·对称与非对称密码的区别第12-13页&&&·公钥密码体制第13-16页&&&&&·基本原理第13-14页&&&&&·公钥密码体制的用途第14-16页&&&·常用公钥算法第16-17页&&&·PKI技术概述第17-22页&&&&&·PKI的定义与组成第17-18页&&&&&·CA与数字证书第18-20页&&&&&·PKI的工作过程第20-21页&&&&&·PKI的应用第21-22页&&&·本章小结第22-23页第三章&基于身份的密码体制第23-41页&&&·椭圆曲线密码学第23-27页&&&&&·椭圆曲线第23-24页&&&&&·椭圆曲线公钥密码第24-26页&&&&&·椭圆曲线密码体制的特点第26-27页&&&·双线性对第27-28页&&&&&·双线性映射的定义与性质第27页&&&&&·双线性配对第27-28页&&&·相关困难问题第28-29页&&&·Weil对与Tate对第29-31页&&&&&·Weil配对第29-30页&&&&&·Tate配对第30-31页&&&·基于身份密码学概述第31-33页&&&·基于身份加密的构造第33-35页&&&·IBE应用分析第35-37页&&&&&·安全性分析第35-36页&&&&&·IBE优缺点第36-37页&&&·PKI与IBE的分析与比较第37-38页&&&·本章小节第38-41页第四章&IBE的设计与实现第41-53页&&&·常用的密码学库第41-42页&&&·PBC库介绍第42-44页&&&&&·PBC基础第42-43页&&&&&·配对函数介绍第43页&&&&&·元素函数介绍第43-44页&&&·IBE的设计与实现第44-50页&&&&&·IBE的设计流程第44-45页&&&&&·系统初始化阶段第45-46页&&&&&·私钥生成第46-47页&&&&&·加密阶段第47-49页&&&&&·解密阶段第49-50页&&&·IBE的验证第50-51页&&&·本章小结第51-53页结论与展望第53-55页致谢第55-57页参考文献第57-60页作者攻读硕士期间参加的科研项目第60-61页
论文编号BS596823,这篇论文共61页会员购买按0.35元/页下载,共需支付<font color="#FF元。&&&&&&&&直接购买按0.5元/页下载,共需要支付<font color="#FF元 。
我还不是会员,我要!
会员下载论文更优惠!还送钱!
我只需要这一篇论文,无需注册!
直接网上支付,方便快捷!
&您可能感兴趣的论文
论文标题页数级别 75页硕士论文83页硕士论文132页博士论文66页硕士论文88页博士论文47页硕士论文66页硕士论文58页硕士论文57页硕士论文77页硕士论文67页硕士论文69页硕士论文51页硕士论文67页硕士论文
版权申明:本目录由网站制作,本站并未收录原文,如果您是作者,需要删除本篇论文目录请通过QQ或其它联系方式告知我们,我们承诺24小时内删除。
Copyright(C) All Rights Reserved
联系方式: QQ:

我要回帖

更多关于 线性生成 的文章

 

随机推荐