%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% I, the copyright holder of this work, release this work into the
%% public domain. This applies worldwide. In some countries this may
%% not be legally possible; if so: I grant anyone the right to use
%% this work for any purpose, without any conditions, unless such
%% conditions are required by law.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\documentclass[
  printed, %% This option enables the default options for the
           %% digital version of a document. Replace with `printed`
           %% to enable the default options for the printed version
           %% of a document.
  table,   %% Causes the coloring of tables. Replace with `notable`
           %% to restore plain tables.
  nolof,     %% Prints the List of Figures. Replace with `nolof` to
           %% hide the List of Figures.
  nolot,     %% Prints the List of Tables. Replace with `nolot` to
           %% hide the List of Tables.
           oneside, color
  %% More options are listed in the user guide at
  %% <http://mirrors.ctan.org/macros/latex/contrib/fithesis/guide/mu/fi.pdf>.
]{fithesis3}
%% The following section sets up the locales used in the thesis.
\usepackage[resetfonts]{cmap} %% We need to load the T2A font encoding
\usepackage[T1,T2A]{fontenc}  %% to use the Cyrillic fonts with Russian texts.
\usepackage[
  main=czech, %% By using `czech` or `slovak` as the main locale
                %% instead of `english`, you can typeset the thesis
                %% in either Czech or Slovak, respectively.
  german, russian, czech, slovak, english %% The additional keys allow
]{babel}        %% foreign texts to be typeset as follows:
%%
%%   \begin{otherlanguage}{german}  ... \end{otherlanguage}
%%   \begin{otherlanguage}{russian} ... \end{otherlanguage}
%%   \begin{otherlanguage}{czech}   ... \end{otherlanguage}
%%   \begin{otherlanguage}{slovak}  ... \end{otherlanguage}
%%
%% For non-Latin scripts, it may be necessary to load additional
%% fonts:
\usepackage{paratype}
\def\textrussian#1{{\usefont{T2A}{PTSerif-TLF}{m}{rm}#1}}
%%
%% The following section sets up the metadata of the thesis.
\thesissetup{
    date          = \the\year/\the\month/\the\day,
    university    = mu,
    faculty       = fi,
    type          = mgr,
    author        = Bc. Radim Lipovčan,
    gender        = m,
    advisor       = RNDr. Vlasta Šťavová,
    title         = {Používání a získávání kryptoměny Monero z pohledu použitelné bezpečnosti},
    TeXtitle      = {Používání a získávání kryptoměny Monero z pohledu použitelné bezpečnosti},
    keywords      = {Monero, usable security, cryptocurrency, mining, pool, blockchain},
    TeXkeywords   = {Monero, usable security, cryptocurrency, mining, pool, blockchain},
}
\thesislong{abstract}{
    This is the abstract of my thesis, which can

    span multiple paragraphs.
}
\thesislong{thanks}{
    This is the acknowledgement for my thesis, which can

    span multiple paragraphs.
}
%% The following section sets up the bibliography.
\usepackage{csquotes}
\usepackage[              %% When typesetting the bibliography, the
  backend=biber,          %% `numeric` style will be used for the
  style=numeric,          %% entries and the `numeric-comp` style
  citestyle=numeric-comp, %% for the references to the entries. The
  sorting=none,           %% entries will be sorted in cite order.
  sortlocale=auto         %% For more unformation about the available
]{biblatex}               %% `style`s and `citestyles`, see:
%% <http://mirrors.ctan.org/macros/latex/contrib/biblatex/doc/biblatex.pdf>.
\addbibresource{Thesis.bib} %% The bibliograpic database within
                          %% the file `example.bib` will be used.
\usepackage{makeidx}      %% The `makeidx` package contains
\makeindex                %% helper commands for index typesetting.
%% These additional packages are used within the document:
\usepackage{paralist}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}
\usepackage{url}
\usepackage{menukeys}

%packages
\usepackage{float} 
\usepackage{hyperref}
\usepackage[strings]{underscore}

