0

0
1

文字

分享

0
0
1

解密恩尼格碼密碼機——《科學月刊》

科學月刊_96
・2016/01/27 ・3645字 ・閱讀時間約 7 分鐘 ・SR值 578 ・九年級

李中志/美國伊利諾州立大學電腦科學教授

1
艾倫‧涂靈。 Source: Wikipedia

艾倫‧ 涂靈(Alan Turing, 1912~1954)這位二十世紀最重要的科學家之一,電影《模仿遊戲》在國內上映後引發國人的興趣,對於不少偏離史實的電影情節也多有指正。相對於之前國人對這位近代科學史上的巨擘近乎無知,這是值得鼓舞的現象。可惜涂靈的貢獻是建立在相當枯燥且抽象的計算理論上,缺乏自然主義可直觀描述的實體,不像宇宙、黑洞、時間等,這些科普最愛的主題,經過適當的引導,就算是無背景知識的大眾,也能對近代物理做出正確的想像。但涂靈的計算理論是純符號的產物,很難窺其堂奧,即便是電腦科系的師生,不少人也是懵懵懂懂,不容易以三言兩語解釋涂靈對現代計算理論革命性的衝擊,只能人云亦云地推崇他為「電腦之父」。涂靈得此頭銜固然當之無愧,但何以致此?伴隨《模仿遊戲》出現的許多影評顯然力有未逮。

電影《模仿遊戲》以涂靈破解德軍密碼機為主軸,全劇不斷穿插涂靈在科學與哲學上更重要的兩個貢獻,「電腦的發明」與「人工智慧」。基於娛樂效果,電影裡營造的氣氛有些言過其實,有些則是涂靈不可取代的貢獻,但礙於過度專業無法深入,只能點到為止,顯然是銀幕上無法處理的科學史大問題,而這正是科普作者看完電影後必須承接的任務。

當代最成功的密碼機

3
恩尼格碼密碼機。 Source: William Warby(flickr)

先從電影的主軸,破解德國的恩尼格碼(Enigma)密碼機談起。第一台恩尼格碼造於第一次大戰末期,由德國工程師謝爾比烏斯(Aruth Scherbius)設計,之後與里特(Richard Ritter)合作共同取得專利,成立公司量產,估計先後有近十萬台的恩尼格碼被製造出來。恩尼格碼問世後立刻成為當代最成功的密碼機,縱橫二十餘年,之間被逐漸改良。恩尼格碼原本大量用於加密商業電文,德軍加強其複雜度後於1928 年全面用於軍事通訊,直到希特勒第三帝國瓦解為止。

2
謝爾比烏斯的恩尼格碼密碼機設計手稿。 Source: Wikipedia

日本結盟為軸心國後自德國引進恩尼格碼,改良為「九七式印字機」,負責加密與德國之間的外交電文。美軍的解密員稱之為「紫」機(Purple),有別於「紅」、「藍」加密機。紅藍兩機由日本軍部自行研發,也曾讓美軍傷透腦筋,但後來亦遭盟軍破解。與歐洲戰場一樣,密碼戰也是太平洋戰爭中極精彩且關鍵的一章。日本海軍元帥山本五十六化身孔雀東南飛,親上戰機視察前線,被美軍成功狙擊,便是日本軍部最高軍事機密的電文被譯破的慘痛代價。

不可否認,恩尼格碼的確是精巧的產品,展現德國人在二戰前精密工業的技術已達顛峰的境界,但放在科技史上,恩尼格碼實在稱不上是革命性的密碼機。它的數學模式相當簡單,算是傳統機械式加碼機的末代產物,完全沒用到數論、代數理論、複雜度理論等,這些近代加碼技術的基本理論。不管它的設計多精巧複雜,每個字母的變化看似撩亂,但每個分開的字母都是一個獨立的置換加密,在竊聽者擁有大量密文的情況下,用傳統密碼分析就可以直接破解。

恩尼格碼機的破解

德國人當然知道恩尼格碼的破綻,於是以一連串的標準流程來設定機器的初始狀態,試圖避開漏洞,雖有初步的成功,但最後仍遭破解。有趣的是,它的致命傷之一正是這一連串的標準流程。此外,恩尼格碼加密與解密呈對稱狀態,即加密與解密的運算與設定相同,加上其他已知的條件,導致了有效破解的捷徑。但這破解恩尼格碼的方法不是涂靈發現的,而是波蘭的密碼局在二戰前即擁有的祕密。波蘭這個民族優秀的科學家與數學家輩出,但國家多苦難,兩次大戰間夾在野心勃勃的東西兩強之間,朝不保夕。東有蘇聯共產國際的進逼,西有德國法西斯的擴張。基於國安需要,1920 年代晚期即成立密碼局,延請專業數學家研究密碼學。其中雷艾夫思基(Marian Rejewski),茲格阿爾思基(Henryk Zygalski),羅茲伊特思基(Jery Ró ycki),是破解恩尼格碼的主要三位數學家,其中又以雷艾夫思基的貢獻為最,這段史實要到1973 年才解密。

