progressive BKZ library

最近版本见http://www2.nict.go.jp/security/pbkzcode/index.html

这个库是对progressive BKZ算法(论文:Improved Progressive BKZ Algorithms and their Precise Cost Estimation by Sharp Simulator)的实现,发表在2016年的欧密会上

论文完整版本见https://eprint.iacr.org/2016/146

BKZ的核心部分pbkzmain.cpp以及ENUM(vectorenumeration.cpp)改自NTL的BKZ子程序

算法的实现依赖于以下库(版本号不低于所列)
gcc-5.3.0 (https://gcc.gnu.org/)
NTL-9.7.0 (http://www.shoup.net/ntl/)
gmp-6.1.0 (https://gmplib.org/)
gsl-1.16 (http://www.gnu.org/software/gsl/)
boost 1.58.0 (http://www.boost.org/)

介绍一下后两个库

gsl

GNU的科学库,是一个用C/C++开发的数值计算库

progressive BKZ library_第1张图片

boost

progressive BKZ library_第2张图片
synaptic包管理器显示的boost版本比较低

最新的版本是1.64


progressive BKZ library_第3张图片
boost目录结构 $BOOST_ROOT=/usr/local/boost_1_64_0

去官网下载最新版本安装

progressive BKZ library_第4张图片

进入pbkz文件夹,make会显示一些错误,去/etc/下找文件bash.bashrc增加如下环境变量
CPLUS_INCLUDE_PATH=/usr/local/boost_1_64_0
export CPLUS_INCLUDE_PATH

LIBRARY_PATH=/usr/local/boost_1_64_0/stage/lib
export LIBRARY_PATH

你可能感兴趣的:(progressive BKZ library)