0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

詳解二維碼的安全與隱私保護(hù)機(jī)制

如意 ? 來源:計算機(jī)與網(wǎng)絡(luò)安全微信公 ? 作者:計算機(jī)與網(wǎng)絡(luò)安全 ? 2020-12-02 15:38 ? 次閱讀

二維碼的應(yīng)用發(fā)展得比較早。早在20世紀(jì)80年代開始,日本和韓國就有快餐店和便利店在宣傳單和優(yōu)惠券上使用二維碼,后來又逐步發(fā)展到將二維碼作為電影和表演的入場券,觀眾只需在特定設(shè)備上掃碼即可進(jìn)入。目前通過掃描加密二維碼進(jìn)行登記、付費(fèi)等的相關(guān)應(yīng)用已經(jīng)非常普遍了。

2008年北京奧運(yùn)會以后,二維碼在我國開始普及,電影票、登機(jī)牌、火車票等都開始出現(xiàn)二維碼。特別是隨著支付寶和微信支付的普及,掃碼付款已經(jīng)成為日常生活的一部分。

二維碼的安全保護(hù)一直是一個研究熱點(diǎn)。由于二維碼的數(shù)據(jù)內(nèi)容與制作來源難以監(jiān)管,編碼、譯碼過程完全開放,識讀軟件質(zhì)量參差不齊,因此在缺乏統(tǒng)一管理規(guī)范的前提下,易造成二維碼信息泄露和信息涂改等安全威脅。

針對二維碼的攻擊方式呈現(xiàn)出了多樣性的特點(diǎn),主要包括以下4類。

(1)誘導(dǎo)登錄惡意網(wǎng)站:攻擊者只需將偽造、詐騙或釣魚等惡意網(wǎng)站的網(wǎng)址鏈接制作成二維碼圖形,即可在誘導(dǎo)用戶掃碼登錄其網(wǎng)站后,獲取用戶輸入的個人敏感信息、金融賬號等。

(2)木馬植入:攻擊者將自動下載惡意軟件的命令編入二維碼,當(dāng)用戶在缺少防護(hù)措施的情況下掃描該類二維碼時,用戶系統(tǒng)就會被悄悄植入木馬、蠕蟲或隱匿軟件,攻擊者在后臺就可以肆意破壞用戶文件、偷竊用戶信息,甚至遠(yuǎn)程控制用戶、群發(fā)收費(fèi)短信等。

(3)信息劫持:很多商家都提供掃碼支付等在線支付手段,因此網(wǎng)絡(luò)支付平臺會根據(jù)用戶訂單生成二維碼,以方便用戶掃描支付。若攻擊者劫持了商家與用戶之間的通信信息,并惡意修改訂單,那么將對用戶和商家造成直接的經(jīng)濟(jì)損失。

(4)網(wǎng)頁(Web)攻擊:隨著手機(jī)瀏覽器功能的日趨成熟,用戶能夠通過手機(jī)輸入網(wǎng)站域名或提交Web表單。攻擊者利用Web頁面的漏洞,將非法SQL語句編入二維碼,當(dāng)用戶使用手機(jī)掃描二維碼登錄Web頁面時,惡意SQL語句就會自動執(zhí)行(SQL注入)。若數(shù)據(jù)庫防范機(jī)制脆弱,則會造成數(shù)據(jù)庫被侵入,進(jìn)而導(dǎo)致更嚴(yán)重的危害。

除了基于密碼的安全二維碼方法外,還有基于信息隱藏的二維碼保護(hù)算法。該算法通過在二維碼中嵌入一些秘密信息,改變二維碼的形態(tài),從而使攻擊者無法獲知其內(nèi)容。嵌入的信息可以被正常提取以無損地恢復(fù)二維碼。

基于信息隱藏的二維碼保護(hù)算法將二維碼圖像分成若干小塊,將每個小塊掃描成一維序列后嵌入1 bit信息。二維碼圖像是一種二值圖像,連續(xù)像素具有同種顏色的概率很高。因此,針對每一行,不再直接對每個位置具有的像素進(jìn)行編碼,而是對顏色變化的位置和從該位置開始的連續(xù)同種顏色的個數(shù)進(jìn)行編碼。圖1所示的編碼結(jié)果為:

