> ## Documentation Index
> Fetch the complete documentation index at: https://docs.futurex.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CryptoHub integrations

> Step-by-step guides for connecting Futurex HSMs and CryptoHub to cloud providers, databases, certificate authorities, and more.

export const FxTopicGroup = ({title, intro, links = []}) => <section className="fx-topic-group">
    <h3 className="fx-topic-group__title">{title}</h3>
    {intro && <p className="fx-topic-group__intro">{intro}</p>}
    <ul className="fx-topic-group__links">
      {links.map((l, i) => <li key={i}>
          <a className="fx-topic-group__link" href={l.href}>
            <span className="fx-topic-group__label">{l.label}</span>
            {l.blurb && <span className="fx-topic-group__blurb">{l.blurb}</span>}
          </a>
        </li>)}
    </ul>
  </section>;

export const FxTopicList = ({children}) => <div className="fx-topic-list">{children}</div>;

export const FxSection = ({id, title, lead, variant, children}) => {
  const headingId = `${id || 'fx-section'}-heading`;
  const cls = ['fx-section', variant && `fx-section--${variant}`].filter(Boolean).join(' ');
  return <section className={cls} id={id} aria-labelledby={headingId}>
      <header className="fx-section__head">
        <h2 className="fx-section__title" id={headingId}>{title}</h2>
        {lead && <p className="fx-section__lead">{lead}</p>}
      </header>
      {children}
    </section>;
};

export const FxHero = ({eyebrow, title, subtitle, primaryCta, secondaryCta, release}) => <section className="fx-hero" aria-label={typeof title === 'string' ? title : 'Page hero'}>
    <div className="fx-hero__grid" aria-hidden="true" />
    <div className="fx-hero__inner">
      {eyebrow && <p className="fx-hero__eyebrow">{eyebrow}</p>}
      <h1 className="fx-hero__title">{title}</h1>
      {subtitle && <p className="fx-hero__subtitle">{subtitle}</p>}
      {(primaryCta || secondaryCta) && <div className="fx-hero__actions">
          {primaryCta && <a className="fx-hero__cta fx-hero__cta--primary" href={primaryCta.href}>
              {primaryCta.label}
              <span className="fx-arrow" aria-hidden="true">→</span>
            </a>}
          {secondaryCta && <a className="fx-hero__cta fx-hero__cta--ghost" href={secondaryCta.href}>
              {secondaryCta.label}
              <span className="fx-arrow" aria-hidden="true">→</span>
            </a>}
        </div>}
      {release ? <p className="fx-hero__release">
          <span className="fx-hero__release-label">Current release</span>
          <span className="fx-hero__release-version">{release.version}</span>
          <a className="fx-hero__release-link" href={release.href}>
            <span>Release notes</span>
            <span className="fx-arrow" aria-hidden="true">→</span>
          </a>
        </p> : <p className="fx-hero__hint">
          <span>Search documentation with</span>
          <kbd className="fx-kbd">⌘</kbd>
          <kbd className="fx-kbd">K</kbd>
        </p>}
    </div>
  </section>;

export const FxDocLanding = ({children}) => <div className="fx-landing fx-doc-landing" ref={el => {
  if (typeof document === 'undefined') return;
  if (el) {
    document.documentElement.classList.add('fx-landing-page');
  } else {
    document.documentElement.classList.remove('fx-landing-page');
  }
}}>
    <img src="/images/Decorative/welcome-grid-light.svg" alt="" aria-hidden="true" className="fx-doc-landing__pattern fx-doc-landing__pattern--light" />
    <img src="/images/Decorative/welcome-grid-dark.svg" alt="" aria-hidden="true" className="fx-doc-landing__pattern fx-doc-landing__pattern--dark" />
    {children}
  </div>;

<FxDocLanding>
  <FxHero title={<span className="fx-hero__title-accent">Integrations</span>} subtitle="Step-by-step guides for connecting Futurex HSMs and CryptoHub to cloud providers, databases, certificate authorities, and more." />

  <FxSection id="start-here" title="Start here" lead="Pick a task to start.">
    <FxTopicList>
      <FxTopicGroup
        title="Connect cloud keys"
        intro="Use external key stores from AWS, Google Cloud, Azure, and Oracle Cloud."
        links={[
  { label: "Amazon XKS", href: "/Integrations/CryptoHub/Cloud_key_management/Amazon_XKS_External_Key_Store/Amazon_XKS_External_Key_Store" },
  { label: "Google Cloud EKM", href: "/Integrations/CryptoHub/Cloud_key_management/Google_Cloud_EKM/Google_Cloud_EKM" },
  { label: "All cloud key management", href: "/Integrations/CryptoHub/Cloud_key_management/Amazon_XKS_External_Key_Store/Amazon_XKS_External_Key_Store" },
]}
      />

      <FxTopicGroup
        title="Integrate a CA"
        intro="Connect Microsoft ADCS, EJBCA, Dogtag, Venafi, and other CAs."
        links={[
  { label: "All Certificate Authority guides", href: "/Integrations/CryptoHub/Certificate_Authority/Certificate_Authority" },
  { label: "Microsoft ADCS", href: "/Integrations/CryptoHub/Certificate_Authority/Microsoft_ADCS/Microsoft_ADCS" },
  { label: "EJBCA", href: "/Integrations/CryptoHub/Certificate_Authority/EJBCA/EJBCA" },
]}
      />

      <FxTopicGroup
        title="Connect a database"
        intro="Encrypt MongoDB, MySQL, Oracle, and SQL Server with HSM keys."
        links={[
  { label: "MongoDB", href: "/Integrations/CryptoHub/Database/MongoDB/MongoDB" },
  { label: "MySQL", href: "/Integrations/CryptoHub/Database/MySQL/MySQL" },
  { label: "Oracle TDE", href: "/Integrations/CryptoHub/Database/Oracle_TDE/Oracle_TDE" },
]}
      />

      <FxTopicGroup
        title="Sign code and secrets"
        intro="Sign code, integrate HashiCorp Vault, and offload TLS."
        links={[
  { label: "HashiCorp Vault", href: "/Integrations/CryptoHub/Secrets_management/HashiCorp_Vault/HashiCorp_Vault" },
  { label: "Code signing", href: "/Integrations/CryptoHub/Code_signing/Code_signing" },
  { label: "TLS offloading", href: "/Integrations/CryptoHub/TLS_offloading/TLS_offloading" },
]}
      />
    </FxTopicList>
  </FxSection>
</FxDocLanding>
