\documentclass{sig-alternate} \usepackage{tikz} \usetikzlibrary{arrows} \usetikzlibrary{trees} \usetikzlibrary{positioning} \usepackage{array} \usepackage{amstext} \usepackage{mathtools} \DeclarePairedDelimiter{\ceil}{\lceil}{\rceil} \begin{document} \title{IPNS - Immutable and Mutable Names for IPFS (DRAFT 1)} \subtitle{} \numberofauthors{1} \author{ \alignauthor Juan Benet\\ \email{juan@benet.ai} } \maketitle \begin{abstract} The InterPlanetary File System (IPFS) is a peer-to-peer distributed file system capable of sharing the same files with millions of nodes. IPFS objects are addressed by their cryptographic hash. Objects can include links to others, forming a Content Addressed DAG, with the same merkle-tree properties of systems like Git. IPFS paths are fundamentally immutable; changes propagate up the hierarchy generating new names for the new content. These properties are very useful for certain applications. However, many applications require mutable objects. This paper presents IPNS, a complement to IPFS that introduces mutable names using an SFS-inspired scheme. \end{abstract} \section{Introduction} [Motivate IPNS. Talk about app needs for mutable objects. Talk about mutable/immutable dichotomy. talk about links in IPFS.] [Cite: SFS, Plan9] \section{Mutable Names} \subsection{Mutable Objects} Illusion of mutable object by updating pointer. \subsection{Self-Certifying Paths} \subsection{Version Control, Commit Chain} \section{Mutable + Immutable Dichotomy} \subsection{benefits of both} \subsection{Need for distinction} \subsection{Distinguishing M/I Paths} %\bibliographystyle{abbrv} %\bibliography{gfs} %\balancecolumns %\subsection{References} \end{document}