add radix_to_bin() docs
[skip ci]
This commit is contained in:
parent
78e9601eb6
commit
8b3af12d70
@ -6164,6 +6164,46 @@ int mem_neq(const void *a, const void *b, size_t len);
|
|||||||
This will compare the buffer \textit{a} against the buffer \textit{b} for \textit{len} bytes.
|
This will compare the buffer \textit{a} against the buffer \textit{b} for \textit{len} bytes.
|
||||||
The return value is either \textit{0} when the content of \textit{a} and \textit{b} is equal or \textit{1} when it differs.
|
The return value is either \textit{0} when the content of \textit{a} and \textit{b} is equal or \textit{1} when it differs.
|
||||||
|
|
||||||
|
\subsection{Radix to binary conversion}
|
||||||
|
|
||||||
|
All public-key cryptographic algorithms provide a way to import and/or export their key parameters in binary format.
|
||||||
|
In order to be able to import keys stored in different formats, e.g. hexadecimal strings, the \textit{radix\_to\_bin()} function is provided.
|
||||||
|
|
||||||
|
\index{radix\_to\_bin()}
|
||||||
|
\begin{verbatim}
|
||||||
|
int radix_to_bin(const void *in, int radix, void *out, unsigned long *len);
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
This will convert the MPI \textit{in} of radix \textit{radix} to the buffer pointed to by \textit{out}.
|
||||||
|
The field \textit{len} is a pointer to the length of the buffer on input and the length stored on output.
|
||||||
|
|
||||||
|
In case you don't know the length of the buffer you can use \textit{radix\_to\_bin()} to determine the length for you.
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
#include <tomcrypt.h>
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
const char *mpi = "AABBCCDD";
|
||||||
|
unsigned long l = 0;
|
||||||
|
void* buf;
|
||||||
|
int ret;
|
||||||
|
ltc_mp = ltm_desc;
|
||||||
|
|
||||||
|
if (radix_to_bin(mpi, 16, NULL, &l) != CRYPT_BUFFER_OVERFLOW)
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
buf = malloc(l);
|
||||||
|
|
||||||
|
ret = EXIT_SUCCESS;
|
||||||
|
if (radix_to_bin(mpi, 16, buf, &l) != CRYPT_OK)
|
||||||
|
ret = EXIT_FAILURE;
|
||||||
|
|
||||||
|
free(buf);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
|
||||||
\mysection{Dynamic Language Support}
|
\mysection{Dynamic Language Support}
|
||||||
\index{Dynamic Language Support}
|
\index{Dynamic Language Support}
|
||||||
Various LibTomCrypt functions require that their callers define a struct
|
Various LibTomCrypt functions require that their callers define a struct
|
||||||
|
Loading…
Reference in New Issue
Block a user