linux/crypto/streebog_generic.c

// SPDX-License-Identifier: GPL-2.0+ OR BSD-2-Clause
/*
 * Streebog hash function as specified by GOST R 34.11-2012 and
 * described at https://tools.ietf.org/html/rfc6986
 *
 * Copyright (c) 2013 Alexey Degtyarev <[email protected]>
 * Copyright (c) 2018 Vitaly Chikunov <[email protected]>
 *
 * 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 <crypto/internal/hash.h>
#include <linux/module.h>
#include <linux/crypto.h>
#include <crypto/streebog.h>

static const struct streebog_uint512 buffer0 =;

static const struct streebog_uint512 buffer512 =;

static const struct streebog_uint512 C[12] =;

static const unsigned long long Ax[8][256] =; /* Ax */

static void streebog_xor(const struct streebog_uint512 *x,
			 const struct streebog_uint512 *y,
			 struct streebog_uint512 *z)
{}

static void streebog_xlps(const struct streebog_uint512 *x,
			  const struct streebog_uint512 *y,
			  struct streebog_uint512 *data)
{}

static void streebog_round(int i, struct streebog_uint512 *Ki,
			   struct streebog_uint512 *data)
{}

static int streebog_init(struct shash_desc *desc)
{}

static void streebog_pad(struct streebog_state *ctx)
{}

static void streebog_add512(const struct streebog_uint512 *x,
			    const struct streebog_uint512 *y,
			    struct streebog_uint512 *r)
{}

static void streebog_g(struct streebog_uint512 *h,
		       const struct streebog_uint512 *N,
		       const struct streebog_uint512 *m)
{}

static void streebog_stage2(struct streebog_state *ctx, const u8 *data)
{}

static void streebog_stage3(struct streebog_state *ctx)
{}

static int streebog_update(struct shash_desc *desc, const u8 *data,
			   unsigned int len)
{}

static int streebog_final(struct shash_desc *desc, u8 *digest)
{}

static struct shash_alg algs[2] =;

static int __init streebog_mod_init(void)
{}

static void __exit streebog_mod_fini(void)
{}

subsys_initcall(streebog_mod_init);
module_exit(streebog_mod_fini);

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

MODULE_ALIAS_CRYPTO();
MODULE_ALIAS_CRYPTO();
MODULE_ALIAS_CRYPTO();
MODULE_ALIAS_CRYPTO();