gottrix 的資安機制
gottrix.app 100% 在你的瀏覽器本機處理檔案:轉換程式碼無法存取任何外部伺服器(由 Content-Security-Policy 強制實現),因此上傳在技術上是不可能的。傳輸透過 TLS 1.2/1.3 搭配 HSTS(2 年)、完整的安全標頭組合,以及位於德國的 Hetzner 託管來完成。本頁的每一項主張你都可以自行驗證。
零上傳架構:透過消除實現安全
常見的線上轉換工具會把你的檔案上傳到伺服器,在那裡處理後再把結果傳回 - 這每一個步驟都是攻擊面。gottrix 徹底消除了這個關鍵步驟:引擎(用於圖片、PDF、音訊、影片等)以 WebAssembly 形式直接在你的瀏覽器中執行。從未傳輸的內容無法在途中被攔截,無法從任何伺服器外洩,也無法被任何人索取。
這不是靠政策,而是靠架構來強制實現的,分為兩個嚴格分離的區域:接觸你檔案位元組的程式碼(引擎和 Web Worker)透過 Content-Security-Policy 被限制在自身來源內,且不包含任何網路呼叫 - 每次建置都會有自動化測試驗證這一點。從不查看你檔案的頁面層,只能存取一份有文件記載的分析白名單。
- 引擎和 Worker:0 個網路原語,無外部來源 - 每次建置都進行靜態檢查。
- 頁面層:外部請求僅限於有文件記載的分析白名單,絕不涉及檔案位元組。
- 沒有上傳備選方案:如果本機處理失敗,你會收到一則誠實的錯誤訊息 - 絕不會轉而經由伺服器處理。
- 離線證明:首次造訪後,工具在飛航模式下仍能持續運作 - 這是沒有任何內容被傳送的最有力證據。
資料流向:從你的裝置到伺服器
每一次對 gottrix.app 的請求都會先經過 Cloudflare 的 Edge 網路(終止 TLS 連線並加速傳遞),再轉發到位於德國的 Hetzner 源伺服器。Cloudflare 和 Hetzner 僅處理 IP 位址、請求的 URL、時間戳記等技術性連線資料,絕不處理檔案內容,因為檔案內容從不離開你的裝置。選用的意見回饋表單還涉及兩條額外分支(用於防機器人的 Cloudflare Turnstile、用於單次內部通知的 Resend);匿名使用統計僅在你同意後,直接從你的瀏覽器發往 Google Analytics 4。包含所有資料類別與法律依據的完整接收方列表列於本頁下方。
你的(連線)資料的接收方
下表列出了在營運 gottrix.app 過程中處理技術資料的每一個外部接收方 - 該表由與隱私權政策相同的登記表生成,確保兩個頁面永不脫節。你的檔案內容不會出現在任何一列中,因為它們從不會到達這些接收方。
| 接收方 | 角色 | 所在地 | 資料類別 | 法律依據 | 傳輸機制 | 保留期限 |
|---|---|---|---|---|---|---|
| Hetzner Online GmbH | Origin-Hosting / Server-Zugriffslogs | Deutschland | Gekuerzte/maskierte IP-Adresse (im Caddy-Zugriffslog, GDPR-uebliche Truncation: IPv4 auf /24 = letztes Oktett genullt, IPv6 auf /48 = letzte 80 Bit genullt; Details siehe evidence); Zeitstempel; angefragte URL; User-Agent; HTTP-Statuscode; Feedback-Freitext + optionale Diagnosedaten (Browser/Plattform/Viewport/Client-Zeit) in der Feedback-DB, KEINE IP-Adresse und KEINE E-Mail-Adresse (laut Tabellenschema bewusst keine Spalte dafuer) | Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse am sicheren, stabilen Betrieb; fuer Feedback: berechtigtes Interesse an Missbrauchsschutz/Bearbeitung, optionale Diagnosedaten Art. 6 Abs. 1 lit. a DSGVO) | keine Drittlanduebermittlung (Sitz Deutschland/EU) | 90 天 |
| Cloudflare, Inc. | CDN / Reverse Proxy / Bot-Abwehr (inkl. Turnstile fuer das Feedback-Formular) | USA | IP-Adresse (jeder Request, da Cloudflare TLS terminiert - nicht auf das Feedback-Formular beschraenkt); angefragte URL; User-Agent; Zeitstempel; TLS-/Verbindungsmetadaten; NEL-Fehlerberichte (Netzwerkfehler-Metadaten des Browsers); Turnstile-Challenge-Antwort-Token + optional die Besucher-IP als remoteip-Parameter (nur beim Absenden des Feedback-Formulars) | Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse an sicherer, performanter Auslieferung und Missbrauchs-/Bot-Abwehr) | EU-Standardvertragsklauseln, ggf. EU-US Data Privacy Framework (konkrete Cloudflare-Vertragsgrundlage im Repository nicht dokumentiert - zu verifizieren, siehe offene Punkte) | 無法給出具體數值 |
| Google Ireland Ltd. | Web-Analytics (Google Analytics 4, Consent Mode v2 Advanced) | Irland (moegliche Weiterverarbeitung/Uebermittlung an Google LLC, USA) | gekuerzte IP-Adresse; Seiten-URL; Ereignis-/Werkzeug-Kennung; Zeitstempel; Geraete-/Browser-Metadaten (User-Agent) | Art. 6 Abs. 1 lit. a DSGVO i.V.m. § 25 Abs. 1 TDDDG (Einwilligung); vor Einwilligung ausschliesslich anonyme Modellierungssignale ohne Cookie und ohne Personenbezug | EU-Standardvertragsklauseln, EU-US Data Privacy Framework | 無法給出具體數值 |
| Resend, Inc. | Transaktionale E-Mail (genau eine interne Benachrichtigung pro Feedback-Eingang) | USA | Feedback-Freitext (im E-Mail-Body); optionale Werkzeug-Kennung, Seiten-Pfad, Sprache, Zeitstempel (im E-Mail-Body); optionale Diagnosedaten (Browser/Plattform/Viewport/Client-Zeit), NUR bei separater ausdruecklicher Einwilligung; KEINE Besucher-IP-Adresse, KEINE Besucher-E-Mail-Adresse (laut Code nicht Teil der API-Payload) | Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse an Bearbeitung des Anliegens); fuer optionale Diagnosedaten Art. 6 Abs. 1 lit. a DSGVO (gesonderte Einwilligung) | EU-Standardvertragsklauseln, soweit einschlaegig EU-US Data Privacy Framework | 通常為 180 天 |
保留期限一覽
gottrix.app 上已知的所有保留期限彙整於此處,具體而非籠統:
| 伺服器存取日誌(Hetzner,源伺服器) | 90 天 |
|---|---|
| 意見回饋提交內容(資料庫) | 通常為 180 天 |
| Google Analytics 4(使用統計) | 無法給出具體數值 |
Google Analytics 4 的保留期限在 Google Analytics 資源中設定,而非在 gottrix.app 的原始碼中 - 具體數值無法從此處核實。所有法律依據均見於隱私權政策。
傳輸:TLS 與 HSTS
網站僅透過 HTTPS 提供服務 - 使用 TLS 1.2 和 1.3,搭配現代加密套件及自動管理的憑證。HTTP 嚴格傳輸安全(HSTS)設定為 max-age=63072000(2 年),並包含所有子網域:瀏覽器由此會在此後每次造訪時自行強制使用 HTTPS。需要說明的是:你的檔案內容從不經過這個連線,因為它們從不離開你的裝置 - 傳輸加密保護的是網站本身的傳輸。
HTTP 安全標頭
伺服器的每個回應都攜帶一套完整的安全標頭。這些值是設定,而非願望:只要有一項缺漏或不一致,自動化測試就會中止該次部署。
| 標頭及值 | 作用 |
|---|---|
| Strict-Transport-Security: max-age=63072000; includeSubDomains | 強制 HTTPS 持續 2 年,包括所有子網域。 |
| X-Frame-Options: DENY | 禁止在外部框架中嵌入本網站(防點擊劫持,並透過 CSP 中的 frame-ancestors 雙重保障)。 |
| X-Content-Type-Options: nosniff | 防止瀏覽器猜測內容類型並將檔案作為指令碼執行。 |
| Referrer-Policy: strict-origin-when-cross-origin | 向外部網站最多只傳遞來源,絕不傳遞完整 URL。 |
| Permissions-Policy: geolocation=(), usb=(), camera=(self), microphone=(self), ... | 停用網站不需要的 12 個裝置和感測器 API(位置、USB,以及 Attribution-Reporting/Browsing-Topics/Interest-Cohort 等隱私沙盒 API);僅全螢幕模式、螢幕分享、相機與麥克風(供對應的錄製工具使用)仍對自身來源開放。 |
| Cross-Origin-Opener-Policy: same-origin | 將瀏覽器視窗與開啟它的外部網站隔離。 |
| Cross-Origin-Resource-Policy: same-origin | 阻止外部網站嵌入或讀取此來源的資源。 |
完整的 Content-Security-Policy
CSP 是零上傳保證背後的技術鎖。它由單一原始檔案生成,並在此處從該同一來源即時呈現 - 全部 17 條指令,未經刪減:
default-src 'self'script-src 'self' 'wasm-unsafe-eval' 'sha256-IVwTUmhRUWm+PlXmt9psO+ld19VPfQQW+7HvkcN0W1Y=' https://www.googletagmanager.com https://challenges.cloudflare.comstyle-src 'self' 'unsafe-inline'img-src 'self' data: blob: https://www.google-analytics.com https://*.google-analytics.com https://www.googletagmanager.commedia-src 'self' blob:font-src 'self'connect-src 'self' https://www.google-analytics.com https://*.google-analytics.com https://www.googletagmanager.comworker-src 'self' blob:frame-src 'self' blob: https://challenges.cloudflare.comchild-src 'self' blob:object-src 'none'base-uri 'none'form-action 'self'frame-ancestors 'none'upgrade-insecure-requestsreport-uri /api/csp-reportreport-to csp-endpoint
Google CSP Evaluator(檢查日期:2026-07-09):0 項高嚴重性發現。除自身來源外,connect-src 僅允許頁面層有文件記載的分析白名單 - 只有中繼資料,絕無檔案內容。
現有的內容安全政策(default-src 'self')同時也是一道技術性的廣告封鎖:它原則上不允許所交付的程式碼與任何外部來源建立連線。即使有廣告或追蹤指令碼被意外植入,也無法運作 - 瀏覽器會依據該政策封鎖任何此類連線。這不是一項公告,而是現有架構中一項可在原始碼中驗證的特性。
刻意為之的決定:Privacy Sandbox API 保持封鎖
上方的 Permissions-Policy 項目完全封鎖了 browsing-topics=()、attribution-reporting=() 與 interest-cohort=() - 這並非附帶設定,而是一項刻意且長期有效的決定。這三項 API 是 Google「Privacy Sandbox」的一部分,屬於傳統追蹤 Cookie 的替代機制,讓瀏覽器本身得以建立興趣檔案或儲存廣告歸因資料。對 gottrix 而言,封鎖它們並非技術細節,而是一項差異化特徵,與零上傳架構一致:既然檔案內容本來就從不離開瀏覽器,瀏覽器內部的興趣檔案同樣沒有存在的餘地。
廣告網路
截至 2026-07-25: gottrix 目前並未接入任何廣告網路。若此情況有所變動,將在此處與隱私權政策中於變動生效前予以揭露。
獨立驗證
三項外部審查已確定計畫,並將在公開上線時針對實際運作的網域執行:SSL Labs(TLS 設定)、Mozilla Observatory(HTTP 安全態勢),以及 securityheaders.com(標頭完整性)。結果只有在掃描實際執行後才會展示並附上連結 - gottrix 原則上不展示未經驗證的標誌或評分,每次建置的自動化測試都會強制執行這一點。