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

        ?

        基于Linux下數(shù)字簽名技術(shù)的實(shí)現(xiàn)

        2019-06-17 05:10:18余立強(qiáng)
        教育教學(xué)論壇 2019年19期
        關(guān)鍵詞:私鑰公鑰

        余立強(qiáng)

        摘要:運(yùn)用非對稱密鑰加密技術(shù)與數(shù)字摘要技術(shù)描繪出數(shù)字簽名技術(shù)的工作原理圖,使用Linux系統(tǒng)中的shell命令實(shí)現(xiàn)數(shù)字簽名技術(shù)中的創(chuàng)建私鑰、導(dǎo)出公鑰、私鑰簽名、公鑰校驗(yàn)等實(shí)踐操作,很好地展現(xiàn)了數(shù)字簽名技術(shù)實(shí)踐應(yīng)用的可操作性。

        關(guān)鍵詞:Linux;數(shù)字簽名技術(shù);私鑰;公鑰

        中圖分類號(hào):G642.0 ? ? 文獻(xiàn)標(biāo)志碼:A ? ? 文章編號(hào):1674-9324(2019)19-0103-02

        數(shù)字簽名是一種電子簽章,類似寫在紙上的普通的物理簽名,在電子商務(wù)、電子政務(wù)等各類項(xiàng)目中得到廣泛的應(yīng)用。

        一、基本概念

        數(shù)字簽名技術(shù)由非對稱密鑰加密技術(shù)與數(shù)字摘要技術(shù)構(gòu)成,用于文件完整性驗(yàn)證,具有不可抵賴性。數(shù)字簽名只有信息的發(fā)送者才能產(chǎn)生、別人無法偽造的一串?dāng)?shù)字,這些數(shù)字同時(shí)也是對信息的發(fā)送者發(fā)送信息真實(shí)性的一個(gè)有效證明。

        數(shù)字簽名技術(shù)工作原理如圖1所示。

        在圖1中,發(fā)送方利用RSA加密算法創(chuàng)建私鑰,對原文用Hash算法得到信息摘要,輸出固定長度的哈希值。對信息摘要用私鑰和RAS加密算法進(jìn)行加密得到數(shù)字簽名。發(fā)送方利用私鑰導(dǎo)出公鑰,然后將數(shù)字簽名、原文和數(shù)字簽名三個(gè)文件發(fā)送給接收方。

        接收方首先用與發(fā)送方一樣的哈希函數(shù)對接收到的原文計(jì)算出信息摘要,再用接收到的公鑰對數(shù)字簽名文件進(jìn)行解密,也得到一個(gè)信息摘要,然后判斷這兩個(gè)摘要是否相同,若相同,則接收方確認(rèn)該數(shù)字簽名是發(fā)送方的,原文也是無篡改的。反之,則數(shù)字簽名不可信,或原文有篡改。

        二、Linux系統(tǒng)環(huán)境

        (一)操作環(huán)境

        在宿主機(jī)上安裝VMware虛擬機(jī)軟件,準(zhǔn)備1臺(tái)或2臺(tái)安裝CentOS 6.5版本以上的Linux系統(tǒng)的虛擬機(jī)。

        (二)數(shù)字簽名操作

        在Linux系統(tǒng)opensll命令可實(shí)現(xiàn)4種非對稱加密算法,包括DH、RSA、DSA和橢圓曲線算法(EC)。RSA算法既可以用于密鑰交換,也可以用于數(shù)字簽名。

        OpenSSL實(shí)現(xiàn)了5種信息摘要算法,分別是MD2、MD5、MDC2、SHA(SHA1)和RIPEMD。這里主要用SHA信息摘要算法。

        三、數(shù)字簽名操作過程

        進(jìn)入Linux系統(tǒng)進(jìn)行操作:

        (一)編輯原文件file.txt

        創(chuàng)建原文件file.txt,可以是任意類型的文件,這里僅作演示,輸入命令:

        #echo “This is a digital signature example.”>file.txt

        (二)創(chuàng)建私鑰key.pri

        1.創(chuàng)建私鑰。

        #openssl genrsa –out key.pri –f4 2048

        RSA加密算法產(chǎn)生的2048位私鑰,并使用F4作為公鑰的E參數(shù),將私鑰保存在文件key.pri中。

        2.查看私鑰。

        #openssl rsa –inform PEM –in key.pri –text

        以PEM格式顯示私鑰的明文輸出密鑰參數(shù)。

        (三)導(dǎo)出公鑰key.pub

        1.導(dǎo)出公鑰。

        #openssl rsa –inform PEM –outform PEM –in key.pri –out key.pub –pubout

        用rsa的私鑰文件key.pri導(dǎo)出PEM格式的公鑰,保存在文件key.pub中。

        2.查看公鑰。

        #cat key.pub

        或查看公鑰命令:

        #openssl rsa –inform PEM –in key.pub –pubin –text

        以PEM格式顯示公鑰的明文輸出密鑰參數(shù),得到與上面查看私鑰類似的顯示。

        (四)私鑰簽名

        1.方法1。參見圖1,進(jìn)行私鑰簽名操作:

        (1)計(jì)算原文件的信息摘要。

        #openssl dgst –sha256 –binary –out file1.sha256 file.txt

        將原文件的信息摘要(hash值)保存在文件file1.sha256中。

        (2)用私鑰key.pri簽名。

        #openssl rsautl -out file1.sig –sign –inkey key.pri –in file1.sha256

        用私鑰對信息摘要進(jìn)行非對稱加密算法加密簽名,產(chǎn)生簽名文件file1.sig。

        2.方法2。對上面方法1的合成操作命令:

        #openssl dgst –sha256 –out file2.sig –sign key.pri –keyform PEM file.txt

        產(chǎn)生簽名文件file2.sig,并查看簽名文件file2.sig:

        #od –v –An –t x1 file2.sig

        注意,file1.sig與file2.sig的內(nèi)容是不相同的。

        (五)公鑰校驗(yàn)

        發(fā)送者將原文件file.txt、公鑰文件key.pub和簽名文件file.sig傳輸給接收者,接收者模擬驗(yàn)證操作。

        與私鑰簽名相對應(yīng),接收者的公鑰校驗(yàn)的二種方法如下。

        1.方法1。對照圖1,接收方校驗(yàn)信息摘要的操作:

        (1)由簽名文件計(jì)算信息摘要。

        #openssl rsautl –out file2.rec –inkey key.pub –in file1.sig –pubin –verify

        用公鑰解密收到的簽名文件file1.sig的hash值,即原文件file.txt的信息摘要(hash值),將結(jié)果保存到二進(jìn)制文件file2.rec中。

        (2)查看file2.rec文件中的信息摘要。

        #od –v –An –t x1 file2.rec

        (3)計(jì)算接收到的原文件file.txt的信息摘要。

        #openssl dgst –sha256 –binary –out file2.sha256 file.txt

        在接收方計(jì)算收到的原文件file.txt的hash值,即信息摘要保存到文件file2.sha256中。

        (4)查看file2.sha256的內(nèi)容。

        #od –v –An –t x1 file2.sha256

        比較file2.sha256文件與file2.rec文件中32個(gè)字節(jié)的內(nèi)容是完全一致的,即信息摘要是相同的,可以確認(rèn)接收到的原文件file.txt是無篡改、可信的。反之,則說明接收到的文件有篡改或不可信的。

        2.方法2。對應(yīng)私鑰簽名方法2,用下面的命令進(jìn)行公鑰校驗(yàn):

        #openssl dgst –sha256 –keyform PEM –verify key.pub –signature file2.sig file.txt

        若顯示:Verified OK

        則表示用公鑰校驗(yàn)簽名文件是正常的,即接收到的原文件是無篡改和可信的。

        若顯示:Verification Failure

        則表示接收到的文件有篡改或不可信的。

        四、小結(jié)

        在shell狀態(tài)下用openssl命令實(shí)現(xiàn)數(shù)字簽名技術(shù)的操作有助于對其工作原理的理解,方法1對應(yīng)圖1所示的工作原理,方法2是圖1的合成命令操作,在實(shí)際操作中更快、更有效。

        參考文獻(xiàn):

        [1]魯立,計(jì)算機(jī)網(wǎng)絡(luò)安全[M].機(jī)械工業(yè)出版社,2018,(01).

        [2]百度.數(shù)字簽名[EB/OL].https://baike.baidu.com/item/數(shù)字簽名/212550?fr=aladdin

        [3]百度.linux平臺(tái)數(shù)字簽名實(shí)現(xiàn)無示例[EB/OL].https://jingyan.baidu.com/article/6181c3e06a920f152ff1536e.html.

        猜你喜歡
        私鑰公鑰
        比特幣的安全性到底有多高
        基于改進(jìn)ECC 算法的網(wǎng)絡(luò)信息私鑰變換優(yōu)化方法
        一種基于混沌的公鑰加密方案
        一種基于虛擬私鑰的OpenSSL與CSP交互方案
        HES:一種更小公鑰的同態(tài)加密算法
        SM2橢圓曲線公鑰密碼算法綜述
        基于格的公鑰加密與證書基加密
        LeeB私鑰分發(fā)協(xié)議的改進(jìn)方案
        99精品人妻少妇一区二区三区| 亚洲成人电影在线观看精品国产| av资源在线看免费观看| av在线不卡一区二区三区| 中文字幕一区二区人妻秘书| 欧美寡妇xxxx黑人猛交| 国产精美视频| 国产性感丝袜美女av| 亚洲成人福利在线视频| 狠狠噜天天噜日日噜无码| 色吧综合网| av东京热一区二区三区| 蜜桃传媒网站在线观看| 帮老师解开蕾丝奶罩吸乳网站| 国产一品道av在线一二三区| 久久精品有码中文字幕1| 在线观看午夜视频国产| 国产伦精品一区二区三区妓女| 在线观看免费午夜大片| 国产av一区二区凹凸精品| 亚洲免费女女在线视频网站| 欧美熟妇性xxx交潮喷| 女同啪啪免费网站www| 日韩精品夜色二区91久久久| 熟女中文字幕一区二区三区| 久久无码av中文出轨人妻| 亚洲av日韩aⅴ无码电影 | 精品中文字幕手机在线| 国产三级视频不卡在线观看| 久久无码av中文出轨人妻| 一本大道久久精品 东京热 | 白白色发布在线播放国产| 日本av一区二区在线| 久久精品国产自在天天线| 亚洲国产欧美在线成人| 亚洲精品区二区三区蜜桃| 操风骚人妻沉沦中文字幕| 中文字幕一区二区三区乱码| 日本加勒比东京热日韩| 亚洲国产精品日韩av专区| 亚洲加勒比久久88色综合|