Ubuntu Eclipse中Pairing Based Cryptography编程配置详解

前言

我的技术博客从新浪搬家到CSDN的时候,有一些小的感觉没什么用的博客都删掉了… 结果,今天有位朋友给我微博留言,表明其正在研究Pairing-Based Cryptography Library函数库,发现我相关的这篇博客被我删除了,问我能否回复一下… 在此要给开发PBC以及密码学的朋友们说声抱歉哈!每一篇博客的价值并非是总访问量问题这么简单,每一篇博客都有不同的受众群体。因此,我应该把我认为有价值,有用的,可以帮助到大家的博客都搬移过来。

因此,我决定在CSDN我的技术博客中恢复这一篇对做密码学相关朋友有帮助的博客。如果因为我删除博客而对朋友们有一定的影响,我再次向大家道歉!

另外,我实验室的师弟师妹们根据我的Guideline配置后,也遇到了一些问题,再次我也一并写在这一篇恢复博客中,供大家参考。因为每一台电脑的情况都有所不同,因此即使是严格的技术博客,也可能无法考虑到各种情况,希望大家见谅。如果有任何问题,欢迎给我发送邮件,或者直接在博客下面留言,我将尽我所能帮助到大家,如有必要,我们可以进一步在QQ上,微信上,甚至当面交流:)我的邮箱是:[email protected]

主观动机

我自己是搞密码学的,实现的时候免不了用用Linux C;有时候也玩点GPS、北斗接收机什么的,再有时候玩玩Android什么的,没准过几天还能玩玩Windows8(刚刚从MSTC那边定了一个SurfacePro,这是转入.NET开发的节奏么…)。除了Windows这个蛋疼的平台(唉,要不是Windows上面有一个传说中的Microsoft Office和各种游戏,我早就彻底用Ubuntu了!LaTeX部分解决了这个问题,但是大多数人还是得用Word,PPT,Visio什么的吧,这个真心没办法),前面几个还都是挺好玩的。

言归正传,密码学里面有个东西叫做双线性对(Bilinear Pairing),只要是最近10年做密码学的人肯定知道这个推动密码学发展的数学函数了。Stanford网络安全实验室(负责人叫做Dan Boneh,是我最崇拜的密码学家,没有之一!)在Linux平台下用C语言开发了一个叫做PBC(Pairing-Based Cryptography) Library的东西,实现了双线性对,并且是遵守开源协议的,因此成为了密码学家验证方案正确性,以及测试方案效率的不二选择。但是这个库对于刚刚接触Linux的朋友们来说还真挺难驾驭的,尤其是习惯在IDE环境里面开发的朋友们来说,特别是喜欢在Eclipse开发的朋友们…这PBC库的使用满足了EclipseCDT开发的所有问题,列举如下:

  1. PBC安装之前要先安装GMP,而如何从源代码安装软件是使用Linux必须要学会的。
  2. PBC按照默认配置安装后,so和a文件存放于/usr/local/lib/文件夹中,一般的软件也都是这样。但是头文件放置在/usr/local/include/pbc/文件夹中,也就是说PBC库在/usr/local/include中建了一个文件夹,然后把头文件放在了里面。这一下挡住了很多想在Eclipse下用PBC开发的人,因为不配置的话Eclipse找不到这个头文件的目录。
  3. 如果想运行PBC中的example,都需要在main函数传参数,也就是把常数文件路径通过main传参。在Terminal中给main传参大家都会,但是如何在Eclipse中给C的main函数传参?这又挡住了很多人。
  4. 根据PBC官网的说法,因为PBC的实现中有个Bug,因此需要给Linux C编译器多传入一个参数。这个参数怎么在Eclipese里面配置呢?这进一步把朋友们逼疯了…
  5. 密码学中还有一个非常知名的库,就是OpenSSL中的Crypto库。这个库几乎包含了所有的密码学相关函数。但是想在Eclipse中应用OpenSSL中的Crypto库开发比PBC更繁琐一些,这是因为默认安装OpenSSL后,其Crypto库竟然根本不在/usr/local/lib里面,而是直接在/usr/local/目录下面建了一个SSL文件夹,然后把所有的头文件和库文件放在这个文件夹里面。

因此,我觉得很有必要写一篇博客总结一下Eclipse中C开发所需要的各种配置。一方面是给自己留一个笔记,另一方面以后实验室再来师弟师妹就不用自己再讲一遍了,也是为我节省点体力吧:)

客观动机

最近自己在搞Android上面的PBC开发,写个Server端写个Client端,Server端是Java+ Linux C混合编程;Client端是Java+ NDK C混合编程。客观条件也得让我把整个配置环境跑通吧!

内容介绍

本篇博客不会详细介绍的内容

(1)Eclipse + CDT的安装

Eclipse的安装太简单了,Ubuntu下面直接apt-getinstall eclipse就行了,如果找不到安装包请修改Ubuntu的软件源。不过apt-get所安装的Eclipse版本比较旧,如果想安装新版的Eclipse,请参考Eclipse官方网站给出的安装方法。Eclipse官方网址:http://www.eclipse.org/。

CDT的安装也相当简单,请参考EclipseCDT插件官方网站给出的安装方法。

(2)GMP以及PBC的源代码安装

经典三部曲:./configure,make,makeinstall。GMP官方网址:

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值