賽風:最早想到「人傳人」的梯子,最後靠代理池活到今天
▎ 在這部史裡,造梯子的人已經有過幾種面孔:有信仰的群體、軍方實驗室、單幹的程序員。2006 年登場的這一把,出自大學校園。
2006 年 12 月 1 日,多倫多大學公民實驗室(Citizen Lab)在實驗室主任 Ron Deibert 主持下發布了賽風(Psiphon)1.0,開源。跟此前所有梯子相比,它的設計像是從另一個方向想出來的。
不建池子的梯子
自由門的打法是養一個大代理池,全體用戶共用;賽風 1.0 反其道而行:根本不建池子。
它是一個裝在牆外普通人家用電腦上的小程式。牆外的志願者裝好之後,得到一個私密網址和一組帳號密碼,然後透過自己信得過的渠道——電話、郵件、見面——遞給牆內的親友。牆內的人什麼都不用裝,打開瀏覽器、輸入那個網址,登入,牆外就在眼前。
早在正式發布兩年多前、專案還在實驗室裡打磨時,公民實驗室技術研究總監 Nart Villeneuve 就對 BBC 把設計意圖說得很白:「我們要建的,是一張認識的人彼此信任的網,而不是一張誰都能隨手接上的大型網絡。」
它提前答對了兩道考題
把第一個十年那兩道考題拿來對照,才看得出這個設計有多超前。
單點可封?賽風 1.0 沒有單點。沒有中心伺服器、沒有公開的節點清單,入口散在千家萬戶的客廳裡,每個入口只有幾個人知道。Tor 的公開節點清單被牆整份下載、照單全封——賽風 1.0 沒有清單可下載。牆封不了它列舉不出來的東西。
制服可認?牆內用戶連向賽風節點的流量,是一條尋常的 HTTPS 連接,通往一個不起眼的家用地址。嚴格說破綻仍在——它用的是自簽證書,湊近看認得出來;但那個年代的牆,還不會湊近看。
這兩道考題要到多年之後才被正式寫在黑板上,而賽風在 2006 年就交了一份兩題全對的答卷。按理說,故事到這裡應該直奔勝利。
軟肋:朋友比 IP 稀缺
但這份答卷有一個不寫在技術文檔裡的軟肋:它把稀缺資源從 IP 換成了信任。
代理池模式缺 IP,IP 可以花錢租;賽風 1.0 缺的是「牆內的你,恰好認識一個牆外願意為你長開電腦的人」——這東西租不到。多數牆內網民在牆外沒有這樣的朋友;有這樣朋友的,朋友的家用電腦也會關機、會換 IP、會嫌麻煩。這變成了人際傳播問題。
信任網絡是最好的保護,但也是最難拓展的方向。
2007 年初,賽風從公民實驗室分拆為獨立的加拿大公司;2.0 起轉向集中式的雲端架構,2011 年 1.X 正式退役——「人傳人」的設計,壽終正寢。
退回老路,把老路修寬
此後的賽風,走回了自由門走過的路:公司養節點、全體用戶共用、跟牆打消耗戰。錢的來路也是同一條線——美國國務院「網路自由」計畫的資助,與美國之音的上級機構及 BBC 的合作,近年再加上開放技術基金(OTF)的長期投入。
但老路被它修寬了。2011 年秋進入中文圈的賽風3,把「消耗戰」從拼 IP 升級成拼協議:客戶端內建 VPN、SSH、HTTP 代理多條通道,這條被封自動換下一條,同時自動學習新的接入點——單兵裝備裡塞進了一整套備援。分發也帶著游擊味:發一封空郵件到官方信箱,自動回信附上安裝包。
還活著的老兵
第一代陣營幾乎凋零殆盡:花園網退場、GoAgent 的雲被連根拔掉、Tor 始終沒能成為大眾的梯子。而賽風還在——而且是以主力的規模活著。
2021 年緬甸政變,賽風月活用戶從五千人暴漲到超過一千四百萬;同年古巴抗議,用戶破百萬;伊朗一度成為它全球最大的用戶群。在中國、伊朗、俄羅斯,它至今仍撐著數以百萬計的月活用戶。一場從 2006 年打到今天的消耗戰,它沒有下場。
沒走完的那條路
賽風的一生,是翻牆史的一個反向剪影:它最早想到去中心化,卻因為信任不可規模化而退回池子;六年後,Shadowsocks 用「人人自架」把去中心化重新撿了起來——用租來的主機代替朋友的客廳,繞開了那個瓶頸。
但「人傳人」這個思路並沒有死。它只是從軟體設計裡退了出來,退到了軟體之外:直到今天,新入口靠私下遞,邀請靠熟人發,梯子仍在信得過的人之間手手相傳。賽風 1.0 想用代碼搭起來的那張信任網絡,後來由人自己搭了起來。