mirror of
https://github.com/torvalds/linux.git
synced 2024-11-01 09:41:44 +00:00
5ca4c20cfd
Added 'hash=' option for selecting the hash algorithm for add_key() syscall and documentation for it. Added entry for sm3-256 to the following tables in order to support TPM_ALG_SM3_256: * hash_algo_name * hash_digest_size Includes support for the following hash algorithms: * sha1 * sha256 * sha384 * sha512 * sm3-256 Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> Tested-by: Colin Ian King <colin.king@canonical.com> Reviewed-by: James Morris <james.l.morris@oracle.com> Reviewed-by: Mimi Zohar <zohar@linux.vnet.ibm.com> Acked-by: Peter Huewe <peterhuewe@gmx.de>
59 lines
1.9 KiB
C
59 lines
1.9 KiB
C
/*
|
|
* Hash Info: Hash algorithms information
|
|
*
|
|
* Copyright (c) 2013 Dmitry Kasatkin <d.kasatkin@samsung.com>
|
|
*
|
|
* 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.
|
|
*
|
|
*/
|
|
|
|
#include <linux/export.h>
|
|
#include <crypto/hash_info.h>
|
|
|
|
const char *const hash_algo_name[HASH_ALGO__LAST] = {
|
|
[HASH_ALGO_MD4] = "md4",
|
|
[HASH_ALGO_MD5] = "md5",
|
|
[HASH_ALGO_SHA1] = "sha1",
|
|
[HASH_ALGO_RIPE_MD_160] = "rmd160",
|
|
[HASH_ALGO_SHA256] = "sha256",
|
|
[HASH_ALGO_SHA384] = "sha384",
|
|
[HASH_ALGO_SHA512] = "sha512",
|
|
[HASH_ALGO_SHA224] = "sha224",
|
|
[HASH_ALGO_RIPE_MD_128] = "rmd128",
|
|
[HASH_ALGO_RIPE_MD_256] = "rmd256",
|
|
[HASH_ALGO_RIPE_MD_320] = "rmd320",
|
|
[HASH_ALGO_WP_256] = "wp256",
|
|
[HASH_ALGO_WP_384] = "wp384",
|
|
[HASH_ALGO_WP_512] = "wp512",
|
|
[HASH_ALGO_TGR_128] = "tgr128",
|
|
[HASH_ALGO_TGR_160] = "tgr160",
|
|
[HASH_ALGO_TGR_192] = "tgr192",
|
|
[HASH_ALGO_SM3_256] = "sm3-256",
|
|
};
|
|
EXPORT_SYMBOL_GPL(hash_algo_name);
|
|
|
|
const int hash_digest_size[HASH_ALGO__LAST] = {
|
|
[HASH_ALGO_MD4] = MD5_DIGEST_SIZE,
|
|
[HASH_ALGO_MD5] = MD5_DIGEST_SIZE,
|
|
[HASH_ALGO_SHA1] = SHA1_DIGEST_SIZE,
|
|
[HASH_ALGO_RIPE_MD_160] = RMD160_DIGEST_SIZE,
|
|
[HASH_ALGO_SHA256] = SHA256_DIGEST_SIZE,
|
|
[HASH_ALGO_SHA384] = SHA384_DIGEST_SIZE,
|
|
[HASH_ALGO_SHA512] = SHA512_DIGEST_SIZE,
|
|
[HASH_ALGO_SHA224] = SHA224_DIGEST_SIZE,
|
|
[HASH_ALGO_RIPE_MD_128] = RMD128_DIGEST_SIZE,
|
|
[HASH_ALGO_RIPE_MD_256] = RMD256_DIGEST_SIZE,
|
|
[HASH_ALGO_RIPE_MD_320] = RMD320_DIGEST_SIZE,
|
|
[HASH_ALGO_WP_256] = WP256_DIGEST_SIZE,
|
|
[HASH_ALGO_WP_384] = WP384_DIGEST_SIZE,
|
|
[HASH_ALGO_WP_512] = WP512_DIGEST_SIZE,
|
|
[HASH_ALGO_TGR_128] = TGR128_DIGEST_SIZE,
|
|
[HASH_ALGO_TGR_160] = TGR160_DIGEST_SIZE,
|
|
[HASH_ALGO_TGR_192] = TGR192_DIGEST_SIZE,
|
|
[HASH_ALGO_SM3_256] = SM3256_DIGEST_SIZE,
|
|
};
|
|
EXPORT_SYMBOL_GPL(hash_digest_size);
|