波蘭的密碼局在戰前就擁有關於恩尼格碼的完整知識,包括擷取長達十幾年的密文與例行設定機器的情資。雷艾夫思基花數年的時間檢視看似無意義的密文,尋找規則,有如哥白尼與都普勒觀察變化無常的行星運動,最後終於寫下搜尋初始設定的限制方程式,並以擄獲的恩尼格碼加以驗證。1939 年波蘭淪陷,波蘭密碼局驚險地保住了多年的研究成果,逃出淪陷區後交給向德國宣戰的英國,由英國軍情局的布萊切利園(Bletchley Park)團隊接手。同年剛結束在美國普林斯敦大學博士論文寫作的涂靈加入團隊,帶領最後的破解工作。

涂靈在布萊切利園建造的機器取名為Bombe,源自波蘭密碼局的Bamba,有「密碼炸彈」之意。波蘭密碼局的「密碼炸彈」在德軍加強恩尼格碼後已力有未逮,但只是速度上的問題,破解的基本理論未變。另一方面,德國不是不清楚恩尼格碼機的原理已被掌握,但過度自信,認為只要簡單加大初始設定的組合數,世上不可能有足夠的運算能力,在一定的時間內找到初始設定。這才是德國致命的錯誤假設,也成就了涂靈的重大貢獻。

4
戰期使用的Bombe。Source: National Security Agency
5
Bombe 上標有英文字母,在工作時這些圓柱體會旋轉。圖中Bombe 為布萊切利園內的仿製品。Source: Andy Armstrong(flickr)

涂靈重要貢獻

雖然涂靈並不是破解恩尼格碼機的原創者,但他的Bombe則與波蘭密碼局Bamba 的計算原理完全不同。涂靈引進大量的電子零件與更有效的演算法,讓Bombe 以當代無法想像的速度運轉,光是這點,譽涂靈為當代最頂尖的工程師已當之無愧。涂靈更利用統計原理,大量移除不必要的搜尋空間,至今仍是破解密碼的重要技巧。但涂靈也不是隻手達成任務,除了波蘭密碼局累積的知識,還靠布萊切利園同事的共同智慧,對Bombe 不斷改良,如威契曼(Gordon Welchman)的對角線板(diagonal board)便是加速Bombe 的重要改進。到戰爭後期Bombe 能在20 分鐘內完成計算,讓解密員得以在一兩個小時內確定德軍每天更換的初始設定。至戰爭結束為止,總共有約200台的Bombes 加入工作,也就是說,戰爭後期德軍的行動完全被盟軍掌握,焉能不敗?

值得一提的是,在1941 年底,德軍開始懷疑盟軍有聽取恩尼格碼機密文的能力,於是為恩尼格碼機多加一轉盤,初始值的搜尋空間因此呈指數增加。此舉困擾盟軍解密員多時,失聰達九個月之久,德軍潛艇神出鬼沒,造成1942 年盟軍船艦的重大損失。直到十月底英國海軍在埃及北面的地中海,擊沉編號U–559 著名的U–boat 潛艇。德軍在搶救無望後棄艇,三位英勇的英國水兵卻冒死奮力登上即將沉沒的U–559,企圖搶奪上面的一台新型恩尼格碼機。但機器被釘死固定一時無法取下,於是兩位進入內艙的水兵轉而搶救恩尼格碼機的檔案資料與密碼簿,拼命向外拋出,由第三名水兵在外接應救起文件。這兩名進入內艙的水兵最後來不及逃出,與U–559 同葬海底。這些文件堪稱二戰期間盟軍搶奪到最重要的文件,讓布萊切利園團隊一窺第四轉輪的奧秘,重新取得監聽德軍的耳朵。

二戰破解密碼的這一頁歷史,其實是比任何電影情節還要精彩的諜報戰,絕不是幾個天才關在屋子裡憑空想出來的,它是全面戰爭的動員,依賴大量的情報工作,慘烈的軍事爭奪,戰士與情報人員英勇犧牲性命所換來的。

影響電腦發展

就電腦發展史來看,涂靈在布萊切利園設計的機器,的確累積了許多電子電路的知識,或許對後來的電腦設計提供工程上的經驗,但並無理論上的關係。最主要的差別在Bombe 不是一台全功能的通用計算機器,而只是負責單一用途的機器,由電子線路與機械組合而成。應該比較像巴貝奇(Charles Babbage) 機械計算機的電子版。巴貝奇是早涂靈一百多年的劍橋學長,終生設計了兩台在他有生之年無法完成的複雜計算機,「差分機」與「分析引擎」,他的企圖也被不少人視為計算機的先驅。這些機器精巧複雜,但也和日後的電腦原理無關。

