廈門工學院電子信息工程系 羅洪葉
基于RSA的二維碼研究與應用
廈門工學院電子信息工程系 羅洪葉
二維碼已經在方方面面滲透進了我們的生活。大量的二維碼應用,二維碼共享,二維碼登錄,已經成為現代生活不可或缺的一部分。但是基于二維碼的加密技術卻很是少見,火車票上二維碼身份信息被曝光,物流信息中二維碼更是威脅到每個客戶的人生安全?;赗SA的二維碼研究與應用,不僅可以解決二維碼的安全問題,更是對于二維碼的廣泛推廣做好了準備。
二維碼;RSA加密;二維碼加密
目前,大量的APP應用已經通過手機這個物聯網終端,滲透進了越來越多的生活。無論是IPhone的時尚簡約,還是安卓的智能與互動,都希望更多的通過網絡,透過社交軟件做推廣的商家提供了平臺。這個時候,二維碼應運而生。以快捷、便利、可靠、新奇的特點,快速的沖進淘寶、微信、QQ、微博等等重量級的互聯網產品中來。
常見的二維碼可分為兩種,一種是推廣形式的不加密二維碼;另一種是私人化的加密二維碼。不加密二維碼有很多,例如各種廣告下方的二維碼,可以讓你輕松的進入它的主頁。了解它的咨詢活動信息。還有一種是加密形式的私人二維識別碼。作為一個不公開的內容,用于私人訪問的識別時使用,例如火車票上的二維碼,包含你的身份證上一切信息,你搭乘的班次,座位信息等等??删褪窃诙S碼越來越方便的同時,他的安全性能又受到了嚴重的考驗, "快遞信息泄漏?","火車票個人信息曝光?"。種種安全問題,使得更多的商家在應用二維碼的時候又許多隱患。
因此,基于RSA的二維碼加密技術的引入,是眾多私有化二維碼應用企業的福音。為以物流企業為首的,空港、貨運、安全等各個行業提供了基礎的技術指導。
1.1 什么是二維碼
二維碼(2-dimensional bar code),又稱二維條碼,起源于日本,它是用特定的幾何圖形按一定規律在平面上分布的黑白相間的圖形,是所有信息數據的一把鑰匙。
1.2 二維碼識別原理
二維碼在編制上巧妙地利用計算機內部邏輯基礎的"0"、"1"比特流的概念,使用若干個與二進制相對應的幾何形體來表示文字信息,通過圖象輸入設備或光電掃描設備自動識讀以實現信息自動處理。同時還具有對不同行的信息自動識別功能、及處理圖形旋轉變化等特點。在許多種類的二維條碼中,常用的碼制有: Data Matrix ,MaxiCode, Aztec, QR Code, Vericode ,PDF417 , 等。最常見的二維碼QR Code碼是1994年由日本DW公司發明。QR來自英文Quick Response的縮寫,即快速反應,源自發明者希望QR碼可讓其內容快速被解碼。
2.1 RSA加密技術
RSA公鑰加密算法是1977年由羅納德。李維斯特、阿迪。薩莫爾和倫納德。阿德曼一起提出的。RSA是目前最有影響力的公鑰加密算法,它能夠抵抗到目前為止已知的絕大多數密碼攻擊,已被ISO推薦為公鑰數據加密標準。
今天只有短的RSA鑰匙才可能被強力方式解破。到2008年為止,世界上還沒有任何可靠的攻擊RSA算法的方式。只要其鑰匙的長度足夠長,用RSA加密的信息實際上是不能被解破的。但在分布式計算和量子計算機理論日趨成熟的今天,RSA加密安全性受到了挑戰。
RSA算法基于一個十分簡單的數論事實:將兩個大素數相乘十分容易,但那時想要對其乘積進行因式分解卻極其困難,因此可以將乘積公開作為加密密鑰。
2.2 RSA與二維碼技術的融合
二維碼在經過圖像識別與轉換之后,一樣可以進行加密。而我們介紹的QR Code二維碼,能夠進行級聯。對于少量的數據的加密可以達到一定的安全等級。對于物流,車票等等表面的小數據 速加密與解讀提供了基礎的技術保障。同時,可以借助MD5技術,對整批次的二維碼進行掃描,在進行完整性確認。
例如我們以同一則內容生成的加密二維碼與不加密二維碼進行對比,實際的效果大家通過最常見的手機QQ或者微信就可以輕松試用。文本內容:華僑大學廈門工學院,加密技術:RSA,密碼:997.

左圖為未加密二維碼

右圖為加密二維碼
由上圖很容易看出加密后雖然內容大幅度增加,但是對于QR Code二維碼他通過不斷的堆疊,還是可以完整的將原文文本轉譯出來的。
通過以上的說明,可以說明以上我們的加密方式,在小篇幅的內容加密中是已知可行的。下面讓我來列舉幾個例子,說明RSA加密二維碼技術是可行的吧。
3.1 數字公告
數字公告可以顧名思義的理解為一份數字化的公告。他不需要一個很大的公告牌,只需
要一個小小的方塊。需要瀏覽的人也不需要長時間停留觀看,只需要用手機一掃。數字公告的內容便自動存儲在手機之中。也可以用不同的密碼來區分不同公告的不同受眾。

左圖為未加密二維碼

右圖為加密二維碼
3.2 網址鏈接
主頁的超鏈接,是很多商家,特別是電商的主要宣傳點。但是如何將自己的超鏈接更快更準確的投向你需要的那個人呢?

左圖為未加密二維碼

右圖為加密二維碼
簡單的二維碼,已經遠遠不能滿足人們日常生活中的需要了。通過RSA與二維碼的嫁接,可以很好的完善二維碼的功能。在簡單便捷的基礎上,可以快速的還原信息。同時并不完全公開。一定的安全可靠度,并不會完全暴露在眾目之下。
這個組合很好的結合了QR碼和RSA技術的各自特點,能對小數據,進行快速,高效的轉換,同時可靠性高。又可以通過MD5技術,對整個批次二維碼加密,用來驗證整批二維碼的完整性。
通過簡單的APP編寫,這樣的系統不僅開一在PC端使用,更可以開發成APP,甚至是專業的手持掃描設備提高整體的系統靈活度。提供一套從港口到貨運,再到消息對換各個環節都可以選擇的簡單信息加密技巧。
[1]張育綺。二維碼營銷[J]。中信出版社,2013,7.
[2]草料。二維碼的制作[J]。草料網,2012.
[3]草料。二維碼原理[J]。草料網,2012.
[4]馮登國,趙險峰。信息安全技術概論[J]。電子工業出版社,2008.
[5]劉功申。計算機病毒及其防范技術[J]。清華大學出版社,2008.