Documentation
This commit is contained in:
69
docs/project2.tex
Normal file
69
docs/project2.tex
Normal file
@@ -0,0 +1,69 @@
|
||||
\documentclass{bfh}
|
||||
|
||||
\title{Project 2}
|
||||
\subtitle{Bitmessage -- Communication Without Metadata}
|
||||
\author{Christian Basler}
|
||||
\date{\today}
|
||||
|
||||
\begin{document}
|
||||
\maketitle
|
||||
|
||||
\begin{figure}[h]
|
||||
\includegraphics[width=0.2\textwidth]{logo.png}
|
||||
\centering
|
||||
\end{figure}
|
||||
|
||||
\tableofcontents
|
||||
|
||||
\section{Synopsis}
|
||||
|
||||
|
||||
|
||||
% Section basics
|
||||
\input{basics}
|
||||
|
||||
The protocol is described in detail in my Seminar paper.
|
||||
|
||||
|
||||
\section{Goal}
|
||||
|
||||
At the moment, there aren't many implementations apart from the official clients. Especially two things are missing: a multi purpose Java library and a usable mobile client. My goal for my \textit{Project 2} is to create the library, to be used next semester as a starting point for an Android\textsuperscript{\texttrademark} client in my Bachelor Thesis.
|
||||
|
||||
|
||||
\section{Issues}
|
||||
|
||||
\subsection{Proof of Work}
|
||||
|
||||
Proof of work is needed for a message to be distributed within the Bitmessage network. This is to protect both the network itself from denial of service attacks and the users from spam.
|
||||
|
||||
|
||||
\section{Architecture}
|
||||
|
||||
\subsection{Ports and Adapters}
|
||||
|
||||
The library uses a ports and adapters architecture, which allows us to easily replace some implementations that might be platform dependent, such as storage or proof of work calculation.
|
||||
|
||||
\includegraphics[width=\textwidth]{images/ports_and_adapters.pdf}
|
||||
|
||||
The big advantage of this approach is that it's easy to test the core as well as each adapter by itself.
|
||||
|
||||
|
||||
\subsection{Network Management}
|
||||
|
||||
|
||||
\section{Discussion}
|
||||
|
||||
|
||||
\appendix
|
||||
\addcontentsline{toc}{section}{Appendix}
|
||||
\section*{Appendix}
|
||||
\renewcommand{\thesubsection}{\Alph{subsection}}
|
||||
|
||||
|
||||
\subsection{JavaDoc Documentation}
|
||||
|
||||
|
||||
\subsection{Literature}
|
||||
|
||||
|
||||
\end{document}
|
||||
Reference in New Issue
Block a user