終戰後涂靈致力於設計真正的電腦,命名為Automatic Computing Engine,比同時在美國由馮紐曼(John von Neumann)設計的「馮紐曼機」與稍後的ENIAC(EDVAC的前身)還要先進許多,世界從此進入電腦的新紀元。

資料來源:

  1. David, K., Seizing the Enigma: The Race to Break the German U–Boats Codes, Houghton Mifflin (T), 1991.
  2. Robert, C., Codes and Ciphers, Julius Caesar, the Enigma, and the Internet. Cambridge University Press, 2002.
  3. Alenander, S., Introduction to Cryptography with Mathematical Foundations and Computer Implementations, A Chapman & Hall Book, 2011.

2016-01-cover〈本文選自《科學月刊》2016年1月號〉

延伸閱讀:
由淡入濃—如是我觀涂靈形象
數位影像密碼學

 

什麼?!你還不知道《科學月刊》,我們47歲囉!
入不惑之年還是可以
當個科青


數感宇宙探索課程,現正募資中!

文章難易度
科學月刊_96
224 篇文章 ・ 1773 位粉絲
非營利性質的《科學月刊》創刊於1970年,自創刊以來始終致力於科學普及工作;我們相信,提供一份正確而完整的科學知識,就是回饋給讀者最好的品質保證。


1

1
0

文字

分享

1
1
0

Paxlovid能有效降低死亡風險嗎?COVID-19口服藥現況

台灣科技媒體中心_96
・2022/05/17 ・2421字 ・閱讀時間約 5 分鐘
示意圖/envato elements

今年四月台灣宣布將走向「重症清零,輕症管控」:非放任病毒肆虐式「與病毒共存」(living with covid-19) 的控管疫情策略。 若需要達到「重症清零,輕症管控」的目標,醫療人員的支援與 COVID-19 藥物的使用,將是關鍵手段,對於感染後容易導致重症的個案,也需要有抗病毒藥物來治療或預防惡化

目前有哪些治療新冠肺癌的藥物?

目前首度獲得美國 FDA 許可的抗新冠藥物「Remdesivir」 (瑞德西韋),是透過抑制病毒的 RNA 合成酶達到藥效。美國 FDA 更在近期批准,注射液劑型的 Remdesivir 適用於「出生 28 天及以上、至少 3 公斤」的嬰幼兒染疫患者,成為首款嬰幼兒的新冠療法

然而注射液劑型需要專業的打針技術,並非一般民眾可居家自行使用,因此抗新冠口服藥物的開發,各國一直都很重視。現行已通過美國 FDA 緊急使用授權(EUA)的抗新冠口服藥物,有輝瑞公司研發的「Paxlovid」,以及默克(或稱默沙東)公司研發的「Molnupiravir」(莫納皮拉韋)

而 Paxlovid 是由 Nirmatrelvir(奈瑪特韋)和 Ritonavir(利托那韋)兩種藥物所搭配使用,其中 Nirmatrelvir 主要作用是抑制新冠病毒的 Mpro 蛋白酶活性,進而干擾病毒的複製,達到抗病毒的效果。而 Ritonavir 則是能延長 Nirmatrelvir 在人體內的血中濃度,透過抑制人體內正常酵素 CYP3A4 酵素活性,避免 CYP3A4 快速將 Nirmatrelvir 代謝掉,而失去 Nirmatrelvir 該有的藥效。

這兩個藥物所構成的 Paxlovid 好像一對好夥伴互相協助,成為具有高效力的口服抗新冠藥物

Paxlovid 能有效降低死亡風險?

Paxlovid。圖/ Kches16414 , CC BY-SA 4.0

根據文獻指出,Paxlovid 能降低 COVID-19 感染後的 85-89% 住院或死亡風險,是目前對抗新冠肺炎最佳的選項之一。《新英格蘭醫學期刊》(NEJM)期刊於上個月發表最新 Paxlovid 臨床試驗的研究報告:「Oral Nirmatrelvir for High-Risk, Nonhospitalized Adults with Covid-19」證實,使用 Paxlovid 治療未施打疫苗且有症狀的 Covid-19 患者,能將 Covid-19 的重症風險降低 89%,且藥物的安全性在臨床上可接受,且沒有明顯的安全問題。

