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 是谷歌"隐私沙盒"(Privacy Sandbox)的一部分,是经典追踪 Cookie 的替代机制,会让浏览器自身构建兴趣画像或存储广告归因数据。对 gottrix 而言,屏蔽它们不是技术细节,而是一项差异化特征,与零上传架构一以贯之:既然文件内容从不离开浏览器,浏览器内部的兴趣画像同样没有存在的余地。
广告网络
截至 2026-07-25: gottrix 目前未接入任何广告网络。如果这一情况发生变化,将在此处以及隐私政策中于变更生效前予以说明。
独立验证
三项外部审查已确定计划,并将在公开上线时针对实际运行域名执行:SSL Labs(TLS 配置)、Mozilla Observatory(HTTP 安全态势)以及 securityheaders.com(响应头完整性)。结果只有在扫描实际执行后才会展示并附上链接,gottrix 原则上不展示未经验证的标志或评分,每次构建的自动化测试都会强制执行这一点。