之前看到有人問什麼是量子電腦
經作者同意後轉文
原文連結:https://goo.gl/LjTXGd
量子電腦是啥?
製造量子電腦很難嗎?很難!
要了解它容易嗎? 沒那麼難!
中國發射量子衛星,引起世界注意,但是除了媒體努力炒作,胡亂作文外,科學界其實並
沒有很在意。因為他只是遠距量子糾纏物理實驗而已,保密功能云云其實是騙外行的。要
達到實用階段還很遠,即使真的成功了,也會立即因自然或人為干擾而完全失效。所以不
只外國人,很多大陸有良心的科學家也為文批評那只是燒錢工程、騙錢計畫。是科學神棍
在騙無知高官,大約是義和團與慈禧太后的翻版。
量子電腦
此一同時,全世界各國頂尖科學家真正努力在做的東西是量子電腦。也就是未來真的會有
用的科技。
量子電腦為何那麼重要?
是運算速度可以很快嗎? 不是!
是可以處理很大量資料嗎? 不是!
是可以將資料傳送很遠嗎? 不是!
是可以用在人工智慧嗎? 呃!
是可以瞬間破解密碼嗎? 嗯!
量子電腦之所以很重要,是因為他可以瞬間計算很大很大的數目,大到比宇宙中所有原子
總量還要多。
量子電腦可以算很大、超大的數目,有啥用途?有!因為它可以瞬間破解任何超級密碼。
密碼學
用金鑰加密的密碼,如果以最簡單的暴力法破解DES需要一個已知明文與2^55解密運算,
嘗試過近半數可能的金鑰。線性分析攻擊法對DES需要2^43已知明文與2^43 DES運算。這
些破解密碼的方法都是天文數字,即使以當今的超級電腦計算,都需要數千、數萬、數億
年。但是量子電腦的超大數字能力,理論上可以瞬間算出來。
為何量子電腦可以計算超大的數字呢?
數字
我們人類習慣的數字是10進位
例如:321 代表
3個100+2個10+1個1’
電腦因為只有開和關,所以只能計算2進位。
例如2進位的 1111 等於10進位的15,
因為1個8+1個4+1個2+1個1=15
等於1個10+5個1=15
質數計算
破解密碼就是猜質數,如果我們想要研究一個數字13是否質數時,我們可以用2、3、4、5
、6、7、8、9、10、11、12、去除以他,如果沒有有一個數可以整除,它就是質數。
如果要算很大的數字,例如:
12345678987654321 是否質數時
從2、3、4、5、6... 一路算,要算很久。
假如有一個密碼的解答是一個100位數的數字例如 1.2x10^100 ,用小學的十進位,一行
字會寫不完,因為要用到100個阿拉伯數字才能完全寫完。如果要將它一一除以所有比他
小的數字,即使是最快的超級電腦可能也要算30,000年。
10^100如果改用二進位表達,要寫成2^300,也就是1後面有300個零。
一般CPU是64bit,所以需要切成300/64=5塊來慢慢計算。否則就要設計一個512/768 bit
的解密碼專用電腦。例如用GTX- 1080顯卡來算,或台積電做的1024bit 比特幣專用礦機
。
這些問題遇到量子電腦時,也許一瞬間就可解決。量子電腦不是靠快,而是因為量子電腦
只要計算一次就可以將一個天文數字算出來。
怎麼算呢?
我們人類只有10個手指頭所以用10進位,電腦較笨所以用2進位,中國人較聰明用16進位
,電腦也用16進位,但是阿拉伯數字0123456789不夠用,所以用A=10 B=11 C=12 D=13
E=14 F=15 10=16 11=17 FF=255 100=256 來代表,所以16進位比10進位效率高2.56倍,
馬雅人更聰明,他們是用20進位計算。時鐘是60進位(一分60秒),一年更是360進位。
所以不排除有一種外星人,頭腦有10公斤重,可以心算30進位、100進位、1000進位、
100000進位。
那量子電腦可以計算幾進位呢?
答案是10^300進位。這是多大,是1後面有300個零。
量子電腦長什麼樣子
量子電腦的實體是一個CuBit。它是將一顆磷原子打入一顆場效應矽晶體的P通道中,然後
將它冷凍到零下274°C也就是 0.001 °K,這時那一顆額外的電子的軌道就會呈現順時針
或逆時鐘兩種量子狀態,其或然率正好各50%。也就是說1個磷可以同時代表1或0。
假如密碼謎題是讓小孩猜我左右那一手中有銅板,小孩有一半的機會猜錯,常常要猜兩次
才會絕對正確。可是1個Cubit的量子電腦,它會同時猜1與0,所以猜一次就中。也就是
2^1=2
如果科技能成功的製造兩顆互相糾纏的量子,它的旋轉態將是 正正 正逆 逆正 逆逆,4
種可能性。也就是這是別人要猜4次的謎題它一次就猜中。2^2=4
如果能製造3顆互相糾纏的量子,它的旋轉態將有 正正正負、正正逆、..... 逆逆正、逆
逆逆 等8種可能性。也就是別人要猜8次的謎題它一次就猜中。2^3=8
如果有64顆糾纏的量子,它的旋轉態組合將是 2^64=10^19.3 也就是
10,000,000,000,000,000,000隻手中只有一支有藏銅板,小孩子每秒猜一次,要猜數億億
年。使用超級電腦也要算數萬年。可是量子電腦只要算一次就得到答案。因為它同時擁有
所有可能性的組態。
那量子電腦需要做到幾個Cubits呢? 其實也不需要太大,只要1024個,2^1024=10^306
,也就是1後面有300個零,這是多大的數目,它比全宇宙的原子數還多。
量子電腦計算速度也不必太快,一秒算10次,就可以解開所有世間奧秘。如果讓它一秒算
4G次。可能一天就解開所有宇宙的奧妙。那時Alpha Go 的人工智慧與它相比就如同一台
波音747飛機的智慧含量與一隻細菌的智慧含量的差別再乘以數億億倍。
量子電腦這麼厲害,我們要如何將題目給它,然後取得答案呢?
首先要將剛才被冷凍到0.001 °K,的那一顆FET中的磷原子,放進強力磁場,要像核磁共
振機那種。電子的旋轉方向就會轉到正確的S-N ,然後我們用5GHz的微波照射它,使它轉
為N-S。如果這時FET出現電流,證明有轉向,如果沒有證明原來就是對的。原理就如同書
寫與讀取Flash memory 的方式。
簡單講,警察要查房,只要急敲門,然後聽聽裡面有多慌張,抽水馬桶是否有聲音,就知
道這對情侶是左旋還是右旋電子。
撰文者:Ralph Yang 2018-02-25