\hypertarget{gen__eddsa_8h}{}\section{src/curve25519/ed25519/additions/generalized/gen\+\_\+eddsa.h File Reference}
\label{gen__eddsa_8h}\index{src/curve25519/ed25519/additions/generalized/gen\+\_\+eddsa.\+h@{src/curve25519/ed25519/additions/generalized/gen\+\_\+eddsa.\+h}}
{\ttfamily \#include \char`\"{}ge.\+h\char`\"{}}\newline
Include dependency graph for gen\+\_\+eddsa.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=203pt]{gen__eddsa_8h__incl}
\end{center}
\end{figure}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \hyperlink{gen__eddsa_8h_ae1f32ae00312622c5aafd1f81069f2ab}{generalized\+\_\+commit} (unsigned char $\ast$R\+\_\+bytes, unsigned char $\ast$r\+\_\+scalar, const unsigned char $\ast$labelset, const unsigned long labelset\+\_\+len, const unsigned char $\ast$extra, const unsigned long extra\+\_\+len, const unsigned char $\ast$K\+\_\+bytes, const unsigned char $\ast$k\+\_\+scalar, const unsigned char $\ast$Z, unsigned char $\ast$M\+\_\+buf, const unsigned long M\+\_\+start, const unsigned long M\+\_\+len)
\item 
int \hyperlink{gen__eddsa_8h_aca74c004e959ffcc980e010a76ffc163}{generalized\+\_\+challenge} (unsigned char $\ast$h\+\_\+scalar, const unsigned char $\ast$labelset, const unsigned long labelset\+\_\+len, const unsigned char $\ast$extra, const unsigned long extra\+\_\+len, const unsigned char $\ast$R\+\_\+bytes, const unsigned char $\ast$K\+\_\+bytes, unsigned char $\ast$M\+\_\+buf, const unsigned long M\+\_\+start, const unsigned long M\+\_\+len)
\item 
int \hyperlink{gen__eddsa_8h_a61235a80f4501e575a145fd1d9c71a23}{generalized\+\_\+prove} (unsigned char $\ast$out\+\_\+scalar, const unsigned char $\ast$r\+\_\+scalar, const unsigned char $\ast$k\+\_\+scalar, const unsigned char $\ast$h\+\_\+scalar)
\item 
int \hyperlink{gen__eddsa_8h_a1c58ec8e1d671565297c31c042719057}{generalized\+\_\+solve\+\_\+commitment} (unsigned char $\ast$R\+\_\+bytes\+\_\+out, \hyperlink{structge__p3}{ge\+\_\+p3} $\ast$K\+\_\+point\+\_\+out, const \hyperlink{structge__p3}{ge\+\_\+p3} $\ast$B\+\_\+point, const unsigned char $\ast$s\+\_\+scalar, const unsigned char $\ast$K\+\_\+bytes, const unsigned char $\ast$h\+\_\+scalar)
\item 
int \hyperlink{gen__eddsa_8h_a04d251227d684b0ccac08a4819aa69ea}{generalized\+\_\+eddsa\+\_\+25519\+\_\+sign} (unsigned char $\ast$signature\+\_\+out, const unsigned char $\ast$eddsa\+\_\+25519\+\_\+pubkey\+\_\+bytes, const unsigned char $\ast$eddsa\+\_\+25519\+\_\+privkey\+\_\+scalar, const unsigned char $\ast$msg, const unsigned long msg\+\_\+len, const unsigned char $\ast$random, const unsigned char $\ast$customization\+\_\+label, const unsigned long customization\+\_\+label\+\_\+len)
\item 
int \hyperlink{gen__eddsa_8h_ab94e628c3c308f4e5338194cd8340d25}{generalized\+\_\+eddsa\+\_\+25519\+\_\+verify} (const unsigned char $\ast$signature, const unsigned char $\ast$eddsa\+\_\+25519\+\_\+pubkey, const unsigned char $\ast$msg, const unsigned long msg\+\_\+len, const unsigned char $\ast$customization\+\_\+label, const unsigned long customization\+\_\+label\+\_\+len)
\end{DoxyCompactItemize}


