16d49e1aeSJan Lentfer /* 26d49e1aeSJan Lentfer * RSA 36d49e1aeSJan Lentfer * Copyright (c) 2006, Jouni Malinen <j@w1.fi> 46d49e1aeSJan Lentfer * 53ff40c12SJohn Marino * This software may be distributed under the terms of the BSD license. 63ff40c12SJohn Marino * See README for more details. 76d49e1aeSJan Lentfer */ 86d49e1aeSJan Lentfer 96d49e1aeSJan Lentfer #ifndef RSA_H 106d49e1aeSJan Lentfer #define RSA_H 116d49e1aeSJan Lentfer 126d49e1aeSJan Lentfer struct crypto_rsa_key; 136d49e1aeSJan Lentfer 146d49e1aeSJan Lentfer struct crypto_rsa_key * 156d49e1aeSJan Lentfer crypto_rsa_import_public_key(const u8 *buf, size_t len); 166d49e1aeSJan Lentfer struct crypto_rsa_key * 17*a1157835SDaniel Fojt crypto_rsa_import_public_key_parts(const u8 *n, size_t n_len, 18*a1157835SDaniel Fojt const u8 *e, size_t e_len); 19*a1157835SDaniel Fojt struct crypto_rsa_key * 206d49e1aeSJan Lentfer crypto_rsa_import_private_key(const u8 *buf, size_t len); 216d49e1aeSJan Lentfer size_t crypto_rsa_get_modulus_len(struct crypto_rsa_key *key); 226d49e1aeSJan Lentfer int crypto_rsa_exptmod(const u8 *in, size_t inlen, u8 *out, size_t *outlen, 236d49e1aeSJan Lentfer struct crypto_rsa_key *key, int use_private); 246d49e1aeSJan Lentfer void crypto_rsa_free(struct crypto_rsa_key *key); 256d49e1aeSJan Lentfer 266d49e1aeSJan Lentfer #endif /* RSA_H */ 27