圖1 掃描后像素的編碼過程

算法的具體步驟如下。

第1步:將二維碼邊緣部分進(jìn)行填充,使得二維碼圖像的像素長寬都為3的倍數(shù),把二維碼分成互不重疊的3×3小塊。

第2步:將每個3×3小塊按照圖2所示從b1到b9的一順序掃描成維序列,并對該序列進(jìn)行行程編碼,每個小塊編碼為

圖2 像素值掃描順序

第3步:選出第一個行程最長的編碼,將行程為奇數(shù)的表示為嵌入1,行程為偶數(shù)的表示為嵌入0。如果行程奇偶性與嵌入信息不符,則將行程值加1。

第4步:根據(jù)該圖像塊是否被修改過,對1 像素進(jìn)行奇偶校驗(yàn),1 像素為偶數(shù)表示該塊未被修改過,1像素為奇數(shù)表示該塊被修改過,如須修改,則改變b9像素的值。

第5步:重復(fù)上述過程,直到所有分塊均被修改。

上述過程中,由于行程值為9的行程編碼修改后將越界,故其不作為嵌入塊。同時,最長行程包含b9像素值的編碼,由于其長度可能會發(fā)生變化,故其也不作為嵌入塊。
責(zé)編AJX
責(zé)編AJX

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2920

    文章

    45587

    瀏覽量

    383953
  • 二維碼
    +關(guān)注

    關(guān)注

    7

    文章

    444

    瀏覽量

    27002
  • 隱私保護(hù)
    +關(guān)注

    關(guān)注

    0

    文章

    300

    瀏覽量

    16618