\subsection{Function Documentation}
\mbox{\Hypertarget{gen__eddsa_8h_aca74c004e959ffcc980e010a76ffc163}\label{gen__eddsa_8h_aca74c004e959ffcc980e010a76ffc163}} 
\index{gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}!generalized\+\_\+challenge@{generalized\+\_\+challenge}}
\index{generalized\+\_\+challenge@{generalized\+\_\+challenge}!gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}}
\subsubsection{\texorpdfstring{generalized\+\_\+challenge()}{generalized\_challenge()}}
{\footnotesize\ttfamily int generalized\+\_\+challenge (\begin{DoxyParamCaption}\item[{unsigned char $\ast$}]{h\+\_\+scalar,  }\item[{const unsigned char $\ast$}]{labelset,  }\item[{const unsigned long}]{labelset\+\_\+len,  }\item[{const unsigned char $\ast$}]{extra,  }\item[{const unsigned long}]{extra\+\_\+len,  }\item[{const unsigned char $\ast$}]{R\+\_\+bytes,  }\item[{const unsigned char $\ast$}]{K\+\_\+bytes,  }\item[{unsigned char $\ast$}]{M\+\_\+buf,  }\item[{const unsigned long}]{M\+\_\+start,  }\item[{const unsigned long}]{M\+\_\+len }\end{DoxyParamCaption})}

\mbox{\Hypertarget{gen__eddsa_8h_ae1f32ae00312622c5aafd1f81069f2ab}\label{gen__eddsa_8h_ae1f32ae00312622c5aafd1f81069f2ab}} 
\index{gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}!generalized\+\_\+commit@{generalized\+\_\+commit}}
\index{generalized\+\_\+commit@{generalized\+\_\+commit}!gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}}
\subsubsection{\texorpdfstring{generalized\+\_\+commit()}{generalized\_commit()}}
{\footnotesize\ttfamily int generalized\+\_\+commit (\begin{DoxyParamCaption}\item[{unsigned char $\ast$}]{R\+\_\+bytes,  }\item[{unsigned char $\ast$}]{r\+\_\+scalar,  }\item[{const unsigned char $\ast$}]{labelset,  }\item[{const unsigned long}]{labelset\+\_\+len,  }\item[{const unsigned char $\ast$}]{extra,  }\item[{const unsigned long}]{extra\+\_\+len,  }\item[{const unsigned char $\ast$}]{K\+\_\+bytes,  }\item[{const unsigned char $\ast$}]{k\+\_\+scalar,  }\item[{const unsigned char $\ast$}]{Z,  }\item[{unsigned char $\ast$}]{M\+\_\+buf,  }\item[{const unsigned long}]{M\+\_\+start,  }\item[{const unsigned long}]{M\+\_\+len }\end{DoxyParamCaption})}

\mbox{\Hypertarget{gen__eddsa_8h_a04d251227d684b0ccac08a4819aa69ea}\label{gen__eddsa_8h_a04d251227d684b0ccac08a4819aa69ea}} 
\index{gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}!generalized\+\_\+eddsa\+\_\+25519\+\_\+sign@{generalized\+\_\+eddsa\+\_\+25519\+\_\+sign}}
\index{generalized\+\_\+eddsa\+\_\+25519\+\_\+sign@{generalized\+\_\+eddsa\+\_\+25519\+\_\+sign}!gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}}
\subsubsection{\texorpdfstring{generalized\+\_\+eddsa\+\_\+25519\+\_\+sign()}{generalized\_eddsa\_25519\_sign()}}
{\footnotesize\ttfamily int generalized\+\_\+eddsa\+\_\+25519\+\_\+sign (\begin{DoxyParamCaption}\item[{unsigned char $\ast$}]{signature\+\_\+out,  }\item[{const unsigned char $\ast$}]{eddsa\+\_\+25519\+\_\+pubkey\+\_\+bytes,  }\item[{const unsigned char $\ast$}]{eddsa\+\_\+25519\+\_\+privkey\+\_\+scalar,  }\item[{const unsigned char $\ast$}]{msg,  }\item[{const unsigned long}]{msg\+\_\+len,  }\item[{const unsigned char $\ast$}]{random,  }\item[{const unsigned char $\ast$}]{customization\+\_\+label,  }\item[{const unsigned long}]{customization\+\_\+label\+\_\+len }\end{DoxyParamCaption})}

