summaryrefslogtreecommitdiff
path: root/crypt.h
blob: 88af9e89c10e6cfe468e7c6787bfdde32bbb536c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/*
 * Copyright (C) 2005-2009 Andre Noll <maan@systemlinux.org>
 *
 * Licensed under the GPL v2. For licencing details see COPYING.
 */

/** \file crypt.h prototypes for the RSA crypt functions */

#include <openssl/pem.h>
int para_decrypt_challenge(char *key_file, long unsigned *challenge_nr,
	unsigned char *buf, unsigned rsa_inlen);
int para_encrypt_challenge(RSA* rsa, long unsigned challenge_nr,
	unsigned char *outbuf);
int para_encrypt_buffer(RSA* rsa, unsigned char *inbuf, unsigned len,
	unsigned char *outbuf);
int para_decrypt_buffer(char *key_file, unsigned char *outbuf, unsigned char *inbuf,
	unsigned rsa_inlen);
int get_rsa_key(char *key_file, RSA **rsa, int private);

void rsa_free(RSA *rsa);

/** \cond used to distinguish between loading of private/public key */
#define LOAD_PUBLIC_KEY 0
#define LOAD_PRIVATE_KEY 1
/** \endcond **/