二維碼會被人類掃完嗎?會!但我們等不到那一天
支付碼、名片碼、健康碼、校園碼、復學碼、乘車碼、挪車碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼碼……可以說,二維碼已經滲透到我們生活的每一個角落。據微信透露,疫情期間,僅僅是微信上的相關二維碼就用掉了1400億個之多。
那麼問題來了:二維碼會被人類掃完嗎?
答案其實很簡單:會!
但答案又沒有這麼簡單。
我們知道,二維碼的尺寸是有限的,所以二維碼的數量也是有限的,但這個有限對我們來說已經近乎“無限”,要想掃完所有的二維碼,需要很長很長很長很長……的時間。
二維碼是由Denso公司於1994年9月研製的一種矩陣二維碼符號,現在共有40個官方版本,編號從Version 1一直到Version 40,最小的是21×21的矩陣,最大的則是177×177。
其中,微信名片使用了37×37的矩陣規格,而微信的付款碼是25×25的矩陣規格。
我們先從最簡單的例子開始,畫一個2×2的矩陣規格,也就是四宮格。
如果每個格子有兩種顏色變化(比如黑白),那麼四宮格就有16種可能的組合,也就是2^4,一共16個圖形。
以此類推,25×25的微信付款碼共有625個方塊,除去定位用的、冗餘糾錯用的,可供利用的是方塊有478個。按照二進制,每個方塊只有黑或白兩種選擇,478個方塊理論上可以組合2 478個二維碼。
也就是780437137578998057845399307448291576437149535666242787714789239906342934704941405030076525765872992789956732780351655723861993919822071326572544個二維碼。
假設微信一年會用掉6000億個二維碼,那微信用完25×25矩陣二維碼,就需要:
2^478÷6000億=1.301×10 132年(超多億億億億年)
即便是世界上的所有人一起用,也需要:
1.301×10 132 ÷5=2.602×10 131年(好多億億億億年)
根據資料,宇宙中大約有7×10 22顆恆星,又根據德雷克公式:
預計會有1560萬個星球有智能生命,這裡假設每顆星球上外星人需要掃碼的數量和地球相同,那整個宇宙一起行動,掃完這些二維碼就需要:
2.602×10 131 ÷(1.56×10 7 )=1.668×10 124年(很多億億億億年)
按照熱寂理論對宇宙終極命運的猜想,大約一千萬億年後,行星就將脫離軌道,所有生物都沒辦法依靠恆星活著了,而那個時候二維碼,還是遠遠沒有掃完。
另外,人類可觀測宇宙有大約為93×10 9光年,所以離地球遠點的星球,估計要等上好一陣才能掃到碼了。
就算出現什麼超越人類認知的技術突破、飛躍,對二維碼的需求暴增,這裡說的還只是25×25矩陣規格,現有官方規格就已經到了177×177矩陣,而隨著矩陣的擴大,所能呈現出來的二維碼數量可是呈幾何指數級別增長的。