VeilShare 如何保護你的檔案

VeilShare 的設計讓你永遠不必把檔案託付給我們。所有內容在上傳前就會在你的裝置上加密,金鑰始終在你手上。這個頁面會詳細說明運作原理、我們如何保護你的帳號,以及資料中心出狀況時,你的資料會怎麼樣。

最後更新:

安全性總覽

  • 檔案、檔案和資料夾名稱,以及預覽圖,都會在上傳前於瀏覽器中以 AES-256-GCM 加密
  • 加密金鑰絕不會以可用的形式傳到我們的伺服器,所以我們無法讀取你的檔案
  • 你的帳號密碼絕不會離開你的裝置
  • 可選用以電子郵件寄送一次性驗證碼的雙重驗證
  • 檔案以備援方式儲存在多個資料中心,設計上能抵禦火災和水災
  • 伺服器和資料庫位於芬蘭,受 GDPR 和芬蘭資料保護法規範

以 AES-256-GCM 進行端對端加密

當你上傳檔案時,瀏覽器會為這個檔案產生一把全新的 256 位元隨機金鑰。檔案會被切成多個區塊,每個區塊都在傳送給我們之前,以各自獨一無二的 nonce 透過 AES-256-GCM 加密。檔名也用同一把金鑰加密,所以我們甚至不知道你分享的是什麼。照片和影片則會在瀏覽器中產生小型預覽圖,同樣以這把金鑰加密。

資料夾也是一樣的原理。每個資料夾都有自己的隨機金鑰,用來加密資料夾名稱,並鎖住裡面所有內容的金鑰。因此分享一個資料夾,只會開放這個資料夾的存取權,其他一概不會。

AES-GCM 是一種驗證式加密。只要加密檔案中有任何一個位元被改動,不論是硬碟故障還是有人竄改,解密都會直接失敗,而不會默默交給你一個損毀的檔案。

金鑰放在哪裡

每個分享連結都有自己的隨機金鑰,放在連結中 # 之後的部分。瀏覽器絕不會把網址的這個部分傳送給伺服器。收件者開啟連結時,他們的瀏覽器會用這把金鑰解開檔案的金鑰,下載加密檔案後在本機解密。我們自始至終只看得到加密過的資料。

零知識帳號

使用 VeilShare 不需要帳號。如果你建立了帳號,它的設計也讓我們依然無法讀取你的檔案,而且你的密碼絕不會離開你的裝置。

登入時,你的瀏覽器會用 Argon2id 處理密碼。這是一種大量耗用記憶體的演算法,專門讓猜密碼變得又慢又昂貴。從處理結果會衍生出兩把不同的金鑰:一把用來向我們的伺服器證明你的身分,另一把用來解開你的個人主金鑰。伺服器只儲存第一把金鑰加鹽後的雜湊值,而你的主金鑰則以第二把金鑰加密後儲存。

帳號中每個檔案和資料夾的金鑰,都直接或透過所在資料夾,用你的主金鑰鎖住。這樣你登入後就能從任何裝置開啟檔案,而我們手上只有鎖住的副本。

復原金鑰與金鑰更換

註冊時你會拿到一把復原金鑰。忘記密碼時,它是保住已儲存檔案存取權的唯一方法,因為我們無法重設自己沒有金鑰的加密。如果你懷疑金鑰可能外洩,可以在設定中更換主金鑰,所有已儲存的檔案都會直接在瀏覽器中,以新的主金鑰重新上鎖。

雙重驗證

在帳號設定中開啟雙重驗證後,光有正確的密碼就無法登入了。

  • 驗證碼由密碼學安全的隨機數產生器產生
  • 每組驗證碼 10 分鐘後失效,且只能使用一次
  • 驗證碼以雜湊形式儲存,絕不以明文儲存
  • 限制驗證碼猜測和重新寄送的次數,阻擋暴力破解

你也可以查看所有登入你帳號的裝置,並登出任何不認得的工作階段,或一次全部登出。

保護分享連結

