亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于樹型方法計(jì)算雙基鏈的研究與實(shí)現(xiàn)

        2018-07-31 02:06:46陳文慶
        關(guān)鍵詞:方法

        彭 韜 陳文慶

        (1.廣東茂名幼兒師范專科學(xué)校 高州 525200)(2.湛江師范學(xué)院教務(wù)處 湛江 524048)

        1 引言

        基于離散對數(shù)的橢圓曲線密碼體制(Elliptic Curve Cryptosystem,ECC)是 由 Koblitz[1]和 Victor Miller在1985年分別獨(dú)立提出的。由于ECC是基于橢圓曲線上的離散對數(shù)難解問題,相同長度的密鑰比其他密碼體制具有更高的安全性,近年來已經(jīng)成為密碼學(xué)領(lǐng)域研究的熱點(diǎn)之一[1]。在許多基于橢圓曲線的密碼方案中,標(biāo)量乘法是影響橢圓曲線密碼體制中最基本、最耗時(shí)的運(yùn)算,其執(zhí)行效率直接影響整個(gè)密碼體制的性能。目前,許多學(xué)者研究出用多種方法來加快點(diǎn)乘速度:1)通過對m的展開形式的優(yōu)化來提高運(yùn)算效率,代表算法有NAF表示、τ-adic表示、雙基表示等[1~3,9~13];2)引入預(yù)計(jì)算的窗口算法和梳子算法等[1];3)根據(jù)橢圓曲線的特點(diǎn)使用不同的坐標(biāo)表示,例如仿射坐標(biāo)、射影坐標(biāo)和Inverted Edwards坐標(biāo)[5]等。

        本文主要討論整數(shù)的雙基表示以及基于樹型方法計(jì)算雙基鏈方法。

        2 雙基數(shù)系統(tǒng)

        Dimitrov和Cooklev在文獻(xiàn)[1~3]中首次提出了雙基數(shù)系統(tǒng)(DBNS)的概念,并在隨后將其應(yīng)用到了橢圓曲線密碼學(xué)[7,14~15]。在DBNS 中,每一個(gè)整數(shù)n被表示為2-整數(shù)的和或差的形式,即

        顯而易見在DBNS中,整數(shù)n的表達(dá)式并不唯一。例如,10準(zhǔn)確的有5種不同的雙基方法,100準(zhǔn)確的有402種,而1000準(zhǔn)確的有1295579種不同的表示方法,159就已經(jīng)有49305013890836539593285>1022種不同的雙基數(shù)表示形式了[1~2]。貪婪算法是找到一個(gè)項(xiàng)數(shù)盡可能少的雙基表達(dá)式的有效算法。

        例1 令n=81232利用貪婪算法可以求出n的DBNS表示:

        841232=2738+2136-2232+21

        Dimitrov等給出了貪婪算法求出n的DBNS表達(dá)式項(xiàng)數(shù)的上界,對于任意整數(shù),貪婪算法都可以項(xiàng)內(nèi)求出其DBNS展開式[2~3]。

        然而,n的DBNS表達(dá)式是非常稀疏,并不適合用來計(jì)算標(biāo)量乘法,因?yàn)闊o序的指數(shù)使得必須計(jì)算Q/2或者Q/3,而這樣的操作是非常耗時(shí)。為了避免上述情況的發(fā)生,雙基表達(dá)式的指數(shù)序列必須滿足同時(shí)遞減,即a1≥a2≥ … ≥al且b1≥b2≥ … ≥bl。滿足這一性質(zhì)的雙基展開式叫做雙基鏈(DBC)[7~8]。只要在普通貪婪算法的每輪迭代中將目標(biāo)值對應(yīng)的上輪近似值的指數(shù)作為本輪該目標(biāo)值搜索的指數(shù)上界,就得到了一個(gè)用來求解雙基鏈的貪婪算法[2~3,7~9]。

        例2 將上例中的n展開為雙基鏈形式如下:

        841232=2738+1424

        1424=2136-34,

        34=33+7,

        7=32-2,

        2=31-1。

        即841232=2738+2136-33-32+31-1。一般而言,一個(gè)整數(shù)的雙基鏈長度要大于其對應(yīng)的DBNS表達(dá)式。

        3 樹型算法

        雙基鏈表達(dá)式的長度和形式,直接影響到標(biāo)量乘的效率,由 Dimitrov提出貪婪算法[2~3,7~9]得求雙基鏈并不是最優(yōu)方法,同時(shí)該算法求得的雙基表達(dá)并不一定適合標(biāo)量乘。基于樹型方法[4]計(jì)算雙基鏈方法能較好地滿足標(biāo)量乘,具體算法如下:

        2)f(n)-1和f(n)+1分別為樹的左結(jié)點(diǎn)和右結(jié)點(diǎn)。

        3)比較各葉結(jié)點(diǎn)的值的大小,保留B(B為樹每層保留最小葉結(jié)點(diǎn)參數(shù)值)個(gè)最小值葉結(jié)點(diǎn),去掉其它葉結(jié)點(diǎn)。

        4)直到有一個(gè)葉結(jié)點(diǎn)的值為1,否則對B個(gè)最小值葉結(jié)點(diǎn)轉(zhuǎn)步聚2)。

        5)從值為1的葉結(jié)點(diǎn)反向搜索到根即得到n的雙基鏈。

        如n=841232,B=2為例,其結(jié)果如圖1所示。

        從值為1的葉結(jié)點(diǎn)開始,沿著虛線得到:

        841232=24(25(2231(23(24+1)+1)-1)+1)

        即得雙基鏈如下:

        841232=21831+21431-21131+29+24

        如n=841232,若設(shè)B=4,則該算法可得到如下雙基鏈:

        841232=2738+2633-2532-24

        圖1 B為2時(shí)生成雙基鏈的二叉樹

        4 樹型方法的Delphi實(shí)現(xiàn)

        4.1 二叉樹結(jié)點(diǎn)結(jié)構(gòu)

        樹結(jié)點(diǎn)的結(jié)構(gòu)具體定義如下:

        type

        recordnode=record

        data:integer; //整數(shù) n

        leftnode:pointer; //右結(jié)點(diǎn)

        rightnode:pointer; //左結(jié)點(diǎn)

        Bexp:byte; //存2次方值

        Texp:byte; //存3次方值

        End;

        4.2 計(jì)算2或3次方過程

        入口參數(shù):數(shù)值data;次方數(shù)temp

        出口參數(shù):i為次方值。

        procedure computeTexp(var data:integer;var i,temp:byte); //計(jì)算n的次方

        begin

        i:=0;

        while(data mod temp=0)and(data<>1)do

        begin

        data:=data div temp;

        i:=i+1;

        end;

        end;

        4.3 對于任整數(shù)n構(gòu)建二叉樹過程

        入口參數(shù):pt為指向樹結(jié)點(diǎn)的指針。

        出口參數(shù):二叉樹。

        procedure CreateTree(var pt:TPRecnode);

        var

        temp,i:byte;

        pl,pr:TPRecnode;

        s:ShortString;

        begin

        if pt.data<>1 then

        begin

        temp:=2;

        computeTexp(pt.data,i,temp);//調(diào)用計(jì)算2的次方

        pt.Bexp:=i;//2的次方數(shù)

        temp:=3;

        computeTexp(pt.data,i,temp);//調(diào)用計(jì)算3的次方

        pt.Texp:=i; //3的次方數(shù)

        s:=IntToStr(pt.data);

        showmessage(s);

        GetMem(pl,SizeOf(TPRecnode));

        pt.leftnode:=pl;

        pl.data:=pt.data-1;

        pl.leftnode:=nil;

        pl.rightnode:=nil;

        pl.Bexp:=0;

        pl.Texp:=0;

        pt:=pl;

        CreateTree(pt); //創(chuàng)建左子樹

        GetMem(pr,SizeOf(TPRecnode));

        pt.leftnode:=pr;

        pr.data:=pt.data-1;

        pr.leftnode:=nil;

        pr.rightnode:=nil;

        pr.Bexp:=0;

        pr.Texp:=0;

        pt:=pr;

        CreateTree(pt); //創(chuàng)建右子樹

        end

        else

        pt:=nil;

        end;

        5 結(jié)語

        本文主要研究雙基數(shù)據(jù)系統(tǒng)(DBNS)基本理論和求解任意整數(shù)雙基數(shù)表示的樹型方法,最后在Delphi環(huán)境下實(shí)現(xiàn)了基于樹型方法計(jì)算雙基鏈。

        猜你喜歡
        方法
        中醫(yī)特有的急救方法
        中老年保健(2021年9期)2021-08-24 03:52:04
        高中數(shù)學(xué)教學(xué)改革的方法
        化學(xué)反應(yīng)多變幻 “虛擬”方法幫大忙
        變快的方法
        兒童繪本(2020年5期)2020-04-07 17:46:30
        學(xué)習(xí)方法
        可能是方法不對
        用對方法才能瘦
        Coco薇(2016年2期)2016-03-22 02:42:52
        最有效的簡單方法
        山東青年(2016年1期)2016-02-28 14:25:23
        四大方法 教你不再“坐以待病”!
        Coco薇(2015年1期)2015-08-13 02:47:34
        賺錢方法
        亚洲av熟妇高潮30p| 国精产品一区一区三区| 乱人妻中文字幕| 国产精品一区二区 尿失禁| 亚洲成A人A∨久在线观看| 免费在线观看草逼视频| 无码专区一ⅴa亚洲v天堂| 大肉大捧一进一出视频出来呀| 狠狠色综合播放一区二区| 精品国产av 无码一区二区三区| 草莓视频成人| 美女黄频视频免费国产大全 | 亚洲色大成人一区二区| 久久无码高潮喷水抽搐| 麻豆精品在线视频观看| 国产激情一区二区三区| 播放灌醉水嫩大学生国内精品| 国内视频一区| 国产护士一区二区三区| 久久伊人精品一区二区三区| 蜜臀av一区二区| 精品999无码在线观看| 国产盗摄一区二区三区av| 人人人妻人人人妻人人人| 亚洲av之男人的天堂网站| 亚洲自拍愉拍| 亚洲综合一区二区三区久久| 亚洲精品视频1区2区| 曰韩亚洲av人人夜夜澡人人爽| 国产视频导航| 国产亚洲激情av一区二区| 欧美乱妇高清无乱码免费| 亚洲精品无码乱码成人| 91精品啪在线看国产网站| 91熟女av一区二区在线| 久久99精品久久久久久琪琪| 99精品免费久久久久久久久日本| 亚洲国产成人精品激情| 日本综合视频一区二区| 性xxxx18免费观看视频| 中字无码av电影在线观看网站|