Visual Studio下編譯和使用Miracl

MIRACL(Multiprecision Integer and Rational Arithmetic C/c++ Library)是一套由Shamus Software Ltd.所開發(fā)的一套關(guān)于大數(shù)運(yùn)算函數(shù)庫乡革,用來設(shè)計(jì)與大數(shù)運(yùn)算相關(guān)的密碼學(xué)之應(yīng)用,包含了RSA 公開密碼學(xué)命浴、Diffie-Hellman密鑰交換(Key Exchange)犀被、AES椅您、DSA數(shù)字簽名,還包含了較新的橢圓曲線密碼學(xué)(Elliptic Curve Cryptography)等等寡键。運(yùn)算速度快掀泳,并提供源代碼。國(guó)外著名密碼學(xué)函數(shù)庫還有:GMP西轩、NTL员舵、Crypto++、LibTomCrypt(LibTomMath)藕畔、OpenSSL等马僻。

? ? ? ? 下面說明怎樣在windows32平臺(tái)下使用MIRACL。

一注服、編譯生成miracl.lib

1. 在github獲取miracl的源碼MIRACL-master.zip?? https://github.com/miracl/MIRACL

2. 在Visual Studio 2005中進(jìn)行編譯韭邓。

——新建項(xiàng)目miracl,選擇“靜態(tài)庫”溶弟,不使用預(yù)編譯頭女淑。

——點(diǎn)擊“頭文件”選項(xiàng)夾,除了選擇miracl.h和mirdef.h外辜御,還要加上big.h, ec2.h, ecn.h, flash.h, zzn.h鸭你。

——點(diǎn)擊“源文件”選項(xiàng)夾,添加現(xiàn)有項(xiàng)。從下載的MIRACL-master.zip中添加源碼文件袱巨。

此處需要注意阁谆,在添加source file的時(shí)候請(qǐng)參照ms32doit.bat里面的C 文件列表。

mrcore.c

mrarth0.c

mrarth1.c

mrarth2.c

mralloc.c

mrsmall.c

mrio1.c

mrio2.c

mrgcd.c

mrjack.c

mrxgcd.c

mrarth3.c

mrbits.c

mrrand.c

mrprime.c

mrcrt.c

mrscrt.c

mrmonty.c

mrpower.c

mrsroot.c

mrcurve.c

mrfast.c

mrlucas.c

mrzzn2.c

mrzzn2b.c

mrzzn3.c

mrzzn4.c

mrshs.c

mrshs256.c

mrshs512.c

mrsha3.c

mrfpe.c

mraes.c

mrgcm.c

mrstrong.c

mrbrick.c

mrebrick.c

mrgf2m.c

mrec2m.c

mrecn2.c

mrflash.c

mrfrnd.c

mrdouble.c

mrround.c

mrbuild.c

mrflsh1.c

mrpi.c

mrflsh2.c

mrflsh3.c

mrflsh4.c

mrmuldv.c

big.cpp

zzn.cpp

ecn.cpp

ec2.cpp

brute.cpp

brent.cpp

pk-demo.cpp

bmark.c

flash.cpp

——點(diǎn)擊“生成”瓣窄,編譯生成了miracl.lib笛厦。

二、使用miracl

1. 打開VS 2005俺夕,創(chuàng)建一個(gè)新的win32控制臺(tái)應(yīng)用裳凸,不使用預(yù)編譯頭

2. 添加miracl文件夾下include文件夾路徑及生成miracl.lib文件的路徑

之后在“附加依賴項(xiàng)”輸入miracl.lib用;隔開

之后,添加MIRACL-master.zip中的示例文件:brent.c劝贸。

運(yùn)行結(jié)果

也可以自己輸入如下代碼進(jìn)行測(cè)試

#include "miracl.h"

#include <time.h>

int _tmain(int argc, _TCHAR* argv[])

