\hypertarget{dhies_8h}{ \section{include/beecrypt/dhies.h File Reference} \label{dhies_8h}\index{include/beecrypt/dhies.h@{include/beecrypt/dhies.h}} } DHIES (formerly known as DHAES or DHES) encryption scheme. {\ttfamily \#include \char`\"{}beecrypt/beecrypt.h\char`\"{}}\par {\ttfamily \#include \char`\"{}beecrypt/dldp.h\char`\"{}}\par Include dependency graph for dhies.h: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=282pt]{dhies_8h__incl} \end{center} \end{figure} \subsection*{Data Structures} \begin{DoxyCompactItemize} \item struct \hyperlink{structdhies__pParameters}{dhies\_\-pParameters} \item struct \hyperlink{structdhies__pContext}{dhies\_\-pContext} \end{DoxyCompactItemize} \subsection*{Functions} \begin{DoxyCompactItemize} \item int \hyperlink{dhies_8h_a28cc2c3cfccc99fee986772f189a4aaf}{dhies\_\-pUsable} (const \hyperlink{structdhies__pParameters}{dhies\_\-pParameters} $\ast$) \item int \hyperlink{dhies_8h_a80c7fc4283f3f3c9d9315deec3a6e3af}{dhies\_\-pContextInit} (\hyperlink{structdhies__pContext}{dhies\_\-pContext} $\ast$, const \hyperlink{structdhies__pParameters}{dhies\_\-pParameters} $\ast$) \item int \hyperlink{dhies_8h_a67d0f4f538fc04834ee5ed36b699d2df}{dhies\_\-pContextInitDecrypt} (\hyperlink{structdhies__pContext}{dhies\_\-pContext} $\ast$, const \hyperlink{structdhies__pParameters}{dhies\_\-pParameters} $\ast$, const \hyperlink{structmpnumber}{mpnumber} $\ast$) \item int \hyperlink{dhies_8h_a897bef73ab35ca2aa56e1b168fdadded}{dhies\_\-pContextInitEncrypt} (\hyperlink{structdhies__pContext}{dhies\_\-pContext} $\ast$, const \hyperlink{structdhies__pParameters}{dhies\_\-pParameters} $\ast$, const \hyperlink{structmpnumber}{mpnumber} $\ast$) \item int \hyperlink{dhies_8h_a812329806f62ee9c8d1ae3a4d77a62cd}{dhies\_\-pContextFree} (\hyperlink{structdhies__pContext}{dhies\_\-pContext} $\ast$) \item \hyperlink{structmemchunk}{memchunk} $\ast$ \hyperlink{dhies_8h_ae4c99c0674cffed68b9ae304a60f3e36}{dhies\_\-pContextEncrypt} (\hyperlink{structdhies__pContext}{dhies\_\-pContext} $\ast$, \hyperlink{structmpnumber}{mpnumber} $\ast$, \hyperlink{structmpnumber}{mpnumber} $\ast$, const \hyperlink{structmemchunk}{memchunk} $\ast$, \hyperlink{structrandomGeneratorContext}{randomGeneratorContext} $\ast$) \item \hyperlink{structmemchunk}{memchunk} $\ast$ \hyperlink{dhies_8h_a7c56de01d62afa426ed65216e52e4f95}{dhies\_\-pContextDecrypt} (\hyperlink{structdhies__pContext}{dhies\_\-pContext} $\ast$, const \hyperlink{structmpnumber}{mpnumber} $\ast$, const \hyperlink{structmpnumber}{mpnumber} $\ast$, const \hyperlink{structmemchunk}{memchunk} $\ast$) \end{DoxyCompactItemize} \subsection{Detailed Description} DHIES (formerly known as DHAES or DHES) encryption scheme. This code implements the encryption scheme from the paper: \char`\"{}DHIES: An Encryption Scheme Based on the Diffie-\/Hellman Problem\char`\"{} Michel Abdalla, Mihir Bellare, Phillip Rogaway September 18, 2001 \begin{DoxyAuthor}{Author} Bob Deblier $<$\href{mailto:bob.deblier@telenet.be}{\tt bob.deblier@telenet.be}$>$ \end{DoxyAuthor} \subsection{Function Documentation} \hypertarget{dhies_8h_a7c56de01d62afa426ed65216e52e4f95}{ \index{dhies.h@{dhies.h}!dhies\_\-pContextDecrypt@{dhies\_\-pContextDecrypt}} \index{dhies\_\-pContextDecrypt@{dhies\_\-pContextDecrypt}!dhies.h@{dhies.h}} \subsubsection[{dhies\_\-pContextDecrypt}]{\setlength{\rightskip}{0pt plus 5cm}{\bf memchunk}$\ast$ dhies\_\-pContextDecrypt ( \begin{DoxyParamCaption} \item[{{\bf dhies\_\-pContext} $\ast$}]{, } \item[{const {\bf mpnumber} $\ast$}]{, } \item[{const {\bf mpnumber} $\ast$}]{, } \item[{const {\bf memchunk} $\ast$}]{} \end{DoxyParamCaption} )}} \label{dhies_8h_a7c56de01d62afa426ed65216e52e4f95} \hypertarget{dhies_8h_ae4c99c0674cffed68b9ae304a60f3e36}{ \index{dhies.h@{dhies.h}!dhies\_\-pContextEncrypt@{dhies\_\-pContextEncrypt}} \index{dhies\_\-pContextEncrypt@{dhies\_\-pContextEncrypt}!dhies.h@{dhies.h}} \subsubsection[{dhies\_\-pContextEncrypt}]{\setlength{\rightskip}{0pt plus 5cm}{\bf memchunk}$\ast$ dhies\_\-pContextEncrypt ( \begin{DoxyParamCaption} \item[{{\bf dhies\_\-pContext} $\ast$}]{, } \item[{{\bf mpnumber} $\ast$}]{, } \item[{{\bf mpnumber} $\ast$}]{, } \item[{const {\bf memchunk} $\ast$}]{, } \item[{{\bf randomGeneratorContext} $\ast$}]{} \end{DoxyParamCaption} )}} \label{dhies_8h_ae4c99c0674cffed68b9ae304a60f3e36} \hypertarget{dhies_8h_a812329806f62ee9c8d1ae3a4d77a62cd}{ \index{dhies.h@{dhies.h}!dhies\_\-pContextFree@{dhies\_\-pContextFree}} \index{dhies\_\-pContextFree@{dhies\_\-pContextFree}!dhies.h@{dhies.h}} \subsubsection[{dhies\_\-pContextFree}]{\setlength{\rightskip}{0pt plus 5cm}int dhies\_\-pContextFree ( \begin{DoxyParamCaption} \item[{{\bf dhies\_\-pContext} $\ast$}]{} \end{DoxyParamCaption} )}} \label{dhies_8h_a812329806f62ee9c8d1ae3a4d77a62cd} \hypertarget{dhies_8h_a80c7fc4283f3f3c9d9315deec3a6e3af}{ \index{dhies.h@{dhies.h}!dhies\_\-pContextInit@{dhies\_\-pContextInit}} \index{dhies\_\-pContextInit@{dhies\_\-pContextInit}!dhies.h@{dhies.h}} \subsubsection[{dhies\_\-pContextInit}]{\setlength{\rightskip}{0pt plus 5cm}int dhies\_\-pContextInit ( \begin{DoxyParamCaption} \item[{{\bf dhies\_\-pContext} $\ast$}]{, } \item[{const {\bf dhies\_\-pParameters} $\ast$}]{} \end{DoxyParamCaption} )}} \label{dhies_8h_a80c7fc4283f3f3c9d9315deec3a6e3af} \hypertarget{dhies_8h_a67d0f4f538fc04834ee5ed36b699d2df}{ \index{dhies.h@{dhies.h}!dhies\_\-pContextInitDecrypt@{dhies\_\-pContextInitDecrypt}} \index{dhies\_\-pContextInitDecrypt@{dhies\_\-pContextInitDecrypt}!dhies.h@{dhies.h}} \subsubsection[{dhies\_\-pContextInitDecrypt}]{\setlength{\rightskip}{0pt plus 5cm}int dhies\_\-pContextInitDecrypt ( \begin{DoxyParamCaption} \item[{{\bf dhies\_\-pContext} $\ast$}]{, } \item[{const {\bf dhies\_\-pParameters} $\ast$}]{, } \item[{const {\bf mpnumber} $\ast$}]{} \end{DoxyParamCaption} )}} \label{dhies_8h_a67d0f4f538fc04834ee5ed36b699d2df} \hypertarget{dhies_8h_a897bef73ab35ca2aa56e1b168fdadded}{ \index{dhies.h@{dhies.h}!dhies\_\-pContextInitEncrypt@{dhies\_\-pContextInitEncrypt}} \index{dhies\_\-pContextInitEncrypt@{dhies\_\-pContextInitEncrypt}!dhies.h@{dhies.h}} \subsubsection[{dhies\_\-pContextInitEncrypt}]{\setlength{\rightskip}{0pt plus 5cm}int dhies\_\-pContextInitEncrypt ( \begin{DoxyParamCaption} \item[{{\bf dhies\_\-pContext} $\ast$}]{, } \item[{const {\bf dhies\_\-pParameters} $\ast$}]{, } \item[{const {\bf mpnumber} $\ast$}]{} \end{DoxyParamCaption} )}} \label{dhies_8h_a897bef73ab35ca2aa56e1b168fdadded} \hypertarget{dhies_8h_a28cc2c3cfccc99fee986772f189a4aaf}{ \index{dhies.h@{dhies.h}!dhies\_\-pUsable@{dhies\_\-pUsable}} \index{dhies\_\-pUsable@{dhies\_\-pUsable}!dhies.h@{dhies.h}} \subsubsection[{dhies\_\-pUsable}]{\setlength{\rightskip}{0pt plus 5cm}int dhies\_\-pUsable ( \begin{DoxyParamCaption} \item[{const {\bf dhies\_\-pParameters} $\ast$}]{} \end{DoxyParamCaption} )}} \label{dhies_8h_a28cc2c3cfccc99fee986772f189a4aaf}