国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于模運(yùn)算的二維碼信息隱藏算法

2024-12-31 00:00:00李妹?李倫玲?黃鵬程
信息系統(tǒng)工程 2024年7期
關(guān)鍵詞:二維碼

摘要:由于二維碼具有公開(kāi)性質(zhì),任何人都可以解碼獲取其中的信息,有隱私泄露的風(fēng)險(xiǎn)。為了二維碼傳輸過(guò)程中的安全問(wèn)題,提出了一種基于模運(yùn)算的二維碼信息隱藏算法。該算法充分利用模運(yùn)算的計(jì)算特性,將秘密信息巧妙地隱藏在二維碼的填充碼字中。生成的二維碼毫不起眼,巧妙地減弱了攻擊者的窺探欲望,從而保護(hù)了用戶的隱私。實(shí)驗(yàn)結(jié)果表明,該算法生成的二維碼具備較強(qiáng)的魯棒性和較高的安全性。

關(guān)鍵詞:信息隱藏;二維碼;模運(yùn)算

一、前言

如今,二維碼憑借讀取快速、容錯(cuò)性強(qiáng)等特點(diǎn)[1],其應(yīng)用場(chǎng)景已經(jīng)得到進(jìn)一步擴(kuò)展[2],廣泛應(yīng)用于生活中的各個(gè)領(lǐng)域[3]。然而,由于二維碼的公開(kāi)性質(zhì),導(dǎo)致其中的信息很容易被攻擊者竊取,進(jìn)而泄露重要信息。為了加強(qiáng)二維碼傳輸過(guò)程中的安全性,保護(hù)秘密信息,本文根據(jù)信息隱藏技術(shù)[4],提出一種基于模運(yùn)算的信息隱藏算法[5]。該算法利用模二運(yùn)算的計(jì)算特性,將秘密信息加密,隱藏在二維碼的填充區(qū)域。嵌入秘密信息的二維碼可以正常解碼出公共信息,只有特定的解碼算法才可以重構(gòu)出秘密信息,且嵌入秘密信息的二維碼具備完整的糾錯(cuò)能力,魯棒性強(qiáng)。

二、算法設(shè)計(jì)

本文利用模運(yùn)算中比較特殊的模二運(yùn)算,將秘密信息加密后,嵌入二維碼的填充區(qū)域。生成的共享份二維碼不但保留了完整的糾錯(cuò)能力,可以對(duì)抗各種外界干擾,魯棒性強(qiáng),而且該二維碼具備較強(qiáng)的隱蔽性,可以有效降低攻擊者的懷疑。該算法的具體步驟如下:

(一) 信息隱藏算法

輸入:公共信息二維碼CQ、秘密信息S。

輸出:帶有秘密信息的共享二維碼SQ。

步驟一:將秘密信息S轉(zhuǎn)換為二進(jìn)制位流,每8個(gè)為一組,不足8位的末尾補(bǔ)0,記為Si={S1,S2,…,Sm}。

步驟二:去除公共信息二維碼的掩碼模式,提取公共信息二維碼CQ所有的填充碼字Ri={R1,R2,R3,…,Rn}。

步驟三:若m+1gt;n,則增加二維碼的版本,返回步驟二。

步驟四:雙方約定好一個(gè)8位二進(jìn)制數(shù)D,保留其有效數(shù)字,記為Dl,其長(zhǎng)度為p。例如,8位二進(jìn)制數(shù)為00001101,則Dl=1101。

步驟五: 將秘密信息Si的每一組數(shù)據(jù)帶入公式(1)計(jì)算,得到m個(gè)8+p-1位的二進(jìn)制數(shù)據(jù)SDi= {SD1,SD2,SD3,…,SDm}。

SDi=Si md2⊙ Dl(i≤m) (1)

md2⊙代表模二乘法。

步驟六:將SDi中每一組數(shù)據(jù)中最右邊的p-1位bit刪除,根據(jù)模二運(yùn)算的特性,刪除后將不影響模二乘除之間的轉(zhuǎn)換。例如:10100111 001=11111011 md2⊙ 1111,去除p-1=3位后,SD=10100111。解碼時(shí),用SD補(bǔ)足p-1=3位0后,模二除Dl,將可還原碼字。例如,10100111 000 md⊕1111=11111011。

步驟七:將填充碼字Ri替換為計(jì)算后的二進(jìn)制數(shù)據(jù)流,R1=D,R2,R3,…,Rm+1=SD1,SD2,SD3,…,SDm,并計(jì)算糾錯(cuò)碼字。

步驟八:生成帶有秘密信息的共享二維碼SQ。

(二)信息重構(gòu)算法

