updated the holding page from DR to platform
2
LICENSE
|
@ -1,6 +1,6 @@
|
||||||
MIT License
|
MIT License
|
||||||
|
|
||||||
Copyright (c) 2023 Distrust, LLC
|
Copyright (c) 2025 Caution, SEZC
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
# [distrust.co](https://distrust.co)
|
# [caution.co](https://caution.co)
|
||||||
|
|
||||||
Web page source.
|
Web page source.
|
||||||
|
|
||||||
## Instructions
|
## Instructions
|
||||||
|
|
||||||
0. If the repo was not cloned with submodules:
|
0. If the repo was not cloned with submodules:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ git submodule update --init --recursive
|
$ git submodule update --init --recursive
|
||||||
```
|
```
|
||||||
|
|
11
_config.yml
|
@ -1,25 +1,24 @@
|
||||||
title: Caution
|
title: Caution — Verifiable Compute
|
||||||
email: info@caution.co
|
email: info@caution.co
|
||||||
description: The first open source platform for encrypted data recovery and escrow.
|
description: erifiable, platform-agnostic confidential compute.
|
||||||
baseurl: ""
|
baseurl: ""
|
||||||
url: "https://caution.co"
|
url: "https://caution.co"
|
||||||
banner: "https://caution.co/assets/base/caution-thumbnail.png"
|
banner: "https://caution.co/assets/base/caution-thumbnail.png"
|
||||||
|
|
||||||
header_pages:
|
header_pages:
|
||||||
- index.md
|
- index.md
|
||||||
|
|
||||||
style: dark
|
style: dark
|
||||||
listen_for_clients_preferred_style: false
|
listen_for_clients_preferred_style: false
|
||||||
|
|
||||||
footer: '© 2025 Caution'
|
footer: "© 2025 Caution"
|
||||||
|
|
||||||
theme: jekyll-theme-console
|
theme: jekyll-theme-console
|
||||||
|
|
||||||
permalink: blog/:title.html
|
permalink: blog/:title.html
|
||||||
|
|
||||||
plugins:
|
plugins:
|
||||||
- jekyll-feed
|
- jekyll-feed
|
||||||
|
|
||||||
# Exclude from processing.
|
# Exclude from processing.
|
||||||
# The following items will not be processed, by default.
|
# The following items will not be processed, by default.
|
||||||
# Any item listed under the `exclude:` key here will be automatically added to
|
# Any item listed under the `exclude:` key here will be automatically added to
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
<h2>About Distrust</h2>
|
|
||||||
|
|
||||||
<p>The Distrust team has helped build and secure some of the highest-risk systems in the world. This includes vaulting infrastructure at BitGo, Unit410, and Turnkey, as well as security work with electrical grid operators, industrial control systems, and other mission-critical systems.</p>
|
|
||||||
|
|
||||||
<p>We've conducted deep security due diligence across most major custodians. Through our experience with organizations that operate under constant threat—where **every class of attack is viable**—we've developed a methodology and set of open source tools designed to defend against even the most sophisticated adversaries.</p>
|
|
||||||
|
|
||||||
<p>Today, we're taking the hard-earned lessons from that work and sharing them with the broader community. Our goal is to help others strengthen their security posture by making what we've learned—and the open source tools we've built—available to everyone.</p>
|
|
||||||
|
|
||||||
<p><b>Looking for help analyzing and mitigating security risks in your own organization? <a href="/contact.html">Talk to us.</a></b></p>
|
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
<section class="mid-tall-section">
|
|
||||||
{% unless include.hide_title == 'true' %}
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well center">
|
|
||||||
<h4 class="carousel-title" >trusted by industry leaders</h4>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% endunless %}
|
|
||||||
|
|
||||||
<div class="logo-section">
|
|
||||||
<div class="logo-slider" id="logoSlider">
|
|
||||||
<img src="assets/base/companies/coinbase-white.svg" alt="Coinbase">
|
|
||||||
<img src="assets/base/companies/bitgo-logo-white.svg" alt="BitGo">
|
|
||||||
<img style="filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);"
|
|
||||||
src="assets/base/companies/bishop-fox-dark.png" alt="Bishop Fox">
|
|
||||||
<img style="filter: invert(100)" src="assets/base/companies/turnkey-black.svg" alt="Turnkey">
|
|
||||||
<img style="height: 40px" src="assets/base/companies/falconx-white.svg" alt="FalconX">
|
|
||||||
<img src="assets/base/companies/exodus-white.svg" alt="Exodus">
|
|
||||||
<img src="assets/base/companies/sidero-labs-white.png" alt="Sidero Labs">
|
|
||||||
<img src="assets/base/companies/zoom-white.png" alt="Zoom">
|
|
||||||
<img src="assets/base/companies/mysten-labs-white.svg" alt="Mysten Labs">
|
|
||||||
<img style="height: 60px; filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(200%) contrast(102%);"
|
|
||||||
src="assets/base/companies/ankr.png" alt="Ankr">
|
|
||||||
<img style="height: 60px" src="assets/base/companies/hashicorp-white.png" alt="HashiCorp">
|
|
||||||
<img style="filter: invert(100)" src="assets/base/companies/block-one-dark.svg" alt="Block One">
|
|
||||||
<img src="assets/base/companies/ledn-white.svg" alt="Ledn">
|
|
||||||
<img src="assets/base/companies/fitbit-white.png" alt="Fitbit">
|
|
||||||
<img src="assets/base/companies/dfns-color.png" alt="Dfns">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
<div class="divider">
|
|
||||||
<br>
|
|
||||||
</div>
|
|
|
@ -1,49 +0,0 @@
|
||||||
<footer>
|
|
||||||
<div class="footer container">
|
|
||||||
<div class="footer-top">
|
|
||||||
<div class="footer-logo">
|
|
||||||
<a href="/">
|
|
||||||
<img src="/assets/base/caution-logo-triangle-black.svg" alt="Caution logo" />
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<p class="footer-description footer-description-desktop">
|
|
||||||
Caution brings thoughtfully designed, open source systems to life — empowering resilient, secure technology for everyone.
|
|
||||||
</p>
|
|
||||||
<!--<p class="footer-description footer-description-mobile">
|
|
||||||
Caution brings open source systems to life — built for resilience and digital security.
|
|
||||||
</p>-->
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<p class="footer-description footer-description-mobile">
|
|
||||||
Caution brings open source systems to life — built for resilience and digital security.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div class="footer-divider">
|
|
||||||
</div>
|
|
||||||
<!--<div class="footer-links">
|
|
||||||
<div class="footer-column">
|
|
||||||
<a href="/services.html">Services</a>
|
|
||||||
<a href="/software.html">Software</a>
|
|
||||||
<a href="/threatmodel.html">Threat model</a>
|
|
||||||
</div>
|
|
||||||
<div class="footer-column">
|
|
||||||
<a href="/company.html">Company</a>
|
|
||||||
<a href="/blog.html">Blog</a>
|
|
||||||
<a href="/contact.html">Contact</a>
|
|
||||||
</div>-->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
<div class="footer-bottom container">
|
|
||||||
<div class="footer-footer"> {{site.footer}} </div>
|
|
||||||
<div class="footer-social">
|
|
||||||
<a href="/privacy.html">Privacy</a>
|
|
||||||
<!-- <a href="/feed.xml" target="_blank" rel="noopener noreferrer" aria-label="RSS">
|
|
||||||
<img src="/assets/base/rss-bw-tr.png" alt="RSS" />
|
|
||||||
</a>-->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<script src="/assets/js/main.js"></script>
|
|
||||||
</footer>
|
|
|
@ -1,61 +1,61 @@
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8" />
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicons/favicon-16x16.png">
|
<link
|
||||||
<link rel="icon" type="image/png" sizes="96x96" href="/assets/favicons/favicon-caution-32x32.png">
|
rel="icon"
|
||||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicons/favicon-caution-96x96.png">
|
type="image/png"
|
||||||
|
sizes="32x32"
|
||||||
|
href="/assets/favicons/favicon-16x16.png"
|
||||||
|
/>
|
||||||
|
<link
|
||||||
|
rel="icon"
|
||||||
|
type="image/png"
|
||||||
|
sizes="96x96"
|
||||||
|
href="/assets/favicons/favicon-caution-32x32.png"
|
||||||
|
/>
|
||||||
|
<link
|
||||||
|
rel="icon"
|
||||||
|
type="image/png"
|
||||||
|
sizes="16x16"
|
||||||
|
href="/assets/favicons/favicon-caution-96x96.png"
|
||||||
|
/>
|
||||||
<title>{{ page.title }}</title>
|
<title>{{ page.title }}</title>
|
||||||
<link rel="stylesheet" href="styles.css">
|
<link rel="stylesheet" href="styles.css" />
|
||||||
<meta content="{{ site.title }}" property="og:site_name" />
|
<meta content="{{ site.title }}" property="og:site_name" />
|
||||||
|
|
||||||
|
{% assign page_url = page.url | absolute_url | replace: 'index.html','' %} {%
|
||||||
|
assign og_img = page.og_image | default: site.og_image | absolute_url %} {% if
|
||||||
|
page.noindex %}
|
||||||
|
|
||||||
{% if page.noindex %}
|
<meta name="robots" content="noindex" />
|
||||||
<meta name="robots" content="noindex" />
|
{% endif %} {% if page.title %}
|
||||||
{% endif %}
|
<meta content="{{ page.tagline }}" property="og:title" />
|
||||||
|
<meta content="article" property="og:type" />
|
||||||
{% if page.title %}
|
|
||||||
<meta content="{{ page.tagline }}" property="og:title" />
|
|
||||||
<meta content="article" property="og:type" />
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<meta content="website" property="og:type" />
|
<meta content="website" property="og:type" />
|
||||||
{% endif %}
|
{% endif %} {% if page.summary %}
|
||||||
|
<meta content="{{ page.summary }}" property="og:description" />
|
||||||
{% if page.summary %}
|
|
||||||
<meta content="{{ page.summary }}" property="og:description" />
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<meta content="{{ site.description }}" property="og:description" />
|
<meta content="{{ site.description }}" property="og:description" />
|
||||||
{% endif %}
|
{% endif %} {% if page.url %}
|
||||||
|
<meta content="{{ site.url }}{{ page.url }}" property="og:url" />
|
||||||
{% if page.url %}
|
{% endif %} {% if page.date %}
|
||||||
<meta content="{{ site.url }}{{ page.url }}" property="og:url" />
|
<meta
|
||||||
{% endif %}
|
content="{{ page.date | date_to_xmlschema }}"
|
||||||
|
property="article:published_time"
|
||||||
{% if page.date %}
|
/>
|
||||||
<meta
|
<meta content="{{ site.url }}/about/" property="article:author" />
|
||||||
content="{{ page.date | date_to_xmlschema }}"
|
{% endif %} {% if page.thumbnail %}
|
||||||
property="article:published_time"
|
<meta content="{{ site.url }}{{ page.thumbnail }}" property="og:image" />
|
||||||
/>
|
|
||||||
<meta content="{{ site.url }}/about/" property="article:author" />
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if page.thumbnail %}
|
|
||||||
<meta content="{{ site.url }}{{ page.thumbnail }}" property="og:image" />
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<meta content="{{ site.banner }}" property="og:image" />
|
<meta content="{{ site.banner }}" property="og:image" />
|
||||||
{% endif %}
|
{% endif %} {% if page.categories %} {% for category in page.categories
|
||||||
|
limit:1 %}
|
||||||
{% if page.categories %}
|
<meta content="{{ category }}" property="article:section" />
|
||||||
{% for category in page.categories limit:1 %}
|
{% endfor %} {% endif %} {% if page.tags %} {% for tag in page.tags %}
|
||||||
<meta content="{{ category }}" property="article:section" />
|
<meta content="{{ tag }}" property="article:tag" />
|
||||||
{% endfor %}
|
{% endfor %} {% endif %}
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if page.tags %}
|
|
||||||
{% for tag in page.tags %}
|
|
||||||
<meta content="{{ tag }}" property="article:tag" />
|
|
||||||
{% endfor %}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<!-- Twitter Cards -->
|
<!-- Twitter Cards -->
|
||||||
<meta name="twitter:card" content="summary" />
|
<meta name="twitter:card" content="summary" />
|
||||||
|
@ -63,39 +63,27 @@
|
||||||
<!--<meta name="twitter:creator" content="@{{ site.share.twitter_username }}" />-->
|
<!--<meta name="twitter:creator" content="@{{ site.share.twitter_username }}" />-->
|
||||||
|
|
||||||
{% if page.title %}
|
{% if page.title %}
|
||||||
<meta name="twitter:title" content="{{ page.title }}" />
|
<meta name="twitter:title" content="{{ page.title }}" />
|
||||||
{% else %}
|
{% else %}
|
||||||
<meta name="twitter:title" content="{{ site.title }}" />
|
<meta name="twitter:title" content="{{ site.title }}" />
|
||||||
{% endif %}
|
{% endif %} {% if page.url %}
|
||||||
|
<meta name="twitter:url" content="{{ site.url }}{{ page.url }}" />
|
||||||
{% if page.url %}
|
{% endif %} {% if page.summary %}
|
||||||
<meta name="twitter:url" content="{{ site.url }}{{ page.url }}" />
|
<meta name="twitter:description" content="{{ page.summary }}" />
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if page.summary %}
|
|
||||||
<meta name="twitter:description" content="{{ page.summary }}" />
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<meta name="twitter:description" content="{{ site.description }}" />
|
<meta name="twitter:description" content="{{ site.description }}" />
|
||||||
{% endif %}
|
{% endif %} {% if page.header-img %}
|
||||||
|
<meta name="twitter:image:src" content="{{ site.url }}{{ page.thumbnail }}" />
|
||||||
{% if page.header-img %}
|
{% endif %} {% if page.robots %}
|
||||||
<meta
|
<meta name="robots" content="{{page.robots}}" />
|
||||||
name="twitter:image:src"
|
{% endif %} <link rel="stylesheet" type="text/css" href="{{ "/assets/main.css"
|
||||||
content="{{ site.url }}{{ page.thumbnail }}"
|
| relative_url }}"> <link rel="stylesheet" type="text/css" href="{{
|
||||||
/>
|
"/assets/main-dark.css" | relative_url }}">
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if page.robots %}
|
|
||||||
<meta name="robots" content="{{page.robots}}" />
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ "/assets/main.css" | relative_url }}">
|
|
||||||
<link rel="stylesheet" type="text/css" href="{{ "/assets/main-dark.css" | relative_url }}">
|
|
||||||
|
|
||||||
<!-- "Really, there is nothing interesting to see here. It is a static website. -->
|
<!-- "Really, there is nothing interesting to see here. It is a static website. -->
|
||||||
<!-- Here is the terraform code that deployed it, and here is the site source repo. -->
|
<!-- Here is the terraform code that deployed it, and here is the site source repo. -->
|
||||||
<!-- If you find anything interesting or want to talk to us, reach out via our /contact page!" -->
|
<!-- If you find anything interesting or want to talk to us, reach out via our /contact page!" -->
|
||||||
<!-- https://git.distrust.co/public/stack -->
|
<!-- https://git.distrust.co/public/stack -->
|
||||||
<!-- https://git.distrust.co/public/website -->
|
<!-- https://git..co/public/website -->
|
||||||
<!-- mobile menu content -->
|
<!-- mobile menu content -->
|
||||||
</head>
|
</head>
|
||||||
|
|
|
@ -1,27 +1,30 @@
|
||||||
{%- assign page_paths = site.header_pages | default: default_paths -%}
|
{%- assign page_paths = site.header_pages | default: default_paths -%}
|
||||||
<header>
|
<header>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="left-menu">
|
<div class="left-menu">
|
||||||
<a id="home-link" href="/index.html">
|
<a id="home-link" href="/index.html">
|
||||||
<img class="menu-logo" src="/assets/base/caution-logo-triangle-black.svg"
|
<img
|
||||||
alt="Caution triangle logo with black text" />
|
class="menu-logo"
|
||||||
</a>
|
src="/assets/base/caution-logo-triangle-black.svg"
|
||||||
</div>
|
alt="Caution triangle logo with black text"
|
||||||
<div class="right-menu">
|
/>
|
||||||
<ul class="header-page-links show">
|
</a>
|
||||||
{%- for path in page_paths -%}
|
</div>
|
||||||
{%- assign my_page = site.pages | where: "path", path | first -%}
|
<div class="right-menu">
|
||||||
{%- if my_page.title -%}
|
<ul class="header-page-links show">
|
||||||
{%- if my_page.title != 'Home' -%}
|
{%- for path in page_paths -%} {%- assign my_page = site.pages | where:
|
||||||
<li><a href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a></li>
|
"path", path | first -%} {%- if my_page.title -%} {%- if my_page.title
|
||||||
{%- endif -%}
|
!= 'Home' -%}
|
||||||
{%- endif -%}
|
<li>
|
||||||
{%- endfor -%}
|
<a href="{{ my_page.url | relative_url }}"
|
||||||
<li class="show">
|
>{{ my_page.title | escape }}</a
|
||||||
<a href="/contact.html" class="mega-inverted button">Work with us</a>
|
>
|
||||||
</li>
|
</li>
|
||||||
|
{%- endif -%} {%- endif -%} {%- endfor -%}
|
||||||
</ul>
|
<li class="show">
|
||||||
|
<a href="/contact.html" class="mega-inverted button">Work with us</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
<input type="checkbox" id="menu-toggle" />
|
<input type="checkbox" id="menu-toggle" />
|
||||||
|
|
||||||
<label for="menu-toggle" class="hamburger-menu">
|
<label for="menu-toggle" class="hamburger-menu">
|
||||||
|
@ -31,43 +34,42 @@
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<div class="menu-content">
|
<div class="menu-content">
|
||||||
<div class="inner-menu-content">
|
<div class="inner-menu-content"></div>
|
||||||
{% include nav-links.html %}
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script>
|
<script>
|
||||||
document.addEventListener('DOMContentLoaded', function () {
|
document.addEventListener("DOMContentLoaded", function () {
|
||||||
let pathSegment = window.location.pathname.split('/')[1];
|
let pathSegment = window.location.pathname.split("/")[1];
|
||||||
|
|
||||||
if (pathSegment.endsWith('.html')) {
|
if (pathSegment.endsWith(".html")) {
|
||||||
pathSegment = pathSegment.replace('.html', '');
|
pathSegment = pathSegment.replace(".html", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
const navLinks = document.querySelectorAll('.header-page-links li a');
|
const navLinks = document.querySelectorAll(".header-page-links li a");
|
||||||
|
|
||||||
navLinks.forEach(link => {
|
navLinks.forEach((link) => {
|
||||||
let linkPath = link.getAttribute('href').replace('/', '').replace('.html', '');
|
let linkPath = link
|
||||||
|
.getAttribute("href")
|
||||||
|
.replace("/", "")
|
||||||
|
.replace(".html", "");
|
||||||
|
|
||||||
if (linkPath === pathSegment) {
|
if (linkPath === pathSegment) {
|
||||||
link.classList.add('active');
|
link.classList.add("active");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
let prevScrollPos = window.scrollY;
|
let prevScrollPos = window.scrollY;
|
||||||
const hamburgerMenu = document.querySelector('.menu-content');
|
const hamburgerMenu = document.querySelector(".menu-content");
|
||||||
|
|
||||||
window.addEventListener('scroll', () => {
|
window.addEventListener("scroll", () => {
|
||||||
const currentScrollPos = window.scrollY;
|
const currentScrollPos = window.scrollY;
|
||||||
|
|
||||||
if (currentScrollPos > prevScrollPos) {
|
if (currentScrollPos > prevScrollPos) {
|
||||||
document.getElementById('menu-toggle').checked = false;
|
document.getElementById("menu-toggle").checked = false;
|
||||||
}
|
}
|
||||||
prevScrollPos = currentScrollPos;
|
prevScrollPos = currentScrollPos;
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</header>
|
</header>
|
||||||
|
|
|
@ -1,61 +0,0 @@
|
||||||
<section style="margin-bottom: 0px;" class="flex-container" id="ready-to-use">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h2 class="hero-header gradient-text center">ready to use</h2>
|
|
||||||
<p class="hero-p center" style="margin-top: 20px; max-width: 700px">Production-ready, verifiable open source tools.<p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section style="margin-top: 40px;" class="live-tools-cards">
|
|
||||||
<div class="flex-container">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well card">
|
|
||||||
<div class="live-tool-name">
|
|
||||||
StageX
|
|
||||||
</div>
|
|
||||||
<p>Security-first Linux distribution for reducing supply chain risks. Minimal, bootstrapped, hermetic, deterministic, reproducible, and multi-party signed.</p>
|
|
||||||
<a href="https://codeberg.org/stagex/stagex" rel=”noopener noreferrer” target="_blank" class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well card">
|
|
||||||
<div class="live-tool-name">
|
|
||||||
AirgapOS
|
|
||||||
</div>
|
|
||||||
<p>Immutable Linux distribution for offline secret management. Diskless, reproducible, and hardened for air-gapped environments.</p>
|
|
||||||
<a href="https://git.distrust.co/public/airgap" rel=”noopener noreferrer” target="_blank" class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well card">
|
|
||||||
<div class="live-tool-name">
|
|
||||||
Keyfork
|
|
||||||
</div>
|
|
||||||
<p>Toolchain for generating and managing a wide range of cryptographic keys offline and on smartcards from a shared BIP39 mnemonic phrase.</p>
|
|
||||||
<a href="https://git.distrust.co/public/keyfork" rel=”noopener noreferrer” target="_blank" class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well card">
|
|
||||||
<div class="live-tool-name">
|
|
||||||
Icepick
|
|
||||||
</div>
|
|
||||||
<p>Framework for rapidly developing applications to perform transfer and staking cryptocurrency operations..</p>
|
|
||||||
<a href="https://git.distrust.co/public/icepick" rel=”noopener noreferrer” target="_blank" class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
|
@ -1,10 +0,0 @@
|
||||||
{%- for path in page_paths -%}
|
|
||||||
{%- assign my_page = site.pages | where: "path", path | first -%}
|
|
||||||
{%- if my_page.title -%}
|
|
||||||
{%- if my_page.title != 'Home' -%}
|
|
||||||
<div>
|
|
||||||
<a href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a>
|
|
||||||
</div>
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endfor -%}
|
|
|
@ -1,47 +0,0 @@
|
||||||
<section style="margin-bottom: 0px;" class="flex-container">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h2 class="hero-header gradient-text center">powered by distrust</h2>
|
|
||||||
<p class="hero-p center" style="margin-top: 20px; max-width: 700px">Companies across high-risk industries adopt our methodologies and tooling to secure their critical systems.<p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section style="margin-top: 40px;" class="flex-container powered-by">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well card">
|
|
||||||
<div class="img-container">
|
|
||||||
<img src="assets/base/companies/turnkey-black.svg" style="filter: invert(100)">
|
|
||||||
</div>
|
|
||||||
<p class="text-description-desktop">Turnkey secures billions of dollars in digital assets and relies on Distrust tools to address fundamental risks in their technology stack.</p>
|
|
||||||
<p class="text-description-mobile">Turnkey secures billions of dollars in digital assets and relies on Distrust tools to systematically address fundamental risks in their technology stack.</p>
|
|
||||||
<a href="https://whitepaper.turnkey.com/foundations#abstract" rel=”noopener noreferrer” target="_blank" class="arrow-link">
|
|
||||||
Learn more
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well card">
|
|
||||||
<div class="img-container">
|
|
||||||
<img src="assets/base/companies/mysten-labs-white.svg" style="width: 250px">
|
|
||||||
</div>
|
|
||||||
<p>The creators of the SUI blockchain, Mysten Labs, eliminate single points of failure in their systems with the help of Distrust tooling and advice.</p>
|
|
||||||
<a href="https://github.com/MystenLabs/sui/blob/main/docker/sui-node-deterministic/Dockerfile" rel=”noopener noreferrer” target="_blank" class="arrow-link">
|
|
||||||
Learn more
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well card">
|
|
||||||
<div class="img-container">
|
|
||||||
<img src="assets/base/companies/sidero-labs-white.png" style="filter: grayscale(); width: 150px">
|
|
||||||
</div>
|
|
||||||
<p>Sidero Labs' Talos Linux, a widely used Kubernetes distribution, uses Distrust's StageX and services, to bolster their supply chain security.</p>
|
|
||||||
<a href="https://github.com/siderolabs/talos/releases/tag/v1.10.0-alpha.2" rel=”noopener noreferrer” target="_blank" class="arrow-link">
|
|
||||||
Learn more
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
<section>
|
|
||||||
<h4 class="gradient-text center" style="line-height: 50px; max-width: 600px; margin: auto;">can't afford a breach?</h4>
|
|
||||||
<p class="hero-p center" style="max-width: 650px; margin-top: 10px">Let's talk. We help teams where security is mission-critical.</p>
|
|
||||||
<div class="button-container center">
|
|
||||||
<a href="/contact.html" class="mega button center">Work with us</a>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
|
@ -1,44 +0,0 @@
|
||||||
<section class="testimonials">
|
|
||||||
<div class="testimonial-card">
|
|
||||||
<img src="/assets/base/companies/ledn-white.svg" alt="Logoipsum" class="testimonial-logo" />
|
|
||||||
<blockquote class="testimonial-quote">
|
|
||||||
“Fusce vel dui. In turpis. Maecenas nec odio et ante tincidunt tempus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia”
|
|
||||||
</blockquote>
|
|
||||||
<div class="testimonial-author">
|
|
||||||
<img src="/path/to/avatar1.jpg" alt="Jess Newman" class="testimonial-avatar" />
|
|
||||||
<div>
|
|
||||||
<p class="testimonial-name">Jess Newman</p>
|
|
||||||
<p class="testimonial-title">CTO at Ledn</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="testimonial-card">
|
|
||||||
<img src="/assets/base/companies/mysten-labs-white.svg" alt="Logoipsum" class="testimonial-logo" />
|
|
||||||
<blockquote class="testimonial-quote">
|
|
||||||
“Fusce vel dui. In turpis. Maecenas nec odio et ante tincidunt tempus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia”
|
|
||||||
</blockquote>
|
|
||||||
<div class="testimonial-author">
|
|
||||||
<img src="/path/to/avatar1.jpg" alt="Jess Newman" class="testimonial-avatar" />
|
|
||||||
<div>
|
|
||||||
<p class="testimonial-name">Jess Newman</p>
|
|
||||||
<p class="testimonial-title">CTO at Mysten Labs</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<div class="testimonial-card">
|
|
||||||
<img src="/assets/base/companies/hashicorp-white.png" alt="Logoipsum" class="testimonial-logo" />
|
|
||||||
<blockquote class="testimonial-quote">
|
|
||||||
“Fusce vel dui. In turpis. Maecenas nec odio et ante tincidunt tempus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia”
|
|
||||||
</blockquote>
|
|
||||||
<div class="testimonial-author">
|
|
||||||
<img src="/path/to/avatar1.jpg" alt="Jess Newman" class="testimonial-avatar" />
|
|
||||||
<div>
|
|
||||||
<p class="testimonial-name">John Doe</p>
|
|
||||||
<p class="testimonial-title">CTO at Etherfi</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
|
@ -1,32 +0,0 @@
|
||||||
<div class="threatmodel-cta-columns">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h2 class="hero-header gradient-text">distrust<br>threat model</h2>
|
|
||||||
</div>
|
|
||||||
<div class="threatmodel-cta-right-column">
|
|
||||||
<div class="button-container" style="font-size: 1.5rem">
|
|
||||||
<a href="/threatmodel.html" class="mega button">Explore threat model</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<section class="threatmodel-cta" style="margin-top: 50px !important">
|
|
||||||
<div class="flex-container properties">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<p><b>Tiered threat levels</b></p>
|
|
||||||
<p>From script kiddies to nation states, our model adapts to what you’re protecting, and who you're protecting against.</p>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<p><b>Cut attack surface</b></p>
|
|
||||||
<p>Rather than focusing on specific vulnerabilities, our model helps eliminate entire classes of attacks by design.</p>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<p><b>Assume compromise</b></p>
|
|
||||||
<p>Design with the assumption that systems are already breached to build resilient defenses.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="threatmodel-cta-bottom">
|
|
||||||
<div class="button-container" style="font-size: clamp(1rem, 10vw, 1.3rem)">
|
|
||||||
<a href="/threatmodel.html" class="mega button">Explore threat model</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
|
@ -1,16 +0,0 @@
|
||||||
<section class="flex-container tall-section">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h2 class="gradient-text">our manifesto</h2>
|
|
||||||
<p class="hero-p">Every day, we apply these guiding principles to how we think, build, and secure systems.</p>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<ol class="values-container">
|
|
||||||
<li>decentralize trust</li>
|
|
||||||
<li>open source everything</li>
|
|
||||||
<li>security beyond compliance</li>
|
|
||||||
<li>move thoughtfully & improve things</li>
|
|
||||||
<li>impact over profit</li>
|
|
||||||
</ol>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
|
@ -1,33 +0,0 @@
|
||||||
<section class="why-choose-distrust" style="margin-bottom: 10rem">
|
|
||||||
<div class="flex-container">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h2 class="gradient-text">why choose Distrust</h2>
|
|
||||||
<p class="text-description-desktop">Benefit from our approach—a blend of proven methodologies and open source tooling we created, shaped by lessons from securing some of the world's highest-risk organizations.</p>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<div class="flex-container properties">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height=="30" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers-icon lucide-layers"><path d="M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"/><path d="M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"/><path d="M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"/></svg>
|
|
||||||
<p><b>Eliminate root causes</b></p>
|
|
||||||
<p>We don't just scan for bugs—we eliminate entire categories of bugs at the source using a first-principles methodology.</p>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check-big-icon lucide-circle-check-big"><path d="M21.801 10A10 10 0 1 1 17 3.335"/><path d="m9 11 3 3L22 4"/></svg>
|
|
||||||
<p><b>Verifiable</b></p>
|
|
||||||
<p>No guessing, no shortcuts. Every recommendation is backed by logic and rigor, not gut feel or just to check boxes.</p>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert-icon lucide-shield-alert"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/><path d="M12 8v4"/><path d="M12 16h.01"/></svg>
|
|
||||||
<p><b>Proven track record</b></p>
|
|
||||||
<p>Our security engineers have secured some of the highest risk infrastructure in the world (BitGo, Turnkey, Unit 410).</p>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-handshake-icon lucide-handshake"><path d="m11 17 2 2a1 1 0 1 0 3-3"/><path d="m14 14 2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4"/><path d="m21 3 1 11h-2"/><path d="M3 3 2 14l6.5 6.5a1 1 0 1 0 3-3"/><path d="M3 4h8"/></svg>
|
|
||||||
<p><b>Embedded collaborations</b></p>
|
|
||||||
<p>We act as true partners— our goal is to make our clients succeed and not depend on us.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
|
@ -1,39 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
|
||||||
{%- include head.html -%}
|
|
||||||
<body>
|
|
||||||
{%- include header.html -%}
|
|
||||||
<div class="container">
|
|
||||||
<main class="blog">
|
|
||||||
<div class="entry">
|
|
||||||
<div class="posts">
|
|
||||||
{% for post in site.posts %}
|
|
||||||
<div class="blog-details">
|
|
||||||
<div class="blog-details-date">{{ post.date | date: "%b %e, %Y" }}</div>
|
|
||||||
<div class="blog-details-read-time">{{ post.content | number_of_words | divided_by: 200 }} min read</div>
|
|
||||||
</div>
|
|
||||||
<a class="blog-link" href="{{ post.url | relative_url }}" title="{{ post.title }}">
|
|
||||||
<article>
|
|
||||||
<h1>{{ post.title }}</h1>
|
|
||||||
<p>{{ post.excerpt | strip_html | truncatewords: 25 }}</p>
|
|
||||||
</article>
|
|
||||||
<div class="arrow-link">
|
|
||||||
Read
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
{% endfor %}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
{% for author in page.authors %}
|
|
||||||
— {{ author.name }}{% unless forloop.last %}, {% endunless %}
|
|
||||||
{% endfor %}
|
|
||||||
</p>
|
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
{%- include footer.html -%}
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
|
@ -1,100 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
|
||||||
{%- include head.html -%}
|
|
||||||
<body>
|
|
||||||
{%- include header.html -%}
|
|
||||||
<div class="container">
|
|
||||||
<main>
|
|
||||||
<section style="margin-top: 170px">
|
|
||||||
<div class="video-background-container">
|
|
||||||
<video autoplay muted loop playsinline class="video-background">
|
|
||||||
<source src="assets/videos/globe.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
|
|
||||||
<source src="assets/videos/globe.webm" type='video/webm; codecs="vp8, vorbis"' />
|
|
||||||
</video>
|
|
||||||
<div class="gradient-overlay"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<br>
|
|
||||||
<br>
|
|
||||||
<div class="about-special video-content" style="max-width: 700px">
|
|
||||||
<br>
|
|
||||||
<h2>the world is built on blind trust. we are here to change that.</h2>
|
|
||||||
<br>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="flex-container who-we-are-section">
|
|
||||||
<div class="team flex-container-inner">
|
|
||||||
<div class="team flex-container" style="margin-bottom: 0px">
|
|
||||||
<div class="flex-container-inner card">
|
|
||||||
<h5>Lance Vick</h5>
|
|
||||||
<p>Co-Founder</p>
|
|
||||||
<p>Security Engineer</p>
|
|
||||||
<a rel=”noopener noreferrer” target="_blank" href="https://keyoxide.org/6B61ECD76088748C70590D55E90A401336C8AAA9">Keyoxide</a>
|
|
||||||
<span>|</span>
|
|
||||||
<a rel=”noopener noreferrer” target="_blank" href="https://lance.dev/">Website</a>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner card">
|
|
||||||
<h5>Anton Livaja</h5>
|
|
||||||
<p>Co-Founder</p>
|
|
||||||
<p>Security Engineer</p>
|
|
||||||
<a rel=”noopener noreferrer” target="_blank" href="https://keyoxide.org/F4BF5C81EC78A5DD341C91EEDC4B7D1F52E0BA4D">Keyoxide</a>
|
|
||||||
<span>|</span>
|
|
||||||
<a rel=”noopener noreferrer” target="_blank" href="https://antonlivaja.com">Website</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="team flex-container">
|
|
||||||
<div class="flex-container-inner card">
|
|
||||||
<h5>Ryan Heywood</h5>
|
|
||||||
<p>Security Engineer</p>
|
|
||||||
<a rel=”noopener noreferrer” target="_blank" href="https://keyoxide.org/88823A75ECAA786B0FF38B148E401478A3FBEF72">Keyoxide</a>
|
|
||||||
<span>|</span>
|
|
||||||
<a rel=”noopener noreferrer” target="_blank" href="https://ryansquared.pub">Website</a>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner card">
|
|
||||||
<h5>Danny Grove</h5>
|
|
||||||
<p>Security Engineer</p>
|
|
||||||
<a rel=”noopener noreferrer” target="_blank" href="https://keyoxide.org/C92FE5A3FBD58DD3EC5AA26BB10116B8193F2DBD">Keyoxide</a>
|
|
||||||
<span>|</span>
|
|
||||||
<a rel=”noopener noreferrer” target="_blank" href="https://dannygrove.com/">Website</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="flex-container-inner who-we-are">
|
|
||||||
<h2 class="gradient-text">who we are</h2>
|
|
||||||
<p class="hero-p" style="max-width: 550px">Distrust is made up of engineers behind some of the most security-critical projects in the world—including BitGo, Turnkey, and Unit410.</p>
|
|
||||||
<p class="hero-p" style="max-width: 550px">We’ve helped hundreds of companies by conducting security reviews, building out their security infrastructure, and aiding them in launching products which can withstand the modern threat landscape. We don’t just secure systems. We build them.</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
{% include values.html %}
|
|
||||||
|
|
||||||
<div class="video-background-container-our-approach">
|
|
||||||
<video autoplay muted loop playsinline class="video-background-our-approach">
|
|
||||||
<source src="assets/videos/swirly-lines.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
|
|
||||||
<source src="assets/videos/swirly-lines.webm" type='video/webm; codecs="vp8, vorbis"' />
|
|
||||||
</video>
|
|
||||||
<div class="gradient-overlay-our-approach"></div>
|
|
||||||
</div>
|
|
||||||
<section class="flex-container video-content-our-approach">
|
|
||||||
<div class="flex-container-inner"></div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h2 class="gradient-text why-distrust">our approach</h2>
|
|
||||||
<p>Too often, security is an afterthought—based on dogma, checklists, and outdated best practices. Distrust was founded to redefine security by developing new methods to eliminate single points of failure, and building systems in a manner where they don't need to be blindly trusted.</p>
|
|
||||||
<p>We don’t just advise on security. We build it. We open source it. And we teach organizations how to think critically about risk—because security isn’t about checking boxes.</p>
|
|
||||||
<div class="button-container">
|
|
||||||
<a href="/contact.html" class="mega button">Work with us</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
{% include why-choose-distrust.html %}
|
|
||||||
|
|
||||||
{% include primary-cta.html %}
|
|
||||||
|
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
{%- include footer.html -%}
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,7 +0,0 @@
|
||||||
---
|
|
||||||
layout: default
|
|
||||||
---
|
|
||||||
|
|
||||||
{{ content }}
|
|
||||||
{% assign contentwonl = content | strip_newlines %} {% unless contentwonl == "" %} <br /> {% endunless %}
|
|
||||||
{%- assign date_format = "%Y-%m-%d" -%}
|
|
|
@ -1,71 +1,117 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
||||||
|
{%- include head.html -%}
|
||||||
|
|
||||||
{%- include head.html -%}
|
<body>
|
||||||
|
<section class="logo-section align-logo">
|
||||||
|
<div class="logo fade-in">
|
||||||
|
<a href="/">
|
||||||
|
<img
|
||||||
|
src="/assets/base/c-logos/logo-bw.svg"
|
||||||
|
alt="Caution logo"
|
||||||
|
style="opacity: 0.85"
|
||||||
|
/>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
<!-- <div class="video-background-container">
|
<section class="align">
|
||||||
<video autoplay muted loop playsinline class="video-background">
|
<div class="heading fade-in">
|
||||||
<source src="assets/videos/caution-waitlist.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
|
<p class="pill">COMING SOON</p>
|
||||||
<source src="assets/videos/caution-waitlist.webm" type='video/webm; codecs="vp8, vorbis"' />
|
<h1 class="headline">Verifiable compute</h1>
|
||||||
</video>
|
<p class="subtext delay-1">
|
||||||
</div> -->
|
Caution is the next-gen compute platform – verifiable, portable, and
|
||||||
|
fast to deploy. Built by the security engineers behind
|
||||||
|
<a
|
||||||
|
rel="”noopener"
|
||||||
|
noreferrer”
|
||||||
|
target="_blank"
|
||||||
|
href="https://distrust.co/"
|
||||||
|
class="distrust-link-subtext"
|
||||||
|
>Distrust</a
|
||||||
|
>.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<div class="info-block center fade-in delay-2">
|
||||||
|
<span class="spaced-text">HELP</span>
|
||||||
<body>
|
<span class="spaced-text">US</span>
|
||||||
|
<span class="spaced-text">SHAPE</span>
|
||||||
<section class="logo-section center">
|
<span class="spaced-text">THE</span>
|
||||||
|
<span class="spaced-text">FUTURE</span><br />
|
||||||
<div class="logo fade-in">
|
<span class="spaced-text">JOIN</span>
|
||||||
<a href="/">
|
<span class="spaced-text">THE</span>
|
||||||
<img src="/assets/base/caution-logo/caution-logo-text-black.svg" alt="Caution logo" style="height: clamp(1.5rem, 10vw, 2rem); opacity: 0.8">
|
<span class="spaced-text">DESIGN PARTNER</span>
|
||||||
</a>
|
<span class="spaced-text">PROGRAM</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="waitlist-form">
|
||||||
<div class="heading center fade-in">
|
<form
|
||||||
<h1>Join the waitlist</h1>
|
id="contact-form"
|
||||||
<p class="subtext center delay-1">
|
method="post"
|
||||||
The first open source platform for encrypted data recovery and escrow. Built by the security engineers behind <a rel=”noopener noreferrer” target="_blank" href="https://distrust.co/" class="distrust-link-subtext">Distrust</a>, formerly at BitGo, Unit410, and Turnkey.
|
class="email-form"
|
||||||
</p>
|
action="/submit-email"
|
||||||
</div>
|
>
|
||||||
|
<div class="input-wrapper">
|
||||||
</section>
|
<input
|
||||||
|
type="email"
|
||||||
<div class="info-block fade-in delay-2">
|
name="email"
|
||||||
<span class="spaced-text">GET</span>
|
placeholder="Enter your email"
|
||||||
<span class="spaced-text">EARLY</span>
|
id="email"
|
||||||
<span class="spaced-text">ACCESS</span><br>
|
class="email-input"
|
||||||
<span class="spaced-text">BE THE</span>
|
required
|
||||||
<span class="spaced-text">FIRST</span><br>
|
/>
|
||||||
<span class="spaced-text">TO</span>
|
<input
|
||||||
<span class="spaced-text">TRY IT</span>
|
type="hidden"
|
||||||
</div>
|
id="name"
|
||||||
|
name="name"
|
||||||
<div class="waitlist-form">
|
class="form-input"
|
||||||
<form id="contact-form" method="post" class="email-form" action="/submit-email">
|
value="caution.co"
|
||||||
<div class="input-wrapper">
|
/>
|
||||||
<input type="email" name="email" placeholder="Enter your email" id="email" class="email-input" required>
|
<input
|
||||||
<input type="hidden" id="name" name="name" class="form-input" value="caution.co">
|
type="hidden"
|
||||||
<input type="hidden" id="company-name" value="caution.co" name="company-name" class="form-input">
|
id="company-name"
|
||||||
<input id="service" type="hidden" name="service" class="form-select" value="caution.co">
|
value="caution.co"
|
||||||
<input type="hidden" id="other-source" name="other-source" class="form-input" placeholder="Please specify">
|
name="company-name"
|
||||||
<input type="hidden" id="other-source" name="help" class="form-input" placeholder="Please specify">
|
class="form-input"
|
||||||
<button type="submit" class="submit-btn" aria-label="Submit email">
|
/>
|
||||||
<span class="arrow">→</span>
|
<input
|
||||||
</button>
|
id="service"
|
||||||
|
type="hidden"
|
||||||
|
name="service"
|
||||||
|
class="form-select"
|
||||||
|
value="caution.co"
|
||||||
|
/>
|
||||||
|
<input
|
||||||
|
type="hidden"
|
||||||
|
id="other-source"
|
||||||
|
name="other-source"
|
||||||
|
class="form-input"
|
||||||
|
placeholder="Please specify"
|
||||||
|
/>
|
||||||
|
<input
|
||||||
|
type="hidden"
|
||||||
|
id="other-source"
|
||||||
|
name="help"
|
||||||
|
class="form-input"
|
||||||
|
placeholder="Please specify"
|
||||||
|
/>
|
||||||
|
<button type="submit" class="submit-btn" aria-label="Submit email">
|
||||||
|
<span class="arrow">→</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="footer fade-in delay-3">
|
|
||||||
<p>No spam – we'll only email you about Caution.</p>
|
|
||||||
</div>
|
|
||||||
<div class="footer-mobile">
|
|
||||||
<p>Get early access. Be the first to try it. No spam – we'll only email you about Caution.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
|
|
||||||
|
<div class="footer fade-in delay-3">
|
||||||
|
<p>No spam – we'll only email you about Caution.</p>
|
||||||
|
</div>
|
||||||
|
<div class="footer-mobile">
|
||||||
|
<p>
|
||||||
|
Get in touch to learn about joining our design partner program. No spam
|
||||||
|
– we'll only email you about Caution.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
|
||||||
{%- include head.html -%}
|
|
||||||
<body>
|
|
||||||
{%- include header.html -%}
|
|
||||||
<div class="container">
|
|
||||||
<main class="blog">
|
|
||||||
<article class="post">
|
|
||||||
<div class="blog-details">
|
|
||||||
<div class="blog-details-date">{{ page.date | date: "%b %e, %Y" }}</div>
|
|
||||||
<div class="blog-details-read-time">{{ page.content | number_of_words | divided_by: 200 }} min read</div>
|
|
||||||
</div>
|
|
||||||
<h1 style="margin-bottom: 40px">{{page.title}}</h1>
|
|
||||||
<div class="entry">
|
|
||||||
{{ content }}
|
|
||||||
</div>
|
|
||||||
<hr>
|
|
||||||
{% include blog-about-distrust.html %}
|
|
||||||
|
|
||||||
<p>
|
|
||||||
{% for author in page.authors %}
|
|
||||||
— {{ author.name }}{% unless forloop.last %}, {% endunless %}
|
|
||||||
{% endfor %}
|
|
||||||
</p>
|
|
||||||
</article>
|
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
{%- include footer.html -%}
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
|
@ -1,105 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
|
||||||
{%- include head.html -%}
|
|
||||||
<body>
|
|
||||||
{%- include header.html -%}
|
|
||||||
<div class="container">
|
|
||||||
<main>
|
|
||||||
<div class="video-background-container" style="top: 350px">
|
|
||||||
<video autoplay muted loop playsinline class="video-background">
|
|
||||||
<source src="assets/videos/swirly-lines.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
|
|
||||||
<source src="assets/videos/swirly-lines.webm" type='video/webm; codecs="vp8, vorbis"' />
|
|
||||||
</video>
|
|
||||||
<!--<div class="gradient-overlay"></div> -->
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<section class="flex-container capsule-header video-content">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well center">
|
|
||||||
<div class="text-well" style="text-align: center; margin: auto">
|
|
||||||
<div class="capsule">services</div>
|
|
||||||
</div>
|
|
||||||
<br>
|
|
||||||
<h1 class="hero-title gradient-text hero-header">
|
|
||||||
solve your hardest security challenges
|
|
||||||
</h1>
|
|
||||||
<br>
|
|
||||||
<p class="hero-p center">Built by engineers behind BitGo, Unit410, and Turnkey, we apply hard-earned lessons from securing critical infrastructure to build transparent, resilient, and universally applicable security solutions.</p>
|
|
||||||
<div class="button-container">
|
|
||||||
<a href="/contact.html" class="mega button">Work with us</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="mid-tall-section">
|
|
||||||
<div style="max-width: 800px; margin: auto; text-align: center; margin-bottom: 60px;">
|
|
||||||
<h2 class="gradient-text">our services</h2>
|
|
||||||
<p class="text-description-desktop">Distrust offers high-impact security consulting and open source tooling for companies that can't afford to fail.
|
|
||||||
</div>
|
|
||||||
<div class="flex-container">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well">
|
|
||||||
<h3>retainer / fractional CISO</h3>
|
|
||||||
<p style="max-width: 555px">Get ongoing security leadership tailored precisely to your organization's needs. We embed with your team to provide strategic security direction and eliminate blind trust from your infrastructure—so you're prepared before threats emerge.</p>
|
|
||||||
<ul>
|
|
||||||
<li>Security program development</li>
|
|
||||||
<li>Incident response</li>
|
|
||||||
<li>Due diligence</li>
|
|
||||||
<li>Vetting security talent</li>
|
|
||||||
</ul>
|
|
||||||
<br>
|
|
||||||
<div class="button-container">
|
|
||||||
<a href="/contact.html" class="mega button">Work with us</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<div class="text-well">
|
|
||||||
<h3>security assessments</h3>
|
|
||||||
<p style="max-width: 555px">Our assessments go beyond vulnerability scans—we eliminate risks at their source. Using first-principles threat modelling, we identify single points of failure and deliver actionable recommendations to secure your systems against sophisticated threats.</p>
|
|
||||||
<ul>
|
|
||||||
<li>Secure architecture review</li>
|
|
||||||
<li>Security audits</li>
|
|
||||||
<li>Penetration testing</li>
|
|
||||||
<li>Secure code review</li>
|
|
||||||
</ul>
|
|
||||||
<br>
|
|
||||||
<div class="button-container">
|
|
||||||
<a href="/contact.html" class="mega button">Book an assessment</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
{% include companies-carousel.html %}
|
|
||||||
|
|
||||||
{% include why-choose-distrust.html %}
|
|
||||||
|
|
||||||
<div class="video-background-container-philosophy">
|
|
||||||
<video autoplay muted loop playsinline class="video-background-philosophy">
|
|
||||||
<source src="assets/videos/swirly-lines.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
|
|
||||||
<source src="assets/videos/swirly-lines.webm" type='video/webm; codecs="vp8, vorbis"' />
|
|
||||||
</video>
|
|
||||||
<div class="gradient-overlay-philosophy"></div>
|
|
||||||
</div>
|
|
||||||
<section class="flex-container video-content-philosophy">
|
|
||||||
<div class="flex-container-inner"></div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h2 class="gradient-text why-distrust">our philosophy</h2>
|
|
||||||
<p>
|
|
||||||
Security shouldn't be based on blind trust, it should be based on <b>dis</b>trust, and verifiability. Most organizations treat cybersecurity like people once treated hygiene—poorly.
|
|
||||||
</p>
|
|
||||||
<p>At Distrust, we've identified fundamental methods to eliminate entire categories of risk at their source. Similarly to how handwashing revolutionized public health by preventing unseen threats like bacteria, our first-principles security methodology brings new levels of security to our clients by eliminating single points of failure, and providing verifiable, resilient protection for critical systems.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
{%- include primary-cta.html -%}
|
|
||||||
|
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
{%- include footer.html -%}
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,185 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
|
||||||
|
|
||||||
{%- include head.html -%}
|
|
||||||
|
|
||||||
<body>
|
|
||||||
{%- include header.html -%}
|
|
||||||
|
|
||||||
<div class="container">
|
|
||||||
<main>
|
|
||||||
<div class="video-background-container">
|
|
||||||
<video autoplay muted loop playsinline class="video-background">
|
|
||||||
<source src="assets/videos/turq-blocks.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
|
|
||||||
<source src="assets/videos/turq-blocks.webm" type='video/webm; codecs="vp8, vorbis"' />
|
|
||||||
</video>
|
|
||||||
<div class="gradient-overlay"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<section class="flex-container capsule-header video-content" style="margin-top: 80px">
|
|
||||||
<div class="flex-container-inner" style="padding-top: 0px">
|
|
||||||
<div class="text-well center">
|
|
||||||
<div class="capsule-teal">software</div>
|
|
||||||
<br>
|
|
||||||
<h1 style="max-width: 1000px; margin: auto">open source tools for verifiable security</h1>
|
|
||||||
<br>
|
|
||||||
<p class="hero-p center">Most systems still rely on single individuals or computers, unverifiable software, and opaque processes. We’re redesigning security for transparency from the ground up.</p>
|
|
||||||
<div class="button-container center">
|
|
||||||
<a href="#ready-to-use" class="mega-teal button center">View software</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
{%- include live-tools.html -%}
|
|
||||||
|
|
||||||
|
|
||||||
<div class="video-background-container-building-blocks">
|
|
||||||
<video autoplay muted loop playsinline class="video-background-building-blocks">
|
|
||||||
<source src="assets/videos/building-cubes.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
|
|
||||||
<source src="assets/videos/building-cubes.webm" type='video/webm; codecs="vp8, vorbis"' />
|
|
||||||
</video>
|
|
||||||
<div class="gradient-overlay-building-blocks"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<section class="flex-container video-content-building-blocks">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h2 class="gradient-text why-distrust">building blocks <br> for provable security</h2>
|
|
||||||
<p class="hero-p">Modern software systems still rely on trust—maintainers, IT admins, third-party providers. But what happens when they are compromised? How do you verify that your systems haven't been tampered with?</p>
|
|
||||||
<p class="hero-p">We’ve identified critical gaps and built tools to remove single points of failure across all levels of the software lifecycle—from toolchains and dependencies to how code is built, signed, verified and deployed.</p>
|
|
||||||
<p class="hero-p">By combining multi-party trust, remote attestation, and bit-for-bit reproducibility, we are eliminating trust assumptions, ensuring security isn't just a claim—it's provable. And as everything we do, all our software is open source.</p>
|
|
||||||
<a href="#roadmap" class="arrow-link">
|
|
||||||
See what we're building
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner"></div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<div class="roadmap" id="roadmap">
|
|
||||||
<h2 class="center gradient-text">our roadmap</h2>
|
|
||||||
<p style="margin-top: 20px" class="hero-p center">We're actively building some tools—and raising support to build others. Here's what's in-progress and what's coming next.</p>
|
|
||||||
</div>
|
|
||||||
<div id="kanban" class="flex-container">
|
|
||||||
<div class="flex-container-inner flex-container kanban-column column-backlog">
|
|
||||||
<h4 style="color: var(--light-grey)">backlog (fundraising)</h4>
|
|
||||||
<a target="_blank" rel=”noopener noreferrer” class="flex-container-inner mini-card" href="https://git.distrust.co/public/bootproof">
|
|
||||||
<p><b>Bootproof</b></p>
|
|
||||||
<p>Prove what software booted on a system via remote attestation technologies.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
|
|
||||||
<a class="flex-container-inner mini-card" target="_blank" rel=”noopener noreferrer” href="https://git.distrust.co/public/sourceid">
|
|
||||||
<p><b>SourceId</b></p>
|
|
||||||
<p>Verify source code inegrity with hash-based fingerprints.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a class="flex-container-inner mini-card" href="https://git.distrust.co/public/sigrev" class="arrow-link">
|
|
||||||
<p><b>SigRev</b></p>
|
|
||||||
<p>Crowdsource and discover signed manual code reviews.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner flex-container kanban-column column-progress">
|
|
||||||
<h4 style="color: var(--light-purple)">in-progress</h4>
|
|
||||||
<a class="flex-container-inner mini-card" rel=”noopener noreferrer” target="_blank" href="https://qvs.distrust.co/">
|
|
||||||
<p><b>Trove</b></p>
|
|
||||||
<p>Documentation for managing secrets that you can't afford to lose.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a class="flex-container-inner mini-card" rel=”noopener noreferrer” target="_blank" href="https://codeberg.org/stagex/repros">
|
|
||||||
<p><b>ReprOS</b></p>
|
|
||||||
<p>Create ephemeral build environments to eliminate persistent risks.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a class="flex-container-inner mini-card" rel=”noopener noreferrer” href="https://git.distrust.co/public/enclaveos">
|
|
||||||
<p><b>EnclaveOS</b></p>
|
|
||||||
<p>Immutable operating system for powering secure enclaves.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="flex-container-inner flex-container kanban-column column-active">
|
|
||||||
<h4 style="color: var(--light-teal)">active</h4>
|
|
||||||
<a class="flex-container-inner mini-card" rel=”noopener noreferrer” target="_blank" href="https://codeberg.org/stagex/stagex">
|
|
||||||
<p><b>StageX</b></p>
|
|
||||||
<p>Hermetic, deterministic, reproducible, multi-signed OCI-based build toolchain.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a class="flex-container-inner mini-card" rel=”noopener noreferrer” target="_blank" href="https://git.distrust.co/public/airgap">
|
|
||||||
<p><b>AirgapOS</b></p>
|
|
||||||
<p>Minimal, immutable, offline-first swiss-army knife for secret management.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a class="flex-container-inner mini-card" rel=”noopener noreferrer” target="_blank" href="https://git.distrust.co/public/keyfork">
|
|
||||||
<p><b>Keyfork</b></p>
|
|
||||||
<p>Derive keys from a single entropy source to simplify their management.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a class="flex-container-inner mini-card" rel=”noopener noreferrer” target="_blank" href="https://git.distrust.co/public/icepick">
|
|
||||||
<p><b>Icepick</b></p>
|
|
||||||
<p>Framework for offline cryptographic signing operations.</p>
|
|
||||||
<div class="arrow-link">
|
|
||||||
View git repository
|
|
||||||
<span class="arrow">→</span>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{%- include divider.html -%}
|
|
||||||
|
|
||||||
{% include powered-by.html %}
|
|
||||||
|
|
||||||
{%- include divider.html -%}
|
|
||||||
|
|
||||||
<section class="flex-container">
|
|
||||||
<div class="flex-container-inner"></div>
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h4 class="quote" style="filter: brightness(80%)">❝We want to use our knowledge to improve security, privacy, and freedom for as many people as possible. We believe that verifiable foundations for building technology are essential to human wellbeing and solving the coordination problem.❝ — Distrust team</h4>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
{%- include divider.html -%}
|
|
||||||
|
|
||||||
<div class="software-cta">
|
|
||||||
<h4 class="gradient-text center" style="line-height: 50px; max-width: 650px; margin: auto;">fund open source development</h4>
|
|
||||||
<p class="hero-p center text-description-desktop" style="max-width: 650px; margin-top: 10px">Your support funds the tools. Your forks spread the mission. Help us build transparent, verifiable security tools — together.</p>
|
|
||||||
<p class="hero-p center text-description-mobile" style="max-width: 650px; margin-top: 10px">Your support funds the tools. Help us build transparent, verifiable security tools — together.</p>
|
|
||||||
<div class="button-container center">
|
|
||||||
<a href="/contact.html" class="mega-teal button center">Get in touch</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
{%- include footer.html -%}
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
|
@ -1,56 +1,32 @@
|
||||||
|
</html>
|
||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
||||||
|
|
||||||
{%- include head.html -%}
|
{%- include head.html -%}
|
||||||
|
|
||||||
<!-- <div class="video-background-container">
|
|
||||||
<video autoplay muted loop playsinline class="video-background">
|
|
||||||
<source src="assets/videos/caution-waitlist.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
|
|
||||||
<source src="assets/videos/caution-waitlist.webm" type='video/webm; codecs="vp8, vorbis"' />
|
|
||||||
</video>
|
|
||||||
</div> -->
|
|
||||||
|
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<section class="logo-section center">
|
<section class="logo-section align-logo">
|
||||||
|
|
||||||
<div class="logo">
|
<div class="logo fade-in">
|
||||||
<a href="/">
|
<a href="/">
|
||||||
<img src="/assets/base/caution-logo/caution-logo-text-black.svg" alt="Caution logo" style="height: clamp(1.5rem, 10vw, 2rem); opacity: 0.8">
|
<img src="/assets/base/c-logos/logo-bw.svg" alt="Caution logo" style="opacity: 0.85">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="align">
|
||||||
|
<div class="heading fade-in">
|
||||||
|
<p class="pill">THANK YOU</p>
|
||||||
|
<h1 class="headline">You're in!</h1>
|
||||||
|
<p class="subtext-thanks delay-1">
|
||||||
|
Thanks for joining our Design Partner Program list. We will reach out soon with next steps as we expand the program.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="heading center">
|
|
||||||
<h1>You're in</h1>
|
|
||||||
<p class="subtext-thanks center">
|
|
||||||
Thanks for joining. We’ll email you when early access opens up.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<div class="info-block-thanks fade-in delay-4">
|
|
||||||
<span class="spaced-text">SOMETHING</span>
|
|
||||||
<span class="spaced-text">EXCITING</span>
|
|
||||||
<span class="spaced-text">IS</span>
|
|
||||||
<span class="spaced-text">COMING</span>
|
|
||||||
<span class="spaced-text">AND</span>
|
|
||||||
<span class="spaced-text">YOU'LL</span>
|
|
||||||
<span class="spaced-text">BE</span>
|
|
||||||
<span class="spaced-text">THE</span>
|
|
||||||
<span class="spaced-text">FIRST</span>
|
|
||||||
<span class="spaced-text">TO</span>
|
|
||||||
<span class="spaced-text">KNOW</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="footer">
|
|
||||||
<p>Built by the team behind <a rel=”noopener noreferrer” target="_blank" href="https://distrust.co/" class="distrust-link-footer">Distrust</a>, formerly at BitGo, Unit410, and Turnkey.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="footer-mobile">
|
|
||||||
<p>The first open source platform for encrypted data recovery and escrow. By the team behind <a rel=”noopener noreferrer” target="_blank" href="https://distrust.co/" class="distrust-link-footer">Distrust</a>, formerly at BitGo, Unit410, and Turnkey.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -1,104 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="{{ page.lang | default: site.lang | default: en }}">
|
|
||||||
{%- include head.html -%}
|
|
||||||
<body>
|
|
||||||
{%- include header.html -%}
|
|
||||||
|
|
||||||
<div class="container blog">
|
|
||||||
<main>
|
|
||||||
<section class="flex-container threat model" style="margin-top: 80px; margin-bottom: 10px !important;">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h1>Distrust threat model</h1>
|
|
||||||
<p>Distrust's threat model aids organizations in methodically eliminating surface area for attack, making entire classes of attacks impossible.
|
|
||||||
<br>
|
|
||||||
<br>Unlike conventional frameworks (e.g., STRIDE, PASTA) that focus on identifying and preventing specific risks, our threat model assumes that at some level <b>systems are already compromised</b>. This pessimistic set of assumptions allows organizations to build systems that can remain secure even when up against their worst case adversary.</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="flex-container threat model" style="margin-top: 50px; margin-bottom: 10px !important">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h2>Levels</h2>
|
|
||||||
<p>While the end-goal is to adequately address the risks which stem from the <a href="#assumptions">assumptions</a>, organizations are at varying levels of maturity and often need a path towards mitigating threats in a phased approach. To this end, the threat model defines 4 levels, each corresponding to increasingly more sophisticated threat actors as the levels increase. Each threat actor is assumed to have access to specific methods of attack limited by factors such as cost to execute, sophistication, time required etc.</p>
|
|
||||||
<p>It is a reasonable approach to apply different threat model levels to different parts of systems relative to the amount of value they protect.</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="flex-container threat model" style="margin-top: 50px; margin-bottom: 10px !important">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h3 id="level-1">Level 1</h3>
|
|
||||||
<p>Defense against remote adversaries with limited resources.</p>
|
|
||||||
<h5>Adversary</h5>
|
|
||||||
<p>An unskilled or lightly skilled individual leveraging widely available tools and publicly known vulnerabilities. Their attacks are largely opportunistic and automated. We do, however, assume they can be very patient and willing to work across a long time horizon.</p>
|
|
||||||
<h5>Capabilities</h5>
|
|
||||||
<ul>
|
|
||||||
<li>Scanning for and exploiting known vulnerabilities with public exploits.</li>
|
|
||||||
<li>Phishing attempts using off-the-shelf kits.</li>
|
|
||||||
<li>Basic malware deployment (e.g., ransomware-as-a-service).</li>
|
|
||||||
<li>Making malicious changes to open source libraries</li>
|
|
||||||
<li>Buying expired domain names</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="flex-container threat model" style="margin-top: 50px; margin-bottom: 10px !important">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h3 id="level-2">Level 2</h3>
|
|
||||||
<p>Defense against insiders.</p>
|
|
||||||
<h5>Adversary</h5>
|
|
||||||
<p>We assume the adversary is an individual or system that already has some level of privilege or trust inside the organization. This could be anything from a disgruntled employee to a compromised work station or server.</p>
|
|
||||||
<h5>Capabilities</h5>
|
|
||||||
<ul>
|
|
||||||
<li>Can execute any code on at least one work station.</li>
|
|
||||||
<li>Can exfiltrate any secrets exposed to system memory.</li>
|
|
||||||
<li>Can use reputation to fast track change deployment.</li>
|
|
||||||
<li>Administrative privileges (email, MDM, AWS etc.)</li>
|
|
||||||
<li>Unencrypted traffic interception.</li>
|
|
||||||
<li>Injection of malicious code into development pipelines.</li>
|
|
||||||
<li>Physical access to all devices in the office.</li>
|
|
||||||
<li>Ability to impersonate unsigned actions of other employees</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="flex-container threat model" style="margin-top: 50px; margin-bottom: 10px !important">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h3 id="level-3">Level 3</h3>
|
|
||||||
<p>Defense against well-funded organizations.</p>
|
|
||||||
<h5>Adversary</h5>
|
|
||||||
<p>An organized, well-funded group possessing diverse expertise across multiple domains (malware, supply chain, network exploitation, physical access, insider recruitment). Capable of sustained campaigns combining internal and external compromise.</p>
|
|
||||||
<h5>Capabilities</h5>
|
|
||||||
<ul>
|
|
||||||
<li>Deployment of agents willing to commit physical violence.</li>
|
|
||||||
<li>Compromised third party insiders (GitHub, AWS etc.)</li>
|
|
||||||
<li>Ability to do extensive reconnaissance on all personnel.</li>
|
|
||||||
<li>Access to large bot-nets or server farms.</li>
|
|
||||||
<li>Ability to purchase 0-day exploits for any internet connected device.</li>
|
|
||||||
<li>Coordinated, multi-stage attacks across digital and physical realms.</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="flex-container threat model" style="margin-top: 50px; margin-bottom: 10px !important">
|
|
||||||
<div class="flex-container-inner">
|
|
||||||
<h3 id="level-4">Level 4</h3>
|
|
||||||
<p>Defense against nation state actors.
|
|
||||||
<h5>Adversary</h5>
|
|
||||||
<p>A state-backed or similarly resourced entity capable of executing the most advanced forms of cyber and physical attacks, including full-spectrum operations across the supply chain, hardware, firmware, and human factors..</p>
|
|
||||||
<h5>Capabilities</h5>
|
|
||||||
<ul>
|
|
||||||
<li>Observe all displays and input devices in public areas.</li>
|
|
||||||
<li>Ability to tamper with a major hardware/firmware supply chain.</li>
|
|
||||||
<li>Access to any network-connected system.</li>
|
|
||||||
<li>Advanced side-channel attacks (RF, power, magnetic etc.).</li>
|
|
||||||
<li>Data extraction from insufficiently wiped systems.</li>
|
|
||||||
<li>Sophisticated deception and counter-forensics to evade detection.</li>
|
|
||||||
<li>Maximal access to computational resources.</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</main>
|
|
||||||
</div>
|
|
||||||
{%- include footer.html -%}
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
|
@ -1,164 +0,0 @@
|
||||||
---
|
|
||||||
layout: post
|
|
||||||
title: The Safe{Wallet}/Bybit incident report and mitigation strategies
|
|
||||||
date: 2025-04-02
|
|
||||||
---
|
|
||||||
|
|
||||||
The Safe{Wallet}/Bybit incident is an example of a nation-state actor executing a series of sophisticated, multi-layered attacks on high-value targets. In cases where the potential gain is significant, all attacks are on the table. It may be justified for attackers to invest in multiple 0-day vulnerabilities and chain them into elaborate exploit sequences. These campaigns often span multiple layers of tech stack, involve precision-targeted social engineering, insider compromise, or even physical infiltration.
|
|
||||||
|
|
||||||
As such, defending against this level of adversary requires a threat model that accounts for their full range of capabilities—and guides the design of equally rigorous mitigations. It demands defenders adopt a much more rigorous set of assumptions about attacker's capabilities and invest time in implementing controls that typical organizations may not need. When protecting high value assets, the game changes.
|
|
||||||
|
|
||||||
### Threat model assumptions
|
|
||||||
|
|
||||||
At Distrust, we operate under the assumption that nation-state actors are persistent, highly resourced, and capable of compromising nearly any layer of the system. Accordingly, our threat model assumes:
|
|
||||||
|
|
||||||
* All screens are visible to the adversary
|
|
||||||
* All keyboard input is being logged by the adversary
|
|
||||||
* Any firmware or bootloader not verified on every boot is considered compromised
|
|
||||||
* Any host OS with network access is compromised
|
|
||||||
* Any guest OS used for non-production purposes is compromised
|
|
||||||
* At least one member of the Production Team is compromised
|
|
||||||
* At least one maintainer of third party code used in the system is compromised
|
|
||||||
* At least one member of third party system used in production is compromised
|
|
||||||
* Physical attacks are viable and likely
|
|
||||||
* Side-channel attacks are viable and likely
|
|
||||||
|
|
||||||
These assumptions drive everything at Distrust, including the strategies and tooling outlined in this report. The strategies we've developed are built specifically to address this elevated threat model. Many of our open source tools are ready to use today, some are reference designs, while other tooling requires further development.
|
|
||||||
|
|
||||||
### Summary
|
|
||||||
|
|
||||||
This report identifies critical single points of failure—cases where trust is placed in a single individual or computer—creating opportunities for compromise. In contrast, blockchains offer stronger security properties through cryptography and decentralized trust models.
|
|
||||||
|
|
||||||
Traditional infrastructure has historically lacked mechanisms to distribute trust, but this limitation can be addressed. By applying targeted design strategies, it's possible to distribute trust (**dis**trust, get it?) across systems and reduce the risk of a single compromised actor undermining the integrity of the entire system.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Root cause analysis and mitigation strategies
|
|
||||||
|
|
||||||
In our opinion, the primary causes of this incident stem from two key issues identified in the <a href="http://web.archive.org/web/20250328121908/https://www.sygnia.co/blog/sygnia-investigation-bybit-hack/" rel="noopener noreferrer" target="_blank">Sygnia report</a>.
|
|
||||||
|
|
||||||
* > ... a developer’s Mac OS workstation was compromised, likely through social engineering.
|
|
||||||
|
|
||||||
* > ... the modification of JavaScript resources directly on the S3 bucket serving the domain app.safe[.]global.
|
|
||||||
|
|
||||||
These findings highlight both endpoint compromise and weak controls around cloud infrastructure. The following sections focus on how such risks could be mitigated through architectural decisions and more rigorous threat modeling.
|
|
||||||
|
|
||||||
## Introduction
|
|
||||||
|
|
||||||
The compromise occurred due to several key factors, already documented in other reports. This report focuses on how the incident **could have been prevented** through a stronger, first-principles approach to infrastructure design.
|
|
||||||
|
|
||||||
While many security teams reach for quick wins—like access token rotation, stricter IAM policies, or improved monitoring—these are often reactive measures. They may help, but they're equivalent of "plugging holes on a sinking ship" rather than rebuilding the hull from stronger material.
|
|
||||||
|
|
||||||
For example, improving access control to the S3 bucket used to serve JavaScript resources, or adding better monitoring, are good steps. However, they don't address the root cause.
|
|
||||||
|
|
||||||
> At the core of this breach lies a recurring theme: single points of failure.
|
|
||||||
|
|
||||||
To explore this from first principles, consider the deployment pipeline. In most companies, one individual—an admin or developer—often has the ability to modify critical infrastructure or code. That person becomes a single point of failure.
|
|
||||||
|
|
||||||
Even if the pipeline is hardened, the risk will shift, rather than disappear. There is almost always one super-admin who has the "keys to the kingdom". Most cloud platforms encourage this pattern, and the industry has come to accept it.
|
|
||||||
|
|
||||||
But this isn't about doubting your team and their intentions—it's about designing systems where **trust is distributed**. In the blockchain space, this is already accepted practice. So the question becomes:
|
|
||||||
|
|
||||||
> *Does it make sense for a single individual to hold the integrity of an entire system in their hands?*
|
|
||||||
|
|
||||||
Those who've worked with decentralized systems would say: absolutely not.
|
|
||||||
|
|
||||||
#### Mitigation principles
|
|
||||||
|
|
||||||
To adequately defend against the risks outlined in the Distrust threat model, it is critical to distinguish between **cold** and **hot** wallets. The following principles are drawn from practical experience building secure systems at BitGo, Unit410, and Turnkey, as well as from diligence work conduced across leading custodial and vaulting solutions.
|
|
||||||
|
|
||||||
* A **cold cryptographic key management system** is one where all components can be built, operated, and verified offline. If any part of the system requires trusting a networked component, it becomes a **hot** system by definition. For example, if a wallet relies on internet-connected components, it should be considered a hot wallet—regardless of how it's marketed. While some systems make trade-offs for user experience, these often come at the cost of security guarantees.
|
|
||||||
|
|
||||||
* Cold cryptographic key management systems that leverage truly random entropy sources are **not susceptible to remote attacks**, and are only exposed to localized threats such as physical access or side-channel attacks.
|
|
||||||
|
|
||||||
* A common misconception is that simply keeping a key offline makes a system cold and secure. But an attacker doesn't always need to steal the key—they just need to achieve the outcome where the key performs an operation on the desired data on their behalf.
|
|
||||||
|
|
||||||
* **All software in the stack must be open source**, built deterministically (to support reproduction), and compiled using a fully bootstrapped toolchain. Otherwise, the system remains exposed to single points of failure, especially via supply chain compromise.
|
|
||||||
|
|
||||||
#### Mitigations and reference designs
|
|
||||||
|
|
||||||
We propose two high-level design strategies that can eliminate the types of vulnerabilities exploited in the Safe{Wallet}/Bybit attack. Both approaches offer similar levels of security assurance—but differ significantly in implementation complexity and effort.
|
|
||||||
|
|
||||||
In our view, **when billions of dollars are at stake**, it is worth investing in proven low-level mitigations, even if they are operationally harder to deploy. The accounting is simple: **invest in securing your system up front**, rather than gambling on assumptions you won't be targeted.
|
|
||||||
|
|
||||||
State funded actors are highly motivated—and when digital assets are involved, it's game theory at work. The cost of compromising a weak system is often far less than the potential gain.
|
|
||||||
|
|
||||||
We've seen this playbook used in previous incidents, a major example being Axie Infinity, and we will see it again. Attackers are increasingly exploiting supply chains and single points of failure—while defenders often under-invest in securing this surface area.
|
|
||||||
|
|
||||||
#### Strategy 1 - Run everything locally
|
|
||||||
|
|
||||||
This strategy can be implemented without major adjustments to the existing system. The goal is to move the component currently introducing risk—effectively making the wallet "hot"—into an offline component, upgrading the system to a fully cold solution.
|
|
||||||
|
|
||||||
The idea centers on extracting the **signing** component from the application (which currently operates in the UI) and converting it into an offline application.
|
|
||||||
|
|
||||||
However, simply making a component offline does not eliminate all single points of failure. To close off supply chain threats stemming from compiler, dependency or environment compromise requires that the application is reproduced on multiple diverse systems (using different chipsets and operating systems), using a fully bootstrapped compiler—a fully hermetic, deterministic and reproducible process.
|
|
||||||
|
|
||||||
We've developed open source tooling for this under <a href="https://codeberg.org/stagex/stagex" target="_blank" rel="noopener noreferrer">StageX</a>. To learn more about the importance of reproducible builds, check out <a href="https://antonlivaja.com/videos/2024-incyber-stagex-talk.mp4" target="_blank" rel="noopener noreferrer">this video</a>, where one of our co-founders explains how the SolarWinds incident unfolded—and how it could have been prevented.
|
|
||||||
|
|
||||||
##### Reference design
|
|
||||||
|
|
||||||
This reference design was developed for the Safe{Wallet} team, but it can be applied to any system seeking to distribute trust.
|
|
||||||
|
|
||||||
1. **System administrators use dedicated offline laptops**
|
|
||||||
|
|
||||||
* All radio hardware (Bluetooth, Wi-Fi) is physically removed
|
|
||||||
|
|
||||||
* Machines are air-gapped and have never been connected to the internet
|
|
||||||
|
|
||||||
2. **Engineers provision and manage their own personal signing keys (PGP)**
|
|
||||||
|
|
||||||
* Smart cards like NitroKey or YubiKey are used
|
|
||||||
|
|
||||||
* Signing operations are performed exclusively on the engineer's offline system
|
|
||||||
|
|
||||||
* Distrust has developed open source tooling to drastically simplify PGP key provisioning: <a href="https://trove.distrust.co/generated-documents/all-levels/pgp-key-provisioning.html" target="_blank" rel="noopener noreferrer">Trove</a>
|
|
||||||
|
|
||||||
3. **Offline signing applications are deterministically compiled, verified, and signed by multiple engineers**
|
|
||||||
|
|
||||||
* Includes a full set of tools needed for secure offline key operations
|
|
||||||
|
|
||||||
* Distrust also created <a href="https://git.distrust.co/public/airgap" target="_blank" rel="noopener noreferrer">AirgapOS</a>, a custom Linux distribution designed specifically for offline secret management. It has been independently audited and is used in production by several major digitial asset organizations.
|
|
||||||
|
|
||||||
4. **All sensitive operations are fully verified offline before any cryptographic action is taken**
|
|
||||||
|
|
||||||
This design drastically reduces exposure to remote attacks and central points of trust, aligning closely with Distrust's first-principles security model.
|
|
||||||
|
|
||||||
#### Strategy 2 - Use remotely verified service
|
|
||||||
|
|
||||||
This strategy maintains a user experience nearly identical to the current system, while introducing verifiability at critical points in the architecture. It requires significantly more engineering effort and operational discipline, and the tooling needed to support this model is still under active development.
|
|
||||||
|
|
||||||
##### Reference design
|
|
||||||
|
|
||||||
This design relies on **secure enclaves** to host servers that are immutable, deterministic, and capable of cryptographically attesting to the software they are running. While this brings us closer to a cold setup, some residual attack surface—such as browser exploits, host OS compromise, or 0-day attacks—will always remain.
|
|
||||||
|
|
||||||
The core implementation steps are:
|
|
||||||
|
|
||||||
1. **Rewrite the application to run entirely within a secure enclave**
|
|
||||||
|
|
||||||
* TLS termination occurs **inside** the enclave
|
|
||||||
|
|
||||||
* The web interface is served **from within** the enclave
|
|
||||||
|
|
||||||
* Nothing outside the enclave is trusted
|
|
||||||
|
|
||||||
2. **Create a deterministic OS image with remote attestation (e.g., TPM2, Nitro Enclave or similar)**
|
|
||||||
|
|
||||||
* The entire stack is built using full source bootstrapped compiler in a bit-for-bit reproducible manner
|
|
||||||
|
|
||||||
3. **One engineer deploys a new enclave** with the updated application code
|
|
||||||
|
|
||||||
4. **A second engineer independently verifies** that the deployed code matches the version in the source repository
|
|
||||||
|
|
||||||
5. **Clients are issued a service worker** on first load that pins attestation keys for all future remote verification
|
|
||||||
|
|
||||||
* Users can optionally verify and download the application locally for offline operations
|
|
||||||
|
|
||||||
* Users are also encouraged to self-build and match the published signed hash
|
|
||||||
|
|
||||||
|
|
||||||
## Implementation considerations
|
|
||||||
|
|
||||||
Implementing these strategies can be technically demanding. They represent two ends of the trust minimization spectrum: one favoring offline, air-gapped assurance; the other introducing verifiability within connected systems. Both approaches significantly reduce risk but vary in complexity, tooling and requirements, and rollout timelines.
|
|
||||||
|
|
||||||
This high-level overview is meant to illustrate the kinds of problems we focus on at Distrust. Depending on the chosen strategy and organizational context, implementation can take anywhere from a few weeks to several years, especially as tooling continues to mature.
|
|
||||||
|
|
|
@ -3,17 +3,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
:root {
|
:root {
|
||||||
--base-color: #120F1A;
|
|
||||||
--header-color: #120F1A;
|
|
||||||
--border: solid 2px #292929;
|
|
||||||
--selection-background: rgba(219, 219, 219, 0.99);
|
|
||||||
--selection-text: #000;
|
|
||||||
--background-color: #f1f2f9;
|
|
||||||
--text-color: var(--base-color);
|
|
||||||
--placeholder-color: rgba(0, 0, 0, 0.5);
|
|
||||||
--link-color: var(--base-color);
|
|
||||||
--raisin-black: #120F1A;
|
|
||||||
/* yoinkt from Material Design 2014, Deep Purple A200 */
|
|
||||||
--purple: #7C4DFF;
|
--purple: #7C4DFF;
|
||||||
--light-purple: #A998ED;
|
--light-purple: #A998ED;
|
||||||
--mid-purple: #473C68;
|
--mid-purple: #473C68;
|
||||||
|
|
|
@ -3,15 +3,6 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
:root {
|
:root {
|
||||||
--base-color: rgba(0, 0, 0, 0.87);
|
|
||||||
--header-color: rgba(0, 0, 0, 0);
|
|
||||||
--border: dashed 1px rgba(0, 0, 0, 1);
|
|
||||||
--selection-background: rgba(0, 0, 0, 0.99);
|
|
||||||
--selection-text: #FFF;
|
|
||||||
--background-color: #FFF;
|
|
||||||
--text-color: var(--base-color);
|
|
||||||
--placeholder-color: var(--base-color);
|
|
||||||
--link-color: var(--base-color);
|
|
||||||
--dark-purple: #241846;
|
--dark-purple: #241846;
|
||||||
--light-purple: #7952EB;
|
--light-purple: #7952EB;
|
||||||
--code-color-1: #aaaaaa;
|
--code-color-1: #aaaaaa;
|
||||||
|
|
2922
_sass/base.scss
After Width: | Height: | Size: 4.6 KiB |
|
@ -0,0 +1,25 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76.15 65">
|
||||||
|
<defs>
|
||||||
|
<style>
|
||||||
|
.cls-1 {
|
||||||
|
fill: #fff;
|
||||||
|
stroke: #0f0f0f;
|
||||||
|
stroke-linecap: round;
|
||||||
|
stroke-width: 9px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</defs>
|
||||||
|
<g id="Layer_1-2" data-name="Layer 1">
|
||||||
|
<g>
|
||||||
|
<line class="cls-1" x1="61.86" y1="44.6" x2="71.37" y2="60.18"/>
|
||||||
|
<g>
|
||||||
|
<line class="cls-1" x1="14.12" y1="44.73" x2="4.5" y2="60.48"/>
|
||||||
|
<line class="cls-1" x1="23.66" y1="60.5" x2="4.59" y2="60.5"/>
|
||||||
|
<line class="cls-1" x1="47.19" y1="20.24" x2="37.57" y2="4.5"/>
|
||||||
|
<line class="cls-1" x1="28.13" y1="20.44" x2="37.51" y2="4.56"/>
|
||||||
|
<line class="cls-1" x1="52.57" y1="60.5" x2="71.65" y2="60.5"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 829 B |
After Width: | Height: | Size: 4.4 KiB |
|
@ -0,0 +1,25 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76.15 65">
|
||||||
|
<defs>
|
||||||
|
<style>
|
||||||
|
.cls-1 {
|
||||||
|
fill: #fff;
|
||||||
|
stroke: #fff;
|
||||||
|
stroke-linecap: round;
|
||||||
|
stroke-width: 9px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</defs>
|
||||||
|
<g id="Layer_1-2" data-name="Layer 1">
|
||||||
|
<g>
|
||||||
|
<line class="cls-1" x1="61.86" y1="44.6" x2="71.37" y2="60.18"/>
|
||||||
|
<g>
|
||||||
|
<line class="cls-1" x1="14.12" y1="44.73" x2="4.5" y2="60.48"/>
|
||||||
|
<line class="cls-1" x1="23.66" y1="60.5" x2="4.59" y2="60.5"/>
|
||||||
|
<line class="cls-1" x1="47.19" y1="20.24" x2="37.57" y2="4.5"/>
|
||||||
|
<line class="cls-1" x1="28.13" y1="20.44" x2="37.51" y2="4.56"/>
|
||||||
|
<line class="cls-1" x1="52.57" y1="60.5" x2="71.65" y2="60.5"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 826 B |
After Width: | Height: | Size: 20 KiB |
|
@ -0,0 +1,33 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 410.36 69.1">
|
||||||
|
<defs>
|
||||||
|
<style>
|
||||||
|
.cls-1 {
|
||||||
|
fill: #0f0f0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cls-2 {
|
||||||
|
fill: #fff;
|
||||||
|
stroke: #0f0f0f;
|
||||||
|
stroke-linecap: round;
|
||||||
|
stroke-width: 9px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</defs>
|
||||||
|
<g id="Layer_1-2" data-name="Layer 1">
|
||||||
|
<g>
|
||||||
|
<path class="cls-1" d="M270.35,69.1c-6.53,0-11.4-1.57-14.6-4.7-3.13-3.2-4.7-8.03-4.7-14.5V5.6L266.05,0v50.4c0,2.27.63,3.97,1.9,5.1s3.23,1.7,5.9,1.7c1,0,1.93-.1,2.8-.3.87-.2,1.73-.43,2.6-.7v11.4c-.87.47-2.1.83-3.7,1.1-1.53.27-3.27.4-5.2.4h0ZM246.15,28.4v-11.4h33.1v11.4h-33.1ZM282.75,68V17h15v51h-15ZM282.25,10.2V0h16v10.2h-16ZM328.71,69c-5.6,0-10.53-1.1-14.8-3.3-4.2-2.27-7.5-5.4-9.9-9.4-2.33-4.07-3.5-8.73-3.5-14s1.17-9.87,3.5-13.8c2.4-3.93,5.7-7,9.9-9.2,4.27-2.2,9.2-3.3,14.8-3.3s10.6,1.1,14.8,3.3c4.27,2.2,7.57,5.27,9.9,9.2s3.5,8.53,3.5,13.8-1.2,9.93-3.6,14c-2.33,4-5.63,7.13-9.9,9.4-4.2,2.2-9.1,3.3-14.7,3.3h0ZM328.71,57.2c2.33,0,4.43-.6,6.3-1.8,1.93-1.2,3.47-2.9,4.6-5.1,1.13-2.27,1.7-4.97,1.7-8.1,0-4.6-1.23-8.13-3.7-10.6-2.4-2.53-5.37-3.8-8.9-3.8s-6.53,1.27-9,3.8c-2.4,2.53-3.6,6.07-3.6,10.6,0,3.13.57,5.83,1.7,8.1,1.13,2.2,2.63,3.9,4.5,5.1,1.93,1.2,4.07,1.8,6.4,1.8ZM359.86,68V17h14.7v12h.3v39h-15ZM395.36,68v-31.6c0-2.8-.73-4.9-2.2-6.3-1.4-1.4-3.47-2.1-6.2-2.1-2.33,0-4.43.53-6.3,1.6-1.8,1.07-3.23,2.53-4.3,4.4-1,1.87-1.5,4.07-1.5,6.6l-1.3-12.3c1.67-3.73,4.1-6.7,7.3-8.9,3.27-2.27,7.27-3.4,12-3.4,5.67,0,10,1.6,13,4.8,3,3.13,4.5,7.37,4.5,12.7v34.5s-15,0-15,0Z"/>
|
||||||
|
<rect class="cls-1" x="234.14" y="23.52" width="15.04" height="2" transform="translate(217.06 266.17) rotate(-89.98)"/>
|
||||||
|
<path class="cls-1" d="M141.37,27.65h-15.45c-.21-1.59-.63-3.02-1.27-4.29-.64-1.28-1.48-2.37-2.53-3.27-1.05-.91-2.3-1.6-3.74-2.07-1.42-.49-3-.74-4.73-.74-3.07,0-5.72.75-7.94,2.26-2.2,1.5-3.9,3.68-5.1,6.52-1.17,2.84-1.76,6.28-1.76,10.32s.6,7.72,1.79,10.57c1.21,2.82,2.91,4.95,5.1,6.4,2.2,1.42,4.81,2.13,7.82,2.13,1.69,0,3.22-.22,4.6-.65,1.4-.43,2.63-1.06,3.68-1.88,1.07-.84,1.95-1.86,2.63-3.06.7-1.22,1.18-2.58,1.45-4.11l15.45.09c-.27,2.8-1.08,5.56-2.44,8.28-1.34,2.72-3.18,5.2-5.53,7.45-2.35,2.22-5.21,4-8.59,5.31-3.36,1.32-7.21,1.98-11.55,1.98-5.73,0-10.85-1.26-15.39-3.77-4.51-2.53-8.07-6.22-10.69-11.06s-3.92-10.73-3.92-17.67,1.33-12.86,3.99-17.7,6.25-8.52,10.78-11.03,9.61-3.77,15.23-3.77c3.83,0,7.37.54,10.63,1.61,3.25,1.05,6.12,2.6,8.59,4.63,2.47,2.02,4.48,4.5,6.02,7.45,1.54,2.95,2.5,6.31,2.87,10.1v-.03Z"/>
|
||||||
|
<path class="cls-1" d="M176.25,68c-.4-1.47-.7-3.03-.9-4.7-.13-1.67-.2-3.6-.2-5.8h-.4v-24.1c0-2.07-.7-3.67-2.1-4.8-1.33-1.2-3.33-1.8-6-1.8s-4.57.43-6.1,1.3c-1.47.87-2.43,2.13-2.9,3.8h-14.3c.67-4.6,3.03-8.4,7.1-11.4s9.63-4.5,16.7-4.5,12.93,1.63,16.8,4.9,5.8,7.97,5.8,14.1v22.5c0,1.67.1,3.37.3,5.1.27,1.67.67,3.47,1.2,5.4h-15ZM158.45,69c-5.07,0-9.1-1.27-12.1-3.8-3-2.6-4.5-6.03-4.5-10.3,0-4.73,1.77-8.53,5.3-11.4,3.6-2.93,8.6-4.83,15-5.7l14.9-2.1v8.7l-12.4,1.9c-2.67.4-4.63,1.13-5.9,2.2-1.27,1.07-1.9,2.53-1.9,4.4,0,1.67.6,2.93,1.8,3.8s2.8,1.3,4.8,1.3c3.13,0,5.8-.83,8-2.5,2.2-1.73,3.3-3.73,3.3-6l1.4,8c-1.47,3.8-3.7,6.67-6.7,8.6s-6.67,2.9-11,2.9h0ZM210.14,69c-3.6,0-6.7-.77-9.3-2.3-2.53-1.6-4.47-3.7-5.8-6.3-1.33-2.67-2-5.63-2-8.9V17h15v31.6c0,2.8.7,4.9,2.1,6.3s3.37,2.1,5.9,2.1c2.27,0,4.27-.53,6-1.6s3.1-2.53,4.1-4.4c1.07-1.93,1.6-4.13,1.6-6.6l1.3,12.3c-1.67,3.67-4.1,6.63-7.3,8.9-3.2,2.27-7.07,3.4-11.6,3.4ZM228.04,68v-12h-.3V17h15v51h-14.7Z"/>
|
||||||
|
<line class="cls-2" x1="61.86" y1="48.49" x2="71.37" y2="64.07"/>
|
||||||
|
<g>
|
||||||
|
<line class="cls-2" x1="14.12" y1="48.62" x2="4.5" y2="64.37"/>
|
||||||
|
<line class="cls-2" x1="23.66" y1="64.39" x2="4.59" y2="64.39"/>
|
||||||
|
<line class="cls-2" x1="47.19" y1="24.13" x2="37.57" y2="8.39"/>
|
||||||
|
<line class="cls-2" x1="28.13" y1="24.33" x2="37.51" y2="8.45"/>
|
||||||
|
<line class="cls-2" x1="52.57" y1="64.39" x2="71.65" y2="64.39"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3.9 KiB |
After Width: | Height: | Size: 19 KiB |
|
@ -0,0 +1,32 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 410.36 69.1">
|
||||||
|
<defs>
|
||||||
|
<style>
|
||||||
|
.cls-1 {
|
||||||
|
stroke: #fff;
|
||||||
|
stroke-linecap: round;
|
||||||
|
stroke-width: 9px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cls-1, .cls-2 {
|
||||||
|
fill: #fff;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</defs>
|
||||||
|
<g id="Layer_1-2" data-name="Layer 1">
|
||||||
|
<g>
|
||||||
|
<path class="cls-2" d="M270.35,69.1c-6.53,0-11.4-1.57-14.6-4.7-3.13-3.2-4.7-8.03-4.7-14.5V5.6L266.05,0v50.4c0,2.27.63,3.97,1.9,5.1s3.23,1.7,5.9,1.7c1,0,1.93-.1,2.8-.3.87-.2,1.73-.43,2.6-.7v11.4c-.87.47-2.1.83-3.7,1.1-1.53.27-3.27.4-5.2.4h0ZM246.15,28.4v-11.4h33.1v11.4h-33.1ZM282.75,68V17h15v51h-15ZM282.25,10.2V0h16v10.2h-16ZM328.71,69c-5.6,0-10.53-1.1-14.8-3.3-4.2-2.27-7.5-5.4-9.9-9.4-2.33-4.07-3.5-8.73-3.5-14s1.17-9.87,3.5-13.8c2.4-3.93,5.7-7,9.9-9.2,4.27-2.2,9.2-3.3,14.8-3.3s10.6,1.1,14.8,3.3c4.27,2.2,7.57,5.27,9.9,9.2s3.5,8.53,3.5,13.8-1.2,9.93-3.6,14c-2.33,4-5.63,7.13-9.9,9.4-4.2,2.2-9.1,3.3-14.7,3.3h0ZM328.71,57.2c2.33,0,4.43-.6,6.3-1.8,1.93-1.2,3.47-2.9,4.6-5.1,1.13-2.27,1.7-4.97,1.7-8.1,0-4.6-1.23-8.13-3.7-10.6-2.4-2.53-5.37-3.8-8.9-3.8s-6.53,1.27-9,3.8c-2.4,2.53-3.6,6.07-3.6,10.6,0,3.13.57,5.83,1.7,8.1,1.13,2.2,2.63,3.9,4.5,5.1,1.93,1.2,4.07,1.8,6.4,1.8ZM359.86,68V17h14.7v12h.3v39h-15ZM395.36,68v-31.6c0-2.8-.73-4.9-2.2-6.3-1.4-1.4-3.47-2.1-6.2-2.1-2.33,0-4.43.53-6.3,1.6-1.8,1.07-3.23,2.53-4.3,4.4-1,1.87-1.5,4.07-1.5,6.6l-1.3-12.3c1.67-3.73,4.1-6.7,7.3-8.9,3.27-2.27,7.27-3.4,12-3.4,5.67,0,10,1.6,13,4.8,3,3.13,4.5,7.37,4.5,12.7v34.5s-15,0-15,0Z"/>
|
||||||
|
<rect class="cls-2" x="234.14" y="23.52" width="15.04" height="2" transform="translate(217.06 266.17) rotate(-89.98)"/>
|
||||||
|
<path class="cls-2" d="M141.37,27.65h-15.45c-.21-1.59-.63-3.02-1.27-4.29-.64-1.28-1.48-2.37-2.53-3.27-1.05-.91-2.3-1.6-3.74-2.07-1.42-.49-3-.74-4.73-.74-3.07,0-5.72.75-7.94,2.26-2.2,1.5-3.9,3.68-5.1,6.52-1.17,2.84-1.76,6.28-1.76,10.32s.6,7.72,1.79,10.57c1.21,2.82,2.91,4.95,5.1,6.4,2.2,1.42,4.81,2.13,7.82,2.13,1.69,0,3.22-.22,4.6-.65,1.4-.43,2.63-1.06,3.68-1.88,1.07-.84,1.95-1.86,2.63-3.06.7-1.22,1.18-2.58,1.45-4.11l15.45.09c-.27,2.8-1.08,5.56-2.44,8.28-1.34,2.72-3.18,5.2-5.53,7.45-2.35,2.22-5.21,4-8.59,5.31-3.36,1.32-7.21,1.98-11.55,1.98-5.73,0-10.85-1.26-15.39-3.77-4.51-2.53-8.07-6.22-10.69-11.06s-3.92-10.73-3.92-17.67,1.33-12.86,3.99-17.7,6.25-8.52,10.78-11.03,9.61-3.77,15.23-3.77c3.83,0,7.37.54,10.63,1.61,3.25,1.05,6.12,2.6,8.59,4.63,2.47,2.02,4.48,4.5,6.02,7.45,1.54,2.95,2.5,6.31,2.87,10.1v-.03Z"/>
|
||||||
|
<path class="cls-2" d="M176.25,68c-.4-1.47-.7-3.03-.9-4.7-.13-1.67-.2-3.6-.2-5.8h-.4v-24.1c0-2.07-.7-3.67-2.1-4.8-1.33-1.2-3.33-1.8-6-1.8s-4.57.43-6.1,1.3c-1.47.87-2.43,2.13-2.9,3.8h-14.3c.67-4.6,3.03-8.4,7.1-11.4s9.63-4.5,16.7-4.5,12.93,1.63,16.8,4.9,5.8,7.97,5.8,14.1v22.5c0,1.67.1,3.37.3,5.1.27,1.67.67,3.47,1.2,5.4h-15ZM158.45,69c-5.07,0-9.1-1.27-12.1-3.8-3-2.6-4.5-6.03-4.5-10.3,0-4.73,1.77-8.53,5.3-11.4,3.6-2.93,8.6-4.83,15-5.7l14.9-2.1v8.7l-12.4,1.9c-2.67.4-4.63,1.13-5.9,2.2-1.27,1.07-1.9,2.53-1.9,4.4,0,1.67.6,2.93,1.8,3.8s2.8,1.3,4.8,1.3c3.13,0,5.8-.83,8-2.5,2.2-1.73,3.3-3.73,3.3-6l1.4,8c-1.47,3.8-3.7,6.67-6.7,8.6s-6.67,2.9-11,2.9h0ZM210.14,69c-3.6,0-6.7-.77-9.3-2.3-2.53-1.6-4.47-3.7-5.8-6.3-1.33-2.67-2-5.63-2-8.9V17h15v31.6c0,2.8.7,4.9,2.1,6.3s3.37,2.1,5.9,2.1c2.27,0,4.27-.53,6-1.6s3.1-2.53,4.1-4.4c1.07-1.93,1.6-4.13,1.6-6.6l1.3,12.3c-1.67,3.67-4.1,6.63-7.3,8.9-3.2,2.27-7.07,3.4-11.6,3.4ZM228.04,68v-12h-.3V17h15v51h-14.7Z"/>
|
||||||
|
<line class="cls-1" x1="61.86" y1="48.49" x2="71.37" y2="64.07"/>
|
||||||
|
<g>
|
||||||
|
<line class="cls-1" x1="14.12" y1="48.62" x2="4.5" y2="64.37"/>
|
||||||
|
<line class="cls-1" x1="23.66" y1="64.39" x2="4.59" y2="64.39"/>
|
||||||
|
<line class="cls-1" x1="47.19" y1="24.13" x2="37.57" y2="8.39"/>
|
||||||
|
<line class="cls-1" x1="28.13" y1="24.33" x2="37.51" y2="8.45"/>
|
||||||
|
<line class="cls-1" x1="52.57" y1="64.39" x2="71.65" y2="64.39"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 9.6 KiB |
|
@ -1,9 +0,0 @@
|
||||||
<svg width="120" height="120" viewBox="0 0 120 120" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<rect width="120" height="120" rx="40" fill="black"/>
|
|
||||||
<line x1="35.3151" y1="72.5648" x2="25.257" y2="89.8072" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="45.1346" y1="90.4807" x2="25.173" y2="90.4807" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="70.7604" y1="43.6463" x2="60.6878" y2="26.4125" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="50.3315" y1="43.3923" x2="60.1425" y2="26.0082" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="5.25" y1="-5.25" x2="25.2115" y2="-5.25" transform="matrix(0.503871 0.863779 0.863779 -0.503871 88.4974 65.3846)" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="5.25" y1="-5.25" x2="25.2115" y2="-5.25" transform="matrix(1 0 0 -1 71.5384 85.2307)" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 971 B |
|
@ -1,8 +0,0 @@
|
||||||
<svg width="86" height="77" viewBox="0 0 86 77" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<line x1="17.3151" y1="53.5648" x2="7.25701" y2="70.8071" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="27.1345" y1="71.4808" x2="7.17298" y2="71.4808" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="52.7604" y1="24.6464" x2="42.6878" y2="7.41251" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="32.3315" y1="24.3924" x2="42.1424" y2="7.00827" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="5.25" y1="-5.25" x2="25.2115" y2="-5.25" transform="matrix(0.503871 0.863779 0.863779 -0.503871 70.4976 46.3846)" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="5.25" y1="-5.25" x2="25.2115" y2="-5.25" transform="matrix(1 0 0 -1 53.5386 66.2308)" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 915 B |
Before Width: | Height: | Size: 3.3 KiB |
|
@ -1,9 +0,0 @@
|
||||||
<svg width="120" height="120" viewBox="0 0 120 120" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<rect width="120" height="120" rx="40" fill="white"/>
|
|
||||||
<line x1="35.3151" y1="72.5648" x2="25.257" y2="89.8071" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="45.1345" y1="90.4808" x2="25.173" y2="90.4808" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="70.7604" y1="43.6464" x2="60.6878" y2="26.4125" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="50.3315" y1="43.3924" x2="60.1424" y2="26.0083" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="5.25" y1="-5.25" x2="25.2115" y2="-5.25" transform="matrix(0.503871 0.863779 0.863779 -0.503871 88.4976 65.3846)" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="5.25" y1="-5.25" x2="25.2115" y2="-5.25" transform="matrix(1 0 0 -1 71.5386 85.2308)" stroke="black" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 971 B |
|
@ -1,8 +0,0 @@
|
||||||
<svg width="86" height="77" viewBox="0 0 86 77" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<line x1="17.3151" y1="53.5648" x2="7.25704" y2="70.8072" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="27.1346" y1="71.4807" x2="7.17304" y2="71.4807" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="52.7604" y1="24.6463" x2="42.6878" y2="7.41245" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="32.3315" y1="24.3923" x2="42.1425" y2="7.00821" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="5.25" y1="-5.25" x2="25.2115" y2="-5.25" transform="matrix(0.503871 0.863779 0.863779 -0.503871 70.4974 46.3846)" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
<line x1="5.25" y1="-5.25" x2="25.2115" y2="-5.25" transform="matrix(1 0 0 -1 53.5384 66.2307)" stroke="white" stroke-width="10.5" stroke-linecap="round"/>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 915 B |
Before Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 9.1 KiB |
Before Width: | Height: | Size: 4.3 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 29 KiB |
Before Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 20 KiB |
|
@ -1,39 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 425.32 82.88">
|
|
||||||
<defs>
|
|
||||||
<style>
|
|
||||||
.cls-1 {
|
|
||||||
stroke-miterlimit: 4;
|
|
||||||
stroke-width: 10.5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-1, .cls-2 {
|
|
||||||
fill: none;
|
|
||||||
stroke: #000;
|
|
||||||
stroke-linecap: round;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-3 {
|
|
||||||
fill: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-2 {
|
|
||||||
stroke-width: 10.5px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</defs>
|
|
||||||
<g id="Layer_1-2" data-name="Layer 1">
|
|
||||||
<path d="M285.31,79.57c-6.53,0-11.4-1.57-14.6-4.7-3.13-3.2-4.7-8.03-4.7-14.5V16.07l15-5.6v50.4c0,2.27.63,3.97,1.9,5.1s3.23,1.7,5.9,1.7c1,0,1.93-.1,2.8-.3.87-.2,1.73-.43,2.6-.7v11.4c-.87.47-2.1.83-3.7,1.1-1.53.27-3.27.4-5.2.4ZM261.11,38.87v-11.4h33.1v11.4h-33.1ZM297.71,78.47V27.47h15v51h-15ZM297.21,20.67v-10.2h16v10.2h-16ZM343.67,79.47c-5.6,0-10.53-1.1-14.8-3.3-4.2-2.27-7.5-5.4-9.9-9.4-2.33-4.07-3.5-8.73-3.5-14s1.17-9.87,3.5-13.8c2.4-3.93,5.7-7,9.9-9.2,4.27-2.2,9.2-3.3,14.8-3.3s10.6,1.1,14.8,3.3c4.27,2.2,7.57,5.27,9.9,9.2,2.33,3.93,3.5,8.53,3.5,13.8s-1.2,9.93-3.6,14c-2.33,4-5.63,7.13-9.9,9.4-4.2,2.2-9.1,3.3-14.7,3.3ZM343.67,67.67c2.33,0,4.43-.6,6.3-1.8,1.93-1.2,3.47-2.9,4.6-5.1,1.13-2.27,1.7-4.97,1.7-8.1,0-4.6-1.23-8.13-3.7-10.6-2.4-2.53-5.37-3.8-8.9-3.8s-6.53,1.27-9,3.8c-2.4,2.53-3.6,6.07-3.6,10.6,0,3.13.57,5.83,1.7,8.1,1.13,2.2,2.63,3.9,4.5,5.1,1.93,1.2,4.07,1.8,6.4,1.8ZM374.82,78.47V27.47h14.7v12h.3v39h-15ZM410.32,78.47v-31.6c0-2.8-.73-4.9-2.2-6.3-1.4-1.4-3.47-2.1-6.2-2.1-2.33,0-4.43.53-6.3,1.6-1.8,1.07-3.23,2.53-4.3,4.4-1,1.87-1.5,4.07-1.5,6.6l-1.3-12.3c1.67-3.73,4.1-6.7,7.3-8.9,3.27-2.27,7.27-3.4,12-3.4,5.67,0,10,1.6,13,4.8,3,3.13,4.5,7.37,4.5,12.7v34.5h-15Z"/>
|
|
||||||
<rect class="cls-3" x="249.09" y="33.99" width="15.04" height="2" transform="translate(221.54 291.59) rotate(-89.98)"/>
|
|
||||||
<path d="M156.33,38.12h-15.45c-.21-1.59-.63-3.02-1.27-4.29-.64-1.28-1.48-2.37-2.53-3.27-1.05-.91-2.3-1.6-3.74-2.07-1.42-.49-3-.74-4.73-.74-3.07,0-5.72.75-7.94,2.26-2.2,1.5-3.9,3.68-5.1,6.52-1.17,2.84-1.76,6.28-1.76,10.32s.6,7.72,1.79,10.57c1.21,2.82,2.91,4.95,5.1,6.4,2.2,1.42,4.81,2.13,7.82,2.13,1.69,0,3.22-.22,4.6-.65,1.4-.43,2.63-1.06,3.68-1.88,1.07-.84,1.95-1.86,2.63-3.06.7-1.22,1.18-2.58,1.45-4.11l15.45.09c-.27,2.8-1.08,5.56-2.44,8.28-1.34,2.72-3.18,5.2-5.53,7.45-2.35,2.22-5.21,4-8.59,5.31-3.36,1.32-7.21,1.98-11.55,1.98-5.73,0-10.85-1.26-15.39-3.77-4.51-2.53-8.07-6.22-10.69-11.06-2.62-4.84-3.92-10.73-3.92-17.67s1.33-12.86,3.99-17.7c2.66-4.84,6.25-8.52,10.78-11.03,4.53-2.51,9.61-3.77,15.23-3.77,3.83,0,7.37.54,10.63,1.61,3.25,1.05,6.12,2.6,8.59,4.63,2.47,2.02,4.48,4.5,6.02,7.45,1.54,2.95,2.5,6.31,2.87,10.1Z"/>
|
|
||||||
<path d="M191.21,78.47c-.4-1.47-.7-3.03-.9-4.7-.13-1.67-.2-3.6-.2-5.8h-.4v-24.1c0-2.07-.7-3.67-2.1-4.8-1.33-1.2-3.33-1.8-6-1.8s-4.57.43-6.1,1.3c-1.47.87-2.43,2.13-2.9,3.8h-14.3c.67-4.6,3.03-8.4,7.1-11.4s9.63-4.5,16.7-4.5,12.93,1.63,16.8,4.9c3.87,3.27,5.8,7.97,5.8,14.1v22.5c0,1.67.1,3.37.3,5.1.27,1.67.67,3.47,1.2,5.4h-15ZM173.41,79.47c-5.07,0-9.1-1.27-12.1-3.8-3-2.6-4.5-6.03-4.5-10.3,0-4.73,1.77-8.53,5.3-11.4,3.6-2.93,8.6-4.83,15-5.7l14.9-2.1v8.7l-12.4,1.9c-2.67.4-4.63,1.13-5.9,2.2-1.27,1.07-1.9,2.53-1.9,4.4,0,1.67.6,2.93,1.8,3.8,1.2.87,2.8,1.3,4.8,1.3,3.13,0,5.8-.83,8-2.5,2.2-1.73,3.3-3.73,3.3-6l1.4,8c-1.47,3.8-3.7,6.67-6.7,8.6-3,1.93-6.67,2.9-11,2.9ZM225.1,79.47c-3.6,0-6.7-.77-9.3-2.3-2.53-1.6-4.47-3.7-5.8-6.3-1.33-2.67-2-5.63-2-8.9V27.47h15v31.6c0,2.8.7,4.9,2.1,6.3s3.37,2.1,5.9,2.1c2.27,0,4.27-.53,6-1.6,1.73-1.07,3.1-2.53,4.1-4.4,1.07-1.93,1.6-4.13,1.6-6.6l1.3,12.3c-1.67,3.67-4.1,6.63-7.3,8.9-3.2,2.27-7.07,3.4-11.6,3.4ZM243,78.47v-12h-.3V27.47h15v51h-14.7Z"/>
|
|
||||||
<g>
|
|
||||||
<line class="cls-2" x1="16.64" y1="57.52" x2="5.34" y2="76.88"/>
|
|
||||||
<line class="cls-2" x1="27.66" y1="77.63" x2="5.25" y2="77.63"/>
|
|
||||||
<line class="cls-2" x1="56.43" y1="25.05" x2="45.12" y2="5.7"/>
|
|
||||||
<line class="cls-2" x1="33.5" y1="24.77" x2="44.51" y2="5.25"/>
|
|
||||||
<line class="cls-1" x1="74.22" y1="57.52" x2="85.51" y2="76.88"/>
|
|
||||||
<line class="cls-2" x1="63.2" y1="77.63" x2="85.61" y2="77.63"/>
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 4.0 KiB |
|
@ -1,34 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 456.59 120">
|
|
||||||
<defs>
|
|
||||||
<style>
|
|
||||||
.cls-1 {
|
|
||||||
stroke-miterlimit: 4;
|
|
||||||
stroke-width: 10.5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-1, .cls-2 {
|
|
||||||
fill: none;
|
|
||||||
stroke: #fff;
|
|
||||||
stroke-linecap: round;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-2 {
|
|
||||||
stroke-width: 10.5px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</defs>
|
|
||||||
<g id="Layer_1-2" data-name="Layer 1">
|
|
||||||
<path d="M316.58,92.38c-6.53,0-11.4-1.57-14.6-4.7-3.13-3.2-4.7-8.03-4.7-14.5V28.88l15-5.6v50.4c0,2.27.63,3.97,1.9,5.1s3.23,1.7,5.9,1.7c1,0,1.93-.1,2.8-.3.87-.2,1.73-.43,2.6-.7v11.4c-.87.47-2.1.83-3.7,1.1-1.53.27-3.27.4-5.2.4ZM292.38,51.68v-11.4h33.1v11.4h-33.1ZM328.98,91.28v-51h15v51h-15ZM328.48,33.48v-10.2h16v10.2h-16ZM374.94,92.28c-5.6,0-10.53-1.1-14.8-3.3-4.2-2.27-7.5-5.4-9.9-9.4-2.33-4.07-3.5-8.73-3.5-14s1.17-9.87,3.5-13.8c2.4-3.93,5.7-7,9.9-9.2,4.27-2.2,9.2-3.3,14.8-3.3s10.6,1.1,14.8,3.3c4.27,2.2,7.57,5.27,9.9,9.2,2.33,3.93,3.5,8.53,3.5,13.8s-1.2,9.93-3.6,14c-2.33,4-5.63,7.13-9.9,9.4-4.2,2.2-9.1,3.3-14.7,3.3ZM374.94,80.48c2.33,0,4.43-.6,6.3-1.8,1.93-1.2,3.47-2.9,4.6-5.1,1.13-2.27,1.7-4.97,1.7-8.1,0-4.6-1.23-8.13-3.7-10.6-2.4-2.53-5.37-3.8-8.9-3.8s-6.53,1.27-9,3.8c-2.4,2.53-3.6,6.07-3.6,10.6,0,3.13.57,5.83,1.7,8.1,1.13,2.2,2.63,3.9,4.5,5.1,1.93,1.2,4.07,1.8,6.4,1.8ZM406.09,91.28v-51h14.7v12h.3v39h-15ZM441.59,91.28v-31.6c0-2.8-.73-4.9-2.2-6.3-1.4-1.4-3.47-2.1-6.2-2.1-2.33,0-4.43.53-6.3,1.6-1.8,1.07-3.23,2.53-4.3,4.4-1,1.87-1.5,4.07-1.5,6.6l-1.3-12.3c1.67-3.73,4.1-6.7,7.3-8.9,3.27-2.27,7.27-3.4,12-3.4,5.67,0,10,1.6,13,4.8,3,3.13,4.5,7.37,4.5,12.7v34.5h-15Z"/>
|
|
||||||
<rect x="280.36" y="46.8" width="15.04" height="2" transform="translate(240 335.66) rotate(-89.98)"/>
|
|
||||||
<path d="M187.6,50.93h-15.45c-.21-1.59-.63-3.02-1.27-4.29-.64-1.28-1.48-2.37-2.53-3.27-1.05-.91-2.3-1.6-3.74-2.07-1.42-.49-3-.74-4.73-.74-3.07,0-5.72.75-7.94,2.26-2.2,1.5-3.9,3.68-5.1,6.52-1.17,2.84-1.76,6.28-1.76,10.32s.6,7.72,1.79,10.57c1.21,2.82,2.91,4.95,5.1,6.4,2.2,1.42,4.81,2.13,7.82,2.13,1.69,0,3.22-.22,4.6-.65,1.4-.43,2.63-1.06,3.68-1.88,1.07-.84,1.95-1.86,2.63-3.06.7-1.22,1.18-2.58,1.45-4.11l15.45.09c-.27,2.8-1.08,5.56-2.44,8.28-1.34,2.72-3.18,5.2-5.53,7.45-2.35,2.22-5.21,4-8.59,5.31-3.36,1.32-7.21,1.98-11.55,1.98-5.73,0-10.85-1.26-15.39-3.77-4.51-2.53-8.07-6.22-10.69-11.06-2.62-4.84-3.92-10.73-3.92-17.67s1.33-12.86,3.99-17.7c2.66-4.84,6.25-8.52,10.78-11.03,4.53-2.51,9.61-3.77,15.23-3.77,3.83,0,7.37.54,10.63,1.61,3.25,1.05,6.12,2.6,8.59,4.63,2.47,2.02,4.48,4.5,6.02,7.45,1.54,2.95,2.5,6.31,2.87,10.1Z"/>
|
|
||||||
<path d="M222.48,91.28c-.4-1.47-.7-3.03-.9-4.7-.13-1.67-.2-3.6-.2-5.8h-.4v-24.1c0-2.07-.7-3.67-2.1-4.8-1.33-1.2-3.33-1.8-6-1.8s-4.57.43-6.1,1.3c-1.47.87-2.43,2.13-2.9,3.8h-14.3c.67-4.6,3.03-8.4,7.1-11.4s9.63-4.5,16.7-4.5,12.93,1.63,16.8,4.9c3.87,3.27,5.8,7.97,5.8,14.1v22.5c0,1.67.1,3.37.3,5.1.27,1.67.67,3.47,1.2,5.4h-15ZM204.68,92.28c-5.07,0-9.1-1.27-12.1-3.8-3-2.6-4.5-6.03-4.5-10.3,0-4.73,1.77-8.53,5.3-11.4,3.6-2.93,8.6-4.83,15-5.7l14.9-2.1v8.7l-12.4,1.9c-2.67.4-4.63,1.13-5.9,2.2-1.27,1.07-1.9,2.53-1.9,4.4,0,1.67.6,2.93,1.8,3.8,1.2.87,2.8,1.3,4.8,1.3,3.13,0,5.8-.83,8-2.5,2.2-1.73,3.3-3.73,3.3-6l1.4,8c-1.47,3.8-3.7,6.67-6.7,8.6-3,1.93-6.67,2.9-11,2.9ZM256.37,92.28c-3.6,0-6.7-.77-9.3-2.3-2.53-1.6-4.47-3.7-5.8-6.3-1.33-2.67-2-5.63-2-8.9v-34.5h15v31.6c0,2.8.7,4.9,2.1,6.3s3.37,2.1,5.9,2.1c2.27,0,4.27-.53,6-1.6,1.73-1.07,3.1-2.53,4.1-4.4,1.07-1.93,1.6-4.13,1.6-6.6l1.3,12.3c-1.67,3.67-4.1,6.63-7.3,8.9-3.2,2.27-7.07,3.4-11.6,3.4ZM274.27,91.28v-12h-.3v-39h15v51h-14.7Z"/>
|
|
||||||
<rect width="120" height="120" rx="40" ry="40"/>
|
|
||||||
<line class="cls-2" x1="35.32" y1="72.56" x2="25.26" y2="89.81"/>
|
|
||||||
<line class="cls-2" x1="45.13" y1="90.48" x2="25.17" y2="90.48"/>
|
|
||||||
<line class="cls-2" x1="70.76" y1="43.65" x2="60.69" y2="26.41"/>
|
|
||||||
<line class="cls-2" x1="50.33" y1="43.39" x2="60.14" y2="26.01"/>
|
|
||||||
<line class="cls-1" x1="86.61" y1="72.56" x2="96.67" y2="89.81"/>
|
|
||||||
<line class="cls-2" x1="76.79" y1="90.48" x2="96.75" y2="90.48"/>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 4.0 KiB |
|
@ -1,38 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 456.59 120">
|
|
||||||
<defs>
|
|
||||||
<style>
|
|
||||||
.cls-1 {
|
|
||||||
stroke-miterlimit: 4;
|
|
||||||
stroke-width: 10.5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-1, .cls-2 {
|
|
||||||
fill: none;
|
|
||||||
stroke: #000;
|
|
||||||
stroke-linecap: round;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-3 {
|
|
||||||
fill: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-2 {
|
|
||||||
stroke-width: 10.5px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</defs>
|
|
||||||
<g id="Layer_1-2" data-name="Layer 1">
|
|
||||||
<path class="cls-3" d="M316.58,92.38c-6.53,0-11.4-1.57-14.6-4.7-3.13-3.2-4.7-8.03-4.7-14.5V28.88l15-5.6v50.4c0,2.27.63,3.97,1.9,5.1s3.23,1.7,5.9,1.7c1,0,1.93-.1,2.8-.3.87-.2,1.73-.43,2.6-.7v11.4c-.87.47-2.1.83-3.7,1.1-1.53.27-3.27.4-5.2.4ZM292.38,51.68v-11.4h33.1v11.4h-33.1ZM328.98,91.28v-51h15v51h-15ZM328.48,33.48v-10.2h16v10.2h-16ZM374.94,92.28c-5.6,0-10.53-1.1-14.8-3.3-4.2-2.27-7.5-5.4-9.9-9.4-2.33-4.07-3.5-8.73-3.5-14s1.17-9.87,3.5-13.8c2.4-3.93,5.7-7,9.9-9.2,4.27-2.2,9.2-3.3,14.8-3.3s10.6,1.1,14.8,3.3c4.27,2.2,7.57,5.27,9.9,9.2,2.33,3.93,3.5,8.53,3.5,13.8s-1.2,9.93-3.6,14c-2.33,4-5.63,7.13-9.9,9.4-4.2,2.2-9.1,3.3-14.7,3.3ZM374.94,80.48c2.33,0,4.43-.6,6.3-1.8,1.93-1.2,3.47-2.9,4.6-5.1,1.13-2.27,1.7-4.97,1.7-8.1,0-4.6-1.23-8.13-3.7-10.6-2.4-2.53-5.37-3.8-8.9-3.8s-6.53,1.27-9,3.8c-2.4,2.53-3.6,6.07-3.6,10.6,0,3.13.57,5.83,1.7,8.1,1.13,2.2,2.63,3.9,4.5,5.1,1.93,1.2,4.07,1.8,6.4,1.8ZM406.09,91.28v-51h14.7v12h.3v39h-15ZM441.59,91.28v-31.6c0-2.8-.73-4.9-2.2-6.3-1.4-1.4-3.47-2.1-6.2-2.1-2.33,0-4.43.53-6.3,1.6-1.8,1.07-3.23,2.53-4.3,4.4-1,1.87-1.5,4.07-1.5,6.6l-1.3-12.3c1.67-3.73,4.1-6.7,7.3-8.9,3.27-2.27,7.27-3.4,12-3.4,5.67,0,10,1.6,13,4.8,3,3.13,4.5,7.37,4.5,12.7v34.5h-15Z"/>
|
|
||||||
<rect class="cls-3" x="280.36" y="46.8" width="15.04" height="2" transform="translate(240 335.66) rotate(-89.98)"/>
|
|
||||||
<path class="cls-3" d="M187.6,50.93h-15.45c-.21-1.59-.63-3.02-1.27-4.29-.64-1.28-1.48-2.37-2.53-3.27-1.05-.91-2.3-1.6-3.74-2.07-1.42-.49-3-.74-4.73-.74-3.07,0-5.72.75-7.94,2.26-2.2,1.5-3.9,3.68-5.1,6.52-1.17,2.84-1.76,6.28-1.76,10.32s.6,7.72,1.79,10.57c1.21,2.82,2.91,4.95,5.1,6.4,2.2,1.42,4.81,2.13,7.82,2.13,1.69,0,3.22-.22,4.6-.65,1.4-.43,2.63-1.06,3.68-1.88,1.07-.84,1.95-1.86,2.63-3.06.7-1.22,1.18-2.58,1.45-4.11l15.45.09c-.27,2.8-1.08,5.56-2.44,8.28-1.34,2.72-3.18,5.2-5.53,7.45-2.35,2.22-5.21,4-8.59,5.31-3.36,1.32-7.21,1.98-11.55,1.98-5.73,0-10.85-1.26-15.39-3.77-4.51-2.53-8.07-6.22-10.69-11.06-2.62-4.84-3.92-10.73-3.92-17.67s1.33-12.86,3.99-17.7c2.66-4.84,6.25-8.52,10.78-11.03,4.53-2.51,9.61-3.77,15.23-3.77,3.83,0,7.37.54,10.63,1.61,3.25,1.05,6.12,2.6,8.59,4.63,2.47,2.02,4.48,4.5,6.02,7.45,1.54,2.95,2.5,6.31,2.87,10.1Z"/>
|
|
||||||
<path class="cls-3" d="M222.48,91.28c-.4-1.47-.7-3.03-.9-4.7-.13-1.67-.2-3.6-.2-5.8h-.4v-24.1c0-2.07-.7-3.67-2.1-4.8-1.33-1.2-3.33-1.8-6-1.8s-4.57.43-6.1,1.3c-1.47.87-2.43,2.13-2.9,3.8h-14.3c.67-4.6,3.03-8.4,7.1-11.4s9.63-4.5,16.7-4.5,12.93,1.63,16.8,4.9c3.87,3.27,5.8,7.97,5.8,14.1v22.5c0,1.67.1,3.37.3,5.1.27,1.67.67,3.47,1.2,5.4h-15ZM204.68,92.28c-5.07,0-9.1-1.27-12.1-3.8-3-2.6-4.5-6.03-4.5-10.3,0-4.73,1.77-8.53,5.3-11.4,3.6-2.93,8.6-4.83,15-5.7l14.9-2.1v8.7l-12.4,1.9c-2.67.4-4.63,1.13-5.9,2.2-1.27,1.07-1.9,2.53-1.9,4.4,0,1.67.6,2.93,1.8,3.8,1.2.87,2.8,1.3,4.8,1.3,3.13,0,5.8-.83,8-2.5,2.2-1.73,3.3-3.73,3.3-6l1.4,8c-1.47,3.8-3.7,6.67-6.7,8.6-3,1.93-6.67,2.9-11,2.9ZM256.37,92.28c-3.6,0-6.7-.77-9.3-2.3-2.53-1.6-4.47-3.7-5.8-6.3-1.33-2.67-2-5.63-2-8.9v-34.5h15v31.6c0,2.8.7,4.9,2.1,6.3s3.37,2.1,5.9,2.1c2.27,0,4.27-.53,6-1.6,1.73-1.07,3.1-2.53,4.1-4.4,1.07-1.93,1.6-4.13,1.6-6.6l1.3,12.3c-1.67,3.67-4.1,6.63-7.3,8.9-3.2,2.27-7.07,3.4-11.6,3.4ZM274.27,91.28v-12h-.3v-39h15v51h-14.7Z"/>
|
|
||||||
<rect class="cls-3" width="120" height="120" rx="40" ry="40"/>
|
|
||||||
<line class="cls-2" x1="35.32" y1="72.56" x2="25.26" y2="89.81"/>
|
|
||||||
<line class="cls-2" x1="45.13" y1="90.48" x2="25.17" y2="90.48"/>
|
|
||||||
<line class="cls-2" x1="70.76" y1="43.65" x2="60.69" y2="26.41"/>
|
|
||||||
<line class="cls-2" x1="50.33" y1="43.39" x2="60.14" y2="26.01"/>
|
|
||||||
<line class="cls-1" x1="86.61" y1="72.56" x2="96.67" y2="89.81"/>
|
|
||||||
<line class="cls-2" x1="76.79" y1="90.48" x2="96.75" y2="90.48"/>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 4.1 KiB |
|
@ -1,39 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<svg id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 425.32 82.88">
|
|
||||||
<defs>
|
|
||||||
<style>
|
|
||||||
.cls-1 {
|
|
||||||
stroke-miterlimit: 4;
|
|
||||||
stroke-width: 10.5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-1, .cls-2 {
|
|
||||||
fill: none;
|
|
||||||
stroke: #fff;
|
|
||||||
stroke-linecap: round;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-3 {
|
|
||||||
fill: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cls-2 {
|
|
||||||
stroke-width: 10.5px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</defs>
|
|
||||||
<g id="Layer_1-2" data-name="Layer 1">
|
|
||||||
<path class="cls-3" d="M285.31,79.57c-6.53,0-11.4-1.57-14.6-4.7-3.13-3.2-4.7-8.03-4.7-14.5V16.07l15-5.6v50.4c0,2.27.63,3.97,1.9,5.1s3.23,1.7,5.9,1.7c1,0,1.93-.1,2.8-.3.87-.2,1.73-.43,2.6-.7v11.4c-.87.47-2.1.83-3.7,1.1-1.53.27-3.27.4-5.2.4ZM261.11,38.87v-11.4h33.1v11.4h-33.1ZM297.71,78.47V27.47h15v51h-15ZM297.21,20.67v-10.2h16v10.2h-16ZM343.67,79.47c-5.6,0-10.53-1.1-14.8-3.3-4.2-2.27-7.5-5.4-9.9-9.4-2.33-4.07-3.5-8.73-3.5-14s1.17-9.87,3.5-13.8c2.4-3.93,5.7-7,9.9-9.2,4.27-2.2,9.2-3.3,14.8-3.3s10.6,1.1,14.8,3.3c4.27,2.2,7.57,5.27,9.9,9.2,2.33,3.93,3.5,8.53,3.5,13.8s-1.2,9.93-3.6,14c-2.33,4-5.63,7.13-9.9,9.4-4.2,2.2-9.1,3.3-14.7,3.3ZM343.67,67.67c2.33,0,4.43-.6,6.3-1.8,1.93-1.2,3.47-2.9,4.6-5.1,1.13-2.27,1.7-4.97,1.7-8.1,0-4.6-1.23-8.13-3.7-10.6-2.4-2.53-5.37-3.8-8.9-3.8s-6.53,1.27-9,3.8c-2.4,2.53-3.6,6.07-3.6,10.6,0,3.13.57,5.83,1.7,8.1,1.13,2.2,2.63,3.9,4.5,5.1,1.93,1.2,4.07,1.8,6.4,1.8ZM374.82,78.47V27.47h14.7v12h.3v39h-15ZM410.32,78.47v-31.6c0-2.8-.73-4.9-2.2-6.3-1.4-1.4-3.47-2.1-6.2-2.1-2.33,0-4.43.53-6.3,1.6-1.8,1.07-3.23,2.53-4.3,4.4-1,1.87-1.5,4.07-1.5,6.6l-1.3-12.3c1.67-3.73,4.1-6.7,7.3-8.9,3.27-2.27,7.27-3.4,12-3.4,5.67,0,10,1.6,13,4.8,3,3.13,4.5,7.37,4.5,12.7v34.5h-15Z"/>
|
|
||||||
<rect class="cls-3" x="249.09" y="33.99" width="15.04" height="2" transform="translate(221.54 291.59) rotate(-89.98)"/>
|
|
||||||
<path class="cls-3" d="M156.33,38.12h-15.45c-.21-1.59-.63-3.02-1.27-4.29-.64-1.28-1.48-2.37-2.53-3.27-1.05-.91-2.3-1.6-3.74-2.07-1.42-.49-3-.74-4.73-.74-3.07,0-5.72.75-7.94,2.26-2.2,1.5-3.9,3.68-5.1,6.52-1.17,2.84-1.76,6.28-1.76,10.32s.6,7.72,1.79,10.57c1.21,2.82,2.91,4.95,5.1,6.4,2.2,1.42,4.81,2.13,7.82,2.13,1.69,0,3.22-.22,4.6-.65,1.4-.43,2.63-1.06,3.68-1.88,1.07-.84,1.95-1.86,2.63-3.06.7-1.22,1.18-2.58,1.45-4.11l15.45.09c-.27,2.8-1.08,5.56-2.44,8.28-1.34,2.72-3.18,5.2-5.53,7.45-2.35,2.22-5.21,4-8.59,5.31-3.36,1.32-7.21,1.98-11.55,1.98-5.73,0-10.85-1.26-15.39-3.77-4.51-2.53-8.07-6.22-10.69-11.06-2.62-4.84-3.92-10.73-3.92-17.67s1.33-12.86,3.99-17.7c2.66-4.84,6.25-8.52,10.78-11.03,4.53-2.51,9.61-3.77,15.23-3.77,3.83,0,7.37.54,10.63,1.61,3.25,1.05,6.12,2.6,8.59,4.63,2.47,2.02,4.48,4.5,6.02,7.45,1.54,2.95,2.5,6.31,2.87,10.1Z"/>
|
|
||||||
<path class="cls-3" d="M191.21,78.47c-.4-1.47-.7-3.03-.9-4.7-.13-1.67-.2-3.6-.2-5.8h-.4v-24.1c0-2.07-.7-3.67-2.1-4.8-1.33-1.2-3.33-1.8-6-1.8s-4.57.43-6.1,1.3c-1.47.87-2.43,2.13-2.9,3.8h-14.3c.67-4.6,3.03-8.4,7.1-11.4s9.63-4.5,16.7-4.5,12.93,1.63,16.8,4.9c3.87,3.27,5.8,7.97,5.8,14.1v22.5c0,1.67.1,3.37.3,5.1.27,1.67.67,3.47,1.2,5.4h-15ZM173.41,79.47c-5.07,0-9.1-1.27-12.1-3.8-3-2.6-4.5-6.03-4.5-10.3,0-4.73,1.77-8.53,5.3-11.4,3.6-2.93,8.6-4.83,15-5.7l14.9-2.1v8.7l-12.4,1.9c-2.67.4-4.63,1.13-5.9,2.2-1.27,1.07-1.9,2.53-1.9,4.4,0,1.67.6,2.93,1.8,3.8,1.2.87,2.8,1.3,4.8,1.3,3.13,0,5.8-.83,8-2.5,2.2-1.73,3.3-3.73,3.3-6l1.4,8c-1.47,3.8-3.7,6.67-6.7,8.6-3,1.93-6.67,2.9-11,2.9ZM225.1,79.47c-3.6,0-6.7-.77-9.3-2.3-2.53-1.6-4.47-3.7-5.8-6.3-1.33-2.67-2-5.63-2-8.9V27.47h15v31.6c0,2.8.7,4.9,2.1,6.3s3.37,2.1,5.9,2.1c2.27,0,4.27-.53,6-1.6,1.73-1.07,3.1-2.53,4.1-4.4,1.07-1.93,1.6-4.13,1.6-6.6l1.3,12.3c-1.67,3.67-4.1,6.63-7.3,8.9-3.2,2.27-7.07,3.4-11.6,3.4ZM243,78.47v-12h-.3V27.47h15v51h-14.7Z"/>
|
|
||||||
<g>
|
|
||||||
<line class="cls-2" x1="16.64" y1="57.52" x2="5.34" y2="76.88"/>
|
|
||||||
<line class="cls-2" x1="27.66" y1="77.63" x2="5.25" y2="77.63"/>
|
|
||||||
<line class="cls-2" x1="56.43" y1="25.05" x2="45.12" y2="5.7"/>
|
|
||||||
<line class="cls-2" x1="33.5" y1="24.77" x2="44.51" y2="5.25"/>
|
|
||||||
<line class="cls-1" x1="74.22" y1="57.52" x2="85.51" y2="76.88"/>
|
|
||||||
<line class="cls-2" x1="63.2" y1="77.63" x2="85.61" y2="77.63"/>
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 4.0 KiB |
Before Width: | Height: | Size: 360 KiB |
Before Width: | Height: | Size: 13 KiB |
|
@ -1 +0,0 @@
|
||||||
<svg id="svg1681" xmlns="http://www.w3.org/2000/svg" width="300" height="77.54" viewBox="0 0 300 77.54"><defs><style>.cls-1{fill:#fff;}</style></defs><path class="cls-1" d="M56.15,0H21.39A21.39,21.39,0,0,0,0,21.39V56.15A21.39,21.39,0,0,0,21.39,77.54H56.15A21.38,21.38,0,0,0,77.54,56.15V21.39A21.39,21.39,0,0,0,56.15,0ZM5.76,40.46V37.89a2.62,2.62,0,0,1,1-2.35L22.21,20.06a2.6,2.6,0,0,1,2.35-1h2.58a2.6,2.6,0,0,1,2.35,1l9.56,9.6-4.7,4.69-8.5-8.53L12.49,39.18,21,47.72l-4.7,4.69-9.57-9.6A2.63,2.63,0,0,1,5.76,40.46Zm9.83,24.83a1.12,1.12,0,0,1-1.59,0l-2.65-2.65a1.12,1.12,0,0,1,0-1.59L60.54,11.86a1.11,1.11,0,0,1,1.59,0l2.65,2.64a1.13,1.13,0,0,1,0,1.6ZM71.78,40.47a2.6,2.6,0,0,1-1,2.34L55.33,58.29a2.62,2.62,0,0,1-2.35,1H50.41a2.62,2.62,0,0,1-2.35-1L37.21,47.35l4.69-4.69,9.8,9.86L65.06,39.17l-9.8-9.87L60,24.61,70.82,35.55a2.66,2.66,0,0,1,1,2.34Z"/><g id="layer2"><g id="text2555-4-2-6"><path id="path2692-8-9-2" class="cls-1" d="M107.08,27.21h-6.39v24h6.72q11.78,0,11.78-12.5,0-6-2.89-8.76t-9.22-2.79ZM91,59.39V19.08H108.3q10.33,0,15.38,5.15t5.09,14.53q0,9.24-5.45,15t-15,5.67Z"/><path id="path2694-4-8-6" class="cls-1" d="M140.84,24.19h-9.55v-6h9.55Zm-.13,35.2h-9.22V27.54h9.22Z"/><path id="path2696-0-2-4" class="cls-1" d="M157.93,60.34a23.8,23.8,0,0,1-5.61-.59,14,14,0,0,1-4-1.51,10.25,10.25,0,0,1-2.75-2.36A11.37,11.37,0,0,1,143.82,53a16.49,16.49,0,0,1-.88-3.38l8.53-1.67a8.24,8.24,0,0,0,2.26,4.23,6.35,6.35,0,0,0,4.39,1.41c2.93,0,4.43-1,4.5-3a2.55,2.55,0,0,0-1.41-2.23,19.62,19.62,0,0,0-5.51-1.67q-6.57-1.38-9.25-3.74a8.06,8.06,0,0,1-2.69-6.4,8.59,8.59,0,0,1,3.34-7.21q3.38-2.59,9.94-2.59c4.37,0,7.66.83,9.84,2.49a11.52,11.52,0,0,1,4.27,7.18l-8.73,1.94a7.43,7.43,0,0,0-1.87-3.84A4.9,4.9,0,0,0,157,33.25a5.38,5.38,0,0,0-3.09.75,2.38,2.38,0,0,0-1.08,2.07,2.72,2.72,0,0,0,.43,1.6,4.79,4.79,0,0,0,2,1.28,24.33,24.33,0,0,0,4.59,1.22c4.35.85,7.41,2.1,9.15,3.74a8.21,8.21,0,0,1,2.63,6.26,9.05,9.05,0,0,1-3.38,7.51q-3.37,2.67-10.33,2.66Z"/><path id="path2698-80-9-7" class="cls-1" d="M176.1,49.39V35.21h-3.7V27.54h3.7v-8h9.12v8h8.4v7.67h-8.4V47.65A4.1,4.1,0,0,0,186,50.5a3.9,3.9,0,0,0,2.89.89,23.86,23.86,0,0,0,4.16-.72l1,8.46a30.76,30.76,0,0,1-3.64.92,21.64,21.64,0,0,1-3.9.29q-5.25,0-7.88-3.05A11.82,11.82,0,0,1,176.1,49.39Z"/><path id="path2700-6-5-4" class="cls-1" d="M205.26,59.39h-9.21V27.54h9.21V38.89h.13a35.72,35.72,0,0,1,1.35-5.84,9.57,9.57,0,0,1,1.9-3.48A6,6,0,0,1,211,28a9.07,9.07,0,0,1,3-.43h1.54V38h-3.48c-2.6,0-4.38.43-5.34,1.31s-1.45,2.49-1.45,4.85Z"/><path id="path2702-9-9-3" class="cls-1" d="M237.61,59.39V50.53h-.13q-1,5.22-3.71,7.52a9.75,9.75,0,0,1-6.66,2.29c-3.34,0-5.83-1-7.44-3.05s-2.43-4.85-2.43-8.46V27.54h9.21v18.7a6.65,6.65,0,0,0,1.28,4.26,5,5,0,0,0,4,1.58,5.31,5.31,0,0,0,5.84-5.84V27.54h9.12V59.39Z"/><path id="path2704-7-46-3" class="cls-1" d="M263.82,60.34a23.8,23.8,0,0,1-5.61-.59,13.93,13.93,0,0,1-4-1.51,10.1,10.1,0,0,1-2.75-2.36A11.37,11.37,0,0,1,249.71,53a15.87,15.87,0,0,1-.88-3.38l8.53-1.67a8.17,8.17,0,0,0,2.26,4.23A6.35,6.35,0,0,0,264,53.55c2.93,0,4.43-1,4.5-3a2.55,2.55,0,0,0-1.41-2.23,19.62,19.62,0,0,0-5.51-1.67q-6.57-1.38-9.25-3.74a8.06,8.06,0,0,1-2.69-6.4A8.59,8.59,0,0,1,253,29.28q3.38-2.59,9.94-2.59t9.84,2.49A11.52,11.52,0,0,1,277,36.36l-8.73,1.94a7.43,7.43,0,0,0-1.87-3.84,4.9,4.9,0,0,0-3.57-1.21,5.41,5.41,0,0,0-3.09.75,2.38,2.38,0,0,0-1.08,2.07,2.72,2.72,0,0,0,.43,1.6,4.79,4.79,0,0,0,2,1.28,24.33,24.33,0,0,0,4.59,1.22q6.53,1.28,9.16,3.74a8.24,8.24,0,0,1,2.62,6.26,9.05,9.05,0,0,1-3.38,7.51q-3.37,2.67-10.33,2.66Z"/><path id="path2706-2-4-1" class="cls-1" d="M282,49.39V35.21h-3.71V27.54H282v-8h9.12v8h8.4v7.67h-8.4V47.65a4.1,4.1,0,0,0,.82,2.85,3.9,3.9,0,0,0,2.89.89,24.16,24.16,0,0,0,4.16-.72l1,8.46a31.25,31.25,0,0,1-3.64.92,21.72,21.72,0,0,1-3.9.29q-5.25,0-7.88-3.05A11.77,11.77,0,0,1,282,49.39Z"/></g></g></svg>
|
|
Before Width: | Height: | Size: 3.7 KiB |
Before Width: | Height: | Size: 13 KiB |
|
@ -1 +0,0 @@
|
||||||
<svg id="svg1681" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 393.45 322.36"><defs><style>.cls-1{fill:#fff;}</style></defs><g id="layer1"><path id="path1927-7-5-9-8-2-7-6-3-3-4-5-3-2-2-0" class="cls-1" d="M112.06,45.08c-5.26,0-8.16,0-14,5.8L5.8,143.13C0,148.91,0,151.87,0,157.11v15.32c0,5.24,0,8.19,5.77,14l57.05,57.26,28-28L40.13,164.81l79.58-79.58L170.4,136.1l28-28-57-57.18c-5.9-5.89-8.75-5.82-14-5.83Z" transform="translate(0 0)"/><path id="path1931-4-9-5-1-0-2-97-3-8-9-0-1-4-7-55" class="cls-1" d="M323,78l-28,28,58.41,58.81L273.8,244.33l-58.4-58.81-28,28,64.68,65.12c5.86,5.86,8.74,5.83,14,5.84l15.28,0c5.26,0,8.22,0,14-5.8l92.26-92.25c5.78-5.78,5.78-8.72,5.79-14V157.14c0-5.23-.11-8.3-5.74-14Z" transform="translate(0 0)"/><g id="g2384"><path id="path2388" class="cls-1" d="M336,2l15.78,15.78a6.69,6.69,0,0,1,0,9.49L58.59,320.39a6.69,6.69,0,0,1-9.49,0L33.32,304.62a6.71,6.71,0,0,1,0-9.5L326.47,2A6.69,6.69,0,0,1,336,2Z" transform="translate(0 0)"/></g></g></svg>
|
|
Before Width: | Height: | Size: 974 B |
Before Width: | Height: | Size: 361 KiB |
Before Width: | Height: | Size: 281 KiB |
Before Width: | Height: | Size: 453 KiB |
Before Width: | Height: | Size: 159 KiB |
Before Width: | Height: | Size: 5.0 MiB After Width: | Height: | Size: 5.0 MiB |
|
@ -1,190 +0,0 @@
|
||||||
anton@distrust.co
|
|
||||||
|
|
||||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
|
||||||
|
|
||||||
mQINBGI/PwIBEACfbDXsSIoZzZP8jrk7h2D98bUW2lRYxxpRqjLfvr5M1z3VNHCC
|
|
||||||
HaHXIPhqTdu6BXWKJJxcdkvp4z5u6aykcAjcRi0MpcTX5tU9RnSvA1HIdDmLukIy
|
|
||||||
JFEPHxoCeeFBSgmtWYczn3eSmsAQBKCLFsEmVyjpivGlphFAfzcDqtKLhaQVjVU8
|
|
||||||
YTPty7JIoiYSvCXTHCdYenfQmbpldFuT/60xsc9PJP6wMGdszDc16XIPZUKBfRtf
|
|
||||||
qPQZPN37SHczuqCrrOr+8+4q1ZcxBRAZxcPpfPk7WG1UDfTZFLvEdNCIaG0+FDkQ
|
|
||||||
8yvrS/GC9UgO3uRieZ8K4Cd0iMR96nvizqQFHvB/Wn1VwGlptYnlbEcVXttV7v1F
|
|
||||||
PBtojkEALKXNUxupesnu4YgY09pJAqdhLB89Yk+7SBZWY7C8Ero79f6+ClkHWzM5
|
|
||||||
WJHOubKf91syeyqjlqdaxlHhVWH3gqpvFy42seXlmwPSRaKNuaHSwXizPmHinnSs
|
|
||||||
2uFaRdKevJ4MuhjIxXQlMRFzC74X8CIW5IJ4vK+zcslBFCpe1CuwDQoesY2Wblv+
|
|
||||||
E40YgtUDuDKO1keintjtxD1z5/8SUFLNQhUPx0v08P+p6C3AaVL5s2OtH7KJiDaP
|
|
||||||
SuT+V66FaKYLBmi0+ogIuStEJ8abtoRoWj9TWEMhrtnPv+5Qocr32cPgSQARAQAB
|
|
||||||
tB5BbnRvbiBMaXZhamEgPGFudG9uQGxpdmFqYS5tZT6JAlQEEwEKAD4WIQT0v1yB
|
|
||||||
7Hil3TQcke7cS30fUuC6TQUCYj8/AgIbAQUJA8JnAAULCQgHAgYVCgkICwIEFgID
|
|
||||||
AQIeAQIXgAAKCRDcS30fUuC6TRDOD/9DTjXjXvQJEBP0O0DCNEYSOxEeecZNslNo
|
|
||||||
5z9G7skCjzKU4Ytl7X1w/xE+LtpqrluDXzomLcoHPa5KN3kaiSwnzYXe4FWwv2Xd
|
|
||||||
1TmPyDzJJ8A/DGGOjYndVSpYKO2kKuxT/S2xg4KrfXr/oc8mIR0rqs3a/46GMqHR
|
|
||||||
sz4D5Gm62XfK/x+WIHbHi+CQsHAzwfBKUzReeqROLicJya/QKOaMDMtQpoMcTHPs
|
|
||||||
hLj1uKwl6ThGKM8cEzQvFxv1PknCOcqDdIMTrNHIsgY7VWs/bohGCZ7nf3lJ9aMY
|
|
||||||
17vZ0RrslJz+wCLUSxgEFqcJwsauHqEttTGAy+Uqi8Iunr9WP+unXsvmjNEWCkpr
|
|
||||||
OSP6wAb9KaLHc0dL22vRuOtAeLGE4vRrm+++uTuehz2tYHGKP3+AjHXeNTg5ejRe
|
|
||||||
34KPzl/LbxTDRyqx9n/XdLQLVvOxwo8ecm+bDsFqQ7of16C9/v7FJBGtcLVpQzVe
|
|
||||||
MD7d/6ABL73MtdGpJNC63fwPZnuNrEIrRKuOmpOq4YZsHmqqzgeuQAochd5PLt+N
|
|
||||||
Nti+FZ94/WiN5EKzjQO2HsmbXXJslY8lvsz5WHA5K68DMdb6ae0fBzRB4Jdg1+7y
|
|
||||||
F2LXE5k9rPDC0G0lyCEtZJWDhk4QbR5tEw/EQ0dH73843K2c4YoZjmw59DVMe8LO
|
|
||||||
rlrlm0qr7IkDSQQTAQoBMwIbAQULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAIZAVMU
|
|
||||||
gAAAAAAQADpwcm9vZkBhcmlhZG5lLmlkaHR0cHM6Ly90d2l0dGVyLmNvbS9hbnRv
|
|
||||||
bmxpdmFqYS9zdGF0dXMvMTc2MDczMzM2OTIzNzk1MDUyNzUUgAAAAAAQABxwcm9v
|
|
||||||
ZkBhcmlhZG5lLmlkZG5zOmFudG9ubGl2YWphLmNvbT90eXBlPVRYVDcUgAAAAAAQ
|
|
||||||
AB5wcm9vZkBhcmlhZG5lLmlkaHR0cHM6Ly9tYXN0b2Rvbi5vbmxpbmUvQGFudG9u
|
|
||||||
LxSAAAAAABAAFnByb29mQGFyaWFkbmUuaWRkbnM6bGl2YWphLm1lP3R5cGU9VFhU
|
|
||||||
FiEE9L9cgex4pd00HJHu3Et9H1Lguk0FAmYEi+AFCQeHs94ACgkQ3Et9H1Lguk3S
|
|
||||||
DBAAlvb+co0gPU0qJXOZld3UBY8stUK1VYeayWTHJ9977lnZzJ+gKUalbhsKvj5K
|
|
||||||
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
|
|
||||||
fbv5KWxmjZSWuLgbNQWxS4RKyNwed3VV4w==
|
|
||||||
=azKT
|
|
||||||
-----END PGP PUBLIC KEY BLOCK-----
|
|