大模型上了火山方舟:數據唯你可見,唯你所用,唯你所有

大模型的發展呈現出追風逐日般的速度,但與之相伴的安全問題,也是頻頻被曝光。

正如此前ChatGPT所曝出的案例中,黑客可以利用漏洞給AI植入虛假記憶,在後續回答中出現誤導信息。

而且還能植入惡意指令,持續獲取用戶聊天數據。

即便開啓新的對話也是無濟於事,簡直就是大寫的“陰魂不散”:

試想這種對話一旦涉及機密的內容,那帶來後果和損失可以說是不敢想象。

可怕,着實是有些可怕。

但反觀國內的大模型玩家,卻似乎鮮有黑客入侵、數據泄露等安全問題的存在。

爲何會如此?

帶着這個疑問,我們找到了大模型服務平臺火山方舟的團隊,在與火山引擎智能算法負責人、火山方舟負責人吳迪做了深入交談之後,得到了這樣的答案:

一言蔽之,就是你的數據,唯你可見,唯你所用,唯你所有。

那麼火山方舟具體又是如何做到的,我們繼續往下看。

傳統的數據安全保護方案,已經不能被套用到AI大模型時代。

這就是目前大模型玩家們在安全方面所面臨的最根本且真實的難題。

因爲傳統的私有化部署方案,多數是屬於數據不動模型動,這種方法難以跟上雲上大模型的快速迭代,且基礎算力的單位成本遠高於公有云集中調度。

因此,現在更適合的一種方案應當是模型不動數據動,企業需要將數據上傳到雲中,以此來利用最先進的大模型能力。

如何讓用戶充分信任雲上數據的安全性始終是一個難題。

加之在技術層面上,主流的隱私計算技術也無法滿足生產級別性能要求。

例如可用的TEE技術雖然成熟,但保護GPU等異構高算力硬件,是依然在探討和研究中,無法直接大規模用於生產環境;MPC等多方安全計算技術也很難在大模型的吞吐、延遲與大模型的效果之間取得平衡。

而火山方舟的全週期安全方案,卻能直擊上述的痛點,並且很好地提供安全保護的能力。

整體來看,這套方案共分爲四大維度,分別是:

接下來,我們就把整套方案拆分開來,深入到每個維度來看下火山方舟是如何搞安全的。

鏈路全加密

在大模型應用中,數據流轉的每個環節都可能面臨風險,特別是當數據從用戶端發送到雲端進行處理的時候。

對此,火山方舟平臺採用了“雙層加密”方案,即在數據傳輸過程中實施網絡層和應用層的雙重加密。

首先是在網絡層,火山方舟使用了HTTPS協議,這就像給數據通道加上了一層防護罩,讓數據在傳輸過程中被安全封裝。

同時,平臺還使用了mTLS(Mutual Transport Layer Security,即雙向認證傳輸層安全協議),這可以理解爲“雙保險”,因爲不僅用戶會驗證方舟平臺的身份,方舟平臺也會反向驗證用戶的身份。

這種方式類似於寄送包裹時不僅需要寄件人和收件人的地址驗證,快遞員還會在每個傳送節點核查包裹是否安全抵達目標地址,確保沒有被篡改。

這一層安全措施有效防止中間人攻擊,即攻擊者試圖在傳輸鏈路中截取或篡改數據的行爲。

然而,僅僅依賴網絡層加密還不足以保證數據絕對安全,因爲如果數據在網絡傳輸中被誤導到錯誤的地址,那麼即便是密文也有可能被破解。

因此,火山方舟還增加了應用層的會話加密,進一步確保數據即便落到不正確的接收端,也無法被解密讀取。

網絡層的加密就像給一個文件加了一層保險盒,而應用層加密就如同再給保險盒上了一把鎖,雙重保險確保即便有人攔截了這個文件,也無從打開它。

在應用層加密中,每個推理實例都被賦予了一個唯一的身份認證證書,類似於每個人都有自己的身份證號。

用戶的數據會使用這個證書的公鑰進行加密,而只有當數據抵達擁有對應私鑰的火山方舟安全沙箱內,纔會被解密。

這一設計如同用戶的數據在送達火山方舟之前被打上了獨特的印記,只有持有匹配“鑰匙”的平臺安全環境才能將其解密和使用。

這樣一來,平臺確保了用戶數據在傳輸中始終處於封閉的“安全通道”中,未經授權的任何人都無法解鎖並查看數據。

數據高保密

這一步驟核心在於如何確保數據在平臺的傳輸、使用和存儲過程中始終處於極高的保密狀態。

數據高保密不僅涵蓋了對數據存儲、加密等方面的多重保護,更以沙箱環境爲基礎,確保數據即便在平臺內部流轉時也不會暴露給任何未經授權的用戶。

