Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/include/crypto/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  sm4.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0 */

/*
 * Common values for the SM4 algorithm
 * Copyright (C) 2018 ARM Limited or its affiliates.
 * Copyright (c) 2021 Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
 */


#ifndef _CRYPTO_SM4_H
#define _CRYPTO_SM4_H

#include <linux/types.h>
#include <linux/crypto.h>

#define SM4_KEY_SIZE 16
#define SM4_BLOCK_SIZE 16
#define SM4_RKEY_WORDS 32

struct sm4_ctx {
 u32 rkey_enc[SM4_RKEY_WORDS];
 u32 rkey_dec[SM4_RKEY_WORDS];
};

extern const u32 crypto_sm4_fk[];
extern const u32 crypto_sm4_ck[];
extern const u8 crypto_sm4_sbox[];

/**
 * sm4_expandkey - Expands the SM4 key as described in GB/T 32907-2016
 * @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.
 */

int sm4_expandkey(struct sm4_ctx *ctx, const u8 *in_key,
     unsigned int key_len);

/**
 * sm4_crypt_block - Encrypt or decrypt a single SM4 block
 * @rk: The rkey_enc for encrypt or rkey_dec for decrypt
 * @out: Buffer to store output data
 * @in:  Buffer containing the input data
 */

void sm4_crypt_block(const u32 *rk, u8 *out, const u8 *in);

#endif

Messung V0.5
C=88 H=100 G=94

¤ Dauer der Verarbeitung: 0.1 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

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.