mirror of
https://github.com/hanzoai/papers.git
synced 2026-10-29 07:34:31 +00:00
Fix shared/ include paths to ../shared/ for 55 subdirectory papers so
that hanzocover.sty and lstlang.tex resolve when building from each
paper's own directory (the build pattern used by latexmk per paper).
Build fixes:
- hanzo-operative/sections/03-screen-understanding-pipeline.tex: move
\COMMENT from after \FOR{...} onto the \STATE line so the algorithmic
env doesn't mis-parse.
- hanzo-network-architecture (abstract + sections 04, 12, 13): escape
unicode mu (U+03BC) as $\mu$ for pdflatex.
- ntt-transform/sections/08-benchmark-results.tex: same mu escape.
All 55 Tier-2/3 papers now build clean with latexmk -pdf.
109 lines
3.5 KiB
TeX
109 lines
3.5 KiB
TeX
% HIP-0302: Hanzo Replicate — Encrypted SQLite Durability for Base Services
|
|
\documentclass[11pt]{article}
|
|
\usepackage{../shared/hanzocover}
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage{amsmath,amssymb}
|
|
\usepackage{graphicx}
|
|
\usepackage{booktabs}
|
|
\usepackage{hyperref}
|
|
\usepackage{enumitem}
|
|
\usepackage{xcolor}
|
|
\usepackage{float}
|
|
\usepackage{multirow}
|
|
\usepackage{listings}
|
|
\input{../shared/lstlang}
|
|
\usepackage{tikz}
|
|
\usetikzlibrary{shapes,arrows,positioning,fit}
|
|
|
|
\hypersetup{colorlinks=true,linkcolor=black,citecolor=blue,urlcolor=blue}
|
|
|
|
\definecolor{codegreen}{rgb}{0,0.6,0}
|
|
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
|
|
\definecolor{codepurple}{rgb}{0.58,0,0.82}
|
|
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
|
|
|
|
\lstdefinestyle{mystyle}{
|
|
backgroundcolor=\color{backcolour},
|
|
commentstyle=\color{codegreen},
|
|
keywordstyle=\color{codepurple},
|
|
numberstyle=\tiny\color{codegray},
|
|
stringstyle=\color{codegreen},
|
|
basicstyle=\ttfamily\footnotesize,
|
|
breakatwhitespace=false,
|
|
breaklines=true,
|
|
captionpos=b,
|
|
keepspaces=true,
|
|
numbers=left,
|
|
numbersep=5pt,
|
|
showspaces=false,
|
|
showstringspaces=false,
|
|
showtabs=false,
|
|
tabsize=2
|
|
}
|
|
\lstset{style=mystyle}
|
|
|
|
\title{HIP-0302: Hanzo Replicate\\[0.3em]
|
|
{\large Encrypted SQLite Durability\\for Base Services}}
|
|
\author{
|
|
Zach Kelling \\
|
|
\textit{Hanzo Industries Inc (Techstars '17)} \\
|
|
\texttt{[email protected]}
|
|
}
|
|
\date{April 2026}
|
|
|
|
\begin{document}
|
|
|
|
\hanzocoverpage
|
|
|
|
% ============================================================================
|
|
% METADATA
|
|
% ============================================================================
|
|
\noindent
|
|
\begin{tabular}{@{}ll}
|
|
\textbf{HIP} & 0302 \\
|
|
\textbf{Title} & Hanzo Replicate --- Encrypted SQLite Durability for Base Services \\
|
|
\textbf{Author} & Zach Kelling (\texttt{[email protected]}) \\
|
|
\textbf{Type} & Standards Track \\
|
|
\textbf{Category} & Infrastructure \\
|
|
\textbf{Status} & Draft \\
|
|
\textbf{Created} & 2026-04-09 \\
|
|
\textbf{Requires} & HIP-0027 (KMS), HIP-0032 (Object Storage), HIP-0065 (Backup \& DR) \\
|
|
\end{tabular}
|
|
|
|
\vspace{1em}
|
|
|
|
% ============================================================================
|
|
% ABSTRACT
|
|
% ============================================================================
|
|
\begin{abstract}
|
|
This proposal specifies how all Hanzo Base-powered services achieve durable
|
|
state persistence through continuous encrypted WAL replication to
|
|
S3-compatible storage. The system comprises two packages:
|
|
\texttt{hanzoai/replicate} (a rebranded Litestream with age encryption
|
|
support) and \texttt{hanzoai/age} (X25519/Curve25519 file encryption). Every
|
|
Base service---IAM, KMS, ATS, BD, TA, Tasks, and all future
|
|
services---deploys \texttt{replicate} as a Kubernetes sidecar that
|
|
continuously streams encrypted WAL frames to \texttt{hanzoai/s3}. The result
|
|
is sub-second RPO, seconds-scale RTO, and zero dependence on centralized
|
|
databases or persistent volume durability.
|
|
\end{abstract}
|
|
|
|
% ============================================================================
|
|
% 1. MOTIVATION
|
|
% ============================================================================
|
|
|
|
\input{sections/01-motivation}
|
|
\input{sections/02-background}
|
|
\input{sections/03-specification}
|
|
\input{sections/04-configuration}
|
|
\input{sections/05-key-management}
|
|
\input{sections/06-deployment}
|
|
\input{sections/07-affected-services}
|
|
\input{sections/08-security-analysis}
|
|
\input{sections/09-migration}
|
|
\input{sections/10-operational-concerns}
|
|
\input{sections/11-post-quantum-security}
|
|
\input{sections/99-references}
|
|
|
|
\end{document}
|