PBC库安装

本文档详细介绍了如何在Linux环境下安装PBC库,包括依赖库GMP的安装,配置与编译过程,并提供了测试双线性映射的步骤。同时,强调了在编程中使用PBC库时需要设置LD_LIBRARY_PATH环境变量的重要性,以及BLS签名相关的C代码头文件注意事项。
摘要由CSDN通过智能技术生成

PBC库安装*

该作者写的很好!不过中间我还是遇到了很多问题,写在下面。下面是我的详细步骤。欢迎指点!

https://blog.csdn.net/u013983667/article/details/54582126?locationNum=9&fps=1

安装相关依赖

sudo apt install m4 (注意小写m,装不上,先sudo apt update一下)
sudo apt install flex
sudo apt install bison

安装 GMP

GMP库下载地址如下:

https://gmplib.org/

在这里插入图片描述
下载后解压,进入解压后的文件夹。

sudo su
 ./configure
make
make check
make install

默认安装在/usr/local/lib,我们可以查看一下。

cd /usr/local/lib
ls

安装 PBC

pbc下载地址如下:

http://crypto.stanford.edu/pbc/download.html

在这里插入图片描述
下载并解压,进入解压文件夹:

sudo su
./configure
make
make install

其中,在Windows上configure命令需要额外的选项

./configure -disable-static -enable-shared

默认安装路径为/usr/local/lib

测试

双线性映射:G1*G2 –> GT, order 为 r。
划线部分测试
打开你解压到的文件夹,也就是你上面进行编译的文件夹,里面有个pbc文件夹。

cd pbc
./pbc

生成g of G1

g := rnd(G1);
g;

生成h of G2

h := rnd(G2);
h;

e(g, h)

pairing(g,h);

产生两个数a,b of [0,r-1]

a := rnd(Zr);
b := rnd(Zr);

e(g^a, h^b)

pairing(g^a,    h^b);

e(g,h)^(a*b)

pairing(g,h)^(a*b);

注意

如果要在编程中使用!
这里要设置动态库指定路径 LD_LIBRARY_PATH,LD_LIBRARY_PATH是Linux系统下的环境变量名,类似于Path(设置可执行文件的搜索路径)。它用于指定查找共享库(动态链接库)时除了默认路径(./lib和./usr/lib)之外的其他路径。移植程序时的经常碰到需要使用一些特定的动态库,而这些编译好的动态库放在我们自己建立的目录里,这时可以将这些目录设置到LD_LIBRARY_PATH中。

查看LD_LIBRARY_PATH:

echo $LD_LIBRARY_PATH

1.设置LD_LIBRARY_PATH(只能一次性使用):

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

2.把该语句加入/etc/profile里面,注销用户,再登录生效。

sudo gedit /etc/profile
把上面那条设置命令放在文件最下端,注销重新登录。

我们进入解压文件夹下(我的):

cd /home/wk/v2g/pbc-0.5.14/example
gcc bls.c -o blstest -L. -l
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值