Denys Vlasenko | 11d0096 | 2017-01-15 00:12:42 +0100 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (C) 2017 Denys Vlasenko |
| 3 | * |
| 4 | * Licensed under GPLv2, see file LICENSE in this source tree. |
Denys Vlasenko | 3f8ecd9 | 2017-01-15 14:16:51 +0100 | [diff] [blame^] | 5 | * |
| 6 | * Selected few declarations for RSA. |
Denys Vlasenko | 11d0096 | 2017-01-15 00:12:42 +0100 | [diff] [blame] | 7 | */ |
| 8 | |
| 9 | typedef struct { |
| 10 | pstm_int e, d, N, qP, dP, dQ, p, q; |
| 11 | uint32 size; /* Size of the key in bytes */ |
| 12 | int32 optimized; /* 1 for optimized */ |
| 13 | psPool_t *pool; |
| 14 | } psRsaKey_t; |
| 15 | |
| 16 | #define psRsaEncryptPub(pool, key, in, inlen, out, outlen, data) \ |
| 17 | psRsaEncryptPub(pool, key, in, inlen, out, outlen) |
| 18 | int32 psRsaEncryptPub(psPool_t *pool, psRsaKey_t *key, |
| 19 | unsigned char *in, uint32 inlen, |
| 20 | unsigned char *out, uint32 outlen, void *data); |