diff options
Diffstat (limited to 'doc/paper/main.tex')
-rw-r--r-- | doc/paper/main.tex | 48 |
1 files changed, 47 insertions, 1 deletions
diff --git a/doc/paper/main.tex b/doc/paper/main.tex index 22809a1..6ef7dfe 100644 --- a/doc/paper/main.tex +++ b/doc/paper/main.tex @@ -285,9 +285,55 @@ This enables several other possibilities and use-cases: % Short note about possible data formats -\subsection{Multi-device support} +\section{Multi-device support} % How multi-device support for a profile is implemented using IPNS +Because a user might want to post from different devices to their profile, +multi-device-support has to be ensured. + +Two strategies come into mind: + +\begin{itemize} + \item + Sharing the private key publishing the profile with between the devices + + \item + Making the devices a user posts from agree on the blockchain that + represents the profile +\end{itemize} + +The first option, although tempting because of its simplicy, +results in several issues. +First of all, losing a private key (either by user error, disk error +or even a malicious party) would result in immediate lockout of the profile. +Secondly, organizing of multiple devices posting to the profile in the same time +while not knowing eachother is difficult. + +\begin{wrapfigure}[]{r}{0.15\textwidth} + \includegraphics[width=0.14\textwidth]{gen/blockchain_divergence.png} + \caption{A divergence on the blockchain} + \label{pic:blockchain:divergence} +\end{wrapfigure} + +The second option provides a better ground for developing functionality on. +Because divergence from the blockchain is easily achieved\footnotemark[2] +(see \ref{pic:blockchain:divergence}), +multiple "versions" of the same profile might exist at any point in time. +A third party might be able to retrieve both versions of the profile, so it must +be able to decide which one is the correct one. +If only one private key would post to one profile, that decision would result +in \emph{either} $B$ or $C$ (in \ref{pic:blockchain:divergence}) be considered +the current version, although both are valid. +Hence, if both versions can be considered, a third party might recognize the +divergence in the blockchain, but know that both versions are valid and act +accordingly (e.g. by sorting the content via timestamp for the user to inspect). + +\footnotetext[2]{ + Consider two devices, air-gapped, posting to the same profile. + A situation like node $B$ and $C$ in \ref{pic:blockchain:divergence} is the result. +} + + \subsection{Device "Authorization"} % How devices are authorized to post to a profile |