輸入:帶有秘密信息的共享二維碼SQ。

輸出:秘密信息S。

步驟一:去除公共信息二維碼的掩碼模式,利用約定好的二進(jìn)制數(shù)D,提取公共信息二維碼CQ所有的填充碼字Ri={R1,R2,R3,…,Rn}。

步驟二:根據(jù)填充碼字的特性,刪除未修改的填充碼字,僅保留修改過(guò)的,此時(shí),Ri={R1,R2,R3,…,Rm}。

步驟三:保留D的有效數(shù)字,記為Dl,其長(zhǎng)度為p。例如D=00001101,則Dl=1101。

步驟四: 將填充碼字Ri(igt;1)的每一個(gè)碼字,帶入公式(2)計(jì)算,得到m個(gè)8位的二進(jìn)制數(shù)據(jù)Si= {S1,S2,S3,…,Sm}。

Si=(Rilt;lt;(p-1)) md2⊕Dl(i≤m) (2)

其中,md2⊙代表模二除法,lt;lt;p-1表示二進(jìn)制向左移p-1位。

例如: 1010 0111 000 md⊕1111=1111 1011。

步驟五:完成秘密信息S的提取。

三、實(shí)驗(yàn)結(jié)果與分析

(一)實(shí)驗(yàn)結(jié)果

本文選用Python語(yǔ)言驗(yàn)證算法的可行性。如圖1所示為在版本4-H的二維碼嵌入秘密信息的實(shí)驗(yàn)結(jié)果,圖(a)為公共信息“www.baidu.com”,在不嵌入秘密信息的情況下生成的二維碼。圖(b)嵌入秘密信息“www.xmut.edu.cn”后生成的二維碼。將秘密信息轉(zhuǎn)化為二進(jìn)制數(shù)據(jù),并將其分組后,假設(shè)D為00001111。接下來(lái),可以將D與每個(gè)數(shù)據(jù)組進(jìn)行模二乘法的運(yùn)算,將運(yùn)算結(jié)果替換(a)中的填充區(qū)域,重新計(jì)算糾錯(cuò)碼即可得到圖(b)。從實(shí)驗(yàn)可以看出,生成的二維碼與原二維碼相似,可以正常讀取公共信息,并無(wú)任何異常,有效地降低了攻擊者的懷疑,保障了二維碼中的秘密信息的安全性。

(二)秘密信息的嵌入容量

前文信息隱藏算法主要利用了二維碼中的填充區(qū)域,將加密后的秘密信息逐一替換二維碼中的填充碼字。因此,該方案的嵌入容量主要依據(jù)二維碼的填充區(qū)域大小。填充區(qū)域越大,可嵌入的秘密信息就越多,嵌入容量也就越大。在算法中,需要確保嵌入的秘密信息不超過(guò)填充區(qū)域的容量,以保證二維碼的有效性和可讀性。因此,填充區(qū)域的大小在算法設(shè)計(jì)中起到了至關(guān)重要的作用。表1列出了不同版本和糾錯(cuò)級(jí)別的二維碼嵌入容量的大小。從表1可以看出,該方案具備較高的嵌入容量。

(三)魯棒性分析

在實(shí)際應(yīng)用中,二維碼可能會(huì)受到各種干擾因素的影響,如環(huán)境噪聲、圖片失真等。因此,為了評(píng)估二維碼在不同干擾條件下的魯棒性和可靠性,對(duì)嵌入秘密信息的二維碼進(jìn)行了多種攻擊實(shí)驗(yàn),以確保秘密信息的正常讀取。如表2,首先,使用高斯噪聲和椒鹽噪聲對(duì)二維碼圖片進(jìn)行干擾。高斯噪聲模擬了圖像在傳輸或采集過(guò)程中受到的隨機(jī)噪聲干擾,椒鹽噪聲則模擬了圖像中出現(xiàn)的隨機(jī)亮點(diǎn)和暗點(diǎn)。接下來(lái),將對(duì)二維碼圖片進(jìn)行高斯模糊處理,模擬圖像在采集或傳輸過(guò)程中的模糊現(xiàn)象。其次,模擬二維碼圖片的缺失情況,即在圖片中隨機(jī)刪除一部分二維碼信息。最后,對(duì)二維碼圖片進(jìn)行不同程度的人工污損,模擬惡意攻擊者對(duì)二維碼進(jìn)行篡改的情況。通過(guò)以上多種實(shí)驗(yàn),發(fā)現(xiàn)在各種攻擊的影響下,只要二維碼中遺失的像素?cái)?shù)量不超過(guò)二維碼本身的糾錯(cuò)能力范圍,仍然能夠成功還原秘密信息。

