1<!doctype html> 2<!-- Bu shell hem kökü (`/` = landing) hem sertifika yolunu (`/c/`, `/cert/`) servis eder. 3 Bu yüzden meta buradan SABİT seçilemez: varsayılan landing'dir (kökten gelen reklam/arama 4 ziyaretçisi ürünün ne olduÄunu görmeli), sertifika yolunda cert.js `page.cert.desc`'e çevirir. 5 `data-i18n-title` bilinçli YOK: baÅlıÄı cert.js/setCertTitle sahiplenir (yola + oturuma duyarlı), 6 iki yazar aynı anda title'a dokunursa yarıŠolur. --> 7<html lang="en" data-i18n-desc="page.home.desc"> 8<head> 9 <meta charset="utf-8" /> 10 <meta name="google" content="notranslate" /> 11 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes" /> 12 <title>VerityRecord â Timestamp & Seal Digital Content</title> 13 <meta name="description" content="Seal files and web pages with cryptographic timestamps. Prove that content existed at a specific point in time. Zero-knowledge encryption, Ed25519 signatures, RFC 3161 trusted timestamps." /> 14 <meta name="author" content="VerityRecord" /> 15 <link rel="canonical" href="https://verityrecord.com/" /> 16 <meta property="og:type" content="website" /> 17 <meta property="og:title" content="VerityRecord â Timestamp & Seal Digital Content" /> 18 <meta property="og:description" content="Seal files and web pages with cryptographic timestamps. Prove content existed at a specific point in time." /> 19 <meta property="og:url" content="https://verityrecord.com/" /> 20 <meta property="og:image" content="https://verityrecord.com/logo.png" /> 21 <meta property="og:site_name" content="VerityRecord" /> 22 <meta property="og:locale" content="en_US" /> 23 <meta name="twitter:card" content="summary_large_image" /> 24 <meta name="twitter:title" content="VerityRecord â Timestamp & Seal Digital Content" /> 25 <meta name="twitter:description" content="Seal files and web pages with cryptographic timestamps. Prove content existed at a specific point in time." /> 26 <meta name="twitter:image" content="https://verityrecord.com/logo.png" /> 27 <link rel="icon" type="image/png" href="/assets/png/favicon-3kLiewPR.png" /> 28 <!-- Büyük ikon: sosyal/arama debugger'ları en büyük rel=icon'u "site logosu" sayar; 29 yalnız 64px favicon kalırsa bulanık-logo uyarısı basıyor (sahip 2026-07-11g). --> 30 <link rel="icon" type="image/png" sizes="512x512" href="/assets/png/logo-CPdw7ZXH.png" /> 31 <link rel="manifest" href="/assets/json/manifest-8FmciIRP.json" /> 32 <meta name="theme-color" content="#6c5ce7" /> 33 <link rel="apple-touch-icon" href="/assets/png/apple-touch-icon-DLevMMTh.png" /> 34 35 <!-- Preconnect to external origins --> 36 <link rel="preconnect" href="https://www.gstatic.com" crossorigin /> 37 <link rel="preconnect" href="https://www.googletagmanager.com" crossorigin /> 38 39 <!-- Preload critical CSS --> 40 41 <!-- Force SW cache purge (one-time) --> 42
42<script src="/js/sw-purge.js"></script>
42 43 44 <!-- Theme flash prevention --> 45
45<script src="/js/theme-flash.js"></script>
45 46
46<script src="/js/csp-delegator.js"></script>
46 47 48 <!-- Stylesheets --> 49 <!-- Three.js locally vendored (K22) â offline verify + privacy + CSP 'self'. Version pinned in package.json. --> 50 51 <!-- monitors.css ölü yük DEÄİL: inline monitör diff-chip/timeline-chip stilleri 52 (vr-mon-diff-chip, vr-diff-*) yalnız burada tanımlı (2026-07-03 koddan teyit). --> 53 54
54<script src="https://www.gstatic.com/firebasejs/10.7.1/firebase-app-compat.js"></script>
54 55
55<script src="https://www.gstatic.com/firebasejs/10.7.1/firebase-auth-compat.js"></script>
55 56
56<script src="https://www.gstatic.com/firebasejs/10.7.1/firebase-app-check-compat.js"></script>
56 57
57<script src="/config.js?v=3.26.512"></script>
57 58
58<script src="/js/sentry-init.js"></script>
58 59
59<script src="/js/web-vitals.js" defer></script>
59 60
60<script src="/__/firebase/init.js"></script>
60 61
61<script src="/js/desktop-bridge.js"></script>
61 62 63 <!-- js-sha3 for client-side SHA3-256 (E2E encryption) â self-hosted (B17 fix). 64 Was on cdnjs.cloudflare.com; moved local to eliminate intermittent CDN 65 failures + enable SW caching + allow CSP tightening. --> 66
66<script src="/vendor/js-sha3/sha3-0.9.3.min.js?v=3.26.512" 67 integrity="sha384-+JAeTqUiH9WuByObPHouP4rQKYUTLQ9AQW4HHJZ4uNmkA2+nkDpbssQNGsVXnJpe" 68 crossorigin="anonymous" defer></script>
68 69 <!-- JSZip (encrypted ZIP support) â self-hosted (B17 fix). Was on cdnjs; 70 see note above. SRI hash identical (same upstream binary). --> 71
71<script src="/vendor/jszip/jszip-3.10.1.min.js?v=3.26.512" 72 integrity="sha384-+mbV2IY1Zk/X1p/nWllGySJSUN8uMs+gUAN10Or95UBH0fpj6GfKgPmgC5EXieXG" 73 crossorigin="anonymous" defer></script>
73 74 75 <!-- App notification system --> 76
76<script src="/js/app-notification.js?v=3.26.512" defer></script>
76 77 78 <!-- Google Analytics -->
vendor: 66 bytes, lines 78-79
78 79 <script async src="https://www.googletagmanager.com/gtag/js?id=
79AW-18316322489
vendor: 14 bytes, lines 79-80
79"></script> 80
80<script src="/js/gtag-init.js"></script>
80 81 <!-- UTM / paid-ads attribution capture â runs immediately, persists to 82 localStorage for the signup milestone to read. --> 83
83<script src="/js/utm-capture.js?v=3.26.512"></script>
83 84 85 <!-- i18n + Theme --> 86
86<script src="/js/theme-switcher.js"></script>
86 87
87<script src="/js/i18n.js?v=3.26.512"></script>
87 88
88<script src="/js/i18n-auto-init.js?v=3.26.512"></script>
88 89
89<script src="/js/onboarding.js?v=3.26.512" defer></script>
89 90 91 <!-- JSON-LD Structured Data --> 92 <!-- G7 (2026-07-20c): operatingSystem'den "Android, Windows" KALDIRILDI. 93 Native uygulama YOK (android/ ios/ electron/ klasörü yok, Play Store / 94 App Store kaydı yok); yalnız kurulabilir bir PWA var â o da "Web"dir. 95 Yapısal veri Google'a MAKİNE OKUNUR bir iddiadır, pazarlama metni deÄil: 96 "Android" demek kullanıcıyı Play Store'da aramaya iter ve bulamaz. 97 â ï¸ JSON-LD bloÄunun İÃİNE yorum yazılamaz â JSON yorum kabul etmez. --> 98
98<script type="application/ld+json"> 99 { 100 "@context": "https://schema.org", 101 "@type": "SoftwareApplication", 102 "name": "VerityRecord", 103 "applicationCategory": "BusinessApplication", 104 "operatingSystem": "Web", 105 "description": "Seal files and web pages with cryptographic timestamps. Prove that content existed at a specific point in time.", 106 "url": "https://verityrecord.com", 107 "offers": { 108 "@type": "Offer", 109 "price": "0", 110 "priceCurrency": "USD", 111 "description": "Free tier available" 112 }, 113 "creator": { 114 "@type": "Organization", 115 "name": "Clinom Research Tech, LLC", 116 "url": "https://verityrecord.com" 117 } 118 } 119 </script>
119 120
120<script type="importmap">{"imports":{"three":"/vendor/three/three.module.js","three/addons/":"/vendor/three/addons/"}}</script>
120 121
121<script type="module" crossorigin src="/assets/js/cert-DhyxP8Ks.js"></script>
121 122 <link rel="modulepreload" crossorigin href="/assets/js/modulepreload-polyfill-B5Qt9EMX.js"> 123 <link rel="modulepreload" crossorigin href="/assets/js/vite-preload-BXl3LOEh.js"> 124 <link rel="modulepreload" crossorigin href="/assets/js/utils-DUc9fQ3R.js"> 125 <link rel="modulepreload" crossorigin href="/assets/js/encryption-DCmpUEbF.js"> 126 <link rel="modulepreload" crossorigin href="/assets/js/SealCeremony-Ca9AfGIf.js"> 127 <link rel="stylesheet" crossorigin href="/assets/css/cert-FHRFBbNP.css"> 128 <link rel="stylesheet" crossorigin href="/assets/css/variables-Cixdtgeo.css"> 129 <link rel="stylesheet" crossorigin href="/assets/css/global-sidebar-fVOe5lva.css"> 130 <link rel="stylesheet" crossorigin href="/assets/css/global-nav-EhJutMe_.css"> 131 <link rel="stylesheet" crossorigin href="/assets/css/csp-inline.css_v_3-BfOqTwcz.css"> 132 <link rel="stylesheet" crossorigin href="/assets/css/csp-injected.css_v_3-D4dijcqL.css"> 133 <link rel="stylesheet" crossorigin href="/assets/css/app-notification.css_v_3-COaWxhWs.css"> 134 <link rel="stylesheet" crossorigin href="/assets/css/monitors.css_v_3-BVAYXSiI.css"> 135</head> 136<body> 137
137<script src="/js/appcheck-init.js"></script>
137 138 <!-- Sidebar Navigation --> 139 <aside class="vr-sidebar" id="vrSidebar"></aside> 140
140<script src="/js/global-sidebar.js?v=3.26.512" defer></script>
140 141 142 <div class="vr-main"> 143 <a href="#mainContent" class="skip-link">Skip to content</a> 144 <div class="cert-container" id="mainContent"> 145 <!-- Loading State --> 146 <div id="loadingState" class="loading-container" role="status" aria-live="polite"> 147 <div class="loading-spinner" aria-hidden="true"></div> 148 <div class="loading-text" data-i18n="cert.loading">Loading seal certificate...</div> 149 </div> 150 151 <!-- Error State (wrong id / not found) --> 152 <div id="errorState" class="error-container" style="display: none;" role="alert"> 153 <div class="error-icon error-icon-svg" aria-hidden="true"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><circle cx="12" cy="12" r="10"/><line x1="15" y1="9" x2="9" y2="15"/><line x1="9" y1="9" x2="15" y2="15"/></svg></div> 154 <div class="error-title" data-i18n="cert.errorTitle">Document Not Found</div> 155 <div class="error-message" id="errorMessage" data-i18n="cert.errorMessage"> 156 The seal certificate you are looking for could not be found. Please check the link. 157 </div> 158 <div class="error-actions"> 159 <a href="/upload" class="btn-header cert-error-home-btn" data-i18n="cert.goHome" style="font-weight:600;">Go to Home</a> 160 </div> 161 </div> 162 163 <!-- Bag Shell Inactive + Destroyed: 33.2 Madde 4 ile statik HTML'den kalktı, 164 cert.js INACTIVE_BAG_SVG + DESTROYED_BAG_SVG + _renderBagShellPanel 165 bcv-panel-wrapper içine dinamik render ediyor (T2 ailesi paterni). --> 166 167 <!-- Deleted State (bag deleted by owner â kalıcı bilgi) --> 168 <div id="deletedState" class="deleted-container" style="display: none;" role="status"> 169 <div class="deleted-icon deleted-icon-svg" aria-hidden="true"> 170 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 6h18"/><path d="M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"/><path d="M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"/><line x1="10" y1="11" x2="10" y2="17"/><line x1="14" y1="11" x2="14" y2="17"/></svg> 171 </div> 172 <div class="deleted-title" data-i18n="cert.documentDeleted">Document deleted</div> 173 <div class="deleted-message" id="deletedMessage"></div> 174 <div class="deleted-actions"> 175 <a href="/verify" class="btn-header" data-i18n="cert.newSearch">New Search</a> 176 <a href="/upload" class="btn-header" data-i18n="cert.goHome">Go to Home</a> 177 </div> 178 </div> 179 180 <!-- Search Form (legacy, hidden â verification is now inside BagContentViewer) --> 181 <div id="searchForm" style="display: none;"></div> 182 183 <!-- Landing hero kaldırıldı (2026-07-23, sahip: "yapay duruyor") â yerini 184 planlanan geniÅ tanıtım turu alacak. Anonim boÅ-durumda intro-kartları 185 (#homeIntroSection, aÅaÄıda) kalır. --> 186 187 <!-- Content (BagContentViewer renders here; sidebar injected by JS into BCV panel) --> 188 <div id="certContent"></div> 189 190 <!-- Home intro: what we do, how it works, sharing (below cert content). --> 191 <section id="homeIntroSection" class="home-intro" aria-label="VerityRecord â What we do" style="display: none;"> 192 <!-- ð´ Sayfanın TEK h1'i. Görsel olarak gizli, çünkü bu yüzeyin kimliÄi 193 uygulamanın kendisi (sahip 07-23: hero "yapay duruyor" â kaldırıldı). 194 Ama h1'siz sayfa, tarama ve ekran-okuyucu için baÅlıksızdır. --> 195 <h1 class="sr-only" data-i18n="index.srHeading">VerityRecord â timestamp and seal a file or web page, then let anyone verify it</h1> 196 <div class="home-intro-inner"> 197 <div class="home-intro-card"> 198 <span class="home-intro-icon" aria-hidden="true"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"/><polyline points="3.27 6.96 12 12.01 20.73 6.96"/><line x1="12" y1="22.08" x2="12" y2="12"/></svg></span> 199 <h3 class="home-intro-title" data-i18n="index.introWhat">What We Do</h3> 200 <p class="home-intro-desc" data-i18n="index.introWhatDesc">We save a file or web page exactly as it is.</p> 201 </div> 202 <div class="home-intro-card">
203 <span class="home-intro-icon" aria-hidden="true"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 4 23 10 17 10"/><path d="M20.49 15a9 9 0 1 1-2.12-9.36L23 10"/></svg></span> 204 <h3 class="home-intro-title" data-i18n="index.introHow">How It Works</h3> 205 <p class="home-intro-desc" data-i18n="index.introHowDesc">You add a link or file. The system adds a timestamp to the content, digitally signs it, and seals it as is.</p> 206 </div> 207 <div class="home-intro-card"> 208 <span class="home-intro-icon" aria-hidden="true"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="5" r="3"/><circle cx="6" cy="12" r="3"/><circle cx="18" cy="19" r="3"/><line x1="8.59" y1="13.51" x2="15.42" y2="17.49"/><line x1="15.41" y1="6.51" x2="8.59" y2="10.49"/></svg></span> 209 <h3 class="home-intro-title" data-i18n="index.introEvidence">Sharing</h3> 210 <p class="home-intro-desc" data-i18n="index.introEvidenceDesc">You can always access your content and share it in smart ways.</p> 211 </div> 212 </div> 213 <!-- âï¸ SAHİP KARARI 07-28: "bedel + güven" satırı KALDIRILDI (07-26'da eklenmiÅti). 214 Gerekçe sahibin: metinler beÄenilmedi. "RFC 3161" ziyaretçiye bir Åey 215 anlatmıyordu, satır teknik-künye gibi okunuyordu. ð AÃIK KALAN: 07-26 216 ölçümü bu yüzeyde ne fiyat ne baÄımsız-doÄrulama sinyali GEÃMEDİÄİNİ 217 göstermiÅti; o boÅluk geri döndü. Kapanacaksa jargonsuz bir cümleyle. --> 218 </section> 219 </div> 220 </div><!-- /.vr-main --> 221 222 <!-- Platform metadata (auto-generated from PLATFORM_REGISTRY) --> 223
223<script src="/js/generated/platform-skip-pdf.js"></script>
223 224
224<script src="/js/generated/platform-map.js"></script>
224 225 <!-- Draft persistence (create-mode, 1h TTL) --> 226
226<script src="/js/draft-store.js"></script>
226 227 <!-- Yedek: 8s ipucu, 15s sonra "İletiÅim kesildi" â sadece modül hiç yüklenmediyse (cert.js _vrCertReady set eder) --> 228
228<script src="/js/cert-connection-fallback.js"></script>
228 229 <!-- Page controller (extracted module) --> 230 231 <!-- Auth modal (needed for member-only share links) --> 232
232<script src="/js/auth-modal.js?v=3.26.512" defer></script>
232 233 234 <!-- Footer removed â sidebar handles navigation --> 235 236
236<script src="/js/auth-toast.js" defer></script>
236 237
237<script src="/js/cookie-consent.js" defer></script>
237 238
238<script src="/js/lang-reload.js"></script>
238 239
239<script src="/js/sw-register.js"></script>
239 240 241 <!-- Canonical zoom/pan engine (window.VRZoomPan) â must load before consumers --> 242
242<script src="/js/zoom-pan.js"></script>
242 243 <!-- CAD 2D SVG inline loader v4 moved to external file --> 244
244<script src="/js/cad-svg-inline.js"></script>
244 245</body> 246</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.