\mbox{\Hypertarget{gen__eddsa_8h_ab94e628c3c308f4e5338194cd8340d25}\label{gen__eddsa_8h_ab94e628c3c308f4e5338194cd8340d25}} 
\index{gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}!generalized\+\_\+eddsa\+\_\+25519\+\_\+verify@{generalized\+\_\+eddsa\+\_\+25519\+\_\+verify}}
\index{generalized\+\_\+eddsa\+\_\+25519\+\_\+verify@{generalized\+\_\+eddsa\+\_\+25519\+\_\+verify}!gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}}
\subsubsection{\texorpdfstring{generalized\+\_\+eddsa\+\_\+25519\+\_\+verify()}{generalized\_eddsa\_25519\_verify()}}
{\footnotesize\ttfamily int generalized\+\_\+eddsa\+\_\+25519\+\_\+verify (\begin{DoxyParamCaption}\item[{const unsigned char $\ast$}]{signature,  }\item[{const unsigned char $\ast$}]{eddsa\+\_\+25519\+\_\+pubkey,  }\item[{const unsigned char $\ast$}]{msg,  }\item[{const unsigned long}]{msg\+\_\+len,  }\item[{const unsigned char $\ast$}]{customization\+\_\+label,  }\item[{const unsigned long}]{customization\+\_\+label\+\_\+len }\end{DoxyParamCaption})}

\mbox{\Hypertarget{gen__eddsa_8h_a61235a80f4501e575a145fd1d9c71a23}\label{gen__eddsa_8h_a61235a80f4501e575a145fd1d9c71a23}} 
\index{gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}!generalized\+\_\+prove@{generalized\+\_\+prove}}
\index{generalized\+\_\+prove@{generalized\+\_\+prove}!gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}}
\subsubsection{\texorpdfstring{generalized\+\_\+prove()}{generalized\_prove()}}
{\footnotesize\ttfamily int generalized\+\_\+prove (\begin{DoxyParamCaption}\item[{unsigned char $\ast$}]{out\+\_\+scalar,  }\item[{const unsigned char $\ast$}]{r\+\_\+scalar,  }\item[{const unsigned char $\ast$}]{k\+\_\+scalar,  }\item[{const unsigned char $\ast$}]{h\+\_\+scalar }\end{DoxyParamCaption})}

\mbox{\Hypertarget{gen__eddsa_8h_a1c58ec8e1d671565297c31c042719057}\label{gen__eddsa_8h_a1c58ec8e1d671565297c31c042719057}} 
\index{gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}!generalized\+\_\+solve\+\_\+commitment@{generalized\+\_\+solve\+\_\+commitment}}
\index{generalized\+\_\+solve\+\_\+commitment@{generalized\+\_\+solve\+\_\+commitment}!gen\+\_\+eddsa.\+h@{gen\+\_\+eddsa.\+h}}
\subsubsection{\texorpdfstring{generalized\+\_\+solve\+\_\+commitment()}{generalized\_solve\_commitment()}}
{\footnotesize\ttfamily int generalized\+\_\+solve\+\_\+commitment (\begin{DoxyParamCaption}\item[{unsigned char $\ast$}]{R\+\_\+bytes\+\_\+out,  }\item[{\hyperlink{structge__p3}{ge\+\_\+p3} $\ast$}]{K\+\_\+point\+\_\+out,  }\item[{const \hyperlink{structge__p3}{ge\+\_\+p3} $\ast$}]{B\+\_\+point,  }\item[{const unsigned char $\ast$}]{s\+\_\+scalar,  }\item[{const unsigned char $\ast$}]{K\+\_\+bytes,  }\item[{const unsigned char $\ast$}]{h\+\_\+scalar }\end{DoxyParamCaption})}