{

??? inti;

??? bigx,y,z;

??? miracl*mip = mirsys(1000, 16);

??? x= mirvar(0);

??? y= mirvar(0);

??? z= mirvar(0);


??? bigbits(100,x);

??? bigbits(100,y);

??? bigbits(100,z);

??? add(x,y, z);

??? cotnum(z,stdout);

? ? return0;

}

運(yùn)行結(jié)果如下姨谷,每次生成的不一定一樣,因?yàn)槿齻€(gè)大數(shù)是隨機(jī)生成的映九。

備注:如果使用的為Vistual Studio 2017等編譯器梦湘,則指定include路徑和miracl.lib文件路徑的界面會(huì)不一樣

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市件甥,隨后出現(xiàn)的幾起案子捌议,更是在濱河造成了極大的恐慌,老刑警劉巖引有,帶你破解...
    沈念sama閱讀 221,695評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瓣颅,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡譬正,警方通過查閱死者的電腦和手機(jī)宫补,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來曾我,“玉大人粉怕,你說我怎么就攤上這事∈愠玻” “怎么了贫贝?”我有些...
    開封第一講書人閱讀 168,130評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)虐秦。 經(jīng)常有香客問我平酿,道長(zhǎng),這世上最難降的妖魔是什么悦陋? 我笑而不...
    開封第一講書人閱讀 59,648評(píng)論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮筑辨,結(jié)果婚禮上俺驶,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好暮现,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評(píng)論 6 397
  • 文/花漫 我一把揭開白布还绘。 她就那樣靜靜地躺著,像睡著了一般栖袋。 火紅的嫁衣襯著肌膚如雪拍顷。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,268評(píng)論 1 309
  • 那天塘幅,我揣著相機(jī)與錄音昔案,去河邊找鬼。 笑死电媳,一個(gè)胖子當(dāng)著我的面吹牛踏揣,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播匾乓,決...
    沈念sama閱讀 40,835評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼捞稿,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了拼缝?” 一聲冷哼從身側(cè)響起娱局,我...
    開封第一講書人閱讀 39,740評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎咧七,沒想到半個(gè)月后衰齐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,286評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡猪叙,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評(píng)論 3 340
  • 正文 我和宋清朗相戀三年娇斩,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片穴翩。...
    茶點(diǎn)故事閱讀 40,505評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡犬第,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出芒帕,到底是詐尸還是另有隱情歉嗓,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布背蟆,位于F島的核電站鉴分,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏带膀。R本人自食惡果不足惜志珍,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望垛叨。 院中可真熱鬧伦糯,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至淤翔,卻和暖如春翰绊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背旁壮。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工监嗜, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人寡具。 一個(gè)月前我還...
    沈念sama閱讀 48,921評(píng)論 3 376
  • 正文 我出身青樓秤茅,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親童叠。 傳聞我的和親對(duì)象是個(gè)殘疾皇子框喳,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom閱讀 2,701評(píng)論 0 3
  • 在C語言中,五種基本數(shù)據(jù)類型存儲(chǔ)空間長(zhǎng)度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來閱讀 3,351評(píng)論 0 2
  • 這些天幾乎完全按照網(wǎng)上的教程及教程中提供的編譯庫版本進(jìn)行編譯,到最后進(jìn)行osgearth編譯時(shí)總是一大堆錯(cuò)誤厦坛,而大...
    me揮之即去閱讀 7,226評(píng)論 0 2
  • 【轉(zhuǎn)載】C&C++——C函數(shù)與C++函數(shù)相互調(diào)用問題 C C++相互調(diào)用 在項(xiàng)目中融合C和C++有時(shí)是不可避免的五垮,...
    天之道天知道閱讀 3,469評(píng)論 2 19
  • 時(shí)間總是過的好快,像是上一秒剛遇見你杜秸,下一秒就是你離開的背影放仗,一點(diǎn)余地都吝嗇的沒有留下。 我常常在想撬碟,上天總是拿我...
    寫情書的怪叔叔閱讀 1,322評(píng)論 25 25