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

        ?

        基于屬性加解密通信系統(tǒng)的設(shè)計與實現(xiàn)

        2021-10-30 05:19:10曹龍龍
        關(guān)鍵詞:用戶系統(tǒng)

        ◆曹龍龍

        基于屬性加解密通信系統(tǒng)的設(shè)計與實現(xiàn)

        ◆曹龍龍

        (山東農(nóng)業(yè)大學(xué)信息科學(xué)與工程學(xué)院 山東 271000)

        為了實現(xiàn)用戶雙方通信的安全和保密性,將屬性加密用于實際應(yīng)用中,通過OpenABE加密算法,使用流式套接字編程,實現(xiàn)了一方加密消息發(fā)送,另一方接收并解密消息。為了實現(xiàn)對端交互通信和任意一方加解密,引入了CryptHook通信方式,通過socket劫持,實現(xiàn)了對端加解密交互通信系統(tǒng),通過運(yùn)行測試,系統(tǒng)加解密消息均正常,實現(xiàn)了雙方保密通信。

        屬性加密;OpenABE;流式套接字;CryptHook

        1 引言

        屬性加密(ABE),是一種新的公鑰加密算法。最先由Waters提出,被看作是最具前景的支持細(xì)粒度訪問的加密源語[1]。張文芳[2]提出了基于CP-ABE(密文策略屬性基加密)的屬性撤銷方案。該方案中設(shè)計了高效的重加密算法,引入了屬性撤銷列表,實現(xiàn)了細(xì)粒度的屬性直接撤銷。文獻(xiàn)[3]是國外研究者基于Event-B方法,通過先驗的形式驗證,提出了一種基于屬性的訪問控制的正確構(gòu)造模型。本文結(jié)合屬性加密的基本原理,使用OpenABE加密算法和流式套接字編程技術(shù),實現(xiàn)了一個對端加解密交互通信程序。

        2 系統(tǒng)整體架構(gòu)與原理分析

        2.1 系統(tǒng)整體架構(gòu)設(shè)計

        本系統(tǒng)為基于屬性加解密的對端通信程序,主要功能為:發(fā)送方對消息加密形成密文,之后發(fā)送給接收方,接收方收到密文后進(jìn)行解密,得到原消息。該系統(tǒng)的總體架構(gòu)如圖1所示。

        圖1 系統(tǒng)總體架構(gòu)圖

        圖1顯示了該系統(tǒng)加解密的全過程。用戶A作為服務(wù)端,輸入明文,明文通過公共參數(shù)加密得到密文,服務(wù)端將密文發(fā)送出去;用戶B作為客戶端,接收密文,并通過產(chǎn)生的私鑰解密,還原得到原明文,從而實現(xiàn)了加密通信。

        2.2 系統(tǒng)設(shè)計的基本原理分析

        2.2.1 ABE的預(yù)備知識

        ABE(基于屬性的加密),一種更廣泛的公鑰加密類型,是一種模糊的基于身份加密的方案。在ABE體制中,用屬性集合來標(biāo)識一個用戶的身份,多種不同的屬性組成就可以方便地表示某一些具有共同屬性的用戶組身份,從而可以實現(xiàn)一對多的加密通信。

        ABE在密文和密鑰中引入了訪問結(jié)構(gòu)(又稱策略)。根據(jù)策略嵌入對象不同,又可分成KP-ABE和CP-ABE。前者的策略在密鑰中,屬性集合在密文中;而后者的策略在密文中,屬性集合在密鑰中。

        KP-ABE將策略嵌入了密鑰,密文用屬性加密存放在服務(wù)器,當(dāng)允許用戶得到某種消息時,就分配一個特定的策略給用戶。同時,用戶若想解密多個文件,則要有多個匹配的密鑰,這種方式多用于日志加密的管理及付費(fèi)網(wǎng)站。

        CP-ABE將策略嵌入了密文,因此Owner可以設(shè)定訪問密文的策略,限定只有擁有特定屬性的用戶才能訪問密文。CP-ABE對數(shù)據(jù)做了粒度可細(xì)化到屬性的訪問控制,因此多用于細(xì)粒度的數(shù)據(jù)共享和屬性撤銷,在屬性加密機(jī)制中比較常用。

        ABE包含四個基本算法:

        (1) Setup(K,U):輸入安全參數(shù)K和系統(tǒng)屬性全集U,輸出公共參數(shù)Params和主密鑰mk;

        (2) KeyGen(mk,X):輸入mk和權(quán)限索引X,輸出密鑰skx;

        (3) Enc(Params,Y,M):輸入Params、密文索引Y和明文M,輸出密文CTy;

        (4) Dec(Params,skx,CTy):輸入Params、skx和CTy,輸出解密后的結(jié)果M’。

        在CP-ABE中,X表示用戶的屬性集合,密文索引Y表示策略,只有X是Y的授權(quán)集,X滿足Y。解密成功,當(dāng)且僅當(dāng) Dec(Params,KeyGen(mk,X),Enc(Params,Y,M))=M成立。

        2.2.2 OpenABE加密方案的流程分析

        OpenABE(開放的屬性加密),是一個基于C/C++的加密庫,支持基橢圓曲線和雙線性操作。它實現(xiàn)了多種屬性加密的方案,提供了數(shù)學(xué)API(ZML),方便了用戶的操作。實現(xiàn)加密的基本流程如下:

        初始化OpenABE庫

        選擇一種ABE加密算法構(gòu)建上下文

        生成ABE設(shè)置參數(shù)(主公共參數(shù))

        加密明文數(shù)據(jù)和主公共參數(shù)

        解密密文和用戶私鑰(密鑰機(jī)構(gòu)產(chǎn)生)

        卸載OpenABE庫

        3 系統(tǒng)具體實現(xiàn)與探討

        3.1 簡單對端通信系統(tǒng)的初步實現(xiàn)

        本系統(tǒng)是在Ubuntu 16.04.5 –server虛擬機(jī)環(huán)境下開發(fā)的,通過SSH模擬工具Termius進(jìn)行本地測試。

        首先,服務(wù)端創(chuàng)建監(jiān)聽套接字,經(jīng)過三次握手建立TCP連接。兩端分別初始化openabe庫,并構(gòu)建CP-ABE上下文。

        服務(wù)端調(diào)用generateParams()函數(shù)產(chǎn)生主公共參數(shù)和主密鑰參數(shù),調(diào)用keygen()函數(shù)生成用戶私鑰key0,用來解密消息。服務(wù)端將主公共參數(shù)導(dǎo)出并通過write()函數(shù)發(fā)送給客戶端,用于加密使用。

        客戶端收到主公共參數(shù)后導(dǎo)入上下文,調(diào)用encrypt()函數(shù)將輸入的明文加密形成密文,并將密文發(fā)送給服務(wù)端。

        服務(wù)端接收密文后,調(diào)用decrypt()函數(shù),引入私鑰key0進(jìn)行解密,將解密消息輸出到控制臺,一輪通信結(jié)束。實現(xiàn)核心函數(shù)如下:

        采用策略樹加密,將明文pt1加密后存入ct。

        使用用戶私鑰key0解密,將密文ct解密后存入pt2。

        3.2 基于socket劫持通信方式的再探究

        在上述實現(xiàn)過程中,系統(tǒng)只能在一端加密或解密,只能由客戶端發(fā)送消息給服務(wù)器,失去了交互性,這不符合實際場景的應(yīng)用。為解決該問題,引入了CryptHook。

        CryptHook是一個模塊化的實現(xiàn),它將網(wǎng)絡(luò)通信中的收發(fā)函數(shù)和加解密函數(shù)封裝起來,通過劫持send/sendto和recv/recvfrom基本系統(tǒng)調(diào)用,屏蔽掉TCP通信的accept、connect、listen函數(shù),實現(xiàn)了直接互發(fā)消息。同時,使用對稱分組密碼加密,保證了程序的安全性。劫持實現(xiàn)的核心函數(shù)如下:

        該函數(shù)本質(zhì)上是一個回調(diào)函數(shù),當(dāng)使用自定義函數(shù)時,可以自動回調(diào)系統(tǒng)函數(shù)。通過動態(tài)鏈接庫操作句柄和標(biāo)志,返回標(biāo)志對應(yīng)函數(shù)執(zhí)行代碼的地址。因此,只需在收發(fā)函數(shù)中分別調(diào)用該函數(shù)并將標(biāo)志參數(shù)分別設(shè)為“recv”、“recvfrom”、“send”、“sendto”,就可自動回調(diào)系統(tǒng)函數(shù)實現(xiàn)收發(fā)消息。

        在之前的加解密系統(tǒng)中,加密方先加密消息再發(fā)送給對方,解密方先接收消息再進(jìn)行解密。因此,可重新定義收發(fā)消息函數(shù)與加解密函數(shù)。在send/sendto函數(shù)中調(diào)用自定義的encrypt_data()函數(shù),并保證調(diào)用順序在dlsym()函數(shù)之前。同理,在recv/recvfrom函數(shù)中調(diào)用自定義的decrypt_data()函數(shù),并保證調(diào)用順序在dlsym()函數(shù)之后。

        通過上述實現(xiàn),就可以滿足任意一方加解密并收發(fā)消息,實現(xiàn)了真正的交互加解密通信。重新編譯源文件,執(zhí)行程序,運(yùn)行結(jié)果如圖2所示。

        圖2 系統(tǒng)運(yùn)行結(jié)果圖

        4 總結(jié)

        本文實現(xiàn)了基于屬性加密、解密的通信系統(tǒng)。通過引入socket劫持,實現(xiàn)了對端交互,同時無須建立連接即可實現(xiàn)通信,降低了時間開銷,提高了運(yùn)行效率。當(dāng)前屬性加密存在著屬性門檻設(shè)置通用性差、雙線性映射耗費(fèi)時間等問題亟待解決。屬性加密在區(qū)塊鏈、云計算等前沿領(lǐng)域應(yīng)用仍然潛力巨大。

        [1]Proc Eurocrypt.Fuzzy Identity Based Encryption[J]. 2005, 3494:457-473.

        [2]張文芳,陳楨,劉旭東,王小敏.支持細(xì)粒度屬性直接撤銷的CP-ABE方案[J].軟件學(xué)報,2019,30(09):2760-2771.

        [3]HaniaGadouche,ZoubeyrFarah,AbdelkamelTari. A correct-by-construction model for attribute-based access control[J]. Cluster Computing,2019(prepublish).

        猜你喜歡
        用戶系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機(jī)系統(tǒng)
        ZC系列無人機(jī)遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        Camera360:拍出5億用戶
        国产精品国产三级国产专区51区| 亚洲精品国产第一区二区尤物 | 久久国产精品二国产精品| 中文字幕久久精品波多野结百度| 亚洲av综合色区久久精品| 亚洲综合av一区二区三区蜜桃| 亚洲中文字幕在线观看| 国产剧情福利AV一区二区| 国产白浆精品一区二区三区 | 国产精品久久久久9999| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 中文字幕日产人妻久久| 中文字幕日本在线乱码| 国产区精品一区二区不卡中文 | 日本顶级片一区二区三区| 久久无码潮喷a片无码高潮| 国产真实伦在线观看| 日本久久久免费高清| 免费观看在线视频播放| 粉嫩av国产一区二区三区| 毛片在线播放a| 无码成年性午夜免费网站蜜蜂| 中文字幕一区二区三区乱码人妻 | 精品国产亚洲第一区二区三区| 丰满少妇呻吟高潮经历| 色综合久久天天综线观看 | 桃色一区一区三区蜜桃视频| 久久天天躁狠狠躁夜夜avapp| 欧美丰满熟妇bbbbbb百度| 久久成人黄色免费网站| 最新国产熟女资源自拍| 97高清国语自产拍| 国产激情视频在线观看首页| 女同舌吻互慰一区二区| 亚洲av日韩av永久无码下载| 日本夜爽爽一区二区三区| 麻美由真中文字幕人妻| 漂亮人妻被强了完整版| 国产99视频精品免视看9| 无码吃奶揉捏奶头高潮视频| 国产精品成人av大片|