不過,此研究個案限於未施打疫苗者,而目前大多數人已經接種過新冠肺炎疫苗,情況略有不同。已有將此藥使用於已施打過疫苗者的研究正進行中,但若在未施打者有幫助,對於施打過疫苗而可能具有部分保護力的人,推測仍應會有治療效果,此研究是在症狀出現三天內給藥得到良好的效果,至於再晚一些時後才給藥,就沒有數據可參考。

但需要注意的是,有在服用其他藥物的患者(如:降血脂、抗腫瘤藥或神經精神藥物等),若服用 Paxlovid 會影響 CYP3A4 的作用,可能也會改變其他藥物的作用效果,若藥物在血中濃度無法被安全控制,往往對病情有負面的影響。因此服用 Paxlovid 需要有專業醫師的評估並開立處方簽才能使用,民眾無法自由服用

Paxlovid 需要有專業醫師的評估並開立處方簽。圖/envato elements

Molnupiravir 口服藥的表現又是如何?

病毒在複製的過程當中,往往需要大量的核糖核苷(ribonucleoside),作為合成新的病毒所需要的材料。而 Molnupiravir 口服藥,是一種「核糖核苷類似物」,也就是病毒在複製所需要的「冒牌」材料,透過這樣的方式干擾病毒的複製過程,進而阻止病毒的繁殖

Molnupiravir 不會像 Paxlovid 去影響到其他藥物在體內的作用,然而這些核糖核苷類似物在人體細胞進行複製的時候也會使用,所以可能具有誘導基因突變的風險

雖然一般來說,口服 Molnupiravir 的療程只有 5 天,在這樣的時間周期來說,對一般成人造成基因突變的風險是很低。但是,Molnupiravir 對於胎兒或哺乳中的嬰兒,風險就顯得高出許多。所以,Molnupiravir 在默克公司的官方網站有聲明,不建議孕婦及哺乳中的女性服用

此外,根據新英格蘭醫學期刊在今年三月的報告中,發現將 Molnupiravir 用於非住院的新冠患者治療中,僅僅將高危新冠患者的住院和死亡風險降低了 30%,低於早前估計的 50%。

Molnupiravir 不建議孕婦及哺乳中的女性服用。圖/envato elements

「老藥新用」的開發策略

環顧目前的抗新冠藥物,大都是利用「老藥新用」(drug repurposing)的藥物開發策略,才能在這麼短的時間達到如此的成就。「老藥」是指已被核准做為臨床使用的藥物,「新用」則是指由原來已核准的藥物中發現新的適應症用途或是新的用法。

老藥的好處就是其藥物臨床前的數據都已經被建立,其中包含藥理實驗、藥物動力學、代謝途徑、副作用等,這些數據對藥物開發相當重要。

在目前這些新冠藥物中,瑞德西韋一開始是用來開發對抗伊波拉病毒,而 Paxlovid 中的 Nirmatrelvir 原先用以治療愛滋病,此外 Molnupiravir 則是為了治療流感。這樣的成功經驗相信能提供政府與學者參考,期望台灣開發新冠藥物有亮眼的成績,也讓我們未來在對抗 COVID-19 疫情當中有更好的手段。

引用文獻

  1. Hammond, Jennifer, et al. “Oral nirmatrelvir for high-risk, nonhospitalized adults with COVID-19.” New England Journal of Medicine 386.15 (2022): 1397-1408.
  2. Coronavirus (COVID-19) Update: FDA Approves First COVID-19 Treatment for Young Children
  3. Coronavirus (COVID-19) Update: FDA Authorizes First Oral Antiviral for Treatment of COVID-19
  4.  Coronavirus (COVID-19) Update: FDA Authorizes Additional Oral Antiviral for Treatment of COVID-19 in Certain Adults
  5. Hammond, Jennifer, et al. “Oral nirmatrelvir for high-risk, nonhospitalized adults with COVID-19.” New England Journal of Medicine 386.15 (2022): 1397-1408.
  6. Cox, Robert M., Josef D. Wolf, and Richard K. Plemper. “Therapeutically administered ribonucleoside analogue MK-4482/EIDD-2801 blocks SARS-CoV-2 transmission in ferrets.” Nature microbiology 6.1 (2021): 11-18.
  7. Jayk Bernal, Angélica, et al. “Molnupiravir for oral treatment of Covid-19 in nonhospitalized patients.” New England Journal of Medicine 386.6 (2022): 509-520.

臨床試驗

  • EPIC-HR: Study of Oral PF-07321332/Ritonavir Compared With Placebo in Nonhospitalized High Risk Adults With COVID-19(NCT04960202

數感宇宙探索課程,現正募資中!

所有討論 1
台灣科技媒體中心_96
9 篇文章 ・ 7 位粉絲
台灣科技媒體中心希望架構一個具跨領域溝通性質的科學新聞平台,提供正確的科學新聞素材與科學新聞專題探討。