任何拿到連結的人都能解密連結指向的內容,所以我們提供工具,讓你限制誰能使用連結、能用多久。資料夾連結會包含資料夾裡的所有內容,也包括你之後新增的檔案,直到連結被停用或達到你設定的任一限制為止。

密碼保護

為分享連結加上密碼後,沒有密碼就打不開。密碼在傳送前會先在瀏覽器中以 PBKDF2 雜湊處理,伺服器以固定時間比對,重複輸入錯誤也會被封鎖。這是連結上的額外一道鎖,而不是額外一層加密,所以連結和密碼最好還是分開用不同管道傳送。

有效期限與下載次數上限

分享連結可以設定在一段時間後或下載一定次數後失效,你也可以隨時停用。連結一旦失效,任何人都無法再透過它取得檔案,也無法重新啟用。如果想再次分享檔案或資料夾,就需要建立新的分享連結。未登入上傳的檔案和資料夾會在連結失效後一小時內永久刪除;帳號中的檔案則會保留到你自己刪除為止。

防範火災、水災與硬體故障

加密保護你的檔案不被他人存取。以下說明檔案如何抵禦火災、水災和硬體故障等實體災害。

就算失去整座資料中心也不怕的檔案儲存

加密後的檔案存放在 Cloudflare R2,這是一套為極高耐久性而設計的儲存服務。每個檔案都以多份副本或抹除碼片段的形式,分散儲存在同一區域內多座資料中心的大量硬碟上。Cloudflare 的設計目標,是讓資料在硬碟故障,甚至資料中心遭遇火災或淹水等實體損害時都能保存下來。

位於芬蘭、每日備份的伺服器與資料庫

我們的應用程式伺服器和資料庫在芬蘭赫爾辛基的 Hetzner 運作,所在資料中心通過 ISO/IEC 27001:2022 認證,這是資訊安全管理的國際標準。這表示你的帳號資料受到 GDPR 和芬蘭資料保護法的保障。

資料庫每天自動備份,並保留最近七天的備份。如果伺服器故障,我們可以從最近的備份還原。

硬體遭竊也不會洩漏你的檔案

你的檔案、檔案和資料夾名稱,以及預覽圖,都是用我們從未持有的金鑰加密,所以就算硬碟遭竊、備份外洩或伺服器被入侵,你分享的內容也不會曝光。

我們無法防範的情況

沒有任何服務能保證百分之百安全,我們寧願坦白告訴你風險在哪裡:

  • 你或收件者裝置上的惡意程式
  • 我們看得到維持服務運作所需的基本中繼資料,例如檔案大小、連結到期日,以及檔案如何歸入資料夾
  • 我們看得到維持服務運作所需的基本中繼資料,例如檔案大小、到期日和其他一些非敏感資料

我們處理哪些資料、保留多久的完整清單,請參閱隱私權政策。發現安全性問題嗎?請告訴我們,我們會盡快調查。

常見問題

看不到。檔案在上傳前就會在你的瀏覽器中加密,金鑰則留在你的分享連結中;如果是帳號中的檔案,金鑰會鎖在你的密碼後面。我們只儲存自己無法解密的加密資料。

AES-256-GCM,也就是銀行和政府機關使用的同一種驗證式加密標準。每個檔案都有自己的 256 位元隨機金鑰,帳號密碼則以 Argon2id 強化。

加密後的檔案存放在 Cloudflare R2,每個檔案都會分散在多座資料中心的多顆硬碟上,因此即使其中一個地點毀損,檔案也能重建。我們的資料庫也每天自動備份。

沒有復原金鑰就無法。分享連結的金鑰就在連結本身之中。帳號中的檔案,則可以用註冊時拿到的復原金鑰重設密碼。如果兩者都沒有,任何人都無法解密這些檔案,我們也不例外。

支援。在帳號設定中開啟後,每次登入都需要另外輸入寄到你電子郵件的 6 位數驗證碼,驗證碼 10 分鐘內有效。

資料來源

安全地分享檔案

免費,不用帳號。你的檔案在上傳前就會在瀏覽器中加密,我們無法讀取。

分享檔案