Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/security/nss/lib/freebl/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 1 kB image not shown  

Quelle  ctr.h   Sprache: C

 
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


#ifndef CTR_H
#define CTR_H 1

#include "blapii.h"

/* This structure is defined in this header because both ctr.c and gcm.c
 * need it. */

struct CTRContextStr {
    freeblCipherFunc cipher;
    void *context;
    unsigned char counter[MAX_BLOCK_SIZE];
    unsigned char buffer[MAX_BLOCK_SIZE];
    unsigned char counterFirst[MAX_BLOCK_SIZE]; /* counter overlfow value */
    PRBool checkWrap;                           /*check for counter overflow*/
    unsigned long counterBits;
    unsigned int bufPtr;
};

typedef struct CTRContextStr CTRContext;

SECStatus CTR_InitContext(CTRContext *ctr, void *context,
                          freeblCipherFunc cipher, const unsigned char *param);

/*
 * The context argument is the inner cipher context to use with cipher. The
 * CTRContext does not own context. context needs to remain valid for as long
 * as the CTRContext is valid.
 *
 * The cipher argument is a block cipher in the ECB encrypt mode.
 */

CTRContext *CTR_CreateContext(void *context, freeblCipherFunc cipher,
                              const unsigned char *param);

void CTR_DestroyContext(CTRContext *ctr, PRBool freeit);

SECStatus CTR_Update(CTRContext *ctr, unsigned char *outbuf,
                     unsigned int *outlen, unsigned int maxout,
                     const unsigned char *inbuf, unsigned int inlen,
                     unsigned int blocksize);

#ifdef USE_HW_AES
SECStatus CTR_Update_HW_AES(CTRContext *ctr, unsigned char *outbuf,
                            unsigned int *outlen, unsigned int maxout,
                            const unsigned char *inbuf, unsigned int inlen,
                            unsigned int blocksize);
#endif

#endif

Messung V0.5
C=91 H=100 G=95

¤ Dauer der Verarbeitung: 0.18 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.