破解納粹密碼的英雄,也因同性戀備受歧視——艾倫圖靈的傳奇一生

破解納粹密碼的英雄,也因同性戀備受歧視——艾倫圖靈的傳奇一生
Photo Credit: Ben Sutherland CC BY 2.0

我們想讓你知道的是

圖靈在世界史上具有核心地位,然而如果把他的人生劇場描繪成權力遊戲,或者以二十世紀的傳統政治議題框架他的故事,那會是一種誤導。確切的說,他個人的心靈自由,包括他的性取向,才是真正重要的。

這些揭露出來的事實,只不過是加強「邏輯」與「物質」之間「過場」的重要意義。一九四二到四三年的冬天,圖靈訪問美國,與高階人士交流。他在一九四二年十一月二十八日從華府傳回的報告現在已經公布,裡面記載了他面對的困難與反常處境,包括最初被拘禁在艾利斯島。美國海軍並沒有令他折服,「我確信最好不要信任這些人在密碼分析上的判斷。」

我在一九八三年聽到的謠傳得到了證實:十二月二十一日,一輛火車把圖靈帶到俄亥俄州的戴頓(Dayton),當時美國正在那裡建造炸彈機。關於他第一次接觸到美國最機密的「語言加密科技」,也有更多資訊被公開。透過一九四四年六月六日的期中報告,以及後來完整的描述,我們更加了解圖靈對於「大利拉語音加密裝置」(Delilah speech scrambler)的反應。「大利拉語音加密裝置」是行動電話的前身,乃屬於未來科技,而「恩尼格瑪機」只是一九二○年代機械工程的平庸改造。這份新資料再度證實,戰後圖靈對於從一九四五年的勝利中浮上檯面的美國最先進科技,具有獨到認識。

這項事實吸引我們進一步關注,一九四八年之後,他為英國政府通訊總部做了哪些事。在一九九二年的序言中,我揣測可能是和現在著名的「維諾那計畫」(Venona)有關;這項計畫負責破譯蘇聯的情報。不過,一九四八到五四年間英國政府通訊總部的運作或其他祕密文件還沒有完全公開,因此我們無法說明圖靈工作的性質。

理查.奧德里奇(Richard Aldrich)最近發表由他撰寫的英國政府通訊總部歷史時表示:「今日這個機構的重要性勝過以往,然而我們幾乎對它一無所知。」拜愛德華.史諾登(Edward Snowden)之賜,這個機構所從事的由圖靈奠定基石的工作,現在我們知道得比較多了。沒有人看不出來,這和圖靈的通用機有多大關係。而且在冷戰初期關於計算機的潛力,很難相信圖靈沒有扮演任何角色提供祕密意見。如我在一九九二年的序言中所述,還有誰能做這件事呢?

關於這些問題的答案,在英國政府二○一三年十二月二十四日的聲明中付之闕如。這份聲明乃是回應社會賢達名流的要求,由女王頒給圖靈死後特赦令,免除一九五二年三月三十一日他被判決的「嚴重猥褻罪」。政府內部必然有備忘錄,詳細敘述了他們的首席科學顧問接受公開審判的後果,他所犯的罪敲響了安全部門的警鐘。休.亞歷山大(Hugh Alexander)一定也報告了他在這場審判中的參與狀況。我們不無懷疑,是否外交部發揮影響力,讓圖靈接受荷爾蒙治療(當時視為是較輕的處罰)而不是去坐牢。不過並未出現這一類的文件,事實上也沒有人追究。

皇家赦免吸引了公眾的想像,人們以為這童話故事般的結局是聖誕禮物,興高采烈地接受。然而,這份聲明並沒有那麼崇高,它只是承認圖靈在一九五二年審判中訴求的辯護,他仍是國家的資產。這是倚仗權勢的行為,一九五二年時休.亞歷山大極力鼓吹卻沒能成功,六十年後透過正式的王權魔力包裝,反而獲得普遍讚揚。

伊莉莎白女王的統治始於圖靈被捕時,讓皇家赦令使用的中世紀語言顯得格外諷刺,但是不熟悉英國憲法妝點門面意味的人,應該會讚賞這只是政府執行憲法的舉動。赦令的用語承認圖靈為國服務表現優異,再度強調了這個核心問題,圖靈與政府究竟是什麼關係。然而,即使是一九五四年之前,真正有分量的政府是在大西洋的另一邊。

鑑於美國曾經明確給予圖靈特別待遇,讓他接觸美國的祕密,因此一九五一到五二年發生的事,美國當局究竟知道多少,以及他們的反應是什麼?一九四八年,圖靈是否根據美國所啟示的規則審查?一九五○年,他開始流連於曼徹斯特的咖啡館時,是否故意蔑視新規則?英國當局是否傳達了一九五二到五三年圖靈在歐洲旅行獵豔的真相?而圖靈必須面對什麼樣的要求、威脅和監控?上述問題都略而不談。

