/* * RSA internal helpers * * Copyright (c) 2015, Intel Corporation * Authors: Tadeusz Struk * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the Free * Software Foundation; either version 2 of the License, or (at your option) * any later version. * */ #ifndef _RSA_HELPER_ #define _RSA_HELPER_ #include /** * rsa_key - RSA key structure * @n : RSA modulus raw byte stream * @e : RSA public exponent raw byte stream * @d : RSA private exponent raw byte stream * @n_sz : length in bytes of RSA modulus n * @e_sz : length in bytes of RSA public exponent * @d_sz : length in bytes of RSA private exponent */ struct rsa_key { const u8 *n; const u8 *e; const u8 *d; size_t n_sz; size_t e_sz; size_t d_sz; }; int rsa_parse_pub_key(struct rsa_key *rsa_key, const void *key, unsigned int key_len); int rsa_parse_priv_key(struct rsa_key *rsa_key, const void *key, unsigned int key_len); extern struct crypto_template rsa_pkcs1pad_tmpl; #endif