全球每天消耗上百億個二維碼,一旦用完了怎麼辦?

媒體大律師


二維碼就這麼大一點,每個格還只能是非黑即白,那它會不會被用掉所有排列組合呢

答案是會,但是卻不會,嗯,沒錯

細心觀察會發現,不同地方二維碼橫豎格數是不一定相同的(二維碼目前共有40種規格,最少21x21,一規格橫豎各加四個格子,最多加39次既177x177),以微信名片舉例,二維碼是橫豎各37個格的正方形,其中三個角有固定的7x7的定位點,所以可用可以變換的點共有37x37-49x3=1222個格子,而每個格子只可能是黑或白兩種情況(電腦二進制的0和1),所以共有2^1222種排列組合情況,既理論上可以出現這些個不同的二維碼(有全黑全白還有的中間會放商標等圖形佔位置等情況可能出現所以是理論上),2^1222的結果為

emmm~顯示不下出錯了

不慌,用電腦算,

簡單點,2^1000出來是:

科學計數法:1.0715086071863 * 10^301

具體數字為:10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376

根據美國人口調查局的估計,截至到2013年1月4日,全世界有70.57億人,現在則會更多,算世界上共一百億人,平均每個人能分10^292個二維碼用還有大量剩餘,比全宇宙中的粒子數3.28×10^80還要多的多,所以說,二維碼雖然是有限的,能用完。

但就算不考慮未來的新技術,算的時候還為簡而少算的,不同規格的二維碼還不重複又是急劇擴大了可能情況數,單單現在的個數就是有限也太多了,多到根本用不完。而且決定二維碼格數上限的是手機像素,目前最高可識別就能達到4000x4000+,而現在的二維碼最多也就144x144,且只有40個規格,這提升空間之大,再以後沒準能用一張二維碼存個電影,光盤變紙張(這個想過頭了,目前的二維碼存1M都是大的了)……

當然這只是理論數值,而實際上二維碼並不只是個圖形而已,而是有特定意義的,這其中有大部分是雖然有排列情況但沒有意義(最明顯的,全黑,全白,還有很多是無法準確表示人可能希望表示的任何情況,所以用不了),但除去這剩下的也夠多了。而既然二維碼是有特定意義的,那麼反過來從另一個角度來看,每一個目的每一個要它表達的值都是不同的,都會形成一條特定編碼,所以這樣看二維碼仍是無限的。而且無意義的二維碼也可以人工賦予它人所希望的意義。

還有,那……條形碼不夠用的嗎

然而並不是主要的,而是因為二維碼能儲存一維碼不能存的漢字、圖片等信息,以及二維碼相對於條形碼更能容錯(不信可以找一個二維碼,然後蓋住一部分,再掃它,看看是不是並不影響掃描,有時蓋一半都能正常掃,原因是一般都用上了rs碼四級糾錯),還有能加入保密措施,更安全,還有出錯率低(掃二維碼還會出錯?嗯,只是出錯率太低,如果掃錯了,趕緊馬上立刻,去買彩…不對,買啥彩票,去抽波十連),還有尺寸大小可按比例隨意變(條形碼就只能在固定範圍內細微變化,不然就掃不準,附,條形碼的標準尺寸是37.29mm x 26.26mm,放大倍率是0.8-2.0

還有還有,生成二維碼會不會生成重複的,就比如馬雲的支付寶轉賬二維碼和我的碰巧生成了一樣的,然後……並不會,二維碼上的黑白點排列並不是隨機無意義的,而是原始二進制代碼,代表某一個意義,而不同的人的二維碼要它表示的意義讓它代表的事是不同的,所以不會有重複的。

異想天開一波,我畫一個,如果只是隨便畫一個,還真的有可能能掃出來,雖然更大幾率是畫出掃不出的無意義的二維碼,但掃出來幹嘛,給不認識的不知道誰轉錢麼……

為何電子設備中的二維碼是隨時變化的,支付寶->付錢(生成一個二維碼)->返回(那個二維碼幾分鐘後失效,時間不固定)->付錢(生成一個新的二維碼),既然二維碼是特定意義,那表示“加我好友”或者“關注我”的代碼不應該是固定的嗎?也不是,現實中的特定意義在網絡數據中卻不是不變的,支付寶付款碼是“活碼”,活碼本身不是存儲的這個目的的碼,而是對一個分配的短網址進行編碼,掃描後跳轉到這個網址。這樣將內容存儲在雲端,可以隨時更新、可跟蹤掃描統計,可存放圖片視頻、大量文字內容,同時圖案簡單易掃。 缺點是掃描時必須聯網。而不變的是靜態碼,是直接對電話、地址、網址等信息進行編碼(一般最多50個文字), 所以無需聯網也能掃描顯示,缺點是生成的二維碼圖案非常複雜,不容易識別和打印,容錯率低,而且印刷後內容無法變更,無法存儲圖片和文件


分享到:


相關文章: