实用java配对加密库,亲测用来运行cp-abe
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1876535 2013-01-31 13:44 jpbc-2.0.0jarscprov-jdk16-1.46.jar
文件 946973 2013-01-31 13:44 jpbc-2.0.0jarsjna-3.2.5.jar
文件 7678 2013-11-27 14:34 jpbc-2.0.0jarsjpbc-api-2.0.0.jar
文件 9897 2013-11-27 14:50 jpbc-2.0.0jarsjpbc-benchmark-2.0.0.jar
文件 181635 2013-11-27 14:39 jpbc-2.0.0jarsjpbc-crypto-2.0.0.jar
文件 51697 2013-11-27 14:36 jpbc-2.0.0jarsjpbc-mm-2.0.0.jar
文件 39192 2013-11-27 14:36 jpbc-2.0.0jarsjpbc-pbc-2.0.0.jar
文件 252654 2013-11-27 14:34 jpbc-2.0.0jarsjpbc-plaf-2.0.0.jar
文件 34598 2013-11-27 14:50 jpbc-2.0.0jars estjpbc-test-2.0.0-tests.jar
文件 559 2013-06-17 12:57 jpbc-2.0.0jpbc-androidAndroidManifest.xml
文件 359 2013-06-17 12:57 jpbc-2.0.0jpbc-androidassetsa.properties
文件 979 2013-06-17 12:57 jpbc-2.0.0jpbc-androidassetsd159.properties
文件 1222 2013-06-17 12:57 jpbc-2.0.0jpbc-androidassetsd201.properties
文件 1347 2013-06-17 12:57 jpbc-2.0.0jpbc-androidassetsd224.properties
文件 13965 2013-11-27 12:03 jpbc-2.0.0jpbc-androidjpbc-android.iml
文件 2360 2013-11-27 14:34 jpbc-2.0.0jpbc-androidpom.xml
文件 6094 2013-06-17 12:57 jpbc-2.0.0jpbc-android
esdrawableicon.png
文件 1847 2013-06-17 12:57 jpbc-2.0.0jpbc-android
eslayoutmain.xml
文件 154 2013-06-17 12:57 jpbc-2.0.0jpbc-android
esvaluesstrings.xml
文件 5944 2013-10-30 16:41 jpbc-2.0.0jpbc-androidsrcitunisadiagasjpbcandroidenchmarkAndroidBenchmark.java
文件 5346 2013-10-31 09:41 jpbc-2.0.0jpbc-androidsrcitunisadiagasjpbcandroidenchmarkBenchmark.java
文件 6672 2013-11-27 10:57 jpbc-2.0.0jpbc-androidsrcitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity.java
文件 5270 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkAndroidBenchmark.class
文件 3736 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkBenchmark.class
文件 387 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkBuildConfig.class
文件 1546 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity$1.class
文件 1592 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity$2.class
文件 3054 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity$3.class
文件 4052 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity.class
文件 403 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkR$attr.class
............此处省略835个文件信息
package it.unisa.dia.gas.jpbc.android.benchmark;
import android.util.Log;
import it.unisa.dia.gas.jpbc.*;
import it.unisa.dia.gas.plaf.jpbc.pairing.PairingFactory;
import java.math.BigInteger;
/**
* @author Angelo De Caro (jpbclib@gmail.com)
*/
public class AndroidBenchmark {
private static final String TAG = “AndroidBenchmark“;
protected int iterations;
protected boolean running = false;
public AndroidBenchmark(int iterations) {
this.iterations = iterations;
}
public Benchmark benchmark(String[] curves) {
Log.i(TAG “Benchmarking...%n“);
this.running = true;
Benchmark benchmark = new Benchmark(curves);
double[][] pairingBenchmarks = benchmark.getPairingBenchmarks();
for (int col = 0; col < curves.length && running; col++) {
Log.i(TAG “Curve = “ + curves[col]);
Pairing pairing = getPairing(curves[col]);
int t1 = 0 t2 = 0 t3 = 0;
for (int i = 0; i < iterations && running; i++) {
Element g = pairing.getG1().newElement().setToRandom();
Element h = pairing.getG2().newElement().setToRandom();
long start = System.currentTimeMillis();
pairing.pairing(g h);
long end = System.currentTimeMillis();
t1 += Math.abs((end - start));
start = System.currentTimeMillis();
PairingPreProcessing ppp = pairing.getPairingPreProcessingFromElement(g);
end = System.currentTimeMillis();
t2 += Math.abs((end - start));
start = System.currentTimeMillis();
ppp.pairing(h);
end = System.currentTimeMillis();
t3 += Math.abs((end - start));
}
if (!running)
return benchmark;
pairingBenchmarks[0][col] = (double) t1 / iterations;
pairingBenchmarks[1][col] = (double) t2 / iterations;
pairingBenchmarks[2][col] = (double) t3 / iterations;
Log.i(TAG “Finished.%n“);
}
// Element Pow Benchmarks
Log.i(TAG “Element Pow Benchmark...“);
double[][][] elementBenchmarks = benchmark.getElementBenchmarks();
for (int col = 0; col < curves.length && running; col++) {
Log.i(TAG “Curve = “ + curves[col]);
Pairing pairing = getPairing(curves[col]);
Field[] fields = new Field[]{
pairing.getG1()
pairing.getG2()
pairing.getGT()
pairing.getZr()
};
for (int fieldIndex = 0; fieldIndex < fields.length && running; fieldIndex++) {
Log.i(TAG “Field “ + Benchmark.fieldNames[fieldIndex]);
long t1 = 0 t2 = 0 t3 = 0 t4 = 0 t5 = 0 t6 = 0 t7 = 0;
for (int i = 0; i < iterations && running; i++) {
Element e1 = fi
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1876535 2013-01-31 13:44 jpbc-2.0.0jarscprov-jdk16-1.46.jar
文件 946973 2013-01-31 13:44 jpbc-2.0.0jarsjna-3.2.5.jar
文件 7678 2013-11-27 14:34 jpbc-2.0.0jarsjpbc-api-2.0.0.jar
文件 9897 2013-11-27 14:50 jpbc-2.0.0jarsjpbc-benchmark-2.0.0.jar
文件 181635 2013-11-27 14:39 jpbc-2.0.0jarsjpbc-crypto-2.0.0.jar
文件 51697 2013-11-27 14:36 jpbc-2.0.0jarsjpbc-mm-2.0.0.jar
文件 39192 2013-11-27 14:36 jpbc-2.0.0jarsjpbc-pbc-2.0.0.jar
文件 252654 2013-11-27 14:34 jpbc-2.0.0jarsjpbc-plaf-2.0.0.jar
文件 34598 2013-11-27 14:50 jpbc-2.0.0jars estjpbc-test-2.0.0-tests.jar
文件 559 2013-06-17 12:57 jpbc-2.0.0jpbc-androidAndroidManifest.xm
文件 359 2013-06-17 12:57 jpbc-2.0.0jpbc-androidassetsa.properties
文件 979 2013-06-17 12:57 jpbc-2.0.0jpbc-androidassetsd159.properties
文件 1222 2013-06-17 12:57 jpbc-2.0.0jpbc-androidassetsd201.properties
文件 1347 2013-06-17 12:57 jpbc-2.0.0jpbc-androidassetsd224.properties
文件 13965 2013-11-27 12:03 jpbc-2.0.0jpbc-androidjpbc-android.iml
文件 2360 2013-11-27 14:34 jpbc-2.0.0jpbc-androidpom.xm
文件 6094 2013-06-17 12:57 jpbc-2.0.0jpbc-android
esdrawableicon.png
文件 1847 2013-06-17 12:57 jpbc-2.0.0jpbc-android
eslayoutmain.xm
文件 154 2013-06-17 12:57 jpbc-2.0.0jpbc-android
esvaluesstrings.xm
文件 5944 2013-10-30 16:41 jpbc-2.0.0jpbc-androidsrcitunisadiagasjpbcandroidenchmarkAndroidBenchmark.java
文件 5346 2013-10-31 09:41 jpbc-2.0.0jpbc-androidsrcitunisadiagasjpbcandroidenchmarkBenchmark.java
文件 6672 2013-11-27 10:57 jpbc-2.0.0jpbc-androidsrcitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity.java
文件 5270 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkAndroidBenchmark.class
文件 3736 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkBenchmark.class
文件 387 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkBuildConfig.class
文件 1546 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity$1.class
文件 1592 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity$2.class
文件 3054 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity$3.class
文件 4052 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkJPBCBenchmarkActivity.class
文件 403 2013-11-27 14:50 jpbc-2.0.0jpbc-android argetclassesitunisadiagasjpbcandroidenchmarkR$attr.class
............此处省略835个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)