這一保密策略類似於把數據鎖進一個“加密金庫”中,無論是外界的攻擊者還是平臺的內部人員都無法直接接觸到未加密的原始數據。

對此,火山方舟採取的策略是:

對於模型訓練,用戶可以通過火山引擎提供的密鑰管理服務(KMS)功能,設置自定義密鑰對數據進行加密,並將數據存儲在用戶自己的TOS(對象存儲服務)內。

這一環節可視作給數據“穿上盔甲”後再送到平臺,即便數據被截獲,攻擊者也只能看到加密後的“密文”,無法獲取數據的真實內容。

然後,在平臺內部,數據被分配到安全沙箱中並以密文狀態存儲,只有在安全沙箱的內存中才能夠短暫解密以供訓練使用。

通過這一設計,火山方舟平臺建立了一個“只有沙箱能讀懂數據”的密鑰體系,確保數據在離開沙箱後始終以密文狀態存在。

這就好比“密鑰控制”,即每一組數據都配有一把“加密鎖”和“解密鑰匙”。

這把鑰匙由用戶控制,只有用戶允許時才能使用。比如當企業客戶需要上傳訓練數據集時,可以事先利用TOS的加密功能對數據進行處理。

然後火山方舟平臺將密文數據掛載到安全沙箱環境中,在內存中完成解密後,數據纔會被投入訓練系統。

此外,火山方舟平臺的數據高保密功能還擴展到了精調模型的存儲和管理環節。

對於每一個完成精調的模型,平臺都會以加密的形式存儲在對象存儲或雲文件系統中,確保只有授權用戶能讀取和使用。

同時,爲了保證模型的高效加載和運行性能,火山方舟平臺利用GPU加密庫,讓模型在加載和運行過程中能夠直接在 GPU 上完成解密和加密處理。

這種方式極大地提升了數據流轉效率,確保在不犧牲模型推理速度的情況下依然保持數據的高度安全。

在安全沙箱之內,還有一個“任務級隔離”的策略。

在平臺上,每個模型任務被劃分爲獨立的“安全隔間”,即使在多租戶併發的情況下,用戶數據之間也不會互相干擾。

這樣的隔離策略讓每一個任務都像被鎖在自己的“小隔間”中,即便其他租戶發生任何安全事件,也不會影響到當前任務的安全性。

環境強隔離

火山方舟的“環境強隔離”方案,不僅涉及到上述我們提到的任務級隔離,更包括了防止數據泄露、確保安全操作、監控內部流量等方面的多層次措施。

環境強隔離的首要任務是讓每個模型任務擁有一個獨立、隔離的“安全區域”,這一設計類似於給每個任務分配了一個“安全艙”。

在實際操作中,火山方舟爲每個任務使用了隔離容器,確保每個任務實例在一個安全且封閉的容器環境中獨立運行。

爲了達到高安全性,這些容器不僅隔離了彼此的網絡流量,還限制了容器內部的操作權限,防止任務間出現橫向數據傳輸,確保不同任務間的數據不會相互干擾。

爲了進一步加強任務的隔離性,火山方舟在容器的基礎上設計了一層動態網絡隔離。

這項技術確保每個任務都擁有獨立的、專屬的網絡策略。

具體而言,當一個任務被創建時,系統會自動生成一套動態的網絡配置,適用於該任務的全生命週期;從任務創建到結束,無論任務間是否位於同一雲網絡環境下,它們之間的網絡連接始終被嚴格隔離。

除此之外,火山方舟還爲任務實例部署了容器沙箱技術。容器沙箱技術通過添加多層安全防護,使得容器在隔離性上得到了大幅提升。

此處用到的是一項字節跳動開發的開源技術“VERM Armor”,這項技術爲容器提供了一種實時阻斷威脅的機制,一旦容器檢測到潛在的安全漏洞,就會立即阻止危險行爲的繼續。

在環境強隔離的設計中,火山方舟還確保了關鍵數據的“只讀存取”功能。任務實例在使用模型和數據時僅具備讀取權限,不能對數據進行修改。

此外,火山方舟還部署了可信數據訪問代理系統,進一步加強了數據的隔離性和安全性。

系統不僅能確保數據請求的來源和權限檢查,還能防止容器中的數據未經授權發送到外部環境。

這一設計就像海關檢驗程序,每一個進出任務隔間的數據請求都要經過嚴格審查,任何未經授權的數據傳輸都會被攔截。

這種多層級的防護策略,使得用戶數據即便在任務隔間內部也處於嚴格的監控之下。

操作可審計

這一步驟的核心在於實現“可驗證的安全性”,讓所有涉及數據的操作都能被完整記錄,並在必要時追溯來源。

操作可審計主要通過“審計日誌”功能來實現。