要求赦罪的請願者明確表示,圖靈是「特例」,這樣的赦免不會創造先例,也不適用於其他人身上。是在例外的基礎上,才頒發了赦免令。因此阿諾.莫瑞(Arnold Murray)被拋下了,他被起訴的罪名和圖靈一模一樣,甚至沒有人提及他是否還在人世(他過世了)。本書的讀者將會看到,圖靈對於這名弱勢年輕人的背景和個性有極大興趣,他根據自己打破階級藩籬的經驗,寫過一則短篇故事。

很難相信,如果這場審判是因為他的地位而叫停,整件事情得以遮掩下來,圖靈會道德高尚到實際去反對。另一方面,也很難相信,當如此壓迫的法律強加在其他成千上萬人身上時,他會因為自己成為特例而欣喜。

相關文章︰

書籍介紹

本文摘錄自《艾倫.圖靈傳》,時報出版

*透過以上連結購書,《關鍵評論網》由此所得將全數捐贈兒福聯盟

作者:安德魯.霍奇斯(Andrew Hodges)
譯者:林鶯

圖靈這位英國數學家是個無神論者,也是位同性戀者;他性情古怪,熱愛跑馬拉松,他在人類歷史上可記上大大一筆的不只是因為提出電腦的概念、奠定電腦運作的原理,以及清楚預見電腦智能的可能性,同時他也在第二次世界大戰期間破解了德國的密碼,幫助提早結束戰爭,拯救了無數生命。


猜你喜歡


挖掘雲端開放架構優勢!Amazon EKS高可用性叢集快速部署容器

挖掘雲端開放架構優勢!Amazon EKS高可用性叢集快速部署容器

我們想讓你知道的是

企業如何在 Amazon EKS(Elastic Kubernetes Services)上使用 GitLab 創建自動化部署,減輕人力負擔,提升專案服務運作效率?

所謂現代化智慧 IT,所有工程師最希望的境界,莫過於只要輕鬆點幾下設定,系統就會自動跑起來,管理者再也不用隨時待命在機台旁邊,從此工作悠哉又快樂!儘管這樣情境還沒到來,但隨著敏捷式開發的流行,除了 DevOps 人員,有越來越多開發者將 CI/CD 概念融入到工作流程當中,例如從 build code、執行 unit test、到部署應用程式。

透過 AWS 增加雲端技能 在組織發揮影響力

上述種種反覆步驟自動化執行,也就能提昇服務品質、主動通知開發人員以減輕人力負擔,讓專案服務能持續運作。

其中,GitLab 是執行 CI/CD 常用的工具之一,也是開發者使用程式碼儲存庫的地方。為了讓 GitLab Runner 在雲端快速實踐 CI/CD,《AWS 開發者系列》透過影片分享,如何在 Amazon EKS(Elastic Kubernetes Services)上使用 GitLab 創建自動化部署。

以下節錄工作坊影音內容,幫助開發者快速理解如何運用 Amazon EKS 的高可用性且安全的叢集,將修補、部署節點、更新等關鍵任務,全部做到自動化設定。同時影片也會示範 Amazon EKS 搭配 GitLab 如何展開自動部署,幫助工程團隊實踐 CI/CD 價值。

Amazon EKS 對容器管理輕鬆簡單、維運省時省力

容器化服務越來越興盛,當容器(Container)越來越多,在複雜的微服務(Microservice)系統環境之下,運維團隊的管理成本可能相對會增加不少,為了有效調度容器部署, 導入Kubernetes 無疑是近年企業熱門的話題之一。

建構 Kubernetes Cluster 流主要可區分兩大塊,一是安排容器調度的Control Plane、另一則是容器運行時需要用到的 Worker Node。

Control Plane 裡面涵蓋有儲存狀態的 ETCD、CoController manager 、Scheduler 的調度管理、甚至是操作時進行互動的 APIServer,若是自己創建 的 Kubernetes Cluster ,需要自己安裝這些元件,後續仍需要對 Control Plane 進行相關管理、維護、升級工作。為了減少上述 Components 的繁複維護,在透過 AWS EKS 代管的 Kubernete Control Plane 部可以獲得以下三大好處。

Amazon EKS 一鍵式部署,展現三大優勢

第一,Amazon EKS代管的 Control Plane實踐了跨AZ的高可用部署,使用者不需要擔心單一節點故障的風險。

第二,Amazon EKS 支持至少四個 Kubernetes版本,持續跟進每季 CNCF 的發佈,同時 EKS 也完全符合上游 CNCF 規範。

第三,部署 Amazon EKS 之後,可直接使用 AWS 平台上現成的服務工具,在安全性管理、網路設定方面,可以做到無縫整合。

