zh

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 个网络原语,无外部来源 - 每次构建都进行静态检查。
  • 页面层:外部请求仅限于有据可查的分析白名单,绝不涉及文件字节。
  • 没有上传备选方案:如果本地处理失败,你会收到一条诚实的错误信息 - 绝不会转而经由服务器处理。
  • 离线证明:首次访问后,工具在飞行模式下仍能继续工作 - 这是没有任何内容被发送的最有力证据。

传输:TLS 与 HSTS

网站仅通过 HTTPS 提供服务 - 使用 TLS 1.2 和 1.3,配合现代加密套件及自动管理的证书。HTTP 严格传输安全(HSTS)设置为 max-age=63072000(2 年),并包含所有子域名:浏览器由此会在此后每次访问时自行强制使用 HTTPS。需要说明的是:你的文件内容从不经过这个连接,因为它们从不离开你的设备 - 传输加密保护的是网站本身的传输。

HTTP 安全响应头

服务器的每个响应都携带一套完整的安全响应头。这些值是配置,而非愿望:只要有一项缺失或不一致,自动化测试就会中止该次部署。

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: camera=(), microphone=(), geolocation=(), usb=(), ...禁用网站不需要的 12 个设备和传感器 API(摄像头、麦克风、位置、USB 等);仅全屏模式仍对自身来源开放。
Cross-Origin-Opener-Policy: same-origin将浏览器窗口与打开它的外部网站隔离。

完整的 Content-Security-Policy

CSP 是零上传保证背后的技术锁。它由单一源文件生成,并在此处从该同一来源实时渲染 - 全部 15 条指令,未经删减:

  • default-src 'self'
  • script-src 'self' 'wasm-unsafe-eval' 'sha256-CV3S3HJKkjkhiOy3jcZlYxFFZn1MxVO6SmmGkiwHFBA=' https://www.googletagmanager.com https://challenges.cloudflare.com
  • style-src 'self' 'unsafe-inline'
  • img-src 'self' data: blob: https://www.google-analytics.com https://*.google-analytics.com https://www.googletagmanager.com
  • media-src 'self' blob:
  • font-src 'self'
  • connect-src 'self' https://www.google-analytics.com https://*.google-analytics.com https://www.googletagmanager.com
  • worker-src 'self' blob:
  • frame-src 'self' blob: https://challenges.cloudflare.com
  • child-src 'self' blob:
  • object-src 'none'
  • base-uri 'none'
  • form-action 'self'
  • frame-ancestors 'none'
  • upgrade-insecure-requests

Google CSP Evaluator(检查日期:2026-07-09):0 项高严重性发现。除自身来源外,connect-src 仅允许页面层有据可查的分析白名单 - 只有元数据,绝无文件内容。

独立验证

三项外部审查已确定计划,并将在公开上线时针对实际运行域名执行:SSL Labs(TLS 配置)、Mozilla Observatory(HTTP 安全态势)以及 securityheaders.com(响应头完整性)。结果只有在扫描实际执行后才会展示并附上链接 - gottrix 原则上不展示未经验证的标志或评分,每次构建的自动化测试都会强制执行这一点。

托管与数据所在地

源服务器由 Hetzner Online GmbH 在德国运营,受 GDPR 约束。服务器上只存放静态网站:没有用户账户,没有文件内容,没有内容数据库。服务器日志仅包含技术上必需的访问数据,且保留期很短;我们与 Hetzner 签有数据处理协议。由于文件处理在你的浏览器中本地进行,你的文件内容无论如何都不会到达这个所在地。

统计与同意

匿名使用统计(配合 Consent Mode v2 Advanced 的 Google Analytics 4)在启动时所有信号都默认为拒绝:未经你的同意,不会设置任何统计 Cookie,也不会创建任何标识符。在你同意后,最多只会测量页面浏览量以及所使用工具的标识符 - 绝不涉及文件名、文件大小或文件内容。所有详情和法律依据均见于隐私政策。

查看隐私政策

关于安全性的常见问题

gottrix.app 安全吗?

它的安全性基于架构而非承诺:文件仅在你的浏览器中本地处理,绝不会传输到任何服务器 - 严格的 Content-Security-Policy 禁止转换代码建立任何外部连接。此外还有配合 HSTS 的 TLS 1.2/1.3、完整的安全响应头集合以及德国的托管服务。以上每一点你都可以在源代码、网络面板或通过飞行模式测试自行验证。

我的文件会被上传或存储在某处吗?

不会。转换完全在你的浏览器内存中进行;不存在任何上传端点,也不存在针对文件内容的服务器端存储。Content-Security-Policy 拒绝引擎和 Worker 代码与任何外部服务器建立连接,每次构建都有自动化测试对此进行验证。关闭标签页,数据就会消失 - 服务器端没有任何需要删除的内容。

gottrix.app 使用什么加密方式?

网站仅通过 HTTPS 提供服务,使用配合现代加密套件的 TLS 1.2 和 1.3;HSTS 强制 HTTPS 持续两年,包括子域名。你的文件内容本身不会经过任何连接,因为它们从不离开你的设备 - 传输加密保护的是网站的传输,以及基于同意的可选使用元数据。

服务器托管在哪里?

源服务器由 Hetzner Online GmbH 在德国运营,受 GDPR 约束。服务器上只存放静态网站:没有用户账户,没有文件内容,没有内容数据库。由于处理在你的浏览器中本地进行,服务器所在地对你的文件内容而言无关紧要 - 它们从不会到达那里。

我如何自行验证这些安全性声明?

有三种无需专业知识的方法:飞行模式测试(打开一个工具,断开网络,进行转换 - 依然可以运行)、开发者工具的网络面板(F12:转换过程中没有任何文件请求),以及任何浏览器都能显示的响应头。分步指南见于验证页面;公开上线时还会加入 SSL Labs、Mozilla Observatory 和 securityheaders.com 的外部扫描结果。

gottrix 究竟收集哪些数据?

在未经你同意的情况下:没有统计 Cookie,也没有任何标识符,仅有技术上必需、保留期很短的服务器日志。在你同意后,Google Analytics 4 会测量聚合使用情况,例如页面浏览量和所使用工具的标识符;文件名、文件大小和文件内容绝不会被记录。完整的法律依据以及如何撤回同意,均见于隐私政策。

这一点如何验证