CINXE.COM

Security Certifications

<!DOCTYPE html><!-- Last Published: Mon Mar 17 2025 19:23:54 GMT+0000 (Coordinated Universal Time) --><html data-wf-domain="www.hcaptcha.com" data-wf-page="64da82f6bf67de1b12789072" data-wf-site="64da82f6bf67de1b12789030" lang="en"><head><meta charset="utf-8"><title>Security Certifications</title><meta content="hCaptcha maintains many third-party certifications, including ISO 27001 and SOC 2 Type 2." name="description"><meta content="Security Certifications" property="og:title"><meta content="hCaptcha maintains many third-party certifications, including ISO 27001 and SOC 2 Type 2." property="og:description"><meta content="Security Certifications" property="twitter:title"><meta content="hCaptcha maintains many third-party certifications, including ISO 27001 and SOC 2 Type 2." property="twitter:description"><meta property="og:type" content="website"><meta content="summary_large_image" name="twitter:card"><meta content="width=device-width, initial-scale=1" name="viewport"><link href="css/be66d6135f8fab9e18a904d21746ebe23a01b6e32acb334f74d1414f98e9da66.css" rel="stylesheet" type="text/css"><link href="https://fonts.googleapis.com" rel="preconnect"><link href="https://fonts.gstatic.com" rel="preconnect" crossorigin="anonymous"><script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script><link href="images/64da82f6bf67de1b1278926d_favicon%25403x.png" rel="shortcut icon" type="image/x-icon"><link href="images/64da82f6bf67de1b127890f9_hcaptcha-symbol-256.png" rel="apple-touch-icon"><link href="https://www.hcaptcha.com/certifications" rel="canonical"><style type="text/css"> .w-embed { pointer-events:none; } .noclick, .more-info { pointer-events:none; } .click { pointer-events:all; } * { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } p { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } </style> <script type="text/javascript"> function getqvar(varName){ var qs = unescape(window.location.search) + '&'; var regex = new RegExp('.*?[&\\?]' + varName + '=(.*?)&.*'); val = qs.replace(regex, "$1"); return val == qs ? false : val; } window.referrer = getqvar('r'); if (window.referrer) { document.cookie = "r=" + window.referrer + ';path=/;domain=.hcaptcha.com'; } </script> <script async="" defer="" data-domain="hcaptcha.com" src="https://newassets.hcaptcha.com/js/p.js"></script> <script type="text/javascript">window.plausible = window.plausible || function() { (window.plausible.q = window.plausible.q || []).push(arguments) }</script> </head><body><div data-animation="default" class="header w-nav" data-easing2="ease-out-cubic" data-vavilon="header-labeling-services" data-easing="ease-in-cubic" aria-label="top" data-collapse="medium" role="banner" data-no-scroll="1" data-duration="300" bind="69afaaec-36d3-5321-a161-243b8802a3b9"><div class="mobile-menu"><div class="mobile-header-trigger"><a aria-label="hCaptcha home page" href="index.html" class="w-inline-block"><img src="fonts/64da82f6bf67de1b127890b5_hcaptcha-logo-landscape.svg" loading="lazy" alt="hCaptcha logo (horizontal)" class="mobile-header-logo"></a><div class="mobile-menu-icon"><img src="images/64f60bf617f515e82d3150ff_close-icon-24px.png" loading="lazy" data-w-id="389ce542-308c-f3f2-d64d-430940fcf47d" alt="close menu" class="mobile-header-close-icon"><img src="fonts/64f5f0dbb2064353a5bf1cb5_menu.svg" loading="lazy" data-w-id="389ce542-308c-f3f2-d64d-430940fcf47e" alt="menu button" class="mobile-header-menu-icon"></div></div><div class="mobile-header-menu-content enterpriisev2-mobile-menu-content"><div class="enterprisev2-mobile-menu-items"><a href="pricing.html" class="mobile-header-item w-inline-block"><div class="text-block-39">Pricing</div></a><a href="pro.html" class="mobile-header-item w-inline-block"><div class="text-block-40">Pro</div></a><a href="#" class="mobile-header-item w-inline-block"><div class="text-block-41">Enterprise</div></a><a href="https://docs.hcaptcha.com/" class="mobile-header-item w-inline-block"><div class="text-block-42">Docs</div></a><a href="blog.html" class="w-inline-block"><div class="mobile-header-item">Blog</div></a></div><div class="mobile-menu-ctas"><a href="pricing.html" id="w-node-e22d0e3d-0fd4-b1ef-84e4-43111614a9c6-1614a9c6" class="btn-signup w-button">Sign Up</a><a href="https://dashboard.hcaptcha.com/login" id="w-node-cc03cbc4-d1b0-7d41-521c-8a2094b44f57-94b44f57" class="button btn-stroke btn-login w-button">Log In</a></div></div></div><div class="a11y-blog"><div class="a11y-blog-wrapper"><div data-w-id="d939bfca-ae19-8683-8036-f5e3e1cbf0bc" class="parent"><div class="div-block-70 grey-600-text"><div class="cap1">From the blog:</div><a href="https://www.hcaptcha.com/post/preparing-for-ai-agents" rel="noopener" class="cap1 bold grey-600-text">Preparing for AI&nbsp;Agents →</a><div data-w-id="d939bfca-ae19-8683-8036-f5e3e1cbf0c2" class="x-container"><div class="x-icon w-embed"><svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" clip-rule="evenodd" d="M3.293 3.29279C2.90247 3.68331 2.90231 4.31664 3.29264 4.70736L8.24477 9.66448L3.30166 14.6126C2.91134 15.0033 2.91149 15.6366 3.30202 16.0271C3.69254 16.4177 4.32555 16.4175 4.71588 16.0268L9.65827 11.0794L14.6006 16.0268C14.991 16.4175 15.624 16.4176 16.0145 16.0271C16.405 15.6366 16.4052 15.0033 16.0149 14.6126L11.0718 9.66447L16.0239 4.70737C16.4142 4.31665 16.4141 3.68332 16.0235 3.2928C15.633 2.90227 15 2.90243 14.6097 3.29316L9.65827 8.24955L4.70685 3.29315C4.31653 2.90242 3.68352 2.90226 3.293 3.29279Z" fill="currentColor"></path> </svg></div></div></div></div><div data-w-id="d939bfca-ae19-8683-8036-f5e3e1cbf0c4" class="parent"><div class="div-block-74"><a id="switch-to-english" tabindex="0" aria-label="Switch to English translation" data-vavilon="switch-to-english-link--do-not-translate" whenclicked="setLang('en')" bind="492c3087-facd-576f-62be-84e9a7d5f70b" href="#" class="cap1 grey-600-text subheader-second english">Switch to English</a><a id="acc-button-dup" tabindex="0" aria-label="Learn more about accessibility options and sign up to bypass the challenge" bind="492c3087-facd-576f-62be-84e9a7d5f709" href="accessibility.html" class="cap1 grey-600-text subheader-second">Accessibility</a><div data-w-id="d939bfca-ae19-8683-8036-f5e3e1cbf0ca" class="x-container"><div class="x-icon second w-embed"><svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" clip-rule="evenodd" d="M3.293 3.29279C2.90247 3.68331 2.90231 4.31664 3.29264 4.70736L8.24477 9.66448L3.30166 14.6126C2.91134 15.0033 2.91149 15.6366 3.30202 16.0271C3.69254 16.4177 4.32555 16.4175 4.71588 16.0268L9.65827 11.0794L14.6006 16.0268C14.991 16.4175 15.624 16.4176 16.0145 16.0271C16.405 15.6366 16.4052 15.0033 16.0149 14.6126L11.0718 9.66447L16.0239 4.70737C16.4142 4.31665 16.4141 3.68332 16.0235 3.2928C15.633 2.90227 15 2.90243 14.6097 3.29316L9.65827 8.24955L4.70685 3.29315C4.31653 2.90242 3.68352 2.90226 3.293 3.29279Z" fill="currentColor"></path> </svg></div></div></div></div></div></div><div aria-hidden="false" class="desktop-menu"><div class="navbar-container-dekstop"><a aria-label="hCaptcha homepage" href="index.html" class="hcaptcha-logo logo-nav w-nav-brand"></a><div class="header-nav"><a href="pricing.html" class="nav-link vavilon w-nav-link">Pricing</a><a href="pro.html" class="nav-link vavilon w-nav-link">Pro</a><a href="index.html#enterprise-features" class="nav-link vavilon w-nav-link">Enterprise</a><a href="https://docs.hcaptcha.com/" class="nav-link vavilon w-nav-link">Docs</a><a href="blog.html" class="nav-link vavilon w-nav-link">Blog</a></div><div class="cta-nav"><div class="headerv2-cta-contaienr header"><div><a href="start-a-pilot.html">Contact Sales</a></div><a href="pricing.html" id="w-node-e22d0e3d-0fd4-b1ef-84e4-43111614a9c6-1614a9c6" class="btn-signup w-button">Sign Up</a><a href="https://dashboard.hcaptcha.com/login" id="w-node-cc03cbc4-d1b0-7d41-521c-8a2094b44f57-94b44f57" class="button btn-stroke btn-login w-button">Log In</a></div></div></div></div></div><section aria-label="hCaptcha master terms of service" role="main" class="section"><div class="container"><div class="content max-800"><div class="cert-container"><div id="w-node-ce126093-2d1e-a3c5-928f-6bffb29b8061-b29b8061" class="w-layout-grid grid-22"><a id="w-node-_39f188fa-6fca-8db5-30ec-47ec7416e30f-b29b8061" href="https://www.iso.org/standard/27001" class="w-inline-block"><img src="images/654401719f1aeb220370814b_iso27001seal_sm.png" loading="lazy" alt="" class="certlogo"><img src="images/65b4221bbd7670d73c7ad381_iso27701cert.png" loading="lazy" width="Auto" alt="" class="certlogo _27701"></a><a id="w-node-cca49268-5b37-72d3-67ae-db2821b22aa3-b29b8061" href="https://us.aicpa.org/interestareas/frc/assuranceadvisoryservices/aicpasoc2report" class="w-inline-block"><img src="images/64da82f6bf67de1b12789291_aicpa-soc-2-type-ii-cert_hcaptcha_sm.png" loading="lazy" alt="SOC 2 logo"></a><img src="images/66f1ed3777b1d68ab5c28d79_pci-sm.png" loading="lazy" alt="" class="image-55"></div></div><div class="grey-800-text w-richtext"><h2>Our Commitment to Security and Privacy</h2><p>hCaptcha has always been committed to security and privacy, and undergoes regular external audits to certify this.</p><p>These include third-party audits of our compliance with international security best practices, and the information security and private information management systems we have put in place for ongoing assurance.</p><p><a href="https://www.hcaptcha.com/enterprise">hCaptcha Enterprise</a> customers may request certifications, attestation letters, and other documentation by contacting your designated account representative, or <a href="/cdn-cgi/l/email-protection#0774666b62742c6462757374476f64667773646f662964686a"><span class="__cf_email__" data-cfemail="4b382a272e380b23282a3b3f28232a65282426">[email&#160;protected]</span></a>.</p><p>‍</p><h2>ISO/IEC 27001 Certification</h2><p><strong>hCaptcha maintains a current ISO/IEC&nbsp;27001 certification.</strong></p><blockquote>ISO (International Organization for Standardization) is an independent, non-governmental international organization with a membership of 168 national standards bodies.<br><br>ISO/IEC 27001 is the world's best-known standard for information security management systems (ISMS). It defines requirements an ISMS must meet.<br><br>The ISO/IEC 27001 standard provides companies of any size and from all sectors of activity with guidance for establishing, implementing, maintaining and continually improving an information security management system.<br><br>Conformity with ISO/IEC 27001 means that an organization or business has put in place a system to manage risks related to the security of data owned or handled by the company, and that this system respects all the best practices and principles enshrined in this International Standard.</blockquote><p><em>source:&nbsp;ISO</em></p><p><a href="https://www.iso.org/standard/27001">Learn more about ISO/IEC&nbsp;27001</a>.</p><p>‍</p><h2>ISO/IEC 27701 Certification</h2><p><strong>hCaptcha maintains a current ISO/IEC&nbsp;27701 certification.</strong></p><blockquote>ISO (International Organization for Standardization) is an independent, non-governmental international organization with a membership of 168 national standards bodies.<br><br>ISO&nbsp;27701 extends ISO/IEC 27001 to cover privacy information management. It defines requirements for a Privacy Information Management System (PIMS) to process Personally Identifiable Information (PII) while managing privacy controls to reduce risk to the private data and rights of data subjects.<br><br>Conformity with ISO/IEC 27701 means that an organization or business has put in place a system to manage risks related to the privacy of data owned or handled by the company, and that this system respects all the best practices and principles enshrined in this International Standard.</blockquote><p><em>source:&nbsp;ISO +&nbsp;IMI</em></p><p><a href="https://www.iso.org/standard/71670.html">Learn more about ISO/IEC&nbsp;27701</a>.</p><h2>SOC&nbsp;2 Type II Certification</h2><p><strong>hCaptcha maintains a current SOC&nbsp;2 Type II&nbsp;certification.</strong></p><blockquote>SOC 2 - SOC for Service Organizations: Trust Services Criteria<br><br>Report on Controls at a Service Organization Relevant to Security, Availability, Processing Integrity, Confidentiality or Privacy<br><br>These reports are intended to meet the needs of a broad range of users that need detailed information and assurance about the controls at a service organization relevant to security, availability, and processing integrity of the systems the service organization uses to process users' data and the confidentiality and privacy of the information processed by these systems. These reports can play an important role in:<br><br> - Oversight of the organization<br> - Vendor management programs<br> - Internal corporate governance and risk management processes<br> - Regulatory oversight<br><br>A type 2 report covers both management’s description of a service organization's system, the suitability of the design, and operating effectiveness of controls over a period of time.</blockquote><p><em>source:&nbsp;AICPA</em></p><p>hCaptcha SOC 2 Type II reports cover a full 12 month audit period, rather than being a "point in time" audit as with Type I reports.</p><p><a href="https://us.aicpa.org/interestareas/frc/assuranceadvisoryservices/serviceorganization-smanagement">Learn more about SOC&nbsp;2 Type II</a>.</p><p>‍</p><h2>PCI&nbsp;DSS&nbsp;4.0 Level 1 Service Provider Compliant</h2><p><strong>hCaptcha complies with current PCI&nbsp;DSS&nbsp;4.0 Level 1 Service Provider requirements.</strong></p><blockquote>PCI&nbsp;DSS 4.0 is the latest Payment Card Industry Data Security Standard.<br><br>Level 1 is the highest level of PCI&nbsp;certification. This requires a Qualified Security Assessor to inspect and assess the data environment (CDE) for compliance with protection standards. Attestation of Compliance documents are available to Enterprise customers upon request.<br><br>Although hCaptcha does not process unblinded payment card or cardholder data, the service complies with the latest version of this standard in the Service Provider role.<br><br>PCI DSS 4.0 provides a framework for protecting cardholder data and sensitive authentication data. Compliance is mandatory for any organization that stores, processes or transmits payment card data.<br><br>Key requirements include building and maintaining secure networks, protecting cardholder data, implementing strong access control measures, regularly monitoring and testing networks, and maintaining an information security policy.<br><br>New requirements in 4.0 focus on enhancing security for emerging technologies like cloud, virtualization, and mobile. There is also increased emphasis on training staff and third parties on security best practices.<br><br>Vendors must provide proof of compliance through annual assessments, including regular external network audits.</blockquote><p><a href="https://blog.pcisecuritystandards.org/pci-dss-v4-0-resource-hub">Learn more about PCI&nbsp;DSS 4.0</a>.</p><p>‍</p><h2>Data Privacy Framework Certification</h2><p><strong>hCaptcha has certified its compliance with the DPF, covering EU-US, UK-US, and Swiss-US DPF agreements.</strong></p><blockquote>The GDPR&nbsp;is Europe's General Data Protection Regulation, which regulates many aspects of private data.<br><br>hCaptcha has enrolled in the Data Privacy Framework program, a series of international agreements giving EU,&nbsp;UK, and Swiss citizens similar data protection no matter where their data is handled, ensuring data protection that is consistent with EU, UK, and Swiss law.<br><br>While hCaptcha has a unique focus on privacy and data minimization, including Zero PII features available to Enterprise customers, and continues to follow the strict provisions of the Standard Contractual Clauses, enrolling in the DPF is a way to give additional assurances to users and customers of our service.<br>‍</blockquote><p><a href="https://www.hcaptcha.com/gdpr">Our&nbsp;GDPR&nbsp;FAQ</a>.</p><p>‍</p><p>‍</p></div></div></div></section><div bind="6395893a-e5fe-ad5b-d853-97b7d8379d42" role="navigation" aria-label="Footer" class="section grey-400-stroke"><div class="container padding-0topbottom"><div class="footer-nav"><div class="footer-logo"><a aria-label="homepage link" tabindex="-1" href="labeling.html" class="hcaptcha-logo footer-logo w-inline-block"></a><div class="footer-social"><div id="social-tw" class="social-icon margin-right"><a aria-label="twitter" rel="noopener" href="https://twitter.com/hcaptcha" target="_blank" class="invisible-link w-inline-block"></a><div bind="baca4d9f-97b3-ea5e-d3dc-157bfa33ac71" class="icon-facebook w-embed"><a href="https://twitter.com/hcaptcha" rel="noopener" target="_blank" class="invisible-link w-inline-block" title="twitter"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 400" role="img" alt=""> <rect width="400" height="400" style="fill: none"></rect> <path fill="currentColor" d="M136.07,340c130,0,201.16-107.73,201.16-201.16,0-3.06,0-6.11-.21-9.14A144,144,0,0,0,372.3,93.11a141.51,141.51,0,0,1-40.61,11.12,71,71,0,0,0,31.08-39.11,141.8,141.8,0,0,1-44.89,17.17,70.77,70.77,0,0,0-120.49,64.48A200.71,200.71,0,0,1,51.69,72.9a70.75,70.75,0,0,0,21.89,94.38,70.23,70.23,0,0,1-32.09-8.85v.89a70.73,70.73,0,0,0,56.72,69.31,70.6,70.6,0,0,1-31.93,1.21,70.8,70.8,0,0,0,66.06,49.1,141.94,141.94,0,0,1-87.81,30.32,143.57,143.57,0,0,1-16.83-1,200.08,200.08,0,0,0,108.37,31.7"></path> </svg> </a></div></div><div id="social-fb" class="social-icon margin-left"><a rel="noopener" href="https://www.facebook.com/hcaptcha" target="_blank" class="invisible-link w-inline-block"></a><div bind="d109ca64-ce48-07d7-4b5d-71f01999d535" class="icon-facebook w-embed"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 400"> <path fill="currentColor" d="M275,50.06,236.09,50c-43.71,0-72,29-72,73.83v34H125A6.12,6.12,0,0,0,118.9,164v49.32a6.12,6.12,0,0,0,6.12,6.12h39.12V343.88a6.11,6.11,0,0,0,6.11,6.12h51a6.11,6.11,0,0,0,6.11-6.12V219.43h45.74a6.12,6.12,0,0,0,6.12-6.12l0-49.32a6.15,6.15,0,0,0-6.13-6.12H227.4V129c0-13.88,3.31-20.91,21.38-20.91l26.2,0A6.11,6.11,0,0,0,281.1,102V56.18A6.12,6.12,0,0,0,275,50.06Z"></path> </svg></div></div></div></div><div class="footer-columns w-clearfix"><div class="footer-link-column-desktop navfooter2"><h5 class="footer-header">Company</h5><a href="about.html" class="footer-link">About</a><a rel="noopener" href="https://apply.workable.com/imachines/" class="footer-link">Jobs</a><a rel="noopener" href="trademarks.html" class="footer-link">Trademarks</a><a rel="noopener" href="ai-ethics.html" class="footer-link">AI&nbsp;Ethics</a><a rel="noopener" href="press-inquiries.html" class="footer-link">Press</a><a href="certifications.html" aria-current="page" class="footer-link w--current">Compliance</a></div><div class="footer-link-column-desktop footer-link-column-center navfooter2"><h5 class="footer-header">Resources</h5><a rel="noopener" href="https://www.hcaptchastatus.com/" target="_blank" class="footer-link">Status</a><a rel="noopener" href="https://docs.hcaptcha.com/" class="footer-link">Documentation</a><a href="reporting-bugs.html" class="footer-link">Report a Bug</a><a href="accessibility.html" class="footer-link">Accessibility</a><a href="hcaptcha-resources-bots-101.html" class="footer-link">Cyberattacks 101</a><a href="gdpr.html" class="footer-link">GDPR</a></div><div class="footer-link-column-desktop navfooter2"><h5 class="footer-header">Contact</h5><a href="support-interstitial.html" class="link-block-8 w-inline-block"><div class="footer-link bold">Support</div></a><a href="contact-us.html" class="footer-link margin-bottom">Contact Support</a><a href="#" class="link-block-7 w-inline-block"><div class="footer-link bold">Sales</div></a><a href="contact-us.html#contact-sales" class="footer-link margin-bottom">Contact Sales</a></div></div></div><div class="footer-legal w-clearfix"><div class="legal-nav"><a href="terms.html" class="cap2 footer-legal-links">Terms</a><a href="privacy.html" class="cap2 footer-legal-links">Privacy</a><a href="dmca.html" class="cap2 footer-legal-links">DMCA</a><a href="attribution.html" class="cap2 footer-legal-links">Attribution</a></div><div class="copyright-info-container"><div class="cap2 center-text">hCaptcha is a registered trademark of Intuition Machines, Inc.</div></div><div class="cap2">©2024 Intuition Machines, Inc.</div></div></div></div><script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script><script src="js/jquery-3.5.1.min.dc5e7f18c8.js" type="text/javascript" crossorigin="anonymous"></script><script src="js/aff77b72ce1ec36a2781aa1aa2269e412d4e896bf6a12093fdb8fc8cf7b34f1b.js" type="text/javascript"></script><script src="js/98474ee93ddf5a629539080e820b51cd4bf0db151ef16103b303aa4872d431d6.js" type="text/javascript"></script><!-- <script type="text/javascript"> var xhr = new XMLHttpRequest(); var data = JSON.stringify({vt: "p", p: window.location.href, r: document.referrer, sw: window.screen.width}); xhr.open("POST", "https://accounts.hcaptcha.com/b", true); xhr.setRequestHeader("Content-type", "application/json;charset=UTF-8"); xhr.send(data); </script> --> <script type="text/javascript"> /** * Include on static page to enable translations. * * Loads only necessary dict files. * */ /** * @module Language * @desc * Language Translation Module used to process text and covert a string based on user defined language. * Language can be defined by Client's browser or API * @requires module:utils */ var Language = { /** * @name module:Language#getLocale * @return {string} Defined ISO 639-1 Language Codes * @see https://www.w3schools.com/tags/ref_language_codes.asp * @example * en-us */ getLocale: function(override) { var locale = override || window.navigator.userLanguage || window.navigator.language; // Get short locale for remapping purposes var short_locale = Language.getShortLocale(locale); // Remap known locales if (short_locale === "in") { short_locale = "id"; } if (short_locale === "he") { short_locale = "iw"; } if (short_locale === "nb") { short_locale = "no"; } // need multiple versions for Chinese if (locale.includes("zh-CN")) { short_locale = locale; } return short_locale; }, /** * @name module:Language#getShortLocale * @return {string} Restricts the ISO 639-1 Language Code to two chracters * @example * en-us > en */ getShortLocale: function(locale) { return locale.substring(0, 2); } }; // find manually data-tagged but missing translation class var textM = $('body *').contents().filter(function() { return ($(this).parent().data("vavilon") != null) && (!$(this).parent().hasClass("vavilon")); }); // tag with class textM.each(function( index ) { $(this).parent().addClass("vavilon"); }); // tag all elements based on content for ease of translation // MurmurHash 3, MIT license. https://github.com/jensyt/imurmurhash-js/blob/master/imurmurhash.min.js !function(){function t(h,r){var s=this instanceof t?this:e;return s.reset(r),"string"==typeof h&&h.length>0&&s.hash(h),s!==this?s:void 0}var e;t.prototype.hash=function(t){var e,h,r,s,i;switch(i=t.length,this.len+=i,h=this.k1,r=0,this.rem){case 0:h^=i>r?65535&t.charCodeAt(r++):0;case 1:h^=i>r?(65535&t.charCodeAt(r++))<<8:0;case 2:h^=i>r?(65535&t.charCodeAt(r++))<<16:0;case 3:h^=i>r?(255&t.charCodeAt(r))<<24:0,h^=i>r?(65280&t.charCodeAt(r++))>>8:0}if(this.rem=3&i+this.rem,i-=this.rem,i>0){for(e=this.h1;;){if(h=4294967295&11601*h+3432906752*(65535&h),h=h<<15|h>>>17,h=4294967295&13715*h+461832192*(65535&h),e^=h,e=e<<13|e>>>19,e=4294967295&5*e+3864292196,r>=i)break;h=65535&t.charCodeAt(r++)^(65535&t.charCodeAt(r++))<<8^(65535&t.charCodeAt(r++))<<16,s=t.charCodeAt(r++),h^=(255&s)<<24^(65280&s)>>8}switch(h=0,this.rem){case 3:h^=(65535&t.charCodeAt(r+2))<<16;case 2:h^=(65535&t.charCodeAt(r+1))<<8;case 1:h^=65535&t.charCodeAt(r)}this.h1=e}return this.k1=h,this},t.prototype.result=function(){var t,e;return t=this.k1,e=this.h1,t>0&&(t=4294967295&11601*t+3432906752*(65535&t),t=t<<15|t>>>17,t=4294967295&13715*t+461832192*(65535&t),e^=t),e^=this.len,e^=e>>>16,e=4294967295&51819*e+2246770688*(65535&e),e^=e>>>13,e=4294967295&44597*e+3266445312*(65535&e),e^=e>>>16,e>>>0},t.prototype.reset=function(t){return this.h1="number"==typeof t?t:0,this.rem=this.k1=this.len=0,this},e=new t,"undefined"!=typeof module?module.exports=t:this.MurmurHash3=t}(); // find untagged strings var textS = $('body *').contents().filter(function() { return (this.nodeType == 3) && (this.nodeValue.length > 3) && this.nodeValue.match(/[a-z]/) && (! this.nodeValue.match(/\@|©/)) && ($(this).parent().data("vavilon") == null || typeof $(this).parent().data("vavilon") === 'number') && (!$(this).parent().is("script")) && $(this).parents('.code-snippet').length === 0; }); tKeys = {} // tag with hash textS.each(function( index ) { var h = MurmurHash3(this.nodeValue).result(); $(this).parent().attr("data-vavilon", h).addClass("vavilon"); // hack to preserve insertion order: V8 re-sorts "string" ints. tKeys['XXXHHH' + h] = $(this).text().trim(); // tKeys[h] = $(this).text().trim(); }); // output for key file // console.log(JSON.stringify(tKeys)); // check if vavilon cookie is set var c = document.cookie.split(";"); var lang; for (var i=0; i < c.length; i++) if (c[i].indexOf("vavilon") >= 0) lang = c[i].split("=")[1] var urlParams = new URLSearchParams(window.location.search); var hl_lang = urlParams.get('hl'); if (hl_lang && (hl_lang.length > 5 || ! /^[a-zA-Z0-9\-]+$/.test(hl_lang))) { // reject invalid hl param: too long or unexpected chars hl_lang = null; } var browser_lang = Language.getLocale(hl_lang); var pathname = window.location.pathname; // var asset_root = "https://assets.hcaptcha.com/website-i18n"; if (browser_lang.indexOf("zh") >= 0) { var asset_root = "https://website-i18n.hcaptcha.com"; } else { var asset_root = "https://newassets.hcaptcha.com/website-i18n"; } var page = "main"; var tr_path = asset_root + "/" + browser_lang + "/" + page + ".json"; var en_path = asset_root + "/" + "en" + "/" + page + ".json"; function updateOpt(lang) { $("#switch-to-english").text("Switch to " + lang.toUpperCase()); var finalStr = "javascript:setLang('" + lang + "'); $('html').attr('lang', '" + lang + "');" if (lang != "en") { finalStr += "updateOpt('en');"; } else { finalStr += "updateOpt('" + browser_lang + "');"; } document.getElementById("switch-to-english").href = finalStr; } function switchToEnglish() { $("html").attr("lang", "en"); setLang('en'); updateOpt(browser_lang); } if ((hl_lang && hl_lang !== "en") || (browser_lang !== "en" && lang !== 'en')) { $("html").attr("lang", browser_lang); // unhide switch to english part on block $('#switch-to-english').show(); // load correct lang JSON var element = document.createElement("script"); element.src = tr_path; element.setAttribute("type", "application/json"); element.setAttribute("data-vavilon-dict", browser_lang); document.body.appendChild(element); var haveEn = $('script').filter(function() { return $(this).attr("data-vavilon-dict") === 'en'; }).length > 0; // do we need to load en? if (! haveEn) { // load en lang JSON to switch var element2 = document.createElement("script"); element2.src = en_path; element2.setAttribute("type", "application/json"); element2.setAttribute("data-vavilon-dict", "en"); document.body.appendChild(element2); } // due to element race setTimeout(function() { // load vavilon JS // var element2 = document.createElement("script"); // element2.src = "https://newassets.hcaptcha.com/website-tr/js/vavilon_mod.min.js"; //"https://assets.hcaptcha.com/website-tr-js/vavilon.min.js"; // document.body.appendChild(element2); // setLang(browser_lang) // once more, just in case // direct insertion !function(){"use strict";var o=(n.prototype.hasString=function(n){return this.strings.hasOwnProperty(n)},n.prototype.load=function(t){var i=this;!function(n,t){var i=new XMLHttpRequest;i.onload=function(){this.status<300&&200<=this.status&&t&&t(i.responseText)},i.open("GET",n,!0),i.send()}(this.url,function(n){i.strings=JSON.parse(n),t&&t()})},n);function n(n,t){void 0===t&&(t={}),this.url=n,this.strings=t}function t(n){var t=new Date;t.setTime(t.getTime()+31536e7);var i="; expires="+t.toUTCString();document.cookie="vavilon-locale="+(n||"")+i+"; path=/"}function i(){return(function(){var n=("; "+document.cookie).split("; vavilon-locale=");return 2===n.length?n[1].split(";")[0]:null}()||window.navigator.language||window.browserLanguage||window.userLanguage).toLowerCase()}function u(){this.n=i(),this.t=document.documentElement.lang.toLowerCase(),this.i=null,this.o={},this.u=null}var c=new(u.prototype.find=function(){this.i=document.getElementsByClassName("vavilon")},u.prototype.replace=function(){var i=this;this.i&&this.u&&(this.o[this.t]||(this.o[this.t]=new o(null)),Array.from(this.i).forEach(function(n){var t=n.dataset.vavilon;i.o[i.u].hasString(t)&&(i.o[i.t].hasString(t)||(i.o[i.t].strings[t]=n.innerText.trim()),n.innerHTML=i.o[i.u].strings[t])}))},u.prototype.addDicts=function(){var i=this;Array.from(document.scripts).filter(function(n){return n.dataset.hasOwnProperty("vavilonDict")}).forEach(function(n){var t=n.dataset.vavilonDict.toLowerCase();i.o[t]=new o(n.src)})},u.prototype.loadDicts=function(t){var i=this;Object.keys(this.o).forEach(function(n){n===i.n||n.slice(0,2)===i.n.slice(0,2)&&!i.u?(i.u=n,i.o[n].load(function(){i.pageDictLoaded=!0,t()})):i.o[n].load()})},u.prototype.setLocale=function(n){return this.o[n]?(this.u=n,t(this.u),!0):!!this.o[n.slice(0,2)]&&(this.u=n.slice(0,2),t(this.u),!0)},u),s=!1;c.addDicts(),c.loadDicts(function(){s&&c.replace()}),window.onload=function(){c.find(),s=!0,c.pageDictLoaded&&c.replace()},window.setLang=function(n){n=n.toLowerCase(),c.setLocale(n)&&c.replace()}}(); // make sure we translate window.onload() // double up for manual override if (hl_lang !== null) { // console.log("lang", hl_lang) setLang(hl_lang); setTimeout(function() { setLang(hl_lang); }, 300); } else { // console.log("browser_lang", browser_lang) setLang(browser_lang); setTimeout(function() { setLang(browser_lang); }, 300); } // race document.getElementById("switch-to-english").href = "javascript:switchToEnglish();"; }, 300); } else { // if (browser_lang == "en") { // $('#switch-to-english').hide(); // } // we show the block on main page always page because of the link to /accessibility // but the block is not visible by default on accessibility page as it only contains // switch language option if (window.location.pathname === '/accessibility') { $('#acc-switch-block').hide(); } }; </script> <!-- Cloudflare Web Analytics --><script defer="" src="https://static.cloudflareinsights.com/beacon.min.js" data-cf-beacon="{&quot;token&quot;: &quot;07c762c369a9497f86fdfb1774ba0fb9&quot;}"></script><!-- End Cloudflare Web Analytics --> <script type="text/javascript"> function getRefQueryParam(name) { name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]'); var regex = new RegExp('[\\?&]' + name + '=([^&#]*)'); var results = regex.exec(location.search); return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' ')); }; var utmParamQueryString = '', utmParamQueryStringTrimmed = '', utm_source = '', utm_medium = '', utm_content = '', utm_campaign = '', utm_term = ''; (function() { utm_source = getRefQueryParam("utm_source"); utm_medium = getRefQueryParam("utm_medium"); utm_content = getRefQueryParam("utm_content"); utm_campaign = getRefQueryParam("utm_campaign"); utm_term = getRefQueryParam("utm_term"); if (utm_source) { utmParamQueryString += '&utm_source=' + utm_source; } if (utm_medium) { utmParamQueryString += '&utm_medium=' + utm_medium; } if (utm_content) { utmParamQueryString += '&utm_content=' + utm_content; } if (utm_campaign) { utmParamQueryString += '&utm_campaign=' + utm_campaign; } if (utm_term) { utmParamQueryString += '&utm_term=' + utm_term; } if(utmParamQueryString.length > 0) { utmParamQueryString = utmParamQueryString.substring(1); utmParamQueryStringTrimmed = utmParamQueryString; utmParamQueryString = utmParamQueryString; } if (!utmParamQueryString) return; var navLinks = document.querySelectorAll('a'); navLinks.forEach(function(item) { if (item.href.indexOf('mailto:') == -1 && (item.href.indexOf('/') === 0 || item.href.indexOf('botstop.com') !== -1 || item.href.indexOf('hcaptcha.com') !== -1)) { if (item.href.indexOf('?') === -1) { item.href += '?'; } else { item.href += '&'; } item.href += utmParamQueryString; } }); })(); </script><!-- Cloudflare Pages Analytics --><script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "832e9d9ca0b94a568ba9d035a7fc0b87"}'></script><!-- Cloudflare Pages Analytics --></body></html>

Pages: 1 2 3 4 5 6 7 8 9 10