最後 AWS 台灣解決方案架構師也提到,若想在容器環境進行 CI/CD 及應用程式的管理,可以進一步透過 IaC 整合部署 Amazon EKS 叢集,透過使用 Console、把 EKS 變成 Cloudformation 的模板、使用 AWS 所開發出來的 eksctl.io、或指令是採用 AWS CDK 可以讓開發者用自身熟悉的語言,在 AWS 平台整合 CI/CD 工具進行維運及部署 EKS。

打造第一個在 AWS 上的應用程式

了解 Amazon EKS 整合 GitLab ,獲得三面向價值

對開發者而言,想把 Amazon EKS 整合到 CI/CD 工具之一的 GitLab 平台上,可以看到那些實際的優勢?

在 DevOps 開發者示範工作坊當中,GitLab 資深解決方案架構師指出,GitLab 使用到 Kubernetes 技術,主要有三種搭配方法,包含 GitLab Server、GitLab Runner、以及創建 Deployment Environment。

本次示範教學會主要聚焦在 GitLab Runner 如何採取 Auto-scaled 方式進行 Build、Test、Package Apps;以及在 Deployment Environment 運用 Kubernetes 技術,做到 Auto Deploy、Review App。

正因為 Amazon EKS 能夠在 DevOps 過程提供所需要的彈性計算資源,幫助開發者在 GitLab 平台上面獲得以下三個層次的優勢:

  • 在 GitLab 內建的部署工作流程當中,自動生成整套 CI/CD 最佳實踐腳本。
  • Review App 過程,從 Merge Request 中可直接訪問應用程式 /App 的 UI 介面,並且根據 Git branch 名稱、專案名稱,自動生成 Review App 的 URL,以及在 Merge 前的最後防線進行 Approval 檢查。
  • 加速 CI/CD 流水線,GitLab Runner 運行時候還可藉由 Amazon EKS Cluster 進行 Auto-scaled 的支援。

Amazon EKS 整合 GitLab ,需要兩大流程

影片最後,GitLab 資深解決方案架構師示範如何把 Amazon EKS 整合至 GitLab 執行 Auto Deploy,主要可分為兩大區塊流程,第一部分聚焦在 Amazon EKS cluster 的設置,第二部分則執行 Auto Deploy 設置。

第一塊可拆分為四個階段,首先教學怎麼創建 EC2 節點的 EKS cluster,第二階段示範把 EKS Cluster 連接到開發者的 GitLab Instance、Group 或 Project,下一步則使用 Cluster Management Project Template 創建一個 Cluster Management Project,以及最後一階段透過 Cluster Management Project 自帶的 Helm Chart,安裝在 Cluster 所需要的內建 App。

第二塊執行 Auto Deploy 設置,針對需要部署的 App 創建一個 GitLab Project,接著再把 gitlab-ci.yml 添加到 Project,並從 Web IDE 選擇及導入 Auto Deploy 的 CI 模版,讓 GitLab 自動生成最佳實踐的整套流水線。

幫助開發者更了解 Amazon EKS 整合 GitLab 的 QA 系列

Q:使用 Amazon EKS 之後,如何更有效率或優化資源去配置 Worker Node 的機器數量,以及如何有效空管開發維運的成本?

A:Kubernetes 除了本身有 HPA(Horizontal Pod Autoscaling)可根據使用程度自動調整資源流量,另外也能延伸使用 AWS Auto Scaling 方案,針對可擴展資源去設定自動擴展管理。另外在成本管控,雖然 Amazon EKS 會收取額外管理費用,但可透過 AWS 平台的 Calculato r計算每個 EKS 的價格,你會發現自動化部署及管理的費用,相對工程師人力的成本更加便宜。

Q:越來越多客戶考慮把現有 Application 變成容器部署,大多是爲了加快部署的效率,那麼變成容器模式之後,對 CI/CD 的工作流程有什麽影響嗎?

A:運用容器技術最直接的效果,可以讓應用程式的環境更一致化,例如 testing 環節、stage production,讓容器避開一些差異問題。至於 CD 部分要 delivery 一些 usage 不太一樣的時候,容器會幫忙做配置,所以 CI/CD 對容器的效益是相輔相成的。

Q: 客戶在開發流程漸漸會把 Infrastructure 變成代碼或文檔,是不是可以把程式碼跟現有的應用程式的 CI/CD 流水線整合在一起,達到一套完整的 CI/CD 部署流程?

A:觀察目前市場作法,主要分成兩個階段去做整體部署。如果規模比較小的團隊,會把 Infrastructure 代碼跟 App 代碼分開,在管理上會比較靈活;如果企業規模比較大,會有另外一個 Infrastructure 團隊來控制部署事情,這種情况之下,APP 的項目會生成一個 APP package,主要做到 delivery 這個階段爲止。而 Infrastructure 的項目會指定把需要版本的文檔,部署到他們的 Kubernetes Cluster。

填寫表單 找到適合的快速上雲服務與工具!


猜你喜歡