linux/crypto/seed.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Cryptographic API.
 *
 * SEED Cipher Algorithm.
 *
 * Documentation of SEED can be found in RFC 4269.
 * Copyright (C) 2007 Korea Information Security Agency (KISA).
 */

#include <crypto/algapi.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/types.h>
#include <linux/errno.h>
#include <asm/byteorder.h>

#define SEED_NUM_KCONSTANTS
#define SEED_KEY_SIZE
#define SEED_BLOCK_SIZE
#define SEED_KEYSCHED_LEN

/*
 * #define byte(x, nr) ((unsigned char)((x) >> (nr*8)))
 */
static inline u8
byte(const u32 x, const unsigned n)
{}

struct seed_ctx {};

static const u32 SS0[256] =;

static const u32 SS1[256] =;

static const u32 SS2[256] =;

static const u32 SS3[256] =;

static const u32 KC[SEED_NUM_KCONSTANTS] =;

#define OP(X1, X2, X3, X4, rbase)

static int seed_set_key(struct crypto_tfm *tfm, const u8 *in_key,
		        unsigned int key_len)
{}

/* encrypt a block of text */

static void seed_encrypt(struct crypto_tfm *tfm, u8 *out, const u8 *in)
{}

/* decrypt a block of text */

static void seed_decrypt(struct crypto_tfm *tfm, u8 *out, const u8 *in)
{}


static struct crypto_alg seed_alg =;

static int __init seed_init(void)
{}

static void __exit seed_fini(void)
{}

subsys_initcall(seed_init);
module_exit(seed_fini);

MODULE_DESCRIPTION();
MODULE_LICENSE();
MODULE_AUTHOR();
MODULE_ALIAS_CRYPTO();