(四)與其他方案對(duì)比

文獻(xiàn)[ 6]基于二維碼的糾錯(cuò)能力設(shè)計(jì)了一種三模塊分組方法,通過(guò)僅更改一個(gè)模塊來(lái)隱藏兩個(gè)機(jī)密位,雖然增強(qiáng)了二維碼的信息隱藏容量,但該方案生成的二維碼并不具備完整的糾錯(cuò)能力,相較于本文方案,魯棒性更低。文獻(xiàn)[ 7]利用異或運(yùn)算將密鑰和秘密信息一起嵌入二維碼的填充區(qū)域,生成的二維碼具備完整的糾錯(cuò)能力。然而,由于密鑰的嵌入,該方案有效嵌入容量將受到限制,嵌入容量低。具體比較見(jiàn)表2。從表3可以看出,本方案與現(xiàn)有方案相比,在魯棒性、嵌入容量和計(jì)算復(fù)雜度等方面有明顯優(yōu)勢(shì)。

四、結(jié)語(yǔ)

本文提出了一種基于模運(yùn)算的二維碼信息隱藏算法,旨在保證二維碼的公共信息可以在正常解碼的前提下,隱藏秘密信息。利用模運(yùn)算,將加密后的秘密信息嵌入二維碼的填充碼字中,確保了二維碼的可解碼性。該算法的關(guān)鍵在于二維碼中的填充碼字?jǐn)?shù)量有限,限制了秘密信息的嵌入容量。同時(shí),如果二維碼受到的攻擊超過(guò)該二維碼的糾錯(cuò)能力,那么將無(wú)法正確提取秘密信息。為此,未來(lái)的研究將進(jìn)一步提高嵌入量和抗污損攻擊能力,為二維碼的應(yīng)用提供更可靠的保障。

參考文獻(xiàn)

[1]Qian W ,Wenjing L ,Bo P , et al.Two-dimensional code enables visibly mapping herbal medicine chemome: an application in Ganoderma lucidum.[J].Chinese medicine,2023,18(1):6-6.

[2]Rao J .Operation mode of electric business logistics based on the application of two-dimensional code technology[J].International Journal of Metrology and Quality Engineering,2020,113.

[3]Chen T ,Ding K ,Hao S , et al.Batch-based traceability for pork: A mobile solution with 2D barcode technology[J].Food Control,2020,107106770.

[4]Y Q Shi, H Kim, F Perez-Gonzalez , et al. Increasing Secret Data Hiding Capacity in QR Code Using 3×3 Subcells[M]. Switzerland:Springer International Publishing AG, 2017: 10082.

[5]D Wu, Y Wu. Covert Communication via the QR Code Image by a Data Hiding Technique Based on Module Shape Adjustments[J]. IEEE Open Journal of the Computer Society. 2020, 1: 12-34.

[6]Lin, P.-Y.; Lan, W.-S.; Chen, Y.-H.; Wu, W.-C. A Confidential QR Code Approach with Higher Information Privacy. Entropy 2022, 24, 284.

[7]Zhao Q ,Yang S ,Zheng D , et al.A QR Code Secret Hiding Scheme against Contrast Analysis Attack for the Internet of Things[J].Security and Communication Networks,2019,20198105787:1-8105787:8.

作者單位:李妹,福州職業(yè)技術(shù)學(xué)院;李倫玲、黃鵬程,廈門理工學(xué)院

■ 責(zé)任編輯:張津平、尚丹

猜你喜歡
二維碼
可以吃的二維碼
二維碼通行券自助發(fā)行系統(tǒng)在新興市場(chǎng)的應(yīng)用
二維碼迷宮
二維碼
童話世界(2020年32期)2020-12-18 18:15:41
小康二維碼
心聲歌刊(2020年5期)2020-11-27 01:56:06
從條形碼到二維碼
從條形碼到二維碼
會(huì)賺錢的收款二維碼
讓嚴(yán)肅的二維碼呆萌起來(lái)
二維碼讓政務(wù)公開(kāi)更直接
富源县| 靖西县| 泾川县| 咸宁市| 湛江市| 邵阳县| 青州市| 闽清县| 晋城| 迭部县| 安阳市| 开远市| 阿勒泰市| 齐河县| 雷山县| 佛坪县| 温泉县| 兴和县| 静乐县| 汾阳市| 海盐县| 五常市| 太保市| 资中县| 万年县| 丹东市| 英吉沙县| 永寿县| 嵊州市| 保德县| 江口县| 舒城县| 甘德县| 新昌县| 平果县| 科尔| 黑龙江省| 周口市| 南丹县| 临武县| 四会市|