%timeline
\usepackage{xcolor}
\newcommand\ytl[2]{
\parbox[b]{8em}{\hfill{\color{cyan}\bfseries\sffamily #1}~$\cdots\cdots$~}\makebox[0pt][c]{$\bullet$}\vrule\quad \parbox[c]{.7\linewidth}{\vspace{7pt}\color{red!40!black!80}\raggedright\sffamily #2.\\[7pt]}\\[-3pt]}

\begin{document}

\chapter{Úvod}
\chapter{Kryptoměna Monero}
Monero je opensource kryptoměnou, která je vyvíjená v rámci Monero projektu za účelem vytvoření decentralizované a anonymní měny. Hlavním cílem je dát uživateli plnou kontrolu nad předstředky, kterými disponuje. Znamná to tedy, že jednotlivé digitální transakce a počet peněz v pěněžence nelze dohledat bez vygenerování pohledu uživatelem \cite{moneroprojectgithub}.
\section{Původ a zaměření kryptoměny}
Cesta vzniku samotného Monera je složená z několika forků a předcházejících projektů. Prvním z nich byl Bytecoin jakožto proof-of-concept kryptoměna používající jako první protokol CryptoNote, který byl publikován na začátku roku 2014 \cite{githubbytecoin}.
% CryptoNote implementace ByteCoin -> https://github.com/monero-project/monero/commit/296ae46ed8f8f6e5f986f978febad302e3df231a

Bytecoin měl ovšem problém s tzv. preminem, tedy stavem, kdy kryptoměna publikovaná na veřejnost má již velkou část peněz předem vytěženou. Zde se jednalo o vytěžení 82\% mincí před zveřejněním této měny \cite{fluffyponyonbytecoin}.
% Duvod forku https://coinmetrics.io/papers/dissertation.pdf premine xx procent
Toto byl důvod pro komunitu okolo anonymních kryptoměn, aby udělali hardfork a tím vytvořili kryptoměnu novou, BitMonero \cite{bitmonero}.
% Fork Bytecoin -> BitMonero https://github.com/monero-project/monero/commit/1a8f5ce89a990e54ec757affff01f27d449640bc

Důležitou změnou bylo oddělení hlavní části vývojářů a vytvoření samostatného forku s názvem Monero dne 23.06.2014 . Tím vznikla kryptoměna, která měla od počátku veřejně známý blockchain, jasně definovaný cíl a motivovaný tým vývojářů \cite{monerofork}.
% Fork BitMonero -> Monero https://github.com/monero-project/monero/commit/003b1f909d416ab2c869b76176380c5f133bdad4#diff-c47c7c7383225ab55ff591cb59c41e6b

\subsection{Současný vývoj}
Vývoj Monera je postaven na vydáních, která jsou plánovány na každých 6 měsíců. Přitom na rozdíl od jiných kryptoměn jde o pravidelné aktualizace, které vývojáři nechtějí spojovat s termínem hardfork.
% Monero attack https://lab.getmonero.org/pubs/MRL-0002.pdf
Hlavními důvody pro tento způsob vývojového cyklu jsou:
\begin{itemize}\itemsep0em
\item Komunita očekává pravidelné aktualizace.
\item Možnost upravovat mining algoritmus pro ASIC-resistance.
\item Prostor pro pravidelná vylepšení.
\end{itemize}
Celkově došlo prozatím k 20 jednotlivých vydání Monera, přičemž 
 \begin{table}

\centering
\begin{minipage}[t]{\linewidth}
\color{gray}
\rule{\linewidth}{1pt}
\ytl{03.03.2014}{ByteCoin - publikování na GitHub}
\ytl{17.04.2014}{Fork ByteCoinu - vznik BitMonero kryptoměny}
\ytl{23.07.2014}{Fork BitMonera - vznik Monero kryptoměny}
\ytl{22.03.2016}{Monero v2 - úprava ringsize, čas bloku 120 sekund}
\ytl{21.09.2016}{Monero v3 - rozdělení transakce na více částek}
\ytl{05.01.2017}{Monero v4 - souběh normálních a RingCT transakcí}
\ytl{15.04.2017}{Monero v5 - aktualizace velikosti bloku a algoritmu pro poplatky}
\ytl{16.09.2017}{Monero v6 - vynucení RingCT transakcí s ringsize =>5}
\ytl{06.04.2018}{Monero v7 - změna CryptoNight algoritmu kvůli ASIC, ringsize =>7}
\ytl{--.10.2018}{Příští aktualizace sítě}
\bigskip
\rule{\linewidth}{1pt}%
\end{minipage}%
\color{black}\caption{Vývoj Monera}
\end{table}
\subsection{Alternativy}
\begin{figure}[H]
\center
\begin{tabular}{p{0.2\linewidth}p{0.2\linewidth}p{0.15\linewidth}p{0.15\linewidth}p{0.2\linewidth}p{0.1\linewidth}p{0.1\linewidth}}
Název        & Protokol                & Block Time {[}s{]} & Stealth Address          & Anonymní transakce & Podpis trans.  & Multisig \\
Aeon         & CryptoNote-Light        & 240                & Ano                      & Ano                & Ring Signature & Ano      \\
ByteCoin     & CryptoNote              & 120                & Ano                      & Ano                & Ring Signature & Ano      \\
DASH         & X11                     & 150                & Ne                       & Ne zcela           & Ano            & Ano      \\
Monero (XMR) & CryptoNote              & 120                & Ano                      & Ano                & RingCT         & Ano      \\
PIVX         & Zerocoin                & 60                 & Ne přímo                 & Ano                & x              & Ano      \\
Verge (XVG)  & Scrypt                  & 150                & Ano                      & Ne, TOR\&I2P       & RingCT WIP     & Ano      \\
Zcash (ZEC)  & Zerocash                & 150                & Vlastní shielded address & Ano s zk-SNARKS    & x              & Ano      \\
Zcoin (XZC)  & Lyra2 =\textgreater MTP & 600                & Ano                      & Ano, mint\&spend   & Ring Signature & Ano     
         
\end{tabular}
\caption{Přehled alternativ Monera}
%dash https://bitcointalk.org/index.php?topic=1562109.0
%ďash https://docs.dash.org/en/latest/introduction/information.html
%pivx https://github.com/PIVX-Project/PIVX
%pivx https://www.reddit.com/r/pivx/comments/7gjjyw/what_are_the_benefits_of_multisig_addresses/
%zcoin https://github.com/zcoinofficial/zcoin/wiki/Information-for-exchanges
%zcoin https://zcoin.io/zcoins-privacy-technology-compares-competition/
\label{monero-alternatives}
\end{figure}
\section{Blockchain technologie}
\subsection{Block}
\subsection{Návaznost a provázanost bloků}
\section{CryptoNote protokol}
\subsection{Verzování a aktualizace}
\subsection{Proof-of-Work}
\section{Prvky sítě}
\subsection{Peněženky}
\subsection{Nodes}
\subsection{Miners}
\subsection{Pools}
\section{Adresování v síti}
\subsection{Typy adres}
\subsection{Transakční adresa}
\subsection{View klíč}
\section{Transakce}
\subsection{Struktura}
\subsection{Vstupy, výstupy, mixing}
\subsection{Průběh transakce}
\subsection{Sledování transakcí na síti}
\subsection{Kovri}

\chapter{Používání monera}
\section{Pěněženky}
\subsection{Hot wallet}
\subsection{Cold wallet}
\subsection{View only wallet}
\subsection{Možnosti útoků na peněženku}
\subsection{Přehled bezpečnosti úložných způsobů}
\section{Software pro práci s kryptopenězi}
\subsection{Vytvoření peněženky}
\subsection{Fullnode, remote node}
\subsection{Multisig}
\subsection{Srovnání wallet softwaru}
\subsection{Exchanges}
\section{Scamy v prostředí kryptoměny}
\subsection{Online portály}
\subsection{Mining pooly}
\subsection{Cílený malware}
\subsection{Delivery chain}

\section{Monero usecase}
\subsection{Darknet Markety}
\subsection{Monero Markety}
\subsection{Úskalí tradingu anonymní měny}
\subsection{Srovnání s ostatními kryptoměnami}

\section{Anonymita při užívání}

\chapter{Výzkum uživatelů kryptoměny}
\section{Definice, výzkumné otázky}
\section{Na jakém vzorku}
\section{Vyhodnocení international, CZ}

\chapter{Best practices pro usage a storage Monera}
\section{Návrh bezpečného úložného systému}
\section{Návrh pro používání kryptoměny}
\section{Portál nabízející služby pro bezpečné používání kryptoměny}



\chapter{Získávání Monera a zajištění chodu sítě}
\section{PoW Monera}
\section{Mining pooly, solo mining}
\section{Web mining, botnet mining}
% Web mining: https://arxiv.org/pdf/1806.01994.pdf
\section{Cloud mining}
\section{Systémy pro těžbu - ASIC, dodávané}
\section{Software používaný k těžbě}
\section{Srovnání způsobů pro získávání kryptoměny}

\chapter{Průzkum způsobů těžby}
\section{Definice, výzkumné otázky}
\section{Na jakém vzorku}
\section{Vyhodnocení international, CZ}



\chapter{Průzkum operátorů sítě}
\section{Definice, výzkumné otázky}
\section{Na jakém vzorku}
\section{Vyhodnocení international, CZ}

 
\chapter{Mining malware}
\section{Prevence, detekce a recovery}
\subsection{Server část}
\subsection{Běžní uživatelé}


\chapter{Návrh bezpečného těžebního systému}
\section{Linux-based řešení}
Ansible, Centos 7
\section{Windows-based řešení}
Windows 10 ISO unattended install, Powershell scripty, stažení a instalace Stak XMR

\chapter{Plán}

\begin{figure}[H]
\center
\begin{tabular}{ll}
Měsíc     & Task                                              \\
1.7.2018  & Kryptoměna Monero; Používání Monera               \\
1.8.2018  & Návrh výzkumu uživatelů;Průzkumu těžby;Operátorů  \\
1.9.2018  & Sběr dat; Získávání Monera a zajištění chodu sítě \\
1.10.2018 & Vyhodnocení dat                                   \\
1.11.2018 & Best practices pro usage a storage                \\
1.12.2018 & Mining malware; Vytvoření těžebního systému       \\
1.1.2019  & Cryptocore.cz jako výstup poznatků                \\
1.2.2019  & Rezerva                                           \\
1.3.2019  & Měsíc na odladění                                 \\
1.4.2019  & Finální verze + tisk                             
\end{tabular}
\caption{Plán práce na diplomce}
\label{ssme-thesis-plan}
\end{figure}



\printbibliography[heading=bibintoc]

%\appendix %% Start the appendices.
%\chapter{Příloha}
%Monero
\end{document}
