在早期的蝙蝠俠漫畫與電影世界中,當高譚市需要黑暗騎士出馬打擊犯罪時,除了用警察總局屋頂的蝙蝠探照燈向夜空發射求救信號外,就是用蝙蝠電話。在1960年代的經典蝙蝠俠電視劇中,蝙蝠電話一開始是一台紅色熱線電話,非必要不得輕易使用。隨著劇情推移,愈來愈多人有了蝙蝠俠的電話號碼,造成許多可笑的場景。在古早的1960年代,許多我們如今習以為常的移動通訊與密碼工具尚未被發明。如何用21世紀科技重新設計蝙蝠電話,就是一個頗具啟發性的思想實驗。
首先要考慮的是:誰有資格聯絡蝙蝠俠?想像你是布魯斯韋恩,蝙蝠電話裡最重要的聯絡人,應該會有最忠誠可靠的管家阿福,高譚市警察局長高登,最愛的女人瑞秋,以及貓女。對布魯斯而言,這隻手機必須要有加密通訊與不被追蹤竊聽的能力,除了保護自己之外,更重要的是保護那些沒有蝙蝠俠面具的人。蝙蝠俠是稀缺資源,不能隨便讓路人招喚,但又必須讓需要蝙蝠俠的人一定能聯絡得上。這意味著,蝙蝠電話號碼不能隨便廣告,但是緊急一定要能打得通;蝙蝠電話記錄不能公開,甚至需要能自動銷燬,讓蝙蝠俠想要保護的人可以否認知悉蝙蝠俠的聯絡方式;更重要的,是要讓想聯絡蝙蝠俠的人能確認在電話的另一端是蝙蝠俠本人,但又不能留下可以追蹤其真實身分的線索。由此可見,蝙蝠通訊系統的架構,必須是某種點對點動態加密通訊系統,其系統設計要點,與一般金融級,甚至軍事級通訊系統的要求相當,至少應該包含以下幾項:
- 訊息隱密性(Confidentiality):係指訊息不會遭截取窺竊而洩漏內容導致洩密。
- 訊息完整性(Integrity):係指訊息內容不會遭篡改,且系統能偵測內文可能遭竄改。
- 訊息來源辨識(Authentication):係指傳送方無法冒名傳送資料。
- 訊息不可重複性(Non-duplication):係指訊息內容不得重複發送。
- 訊息不可否認性(Non-repudiation):係指傳送方與接收方均無法否認其傳送訊息行為。
要實作能夠符合這些條件的加密通訊系統,區塊鏈技術可以提供一套架構。因為區塊鏈是一個多中心化的網絡資料庫,每一個區塊都是記錄某種訊息交換歷史的資料結構,區塊與區塊之間透過加密「鏈」在一起,構成了一個數學上被相信為極難破解、無法任意竄改、高度可靠的資料庫,因此完全可能被當成加密通訊系統的骨幹。簡化地說,在這樣的系統中,每一個用戶都有兩組公開/私密金鑰所定義的「帳號」,每一次「對話」都可為發送方與接收方,當發送方要傳訊息給接收方時,會先找到由接收方公鑰生成的帳號,然後交換一組僅於該次通話有效的密鑰,用以加密通訊內容。如此一來,雙方建立了一個雙重加密的對話渠道,每次通話內容可以如Snapchat設定為自動銷燬,必要時也可以由發送方將該次通話對應的私鑰銷燬,讓對話記錄無法在區塊鏈被存取,成為遺失在密碼空間中的記憶。更進一步,整個對話渠道可以發生在一個在互聯網上動態生成的虛擬硬碟之中,例如分佈式的InterPlanetary File System。雙方如果希望在軟體與硬體層次都不流痕跡,只要在銷燬對話私鑰後連虛擬硬碟一併刪除,那麼整件事就彷彿從未發生過。假使發送方或接收方願意,或是依法必須保存通話記錄,只要妥善保存每次對話渠道的私鑰,甚至將承載對話的區塊鏈本身備份在安全的地方,追查稽核就能有憑有據。