- DAB95B2F666390284B7BA75171F6836E16847E0B910755599C439F5792E1CDF83CA43C198D03A19491FAF213313D34635C373BFC13A97ED432C1CA4FAAEFDF18
+ 167507120C4C88ACA1148FAEF1AFEF73D8618BD35DA845EABF96A1B7413EAA181D89391CF47D8DDB35D668AC5FEC00BBC10DF326F08A3DA8D6C05F5632EF86A6
eucrypt/smg_rsa/include/smg_rsa.h
(21 . 6)(21 . 16)
13 */
14 static const int KEY_LENGTH_OCTETS = 512;
15
16 /**
17 * This is the length of the public exponent e, given in octets.
18 * TMSR standard e has KEY_LENGTH_OCTETS / 2 octets.
19 * Eulora's communication protocol uses however e with 8 octets length.
20 * New keypairs generated will have e precisely this length.
21 * Change this to your preferred size of e for generating new keys with that size of e.
22 * NB: this impacts key generation ONLY! (i.e. NOT encrypt/decrypt).
23 */
24 static const int E_LENGTH_OCTETS = 256;
25
26 /*
27 * This is the maximum length of a plain-text message (in octets) that can be
28 * oeap+rsa encrypted in a single block. Its value is defined in smg_oaep.ads
(224 . 6)(234 . 8)
30 output!
31 * @param pk the public key that will be used to encrypt input
32 *
33 * NB: ALL MPIs (key, input) should be normalized (i.e. NO leading 0s) as otherwise
34 * underlying MPI operations may take a long time/never return!
35 * Precondition:
36 * output != input
37 * Output and input have to be two distinct MPIs because of the sorry state of
(250 . 6)(262 . 8)
39 your needs though!
40 * NB: it is the caller's responsibility to allocate memory for output!
41 * NB: NO checks are made on input!
42 * NB: ALL MPIs (key, input) should be normalized (i.e. NO leading 0s) as otherwise
43 * underlying MPI operations may take a long time/never return!
44 *
45 * @param output MPI with enough allocated memory to hold result of decryption
46 * @param input MPI containing content to decrypt