constellation/reference/slsa/index.html

51 lines
No EOL
26 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper plugin-docs plugin-id-default docs-version-2.24 docs-doc-page docs-doc-id-reference/slsa" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.9.2">
<title data-rh="true">Supply chain levels for software artifacts (SLSA) adoption | Constellation</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.edgeless.systems/constellation/reference/slsa"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="2.24"><meta data-rh="true" name="docusaurus_tag" content="docs-default-2.24"><meta data-rh="true" name="docsearch:version" content="2.24"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-2.24"><meta data-rh="true" property="og:title" content="Supply chain levels for software artifacts (SLSA) adoption | Constellation"><meta data-rh="true" name="description" content="Supply chain Levels for Software Artifacts, or SLSA (salsa) is a framework for improving and grading a project&#x27;s build system and engineering processes. SLSA focuses on security improvements for source code storage as well as build system definition, execution, and observation. SLSA is structured in four levels. This page describes the adoption of SLSA for Constellation."><meta data-rh="true" property="og:description" content="Supply chain Levels for Software Artifacts, or SLSA (salsa) is a framework for improving and grading a project&#x27;s build system and engineering processes. SLSA focuses on security improvements for source code storage as well as build system definition, execution, and observation. SLSA is structured in four levels. This page describes the adoption of SLSA for Constellation."><link data-rh="true" rel="icon" href="/constellation/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://docs.edgeless.systems/constellation/reference/slsa"><link data-rh="true" rel="alternate" href="https://docs.edgeless.systems/constellation/reference/slsa" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.edgeless.systems/constellation/reference/slsa" hreflang="x-default"><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Reference","item":"https://docs.edgeless.systems/constellation/category/reference"},{"@type":"ListItem","position":2,"name":"SLSA adoption","item":"https://docs.edgeless.systems/constellation/reference/slsa"}]}</script><script src="/constellation/gtagman.js" async data-cookieconsent="ignore"></script><link rel="stylesheet" href="/constellation/assets/css/styles.9ca3c5b3.css">
<script src="/constellation/assets/js/runtime~main.87c4c513.js" defer="defer"></script>
<script src="/constellation/assets/js/main.add27954.js" defer="defer"></script>
</head>
<body class="navigation-with-keyboard">
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
<script>document.documentElement.setAttribute("data-theme","light"),document.documentElement.setAttribute("data-theme-choice","light"),function(){try{const n=new URLSearchParams(window.location.search).entries();for(var[t,e]of n)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}(),document.documentElement.setAttribute("data-announcement-bar-initially-dismissed",function(){try{return"true"===localStorage.getItem("docusaurus.announcement.dismiss")}catch(t){}return!1}())</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><div class="theme-announcement-bar announcementBar_mb4j" style="background-color:#E7E6E6" role="banner"><div class="announcementBarPlaceholder_vyr4"></div><div class="content_knG7 announcementBarContent_xLdY">If you like Constellation, give it a star on <a target="_blank" rel="noopener noreferrer" href="https://github.com/edgelesssys/constellation">GitHub</a> ⭐️</div><button type="button" aria-label="Close" class="clean-btn close closeButton_CVFx announcementBarClose_gvF7"><svg viewBox="0 0 15 15" width="14" height="14"><g stroke="currentColor" stroke-width="3.1"><path d="M.75.75l13.5 13.5M14.25.75L.75 14.25"></path></g></svg></button></div><nav aria-label="Main" class="theme-layout-navbar navbar navbar--fixed-top"><div class="navbar__inner"><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/constellation/"><div class="navbar__logo"><img src="/constellation/img/logos/constellation_oneline.svg" alt="Constellation Logo" class="themedComponent_mlkZ themedComponent--light_NVdE"><img src="/constellation/img/logos/constellation_oneline.svg" alt="Constellation Logo" class="themedComponent_mlkZ themedComponent--dark_xIcU"></div></a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><div class="navbar__item dropdown dropdown--hoverable dropdown--right"><a aria-current="page" class="navbar__link active" aria-haspopup="true" aria-expanded="false" role="button" href="/constellation/reference/slsa">2.24</a><ul class="dropdown__menu"><li><a class="dropdown__link" href="/constellation/next/reference/slsa">Next</a></li><li><a aria-current="page" class="dropdown__link dropdown__link--active" href="/constellation/reference/slsa">2.24</a></li><li><a class="dropdown__link" href="/constellation/2.23/reference/slsa">2.23</a></li><li><a class="dropdown__link" href="/constellation/2.22/reference/slsa">2.22</a></li></ul></div><a href="https://github.com/edgelesssys/constellation" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link header-github-link"></a><div class="navbarSearchContainer_Bca1"><div class="dsla-search-wrapper"><div class="dsla-search-field" data-tags="default,docs-default-2.24"></div></div></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="theme-layout-main main-wrapper mainWrapper_z2l0"><div class="docsWrapper_hBAB"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docRoot_UBD9"><aside class="theme-doc-sidebar-container docSidebarContainer_YfHR"><div class="sidebarViewport_aRkj"><div class="sidebar_njMd"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_SIkG menuWithAnnouncementBar_GW3s"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/constellation/"><span title="Introduction" class="linkLabel_WmDU">Introduction</span></a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist" href="/constellation/category/basics"><span title="Basics" class="categoryLinkLabel_W154">Basics</span></a><button aria-label="Expand sidebar category &#x27;Basics&#x27;" aria-expanded="false" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist" href="/constellation/category/getting-started"><span title="Getting started" class="categoryLinkLabel_W154">Getting started</span></a><button aria-label="Expand sidebar category &#x27;Getting started&#x27;" aria-expanded="false" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist" href="/constellation/category/workflows"><span title="Workflows" class="categoryLinkLabel_W154">Workflows</span></a><button aria-label="Expand sidebar category &#x27;Workflows&#x27;" aria-expanded="false" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist" href="/constellation/category/architecture"><span title="Architecture" class="categoryLinkLabel_W154">Architecture</span></a><button aria-label="Expand sidebar category &#x27;Architecture&#x27;" aria-expanded="false" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="categoryLink_byQd menu__link menu__link--sublist menu__link--active" href="/constellation/category/reference"><span title="Reference" class="categoryLinkLabel_W154">Reference</span></a><button aria-label="Collapse sidebar category &#x27;Reference&#x27;" aria-expanded="true" type="button" class="clean-btn menu__caret"></button></div><ul class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/constellation/reference/cli"><span title="CLI" class="linkLabel_WmDU">CLI</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/constellation/reference/migration"><span title="Configuration migrations" class="linkLabel_WmDU">Configuration migrations</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/constellation/reference/terraform"><span title="Terraform usage" class="linkLabel_WmDU">Terraform usage</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/constellation/reference/slsa"><span title="SLSA adoption" class="linkLabel_WmDU">SLSA adoption</span></a></li></ul></li></ul></nav></div></div></aside><main class="docMainContainer_TBSr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/constellation/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_YNFT"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item"><a class="breadcrumbs__link" href="/constellation/category/reference"><span>Reference</span></a></li><li class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link">SLSA adoption</span></li></ul></nav><span class="theme-doc-version-badge badge badge--secondary">Version: 2.24</span><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Supply chain levels for software artifacts (SLSA) adoption</h1></header>
<p><a href="https://slsa.dev/" target="_blank" rel="noopener noreferrer" class="">Supply chain Levels for Software Artifacts, or SLSA (salsa)</a> is a framework for improving and grading a project&#x27;s build system and engineering processes. SLSA focuses on security improvements for source code storage as well as build system definition, execution, and observation. SLSA is structured in <a href="https://slsa.dev/spec/v0.1/levels" target="_blank" rel="noopener noreferrer" class="">four levels</a>. This page describes the adoption of SLSA for Constellation.</p>
<div class="theme-admonition theme-admonition-info admonition_xJq3 alert alert--info"><div class="admonitionHeading_Gvgb"><span class="admonitionIcon_Rf37"><svg viewBox="0 0 14 16"><path fill-rule="evenodd" d="M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"></path></svg></span>info</div><div class="admonitionContent_BuS1"><p>SLSA is still in alpha status. The presented levels and their requirements might change in the future. We will adopt any changes into our engineering processes, as they get defined.</p></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="level-1---adopted">Level 1 - Adopted<a href="#level-1---adopted" class="hash-link" aria-label="Direct link to Level 1 - Adopted" title="Direct link to Level 1 - Adopted" translate="no"></a></h2>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#scripted-build" target="_blank" rel="noopener noreferrer" class="">Build - Scripted</a></strong></p>
<p>All build steps are automated via <a href="https://github.com/edgelesssys/constellation/tree/main/bazel/ci" target="_blank" rel="noopener noreferrer" class="">Bazel</a> and <a href="https://github.com/edgelesssys/constellation/tree/main/.github" target="_blank" rel="noopener noreferrer" class="">GitHub Actions</a>.</p>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#available" target="_blank" rel="noopener noreferrer" class="">Provenance - Available</a></strong></p>
<p>Provenance for the CLI is generated using the <a href="https://github.com/slsa-framework/slsa-github-generator" target="_blank" rel="noopener noreferrer" class="">slsa-github-generator</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="level-2---adopted">Level 2 - Adopted<a href="#level-2---adopted" class="hash-link" aria-label="Direct link to Level 2 - Adopted" title="Direct link to Level 2 - Adopted" translate="no"></a></h2>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#version-controlled" target="_blank" rel="noopener noreferrer" class="">Source - Version Controlled</a></strong></p>
<p>Constellation is hosted on GitHub using git.</p>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#build-service" target="_blank" rel="noopener noreferrer" class="">Build - Build Service</a></strong></p>
<p>All builds are carried out by <a href="https://github.com/edgelesssys/constellation/tree/main/.github" target="_blank" rel="noopener noreferrer" class="">GitHub Actions</a>.</p>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#authenticated" target="_blank" rel="noopener noreferrer" class="">Provenance - Authenticated</a></strong></p>
<p>Provenance for the CLI is signed using the <a href="https://github.com/slsa-framework/slsa-github-generator" target="_blank" rel="noopener noreferrer" class="">slsa-github-generator</a>. Learn <a class="" href="/constellation/workflows/verify-cli">how to verify the CLI</a> using the signed provenance, before using it for the first time.</p>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#service-generated" target="_blank" rel="noopener noreferrer" class="">Provenance - Service Generated</a></strong></p>
<p>Provenance for the CLI is generated using the <a href="https://github.com/slsa-framework/slsa-github-generator" target="_blank" rel="noopener noreferrer" class="">slsa-github-generator</a> in GitHub Actions.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="level-3---adopted">Level 3 - Adopted<a href="#level-3---adopted" class="hash-link" aria-label="Direct link to Level 3 - Adopted" title="Direct link to Level 3 - Adopted" translate="no"></a></h2>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#verified-history" target="_blank" rel="noopener noreferrer" class="">Source - Verified History</a></strong></p>
<p>The <a href="https://github.com/edgelesssys" target="_blank" rel="noopener noreferrer" class="">Edgeless Systems</a> GitHub organization <a href="https://docs.github.com/en/organizations/keeping-your-organization-secure/managing-two-factor-authentication-for-your-organization/requiring-two-factor-authentication-in-your-organization" target="_blank" rel="noopener noreferrer" class="">requires two-factor authentication</a> for all members.</p>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#retained-indefinitely" target="_blank" rel="noopener noreferrer" class="">Source - Retained Indefinitely</a></strong></p>
<p>Since we use GitHub to host the repository, an external person can&#x27;t modify or delete the history. Before a pull request can be merged, an explicit approval from an <a href="https://github.com/edgelesssys" target="_blank" rel="noopener noreferrer" class="">Edgeless Systems</a> team member is required.</p>
<p>The same holds true for changes proposed by team members. Each change to <code>main</code> needs to be proposed via a pull request and requires at least one approval.</p>
<p>The <a href="https://github.com/edgelesssys" target="_blank" rel="noopener noreferrer" class="">Edgeless Systems</a> GitHub organization admins control these settings and are able to make changes to the repository&#x27;s history should legal requirements necessitate it. These changes require two-party approval following the obliterate policy.</p>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#build-as-code" target="_blank" rel="noopener noreferrer" class="">Build - Build as Code</a></strong></p>
<p>All build files for Constellation are stored in <a href="https://github.com/edgelesssys/constellation/tree/main/.github" target="_blank" rel="noopener noreferrer" class="">the same repository</a>.</p>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#ephemeral-environment" target="_blank" rel="noopener noreferrer" class="">Build - Ephemeral Environment</a></strong></p>
<p>All GitHub Action workflows are executed on <a href="https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners" target="_blank" rel="noopener noreferrer" class="">GitHub-hosted runners</a>. These runners are only available during workflow.</p>
<p>We currently don&#x27;t use <a href="https://docs.github.com/en/actions/hosting-your-own-runners/about-self-hosted-runners" target="_blank" rel="noopener noreferrer" class="">self-hosted runners</a>.</p>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#isolated" target="_blank" rel="noopener noreferrer" class="">Build - Isolated</a></strong></p>
<p>As outlined in the previous section, we use GitHub-hosted runners, which provide a new, isolated and ephemeral environment for each build.</p>
<p>Additionally, the <a href="https://github.com/slsa-framework/slsa-github-generator#generation-of-provenance" target="_blank" rel="noopener noreferrer" class="">SLSA GitHub generator</a> itself is run in an isolated workflow with the artifact hash as defined inputs.</p>
<p><strong><a href="https://slsa.dev/spec/v0.1/requirements#non-falsifiable" target="_blank" rel="noopener noreferrer" class="">Provenance - Non-falsifiable</a></strong></p>
<p>As outlined by <a href="https://github.com/slsa-framework/slsa-github-generator" target="_blank" rel="noopener noreferrer" class="">SLSA GitHub generator</a> it already fulfills the non-falsifiable requirements for SLSA Level 3. The generated provenance is signed using <a href="https://sigstore.dev/" target="_blank" rel="noopener noreferrer" class="">sigstore</a> with an OIDC based proof of identity.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="level-4---in-progress">Level 4 - In Progress<a href="#level-4---in-progress" class="hash-link" aria-label="Direct link to Level 4 - In Progress" title="Direct link to Level 4 - In Progress" translate="no"></a></h2>
<p>We strive to adopt certain aspect of SLSA Level 4 that support our engineering process. At the same time, SLSA is still in alpha status and the biggest changes to SLSA are expected to be around Level 4.</p></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="row margin-top--sm theme-doc-footer-edit-meta-row"><div class="col noPrint_WFHX"><a href="https://github.com/edgelesssys/constellation/edit/main/docs/versioned_docs/version-2.24/reference/slsa.md" target="_blank" rel="noopener noreferrer" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_JAkA"></div></div></footer></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/constellation/reference/terraform"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Terraform usage</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#level-1---adopted" class="table-of-contents__link toc-highlight">Level 1 - Adopted</a></li><li><a href="#level-2---adopted" class="table-of-contents__link toc-highlight">Level 2 - Adopted</a></li><li><a href="#level-3---adopted" class="table-of-contents__link toc-highlight">Level 3 - Adopted</a></li><li><a href="#level-4---in-progress" class="table-of-contents__link toc-highlight">Level 4 - In Progress</a></li></ul></div></div></div></div></main></div></div></div><footer class="theme-layout-footer footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class="footer__title">Learn</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/constellation/overview/confidential-kubernetes">Confidential Kubernetes</a></li><li class="footer__item"><a class="footer__link-item" href="/constellation/getting-started/install">Install</a></li><li class="footer__item"><a class="footer__link-item" href="/constellation/getting-started/first-steps">First steps</a></li></ul></div><div class="theme-layout-footer-column col footer__col"><div class="footer__title">Community</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/edgelesssys/constellation" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li><li class="footer__item"><a href="https://www.edgeless.systems/#footer" target="_blank" rel="noopener noreferrer" class="footer__link-item">Newsletter<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li></ul></div><div class="theme-layout-footer-column col footer__col"><div class="footer__title">Social</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://www.edgeless.systems/blog/" target="_blank" rel="noopener noreferrer" class="footer__link-item">Blog<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li><li class="footer__item"><a href="https://twitter.com/EdgelessSystems" target="_blank" rel="noopener noreferrer" class="footer__link-item">Twitter<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li><li class="footer__item"><a href="https://www.linkedin.com/company/edgeless-systems/" target="_blank" rel="noopener noreferrer" class="footer__link-item">LinkedIn<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li><li class="footer__item"><a href="https://www.youtube.com/channel/UCOOInN0sCv6icUesisYIDeA" target="_blank" rel="noopener noreferrer" class="footer__link-item">Youtube<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li></ul></div><div class="theme-layout-footer-column col footer__col"><div class="footer__title">Company</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://www.edgeless.systems/imprint/" target="_blank" rel="noopener noreferrer" class="footer__link-item">Imprint<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li><li class="footer__item"><a href="https://www.edgeless.systems/privacy/" target="_blank" rel="noopener noreferrer" class="footer__link-item">Privacy Policy<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li><li class="footer__item"><a href="javascript: Cookiebot.renew()" class="footer__link-item">Cookie Settings</a></li><li class="footer__item"><a href="https://www.edgeless.systems/contact-us/" target="_blank" rel="noopener noreferrer" class="footer__link-item">Contact Us<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2025 Edgeless Systems</div></div></div></footer></div>
</body>
</html>