gottrix의 보안
gottrix.app은 파일을 귀하의 브라우저에서 100% 로컬로 처리합니다: 변환 코드는 어떠한 외부 서버에도 접근할 수 없으며(Content-Security-Policy에 의해 강제됨), 이로 인해 업로드는 기술적으로 불가능합니다. 전송은 HSTS(2년)를 사용하는 TLS 1.2/1.3, 완전한 보안 헤더 세트, 그리고 독일 Hetzner에서의 호스팅을 통해 이루어집니다. 이 페이지의 모든 주장은 귀하가 직접 검증할 수 있습니다.
제로 업로드 아키텍처: 제거를 통한 보안
일반적인 온라인 변환 서비스는 귀하의 파일을 서버에 업로드하고, 그곳에서 처리한 뒤 결과를 돌려보냅니다 - 이 각 단계가 공격 표면이 됩니다. gottrix는 이 핵심 단계를 완전히 없앱니다: 엔진(이미지, PDF, 오디오, 비디오 등을 위한)은 WebAssembly로 귀하의 브라우저에서 직접 실행됩니다. 전혀 전송되지 않는 것은 도중에 가로챌 수도, 어떤 서버에서도 유출될 수도, 누구에게도 요구될 수도 없습니다.
이는 정책이 아니라 아키텍처로 강제됩니다. 엄격히 분리된 두 영역으로 구성됩니다: 귀하의 파일 바이트를 다루는 코드(엔진과 웹 워커)는 Content-Security-Policy에 의해 자체 출처로 제한되며 네트워크 호출을 전혀 포함하지 않습니다 - 이는 매 빌드마다 자동화된 테스트로 검증됩니다. 귀하의 파일을 전혀 보지 않는 페이지 계층은 문서화된 분석 허용 목록에만 접근할 수 있습니다.
- 엔진과 워커: 네트워크 기본 요소 0개, 외부 출처 없음 - 매 빌드마다 정적으로 검사됩니다.
- 페이지 계층: 외부 요청은 문서화된 분석 허용 목록에만, 파일 바이트는 절대 전송하지 않습니다.
- 업로드 대체 수단 없음: 로컬 처리가 실패하면 정직한 오류 메시지를 받게 됩니다 - 서버를 거치는 우회는 절대 없습니다.
- 오프라인 증거: 첫 방문 이후에는 비행기 모드에서도 도구가 계속 작동합니다 - 아무것도 전송되지 않는다는 가장 강력한 증거입니다.
데이터 흐름: 기기에서 서버까지
gottrix.app로 보내는 모든 요청은 먼저 TLS 연결을 종료하고 전송을 가속하는 Cloudflare Edge 네트워크를 거친 뒤, 독일 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의 보관 기간은 gottrix.app의 소스 코드가 아니라 Google Analytics 속성에서 설정됩니다 - 구체적인 값은 이곳에서 확인할 수 없습니다. 모든 법적 근거는 개인정보 처리방침에 나와 있습니다.
전송: TLS와 HSTS
웹사이트는 오직 HTTPS로만 제공됩니다 - 최신 암호 스위트와 자동으로 관리되는 인증서를 사용하는 TLS 1.2 및 1.3입니다. HTTP Strict Transport Security(HSTS)는 서브도메인을 포함하여 max-age=63072000(2년)으로 설정되어 있습니다: 이를 통해 브라우저는 이후 모든 방문에서 스스로 HTTPS를 강제합니다. 참고로: 귀하의 파일 내용은 이 연결을 전혀 거치지 않습니다. 귀하의 기기를 벗어나지 않기 때문입니다 - 전송 암호화는 사이트 자체의 전송을 보호합니다.
HTTP 보안 헤더
서버의 모든 응답은 완전한 보안 헤더 세트를 포함합니다. 이 값들은 바람이 아니라 설정입니다: 자동화된 테스트가 헤더 중 하나라도 누락되거나 다를 경우 배포를 중단시킵니다.
| 헤더 및 값 | 효과 |
|---|---|
| Strict-Transport-Security: max-age=63072000; includeSubDomains | 모든 서브도메인을 포함하여 2년 동안 HTTPS를 강제합니다. |
| 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년 7월 9일 확인): 심각도 높음(High) 발견 사항 0건. 자체 출처 외에 connect-src는 페이지 계층의 문서화된 분석 허용 목록만 허용합니다 - 메타데이터일 뿐, 파일 내용은 절대 아닙니다.
기존의 콘텐츠 보안 정책(default-src 'self')은 동시에 기술적인 광고 차단 장치로도 작동합니다: 전달되는 코드가 외부 출처와 연결하는 것을 원칙적으로 전혀 허용하지 않습니다. 실수로 삽입된 광고 또는 추적 스크립트라 하더라도 이 때문에 작동할 수 없습니다 - 브라우저가 이 정책에 따라 그러한 모든 연결을 차단합니다. 이는 공지가 아니라 소스 코드에서 검증 가능한 기존 아키텍처의 속성입니다.
의도적인 선택: Privacy Sandbox API는 계속 차단됩니다
위의 Permissions-Policy 항목은 browsing-topics=(), attribution-reporting=(), interest-cohort=()를 완전히 차단합니다 - 이는 부수적인 설정이 아니라 의도적이고 영구적인 결정입니다. 이 세 가지 API는 구글의 "Privacy Sandbox"의 일부로, 브라우저 자체가 관심사 프로필을 구축하거나 광고 기여 데이터를 저장할 수 있게 해주는 기존 추적 쿠키의 대체 메커니즘입니다. gottrix에게 이를 차단하는 것은 기술적인 세부 사항이 아니라 차별화 요소이며, 제로 업로드 아키텍처와 일관됩니다. 파일 내용이 애초에 브라우저를 벗어나지 않는 것처럼, 브라우저 내부의 관심사 프로필 역시 존재할 자리가 없습니다.
광고 네트워크
기준일 2026-07-25: gottrix는 현재 어떠한 광고 네트워크도 연동하고 있지 않습니다. 이 상황이 변경될 경우, 변경이 적용되기 전에 이곳과 개인정보처리방침에 그 사실이 공개됩니다.
독립적인 검증
공개 출시 시점에 실제 도메인을 대상으로 실행될 세 가지 외부 검토가 확정적으로 계획되어 있습니다: SSL Labs(TLS 구성), Mozilla Observatory(HTTP 보안 상태), securityheaders.com(헤더 완전성). 결과는 스캔이 실제로 실행된 후에만 표시되고 링크됩니다 - gottrix는 원칙적으로 검증되지 않은 인증마크나 등급을 표시하지 않으며, 매 빌드마다 자동화된 테스트가 이를 강제합니다.