/* * Please ensure that the first two fields are 16-byte aligned * relative to the start of the structure, i.e., don't move them!
*/ struct crypto_aes_ctx {
u32 key_enc[AES_MAX_KEYLENGTH_U32];
u32 key_dec[AES_MAX_KEYLENGTH_U32];
u32 key_length;
};
/* * validate key length for AES algorithms
*/ staticinlineint aes_check_keylen(unsignedint keylen)
{ switch (keylen) { case AES_KEYSIZE_128: case AES_KEYSIZE_192: case AES_KEYSIZE_256: break; default: return -EINVAL;
}
return 0;
}
int crypto_aes_set_key(struct crypto_tfm *tfm, const u8 *in_key, unsignedint key_len);
/** * aes_expandkey - Expands the AES key as described in FIPS-197 * @ctx: The location where the computed key will be stored. * @in_key: The supplied key. * @key_len: The length of the supplied key. * * Returns 0 on success. The function fails only if an invalid key size (or * pointer) is supplied. * The expanded key size is 240 bytes (max of 14 rounds with a unique 16 bytes * key schedule plus a 16 bytes key which is used before the first round). * The decryption key is prepared for the "Equivalent Inverse Cipher" as * described in FIPS-197. The first slot (16 bytes) of each key (enc or dec) is * for the initial combination, the second slot for the first round and so on.
*/ int aes_expandkey(struct crypto_aes_ctx *ctx, const u8 *in_key, unsignedint key_len);
/** * aes_encrypt - Encrypt a single AES block * @ctx: Context struct containing the key schedule * @out: Buffer to store the ciphertext * @in: Buffer containing the plaintext
*/ void aes_encrypt(conststruct crypto_aes_ctx *ctx, u8 *out, const u8 *in);
/** * aes_decrypt - Decrypt a single AES block * @ctx: Context struct containing the key schedule * @out: Buffer to store the plaintext * @in: Buffer containing the ciphertext
*/ void aes_decrypt(conststruct crypto_aes_ctx *ctx, u8 *out, const u8 *in);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.