每當用戶的數據在平臺內被訪問、傳輸、處理或刪除時,系統會自動生成詳細的操作記錄。

這些日誌如同“監控錄像”,詳細記錄了操作的時間、操作人、操作內容和操作結果。

就好比“數據使用的完整痕跡”,用戶可以像檢查銀行賬單一樣審查自己的數據是否在未經授權的情況下被訪問或操作。

這種設計不僅提升了數據的安全性,還增強了用戶對平臺的信任。

此外,火山方舟的審計日誌設計遵循“透明可信”的理念。

用戶可通過方舟控制檯隨時查看自己的數據操作日誌,瞭解自己的數據在平臺上的流轉情況。

火山方舟還提供了多重驗證機制,用戶可以將平臺的操作日誌與自己系統的操作記錄相對比,以確保數據處理的真實、準確性。

這種交叉驗證機制類似於“多重備份驗證”,讓用戶更放心地監控數據安全。

同時,火山方舟的審計日誌不僅記錄了標準操作,還能夠標記異常操作並自動觸發警報。

如果出現越權訪問或操作不當的情況,系統中的監控指標會立即發生變化。

這一設計如同銀行的“風險預警系統”,任何可疑操作都會在第一時間被標記,用戶能清晰看到平臺在安全保護上的責任與能力。

總而言之,在火山平臺這裡,數據所到之處,處處都是安全措施。

在與吳迪的交流過程中,他還特別提及了內部每隔幾天便會上演“火山方舟與藍軍攻防”的安全機制。

這個機制不僅是火山方舟對內部系統進行嚴格檢驗的方式,更是確保平臺始終處於最佳防禦狀態的一項重要實踐。

通過這種攻防演練,火山方舟團隊能夠模擬真實的攻擊環境,檢測安全系統的穩健性,及時發現和修補潛在漏洞。

這種演練源自軍隊訓練,藍軍模擬攻擊,火山方舟防守阻止。

藍軍由專業內部團隊組成,模擬密碼破解、權限提升、數據竊取等網絡攻擊,嘗試突破平臺防護。火山方舟則負責監測、識別並阻止這些入侵,採取實時監控、迅速響應和修復漏洞等措施。

這種演練包括日常、小型和大型攻防演練。小型演練每月或每兩月一次,大型演練每季度或半年一次,通常聯合外部白帽團隊進行,以模擬更復雜的攻擊場景。

吳迪指出,這種機制幫助團隊不斷髮現並修復安全隱患,提升應對真實攻擊的能力。

並且已成爲火山方舟安全體系的重要組成部分,不僅提高了團隊的安全意識和技術水平,也讓用戶感受到平臺在安全保障上的持續努力。

在談到衆多環節中哪個纔是最重要的,在吳迪認爲,內部人員的操作是安全風險的一個重要根源。

而這也正是我們剛纔提到的,火山方舟引入了可信代理和堡壘機的雙重管理機制的原因所在,可以確保所有運維人員的操作都經過嚴格的權限申請並全程錄屏。

吳迪還提出,火山方舟的安全理念正在從“Don’t be evil”向“Can’t be evil”演進。

所謂“Don’t be evil”意味着平臺通過可驗證的安全審計結合加密隔離等技術,確保除了用戶之外的任何一方,包括平臺內部人員,如果違反數據安全策略,都能夠被第一時間發現並追責。

而“Can’t be evil”則意味着平臺將通過進一步的技術手段,使得惡意行爲從根本上不可實施,這包括可信度量技術、以及泌態計算等技術的應用,能夠主動減少攻擊面,並且提升用戶數據隱私保護級別。。

並且火山方舟的安全能力,是從第一天就開始建設,像鋼筋水泥一樣澆築在產品裡,而不是先蓋好房子又裝修。從下面這張圖的時間線中便可一目瞭然:

展望未來,吳迪認爲生成式AI技術的發展速度極爲迅猛,這也給安全防護帶來了前所未有的挑戰。

特別是在多模態生成式AI應用場景中,例如視頻、音頻等多種輸入與輸出模式下,如何在技術複雜性不斷增加的情況下維持高標準的安全性,是未來的重大挑戰之一。

他表示,火山方舟將繼續探索加密硬件技術、跨行業聯合安全方案等新興技術,以確保在技術快速發展和用戶體驗之間實現最佳平衡。

而在我們問及吳迪,在搞安全的過程中,是否有令他印象深刻的故事時,他這樣回答道:

總而言之,縱觀火山方舟的整體安全互信方案,是已經做到了“科技道路千萬條,安全第一條”。

參考鏈接:[1]https://www.youtube.com/watch?v=zb0q5AW5ns8&t=3s[2]https://mp.weixin.qq.com/s/dLY3gH165TbdP4KqTXHXjw