86 lines
2.5 KiB
TeX
86 lines
2.5 KiB
TeX
\begin{figure}[h!]
|
|
\centering
|
|
%\footnotesize % Apply footnotesize to all text
|
|
\setmsckeyword{}
|
|
\drawframe{no} % uncomment to not draw a frame
|
|
\begin{msc}[
|
|
/msc/title top distance=0cm,
|
|
/msc/first level height=.1cm,
|
|
/msc/last level height=0.7cm, % Slightly reduced
|
|
/msc/head height=0cm,
|
|
/msc/instance width=0cm,
|
|
/msc/head top distance=0.5cm,
|
|
/msc/foot distance=-0.0cm,
|
|
/msc/instance width=0cm,
|
|
/msc/condition height=0.1cm % Reduced condition height
|
|
]{}
|
|
%%%%%%%%%%%%%%%%%% CONFIG %%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\setlength{\instwidth}{0\mscunit} % to remove default box below agents
|
|
\setlength{\instdist}{4.5cm} % default value between agents
|
|
|
|
%%%%%%%%%%%%%%%%%% AGENTS %%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\declinst{A}{ % Alice
|
|
\begin{tabular}[c]{c}
|
|
Alice \\
|
|
\end{tabular}
|
|
}{}
|
|
\declinst{B}{ % Bob
|
|
\begin{tabular}[c]{c}
|
|
Bob
|
|
\end{tabular}
|
|
}{}
|
|
|
|
\nextlevel[0.25]
|
|
|
|
|
|
\action*{
|
|
\footnotesize
|
|
\begin{tabular}{@{}l@{}}
|
|
\textsf{(pk\textsubscript{A}, sk\textsubscript{A}) = DH\_Gen()} \\
|
|
\textsf{(spk\textsubscript{A}, ssk\textsubscript{A}) = SignGen()} \\
|
|
\textsf{sig\_pk\textsubscript{A} = Sign(spk\textsubscript{A}, pk\textsubscript{A})}
|
|
\end{tabular}
|
|
}{A}
|
|
|
|
\action*{
|
|
\footnotesize
|
|
\begin{tabular}{@{}l@{}}
|
|
\textsf{(pk\textsubscript{B}, sk\textsubscript{B}) = DH\_Gen()} \\
|
|
\textsf{(spk\textsubscript{B}, ssk\textsubscript{B}) = SignGen()} \\
|
|
\textsf{sig\_pk\textsubscript{B} = Sign(spk\textsubscript{B}, pk\textsubscript{B})}
|
|
\end{tabular}
|
|
}{B}
|
|
|
|
\nextlevel[3]
|
|
|
|
\condition{{{\footnotesize out-of-band verification of \textsf{spk\textsubscript{A}, spk\textsubscript{B}}}}}{B,A}
|
|
|
|
\nextlevel[2.5]
|
|
\mess{\footnotesize\textsf{spk\textsubscript{A}, sig\_pk\textsubscript{A}, pk\textsubscript{A}}}{A}{B}
|
|
\nextlevel[1.25]
|
|
\mess{\footnotesize\textsf{spk\textsubscript{B}, sig\_pk\textsubscript{B}, pk\textsubscript{B}}}{B}{A}
|
|
|
|
\nextlevel[0.75]
|
|
|
|
\action*{
|
|
\footnotesize
|
|
\begin{tabular}{@{}l@{}}
|
|
\textsf{if CheckSign(spk\textsubscript{B}, pk\textsubscript{B}, sig\_pk\textsubscript{B})} \\
|
|
\textsf{key = DH(sk\textsubscript{A}, pk\textsubscript{B})}
|
|
\end{tabular}
|
|
}{A}
|
|
|
|
\action*{
|
|
\footnotesize
|
|
\begin{tabular}{@{}l@{}}
|
|
\textsf{if CheckSign(spk\textsubscript{A}, pk\textsubscript{A}, sig\_pk\textsubscript{A})} \\
|
|
\textsf{key = DH(sk\textsubscript{B}, pk\textsubscript{A})}
|
|
\end{tabular}
|
|
}{B}
|
|
|
|
\nextlevel[1]
|
|
|
|
\end{msc}
|
|
\end{figure}
|
|
|