• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    混合型數(shù)字簽名技術(shù)在Java中的實現(xiàn)

    2020-07-04 18:24:19曹虎山劉國彥曾小舟
    科學(xué)與財富 2020年14期
    關(guān)鍵詞:數(shù)字簽名面向?qū)ο?/a>網(wǎng)絡(luò)安全

    曹虎山 劉國彥 曾小舟

    摘 要:數(shù)字簽名技術(shù)建立在數(shù)據(jù)加密的基礎(chǔ)上,目前常用的加密方式有對稱加密和非對稱加密,對稱加密使用同一把密鑰加解密,而非對稱加密技術(shù)使用私鑰和公鑰實現(xiàn)加密過程,兩種加密技術(shù)各有優(yōu)缺點。在互聯(lián)網(wǎng)應(yīng)用中,信息的完整性和傳遞的時效性同等重要,在保證數(shù)據(jù)可靠性的同時兼顧好用戶體驗,提出混合型數(shù)字簽名技術(shù),并簡單介紹其實現(xiàn)原理,并且通過面向?qū)ο缶幊陶Z言Java來實現(xiàn)。

    關(guān)鍵詞:混合型;數(shù)字簽名;網(wǎng)絡(luò)安全;面向?qū)ο?/p>

    隨著信息技術(shù)的飛速發(fā)展,互聯(lián)網(wǎng)技術(shù)滲透到當(dāng)今社會的每個角落,“互聯(lián)網(wǎng)+”概念的推廣,傳統(tǒng)產(chǎn)業(yè)加快了信息化建設(shè)的腳步,網(wǎng)絡(luò)作為信息傳遞的途徑,信息的安全和保密越發(fā)變得重要。目前,為了保證數(shù)據(jù)在互聯(lián)網(wǎng)傳遞時的保密性,常用的技術(shù)手段有訪問控制、身份認(rèn)證及安全審計等。但是這些手段主要是從外部保護(hù)數(shù)據(jù)在傳遞過程中的安全性,一旦數(shù)據(jù)在發(fā)送前或接收后遭到攻擊,則不能驗證信息的完整性。因此,數(shù)字簽名技術(shù)因此誕生,數(shù)字簽名技術(shù)是在數(shù)據(jù)加密的基礎(chǔ)上演化而來,目前加密的方式主要有兩種:一種是對稱加密,另一種是非對稱加密。對稱加密指的是加密和解密使用的是同一把密鑰,它的優(yōu)點是加密速度快,效率高,缺點是密鑰分發(fā)及管理比較困難;而非對稱加密分為公鑰和私鑰,公鑰解決了密鑰分發(fā)的問題,但是公鑰的加解密操作速度較慢。因此,結(jié)合兩種加密方式的優(yōu)缺點,提出混合數(shù)字簽名技術(shù),在保證信息完整性的同時,提高數(shù)據(jù)加密的效率,對當(dāng)前各類互聯(lián)網(wǎng)應(yīng)用有積極的促進(jìn)作用。

    1.加密技術(shù)

    1.1對稱加密技術(shù)

    對稱加密也稱單密鑰加密,指的是通信雙方使用的同一個密鑰,既可以加密又可以解密。對稱加密通常在消息發(fā)送方需要加密大量數(shù)據(jù)時使用,具有加密速度快、計算量小、加密效率高、算法公開等特點。但是在數(shù)據(jù)傳送前,發(fā)送方和接收方必須約定好密鑰,且雙方都能保管好密鑰,否則只要一方的密鑰泄露,那么信息也就不安全了。此外,每次通信雙方都需要使用其他人不知道的唯一密鑰,多次通信則意味收、發(fā)雙方所擁有的密鑰變得越來越多,密鑰的管理成為雙方的負(fù)擔(dān)。常用的對稱加密算法有DES、AES等。

    1.2非對稱加密技術(shù)

    非對稱加密的密鑰由公鑰和私鑰組成,并且可以使用多對密鑰。通常有以下幾種加解密方式:私鑰解密公鑰加密,公鑰解密私鑰加密數(shù)據(jù),私鑰公鑰可以互相加密解密。私鑰只能由一方保管,公鑰交給請求方。非對稱加密速度較慢,但密鑰的管理較方便,也更安全。常見的非對稱加密算法有RSA等。

    1.3混合型加密技術(shù)

    在實際的網(wǎng)絡(luò)環(huán)境中,通常是將兩者混合使用,這樣即解決了密鑰管理的問題,也保證了在非安全信道中密鑰交換的安全性,同時大大提高了加解密的速度。尤其是在安全性與用戶體驗同等重要的互聯(lián)網(wǎng)應(yīng)用中,混合型加密技術(shù)是一種非常有效的數(shù)字簽名技術(shù)。

    1.4數(shù)字簽名

    不管是對稱加密還是非對稱加密,都只能保證數(shù)據(jù)的完整性,在網(wǎng)絡(luò)通信中,數(shù)據(jù)的不可抵賴性則要借助證書中心(Certificate Authority,簡稱CA)來實現(xiàn),證書中心的作用是為公鑰作認(rèn)證,CA通過自己的私鑰,對通信雙方的公鑰和一些相關(guān)信息一起加密,生成“數(shù)字證書”。該證書能使通信接收方確認(rèn)數(shù)據(jù)的來源和數(shù)據(jù)完整性,防止被他人偽造。當(dāng)通信雙方發(fā)生爭議時,CA根據(jù)消息上的簽名來判定這條消息是否確實由發(fā)送方發(fā)出,因為數(shù)字簽名的本質(zhì)是簽名只能通過簽名者的私鑰才能產(chǎn)生,從而保證數(shù)據(jù)在傳輸過程中的不可抵賴性。

    2.混合型數(shù)字簽名技術(shù)在Java中的實現(xiàn)

    Java作為最熱門的Web應(yīng)用開發(fā)語言,在網(wǎng)絡(luò)安全編程中實現(xiàn)數(shù)字簽名具有很大的優(yōu)勢,它提供了兩種API實現(xiàn)數(shù)據(jù)的加密與解密,即JCA和JCE。在此我們采用混合密鑰算法實現(xiàn)數(shù)字簽名,不僅可以提高信息在傳輸過程中的保密性,也使服務(wù)器端的工作效率大大提高。例如針對客戶機(jī)/服務(wù)器模型(C/S架構(gòu)),實現(xiàn)過程如下:

    (1)服務(wù)器Server使用 Hash 算法對所發(fā)送的數(shù)據(jù)內(nèi)容進(jìn)行計算得到信息摘要,用自己的私鑰ServerPrivateKey對其加密形成數(shù)字簽名;

    (2)服務(wù)器Server生成對稱密鑰 ServerSingleKey,使用客戶端Client的公鑰ClientPublicKey對其加密;

    (3)服務(wù)器Server使用對稱密鑰ServerSingleKey對信息內(nèi)容進(jìn)行加密;

    (4)服務(wù)器Server將加密后的對稱密鑰和加密后的密文打包;

    (5)服務(wù)器Server將打包后的數(shù)據(jù)和數(shù)字簽名發(fā)送至客戶端Client;

    (6)客戶端Client收到加密的數(shù)據(jù)包后,用客戶端的私鑰ClientPrivateKey解密得到ServerSingleKey;

    (7)客戶端Client使用解密后的對稱密鑰ServerSingleKey對密文數(shù)據(jù)包解密,得到明文內(nèi)容;

    驗證數(shù)字簽名過程:

    (1)客戶端Client獲取數(shù)字簽名;

    (2)客戶端Client采用相同的Hash算法對解密后的數(shù)據(jù)內(nèi)容進(jìn)行計算得到信息摘要,并使用服務(wù)器Server的公鑰ServerPublicKey檢驗數(shù)字簽名;

    (3)如果數(shù)字簽名相同,那么就可以確認(rèn)該數(shù)字簽名是來自服務(wù)器Server,并且數(shù)據(jù)在傳輸過程中沒有遭到破壞或篡改。

    服務(wù)器Server實現(xiàn)密鑰生成和簽名的部分代碼:

    KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");//初始化參數(shù)

    keyPairGenerator.initialize(512);

    KeyPair keyPair = keyPairGenerator.generateKeyPair();

    RSAPublicKey ServerPublicKey = (RSAPublicKey)keyPair.getPublic();//服務(wù)器公鑰

    RSAPrivateKey ServerPrivateKey = (RSAPrivateKey)keyPair.getPrivate();//服務(wù)器私鑰

    //執(zhí)行簽名

    PKCS8EncodedKeySpec pkcs8EncodedKeySpec = new PKCS8EncodedKeySpec(ServerPrivateKey.getEncoded());

    KeyFactory keyFactory = KeyFactory.getInstance("RSA");

    PrivateKey privateKey = keyFactory.generatePrivate(pkcs8EncodedKeySpec);

    Signature signature = Signature.getInstance("MD5withRSA");

    signature.initSign(privateKey);

    signature.update(src.getBytes());

    byte[] result = signature.sign();

    客戶端Client驗證簽名的部分代碼:

    X509EncodedKeySpec x509EncodedKeySpec = new X509EncodedKeySpec(ServerPublicKey.getEncoded());

    keyFactory = KeyFactory.getInstance("RSA");

    PublicKey publicKey = keyFactory.generatePublic(x509EncodedKeySpec);

    signature = Signature.getInstance("MD5withRSA");

    signature.initVerify(publicKey);

    signature.update(src.getBytes());

    boolean bool = signature.verify(result);//驗證簽名

    3.結(jié)束語

    在網(wǎng)絡(luò)通信過程中,數(shù)字簽名技術(shù)是保障信息安全的重要手段。混合型加密算法不僅實現(xiàn)了數(shù)字簽名,而且保證了數(shù)據(jù)在傳輸過程中的保密性與可靠性,以及通信雙方的不可抵賴,同時提高了加解密過程的效率,在保證信息安全的基礎(chǔ)上對用戶體驗的影響也降到最小,是一項值得推廣的互聯(lián)網(wǎng)安全應(yīng)用技術(shù)。

    參考文獻(xiàn):

    [1]王方鑫.基于RSA簽名方案的研究[J].電腦知識與技術(shù),2018,14(36):28-29.

    [2]段鎮(zhèn)源.探究網(wǎng)絡(luò)安全技術(shù)中數(shù)字簽名的基本原理[J].通訊世界,2019,26(04):31-32.

    [3]趙悅. 基于RSA加密解密的即時通訊系統(tǒng)的設(shè)計與實現(xiàn)[D].吉林大學(xué),2016.

    [4]鄭鴻雁. 移動數(shù)字簽名關(guān)鍵技術(shù)研究[D].北京郵電大學(xué),2014.

    [5]李瑞俊.基于混合密碼體制的數(shù)據(jù)加密模型的研究[J].赤峰學(xué)院學(xué)報(自然科學(xué)版),2014,30(18):10-11.

    作者簡介:

    曹虎山(1967—),男,漢族,湖南益陽,教授,湖南生物機(jī)電職業(yè)技術(shù)學(xué)院,研究方向:信息技術(shù)。

    劉國彥(1978—),男,漢族,湖南益陽,副教授,湖南生物機(jī)電職業(yè)技術(shù)學(xué)院,研究方向:軟件測試。

    曾小舟(1986—),男,漢族,湖南常德,講師,湖南生物機(jī)電職業(yè)技術(shù)學(xué)院,研究方向:軟件工程。

    基金項目:

    湖南省教育廳科學(xué)研究項目《混合型數(shù)字簽名技術(shù)在O2O電子商務(wù)網(wǎng)絡(luò)安全中的應(yīng)用研究》(項目編號:15C0810)階段性成果。

    猜你喜歡
    數(shù)字簽名面向?qū)ο?/a>網(wǎng)絡(luò)安全
    淺析計算機(jī)安全防護(hù)中數(shù)字簽名技術(shù)的應(yīng)用
    網(wǎng)絡(luò)安全
    網(wǎng)絡(luò)安全人才培養(yǎng)應(yīng)“實戰(zhàn)化”
    面向?qū)ο蟮挠嬎銠C(jī)網(wǎng)絡(luò)設(shè)計軟件系統(tǒng)的開發(fā)
    電子測試(2018年15期)2018-09-26 06:01:34
    上網(wǎng)時如何注意網(wǎng)絡(luò)安全?
    面向?qū)ο蟮臄?shù)據(jù)交換協(xié)議研究與應(yīng)用
    基于數(shù)字簽名的QR碼水印認(rèn)證系統(tǒng)
    面向?qū)ο骔eb開發(fā)編程語言的的評估方法
    我國擬制定網(wǎng)絡(luò)安全法
    聲屏世界(2015年7期)2015-02-28 15:20:13
    面向?qū)ο笮畔⑻崛≈杏跋穹指顓?shù)的選擇
    河南科技(2014年10期)2014-02-27 14:09:03
    石棉县| 湖口县| 松潘县| 牡丹江市| 兴安县| 普陀区| 宣汉县| 商水县| 全州县| 蒲城县| 比如县| 个旧市| 达拉特旗| 合肥市| 北川| 辽宁省| 赤水市| 平阳县| 玉林市| 讷河市| 全州县| 沅陵县| 宝清县| 金乡县| 青海省| 溧阳市| 新乡市| 昌吉市| 南皮县| 延寿县| 永城市| 科尔| 新竹市| 通渭县| 徐水县| 东光县| 保定市| 南投县| 仁怀市| 南通市| 额济纳旗|