二維碼的前世今生
文章出處:http://bookmouse.cn 作者:保密科學(xué)技術(shù)于成麗 胡萬里 人氣: 發(fā)表時(shí)間:2018年03月09日
近年來,隨著移動(dòng)互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、云計(jì)算、大數(shù)據(jù)等新技術(shù)爆發(fā)式發(fā)展,“掃一掃”在微信、瀏覽器、文件資料中得到普遍應(yīng)用。通過智能手機(jī)、平板電腦等移動(dòng)智能終端掃描黑白相間的字符,便能輕松跳轉(zhuǎn)到另一個(gè)頁面,給用戶使用帶來了極大的便利和娛樂體驗(yàn),同時(shí)也成為連接線上、線下的一個(gè)重要通道,這就是大家熟知的“二維碼”。毫不夸張地說,二維碼是移動(dòng)互聯(lián)網(wǎng)“入口”。伴隨著物聯(lián)網(wǎng)的蓬勃發(fā)展,二維碼被應(yīng)用到各行各業(yè)的日常經(jīng)營(yíng)與生活中。但是,也曾曝出有黑客、不法分子對(duì)二維碼“加料”,誘騙用戶“掃一掃”后,盜取其信息,給用戶造成一定的經(jīng)濟(jì)損失。文章基于條形碼信息識(shí)別技術(shù)介紹二維碼起源,闡述二維碼發(fā)展歷程及應(yīng)用,分析二維碼的安全防范措施。
二維碼的起源
條形碼信息識(shí)別技術(shù)是由一組按一定編碼規(guī)則排列的條、空符號(hào),用以表示一定的字符、數(shù)字及符號(hào)組成的信息技術(shù),它起源于20世紀(jì)40年代后期,應(yīng)用于70年代,普及于80年代。條形碼是在計(jì)算機(jī)應(yīng)用和實(shí)踐中產(chǎn)生并發(fā)展起來的廣泛應(yīng)用于商業(yè)、郵政、圖書管理、倉儲(chǔ)、工業(yè)生產(chǎn)過程控制、交通等領(lǐng)域的一種自動(dòng)識(shí)別技術(shù),具有輸入速度快、可靠性高、采集信息量大、靈活實(shí)用、易于制作、成本低等優(yōu)點(diǎn),在當(dāng)今的自動(dòng)識(shí)別技術(shù)中占有重要的地位。
在日常生活中最常見的是條形一維碼。一維碼即指條碼條和空的排列規(guī)則,這些條和空組成的數(shù)據(jù)表達(dá)一定的信息,并能夠用特定的設(shè)備識(shí)讀,轉(zhuǎn)換成與計(jì)算機(jī)兼容的二進(jìn)制和十進(jìn)制信息。常用的一維碼的碼制包括:EAN碼、39碼、交叉25碼、UPC碼、128碼、93碼、ISBN碼及Codabar碼等。通常對(duì)于每一種物品,其編碼是唯一的,而對(duì)于普通的一維碼來說,還要通過數(shù)據(jù)庫建立條碼與商品信息的對(duì)應(yīng)關(guān)系,當(dāng)條碼的數(shù)據(jù)傳到計(jì)算機(jī)上時(shí),由計(jì)算機(jī)上的應(yīng)用程序?qū)?shù)據(jù)進(jìn)行操作和處理。因此,普通的一維碼在使用過程中僅作為識(shí)別信息,通過在計(jì)算機(jī)系統(tǒng)的數(shù)據(jù)庫中提取相應(yīng)的信息而實(shí)現(xiàn)。一維碼制作簡(jiǎn)單,編碼碼制較易被不法分子獲得并偽造,而且一維碼幾乎不可能表示漢字和圖像信息。
隨著計(jì)算機(jī)技術(shù)的發(fā)展,針對(duì)一維碼存儲(chǔ)容量不足、易復(fù)制、無法表示漢字和圖像等缺點(diǎn),產(chǎn)生了二維碼,并廣泛運(yùn)用于生活。二維碼用某種特定的幾何圖形按一定規(guī)律在二維空間上分布的黑白相間的圖形中記錄數(shù)據(jù)符號(hào)信息。在代碼編制上,二維碼巧妙利用構(gòu)成計(jì)算機(jī)內(nèi)部邏輯基礎(chǔ)的“0”“1”比特的概念,使用若干個(gè)與二進(jìn)制相對(duì)應(yīng)的幾何形體來表示文字?jǐn)?shù)值信息,通過圖像輸入設(shè)備或光電掃描設(shè)備自動(dòng)識(shí)讀以實(shí)現(xiàn)信息自動(dòng)處理。目前二維碼已形成多種碼制,常見的有QR Code、Code 16K、Code One等。二維碼通常分為行排式二維碼和矩陣式二維碼。行排式二維碼由多行一維碼堆疊在一起構(gòu)成,其形態(tài)類似于一維碼,但與一維碼的排列規(guī)則不完全相同,如PDF417碼、Code 49;矩陣式二維碼是深色方塊與淺色方塊組成的矩陣,在矩陣中深色塊和淺色塊分別表示二進(jìn)制中的和,通常具有糾錯(cuò)功能,如Data Matrix碼、QR Code、漢信碼等。
與一維碼相比,二維碼具有存儲(chǔ)密度大,擁有糾錯(cuò)能力,與其他技術(shù)結(jié)合應(yīng)用廣泛,能存儲(chǔ)漢字、字母、數(shù)字等多種信息的優(yōu)點(diǎn)。一是存儲(chǔ)密度大。二維碼可以在縱橫兩個(gè)方向存儲(chǔ)信息,大大提高了存儲(chǔ)密度,如果使用標(biāo)準(zhǔn)狀態(tài)下的一維碼與二維碼相比較,相同面積下二維碼所表示的信息約為一維碼的多倍。二是擁有糾錯(cuò)能力。一維碼只有一個(gè)或數(shù)個(gè)校驗(yàn)位,并不能糾錯(cuò);二維碼信息密集,若受到污損失也會(huì)較大,因此,二維碼一般都具有很強(qiáng)的糾錯(cuò)機(jī)制。不同的二維碼具有不同的糾錯(cuò)算法,同一種二維碼也會(huì)有不同的糾錯(cuò)等級(jí),用于不同的應(yīng)用需求。三是應(yīng)用廣泛。二維碼可與其他技術(shù)進(jìn)行廣泛結(jié)合,與加密技術(shù)結(jié)合,可以用于很多保密的信息傳遞;與防偽技術(shù)結(jié)合,可用于證件的防偽。四是二維碼能存儲(chǔ)多種信息。一維碼只能表示表中的字符;二維碼具有自己的字符集,可以表示數(shù)字、字母、位字節(jié)、各種語言文字以及特殊字符等,很多二維碼還提供了擴(kuò)展字符集,可自由擴(kuò)展編碼。
二維碼發(fā)展歷程
國(guó)外對(duì)二維碼技術(shù)的研究始于20世紀(jì)80年代末,在二維碼符號(hào)表示技術(shù)研究方面已研制出多種碼制。這些二維碼的信息密度比傳統(tǒng)的一維碼有較大提高,如PDF417碼的信息密度是一維碼Code39的20多倍。在二維碼標(biāo)準(zhǔn)化研究方面,國(guó)際自動(dòng)識(shí)別制造商協(xié)會(huì)(AIM)、美國(guó)標(biāo)準(zhǔn)化協(xié)會(huì)(ANSI)已完成了PDF417碼、QR Code、Code 49、Code 16K、Code One等碼制的符號(hào)標(biāo)準(zhǔn)。國(guó)際標(biāo)準(zhǔn)技術(shù)委員會(huì)和國(guó)際電工委員會(huì)還成立條形碼自動(dòng)識(shí)別技術(shù)委員會(huì)(ISO/IEC/JTC1/SC31),已制定QR Code的國(guó)際標(biāo)準(zhǔn)(ISO/IEC 18004:2000《自動(dòng)識(shí)別與數(shù)據(jù)采集技術(shù)—條碼符號(hào)技術(shù)規(guī)范—QR碼》),起草PDF417碼、Code 16K、Data Matrix碼、Maxi Code等二維碼的ISO/IEC標(biāo)準(zhǔn)草案。在二維碼設(shè)備開發(fā)研制、生產(chǎn)方面,美國(guó)、日本等國(guó)的設(shè)備制造商生產(chǎn)的識(shí)讀設(shè)備、符號(hào)生成設(shè)備,已廣泛應(yīng)用于各類二維碼應(yīng)用系統(tǒng)。
我國(guó)對(duì)二維碼技術(shù)的研究始于1993年。隨著我國(guó)市場(chǎng)經(jīng)濟(jì)的不斷完善和信息技術(shù)的迅速發(fā)展,國(guó)內(nèi)對(duì)二維碼技術(shù)的需求與日俱增,對(duì)二維碼技術(shù)的研究不斷深入。在消化國(guó)外相關(guān)技術(shù)資料的基礎(chǔ)上,制定了兩個(gè)二維碼的國(guó)家標(biāo)準(zhǔn):二維碼網(wǎng)格矩陣碼(SJ/T 11349-2006)和二維碼緊密矩陣碼(SJ/T 11350-2006),促進(jìn)了我國(guó)具有自主知識(shí)產(chǎn)權(quán)技術(shù)的二維碼研發(fā)。2016年8月3日,支付清算協(xié)會(huì)向支付機(jī)構(gòu)下發(fā)《條碼支付業(yè)務(wù)規(guī)范》(征求意見稿),其中明確指出支付機(jī)構(gòu)開展條碼業(yè)務(wù)需要遵循的安全標(biāo)準(zhǔn)。
二維碼應(yīng)用
二維碼作為一種全新的信息存儲(chǔ)、傳遞和識(shí)別技術(shù),自誕生之日起就得到了世界上許多國(guó)家的關(guān)注。美國(guó)、德國(guó)、日本等國(guó)家不僅已將二維碼技術(shù)應(yīng)用于公安、外交、軍事等部門對(duì)各類證件的管理,而且也將二維碼應(yīng)用于海關(guān)、稅務(wù)等部門對(duì)各類報(bào)表和票據(jù)的管理,商業(yè)、交通運(yùn)輸?shù)炔块T對(duì)商品及貨物運(yùn)輸?shù)墓芾?,郵政部門對(duì)郵政包裹的管理,工業(yè)生產(chǎn)領(lǐng)域?qū)I(yè)生產(chǎn)線的自動(dòng)化管理。
隨著互聯(lián)網(wǎng)時(shí)代的來臨,很多商品的詳細(xì)信息都能更好地通過圖片、視頻、新媒體等展現(xiàn)在網(wǎng)上,所以人們開始在廣告中使用二維碼作為傳統(tǒng)媒體與互聯(lián)網(wǎng)之間的媒介。二維碼真正大量進(jìn)入大眾的視線是在2011年微信的發(fā)布,微信是騰訊公司推出的一款可以快速發(fā)送文字、圖片、語音的手機(jī)即時(shí)聊天軟件。微信作為一種廣告推送的新載體,吸引了商家的眼球,而微信加好友最方便的做法就是掃描二維碼,這使得二維碼開始得到關(guān)注。正因?yàn)槎S碼具有存儲(chǔ)量大、保密性高、追蹤性高、譯碼可靠性高、編碼范圍廣、成本低等特性,近年來二維碼應(yīng)用逐漸從我們熟知的掃描加微信好友、掃碼直接進(jìn)入購物網(wǎng)站,擴(kuò)展到了表示商品詳細(xì)信息、身份識(shí)別、安全保密、追蹤、存貨盤點(diǎn)、資料備援等方面。目前二維碼比較廣泛的應(yīng)用有以下6種。
1.信息獲取和身份識(shí)別,主要應(yīng)用于電子名片證件制作、會(huì)議簽到、車輛管理等個(gè)人信息識(shí)別。
2.安全保密,主要應(yīng)用于商業(yè)情報(bào)、經(jīng)濟(jì)情報(bào)、政治情報(bào)、軍事情報(bào)等資料加密及傳遞。
3.追蹤溯源,主要應(yīng)用于展示產(chǎn)品的來源,比如豬肉、奶制品、有機(jī)食品等,很多物流公司也用二維碼做貨物溯源。
4.表單制作,主要應(yīng)用于公文表單、商業(yè)表單、進(jìn)出口報(bào)單、艙單等資料的傳送交換,減少人工重復(fù)輸入表單資料,避免人為錯(cuò)誤,降低人力成本。
5.電子票務(wù),主要應(yīng)用于火車票、飛機(jī)票、電影票、景點(diǎn)門票銷售等,告別傳統(tǒng)文字紙張模式,采用二維碼進(jìn)行售票、檢票,提高通行效率,防止偽票。
6.信息推送,主要應(yīng)用于電子書、游戲、應(yīng)用軟件、音樂、視頻、圖片等相關(guān)信息推送,通過掃描鏈接二維碼,即可獲得相關(guān)資料下載。
可以看出,二維碼在商業(yè)領(lǐng)域應(yīng)用非常廣泛??偟膩碚f,二維碼應(yīng)用根據(jù)業(yè)務(wù)形態(tài)不同可分為兩類。一是被讀類業(yè)務(wù),即平臺(tái)將二維碼通過消息發(fā)到用戶智能設(shè)備上,用戶持智能設(shè)備到現(xiàn)場(chǎng),通過二維碼機(jī)掃描智能設(shè)備進(jìn)行內(nèi)容識(shí)別。應(yīng)用方將業(yè)務(wù)信息加密、編制成二維碼圖像后,將二維碼發(fā)送至用戶的移動(dòng)終端上,用戶使用時(shí)通過設(shè)在服務(wù)網(wǎng)點(diǎn)的專用識(shí)讀設(shè)備對(duì)移動(dòng)終端上的二維碼圖像進(jìn)行識(shí)讀認(rèn)證,作為交易或身份識(shí)別的憑證來支撐各種應(yīng)用。二是主讀類業(yè)務(wù),即用戶在智能設(shè)備上安裝二維碼客戶端,使用智能設(shè)備拍攝并識(shí)別媒體、報(bào)紙等上面印刷的二維碼圖片,獲取二維碼所存儲(chǔ)內(nèi)容并觸發(fā)相關(guān)應(yīng)用。用戶利用智能設(shè)備拍攝包含特定信息的二維碼圖像,通過智能設(shè)備客戶端軟件進(jìn)行解碼后觸發(fā)智能設(shè)備上網(wǎng)、名片識(shí)讀、撥打電話等多種關(guān)聯(lián)操作,以此為用戶提供各類信息服務(wù)。
二維碼的安全防范措施
二維碼的生成及使用十分便利,通過上網(wǎng)可以下載免費(fèi)的“二維碼生成器”。正因?yàn)樯擅赓M(fèi)、制作簡(jiǎn)單,也為不法分子留下可乘之機(jī)。利用二維碼生成器,不法分子可將病毒鏈接地址制作成二維碼,再把病毒地址偽裝在正規(guī)軟件地址內(nèi),當(dāng)用戶掃描二維碼后,下載“正規(guī)軟件”時(shí),病毒也悄悄被安裝到了用戶的智能設(shè)備中。那么,該如何防范掃描二維碼帶來的潛在危險(xiǎn)呢?
1.從源頭判斷二維碼的安全性?,F(xiàn)在衣食住行都離不開二維碼,但是切忌貪圖小便宜“見碼就掃”。在掃描二維碼之前,一定要確保二維碼來自正規(guī)商家或者是已經(jīng)確定的可以信賴的人,建議到官網(wǎng)下載工具軟件,不能掃描來源不明的二維碼、用途不明確的二維碼及所有者不明確的二維碼。
2.從二維碼的內(nèi)容判斷安全性。二維碼內(nèi)容鏈接的網(wǎng)站是程序代碼的宿主。一般情況下,正規(guī)的報(bào)紙、雜志以及各大商場(chǎng)海報(bào)上的二維碼是安全可靠的,但對(duì)于街頭及網(wǎng)上發(fā)布的不明來歷的二維碼需要提高警惕。在掃碼前要確認(rèn)該二維碼是否來自正規(guī)網(wǎng)站,比較簡(jiǎn)單又非常有效的辦法是,直接在電腦打開這個(gè)網(wǎng)址,網(wǎng)站有備案的一般可以信任,更不要隨意點(diǎn)擊鏈接或下載安裝,特別要注意甄別“山寨”軟件。使用手機(jī)上網(wǎng)時(shí),注意突然彈出來的廣告,很可能是收費(fèi)的,不要隨意點(diǎn)“確定”。
3.安裝專業(yè)的掃碼軟件和防護(hù)軟件。打開“安全掃碼”標(biāo)志,對(duì)準(zhǔn)任意你想掃的二維碼掃描,如果二維碼存在危險(xiǎn)就會(huì)立刻攔截,并給出危險(xiǎn)提醒。防護(hù)軟件在一定程度上能夠起到提示用戶當(dāng)前連接是否存在安全風(fēng)險(xiǎn)的作用,降低中毒風(fēng)險(xiǎn)。
4.用法律手段維護(hù)自己的合法權(quán)益。我國(guó)《刑法修正案(七)》已將侵犯公民個(gè)人信息行為納入刑法保護(hù)范疇。侵犯公民個(gè)人信息罪包括“出售、非法提供公民個(gè)人信息罪”和“非法獲取公民個(gè)人信息罪”。非法竊取或非法獲得公民個(gè)人信息侵害了公民的隱私權(quán),因此,當(dāng)我們的個(gè)人信息受到非法侵害時(shí),首先,可以選擇向公安機(jī)關(guān)報(bào)案,要求追究行為人的刑事責(zé)任;其次,可以通過民事訴訟形式,追究其侵害個(gè)人隱私權(quán)的民事責(zé)任,積極地維護(hù)自己的合法權(quán)益。