sha256_generic.c (01b944fe1cd4e21a2a9ed51adbdbafe2d5e905ba) sha256_generic.c (0c4c78de0417ced1da92351a3013e631860ea576)
1/*
2 * Cryptographic API.
3 *
4 * SHA-256, as specified in
5 * http://csrc.nist.gov/groups/STM/cavp/documents/shs/sha256-384-512.pdf
6 *
7 * SHA-256 code by Jean-Luc Cooke <jlcooke@certainkey.com>.
8 *

--- 13 unchanged lines hidden (view full) ---

22#include <linux/module.h>
23#include <linux/mm.h>
24#include <linux/types.h>
25#include <crypto/sha.h>
26#include <crypto/sha256_base.h>
27#include <asm/byteorder.h>
28#include <asm/unaligned.h>
29
1/*
2 * Cryptographic API.
3 *
4 * SHA-256, as specified in
5 * http://csrc.nist.gov/groups/STM/cavp/documents/shs/sha256-384-512.pdf
6 *
7 * SHA-256 code by Jean-Luc Cooke <jlcooke@certainkey.com>.
8 *

--- 13 unchanged lines hidden (view full) ---

22#include <linux/module.h>
23#include <linux/mm.h>
24#include <linux/types.h>
25#include <crypto/sha.h>
26#include <crypto/sha256_base.h>
27#include <asm/byteorder.h>
28#include <asm/unaligned.h>
29
30const u8 sha224_zero_message_hash[SHA224_DIGEST_SIZE] = {
31 0xd1, 0x4a, 0x02, 0x8c, 0x2a, 0x3a, 0x2b, 0xc9, 0x47,
32 0x61, 0x02, 0xbb, 0x28, 0x82, 0x34, 0xc4, 0x15, 0xa2,
33 0xb0, 0x1f, 0x82, 0x8e, 0xa6, 0x2a, 0xc5, 0xb3, 0xe4,
34 0x2f
35};
36EXPORT_SYMBOL_GPL(sha224_zero_message_hash);
37
38const u8 sha256_zero_message_hash[SHA256_DIGEST_SIZE] = {
39 0xe3, 0xb0, 0xc4, 0x42, 0x98, 0xfc, 0x1c, 0x14,
40 0x9a, 0xfb, 0xf4, 0xc8, 0x99, 0x6f, 0xb9, 0x24,
41 0x27, 0xae, 0x41, 0xe4, 0x64, 0x9b, 0x93, 0x4c,
42 0xa4, 0x95, 0x99, 0x1b, 0x78, 0x52, 0xb8, 0x55
43};
44EXPORT_SYMBOL_GPL(sha256_zero_message_hash);
45
30static inline u32 Ch(u32 x, u32 y, u32 z)
31{
32 return z ^ (x & (y ^ z));
33}
34
35static inline u32 Maj(u32 x, u32 y, u32 z)
36{
37 return (x & y) | (z & (x | y));

--- 260 unchanged lines hidden ---
46static inline u32 Ch(u32 x, u32 y, u32 z)
47{
48 return z ^ (x & (y ^ z));
49}
50
51static inline u32 Maj(u32 x, u32 y, u32 z)
52{
53 return (x & y) | (z & (x | y));

--- 260 unchanged lines hidden ---