收藏 0人收藏

    評論

    相關(guān)推薦

    二維碼識別

    `利用筆記本電腦的攝像頭采集二維碼圖像并識別,顯示二維碼的信息!下載了labview視覺與運(yùn)動模塊的可以下來看看!里面有2張二維碼,用二維碼生成器做的(百度應(yīng)用),用手機(jī)拍
    發(fā)表于 08-27 16:52

    二維碼軟件中制作Dot Code二維碼的步驟

      在二維碼軟件中,點(diǎn)擊軟件左側(cè)的“二維碼”按鈕,在畫布上繪制二維碼樣式,雙擊二維碼,在圖形屬性-條碼選項(xiàng)卡中,設(shè)置條碼類型為Dot Code?!   ≡谶x項(xiàng)卡中,點(diǎn)擊“修改”按鈕,刪
    發(fā)表于 12-02 15:45

    二維碼在醫(yī)療行業(yè)中的應(yīng)用

      二維碼應(yīng)用領(lǐng)域越來越廣泛,從人們的日常生活到各個行業(yè)的方方面面,隨處可見二維碼的身影?,F(xiàn)在,二維
    發(fā)表于 10-13 17:05 ?1274次閱讀

    固定二維碼與變動二維碼防偽標(biāo)簽的作用

    電子發(fā)燒友網(wǎng)站提供《固定二維碼與變動二維碼防偽標(biāo)簽的作用.docx》資料免費(fèi)下載
    發(fā)表于 05-08 08:00 ?1次下載

    二維碼門禁系統(tǒng)是怎樣的工作原理

    安裝二維碼智能門禁,并不是說直接把傳統(tǒng)的門禁給拆除。完全可以在傳統(tǒng)門閘機(jī)器上嵌入一個二維碼門禁讀卡器,然后就可以融合二維碼自動識別和數(shù)據(jù)傳輸性能,之后再根據(jù)互聯(lián)網(wǎng)技術(shù)和二維碼自動識別技
    發(fā)表于 03-19 16:54 ?6263次閱讀

    訪客的二維碼門禁是否足夠安全

    二維碼已經(jīng)成為現(xiàn)代人的一種生活方式,我們使用二維碼支付、通行、傳輸信息。對于訪客二維碼門禁是否安全的問題?需要從兩個維度來說明,二維碼識別是
    發(fā)表于 06-05 10:58 ?951次閱讀

    二維碼在智能門禁中的應(yīng)用,二維碼門禁如何保證安全

    是:會的。 若不夠用,是不是會重復(fù)使用?那對智能門禁而言,又怎樣能保證二維碼安全性?要想搞清這些問題,我們需要從二維碼原理說起。二維碼怎樣識別?
    的頭像 發(fā)表于 07-19 10:33 ?3978次閱讀
    <b class='flag-5'>二維碼</b>在智能門禁中的應(yīng)用,<b class='flag-5'>二維碼</b>門禁如何保證<b class='flag-5'>安全</b>性

    NLS-EM25二維碼掃描模組形象,二維掃描模組適合哪些場所應(yīng)用

    比如自助設(shè)備也能通過運(yùn)用二維碼技術(shù)實(shí)現(xiàn)掃支付的功能,這是因?yàn)榍度肓藯l碼識讀引擎、二維碼讀頭、二維碼掃描模塊等二維碼識讀設(shè)備,借助其強(qiáng)悍的屏
    的頭像 發(fā)表于 12-04 15:19 ?2581次閱讀

    工業(yè)二維碼是什么,如何使用工業(yè)二維碼

    工業(yè)二維碼讀取器在智能制造業(yè)領(lǐng)域的作用越來越重要,為了讓多用戶了解工業(yè)二維碼的相關(guān)知識,從而大限度地提高讀取率、增加產(chǎn)量和降低成本,讓你對工業(yè)二維碼讀取器和工業(yè)二維碼知識進(jìn)行面的了解。
    發(fā)表于 06-24 17:41 ?4679次閱讀

    讀取二維碼掃描設(shè)備有哪些類型

    讀取二維碼掃描設(shè)備的幾種類型中比較簡單、常用的便是收銀用條碼掃描槍,因此它也被稱為二維碼設(shè)備/二維碼讀取設(shè)備/二維碼掃描器。據(jù)了解,二維碼
    發(fā)表于 07-06 10:09 ?4431次閱讀

    QR二維碼解碼流程與使用方法

    二維碼、條形碼相信大家都非常熟悉了,條碼技術(shù)已經(jīng)廣泛應(yīng)用于我們生活當(dāng)中。微信掃二維碼、支付寶二維碼付款、商品條形碼、超市儲物柜條形碼等。但是由于二維碼復(fù)雜度,目前識別
    的頭像 發(fā)表于 07-22 10:15 ?1.1w次閱讀

    二維碼模組用途廣泛 精準(zhǔn)高效識別和讀取條碼、二維碼

    二維碼模組是一種集成了CMOS感光器件和專用鏡頭模組的微型掃碼頭設(shè)備,通常采用CMOS紅光影像式讀取,所發(fā)出的是一個矩形的紅光區(qū)域,旁邊會有輔助光,具有圖像捕捉功能,通過拍照的方式來識別和讀取
    的頭像 發(fā)表于 03-29 17:12 ?1419次閱讀
    <b class='flag-5'>二維碼</b>模組用途廣泛 精準(zhǔn)高效識別和讀取條碼、<b class='flag-5'>二維碼</b>

    二維碼讀頭有什么功能?如何選擇二維碼讀頭?

    二維碼讀頭有什么功能?如何選擇二維碼讀頭?二維碼讀頭可以將二維條碼圖像通過感光頭讀取、識
    的頭像 發(fā)表于 03-30 15:03 ?2038次閱讀
    <b class='flag-5'>二維碼</b>掃<b class='flag-5'>碼</b>讀頭有什么功能?如何選擇<b class='flag-5'>二維碼</b>讀頭?

    二維碼模塊有哪些功能?二維條形碼讀取設(shè)備詳解

    二維碼模塊是目前比較常用的一種專門用于二維碼掃描和解碼的硬件設(shè)備,常用于零售、物流、醫(yī)療、票務(wù)等行業(yè)中。隨著嵌入式條碼識讀技術(shù),尤其是二維碼技術(shù)及芯片技術(shù)在這些行業(yè)領(lǐng)域的應(yīng)用,很多
    的頭像 發(fā)表于 09-07 15:27 ?2026次閱讀
    <b class='flag-5'>二維碼</b>掃<b class='flag-5'>碼</b>模塊有哪些功能?<b class='flag-5'>二維</b>條形碼讀取設(shè)備<b class='flag-5'>詳解</b>

    Labview生成二維碼

    ?Labview 的一個Demo,生成二維碼
    發(fā)表于 08-01 17:12 ?13次下載

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品