二維碼用完了咋辦?
當今,隨著全球移動支付的普及,二維碼被大量地使用開來。當前,二維碼已經(jīng)逐漸融入到人們的生活中來。那么,隨著二維碼被大量的使用,假設(shè)某一天二維碼被用完了咋辦?
二維碼是誰發(fā)明的?
二維碼種類很多,常見的有QR Code、Data Matrix、Code 16K、MaxiCode、Aztec、Vericode、PDF417、Code 49等,很多產(chǎn)品上都會貼上各種標準的二維碼,但我們?nèi)粘J褂玫?,比如各種支付碼格式是QR Code,所以來自國外的朋友會用QR Code來稱呼我們?nèi)粘J褂玫母鞣N支付碼!下文以QR CODE來說明。
QR Code碼是1994年由日本DW公司發(fā)明的,它誕生后,就在信息量大,糾錯能力強等優(yōu)點絕殺了二維碼,在日本和全世界應(yīng)用廣泛,我們?nèi)粘R惨呀?jīng)離不開二維碼,平均每天都會掃碼數(shù)個甚至數(shù)十個,而各種支付碼為保證安全是即時產(chǎn)生的,即用過一次即失效,下次重新產(chǎn)生,那么吃瓜群眾有一個問題,會不會某天二維碼用完了呢?
QR CODE數(shù)據(jù)編碼方式
要說明會不會用完,首先得來了解下QR CODE編碼方式,下圖是一張QR CODE基底圖,不含信息,僅僅表示編碼:
QR CODE最明顯的特征是除了右下角外其他三個角上是一個巨大的回字形定位標志,其他主要的區(qū)域有數(shù)據(jù)與容錯,版本信息,糾正標志等,包含QR CODE能不能用完的關(guān)鍵是數(shù)據(jù)編碼的排列組合能不能窮盡!一個QR CODE最大的能包含多少信息呢?
一張小小的二維碼搭載的信息量是驚人的,那么它所包含的組合總共可以有多少種呢?
QR CODE空白區(qū)域表示0,黑色區(qū)域表示1,那么數(shù)一數(shù)它最大面積的版本有多少格子就能算出它有多少種可能了!QR CODE總共有40種不同密度的結(jié)構(gòu):
最小的版本1編碼模塊為21×21,編碼數(shù)量總有:2^(21×21)
最大的版本40為177×177,編碼數(shù)量總共有:2^(177×177)碼
前者大約有5.6×10^132個編碼
后者大約有:9.3×10^9430個二維碼
可能大家對這個數(shù)量并沒啥概念,但宇宙中的原子數(shù)量總共之有10^80個,所以即使是最小的的那個二維碼也可以給宇宙中每個原子編制一個二維碼,而且還綽綽有余!而更大的版本40則可以對所有的“平行宇宙”進行編碼,也許還是編不完!
QR CODE的容錯功能
從上文我們知道了QR CODE是用不完的,但QR CODE本身包含的信息量太大,而我們有又用不到這些新的時候就有新的玩法了,我們可以將容錯信息編制進去,當QR CODE污損時將會起到糾錯作用!
從7%到30%不等,但糾錯效果越好,面積也將越大,所以大部分都取折中的15%糾錯率,優(yōu)點類似于服務(wù)器中硬盤陣列,犧牲容量的方式來保證數(shù)據(jù)的安全性,如下是硬盤陣列的容錯比例:
RAID0:無容錯,可靠性降低一半
RAID1:可以損壞一半硬盤
RAID5,可以損壞一個硬盤
RAID10,可以損壞一半硬盤(理想狀態(tài)下)
當然硬盤陣列的的容錯和QR CODE容錯原理是不一樣的,但兩者宗旨是一樣的,保證數(shù)據(jù)安全!
QR CODE的安全性
其實我們要說的不是加密,而是包含有害信息,因為它是隱含的信息,因此即使包含有害信息我們也無法看到,比如包含欺騙、誘導(dǎo)或者淫穢色情甚至木馬等信息時危害是很大的,因此對于來歷不明的二維碼我們要謹慎“掃一掃”,而且手機上安全軟件不要忘了裝!