Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  ppc-gcm.h   Sprache: C

 
/******************************************************************************/
/* LICENSE:                                                                   */
/* This submission to NSS is to be made available under the terms of the      */
/* Mozilla Public License, v. 2.0. You can obtain one at http:                */
/* //mozilla.org/MPL/2.0/.                                                    */
/******************************************************************************/

#ifndef PPC_GCM_H
#define PPC_GCM_H 1

#include "blapii.h"

typedef struct ppc_AES_GCMContextStr ppc_AES_GCMContext;

ppc_AES_GCMContext *ppc_AES_GCM_CreateContext(void *context, freeblCipherFunc cipher,
                                              const unsigned char *params);

void ppc_AES_GCM_DestroyContext(ppc_AES_GCMContext *gcm, PRBool freeit);

SECStatus ppc_AES_GCM_EncryptUpdate(ppc_AES_GCMContext *gcm, unsigned char *outbuf,
                                    unsigned int *outlen, unsigned int maxout,
                                    const unsigned char *inbuf, unsigned int inlen,
                                    unsigned int blocksize);

SECStatus ppc_AES_GCM_DecryptUpdate(ppc_AES_GCMContext *gcm, unsigned char *outbuf,
                                    unsigned int *outlen, unsigned int maxout,
                                    const unsigned char *inbuf, unsigned int inlen,
                                    unsigned int blocksize);
SECStatus ppc_AES_GCM_EncryptAEAD(ppc_AES_GCMContext *gcm,
                                  unsigned char *outbuf,
                                  unsigned int *outlen, unsigned int maxout,
                                  const unsigned char *inbuf, unsigned int inlen,
                                  void *params, unsigned int paramLen,
                                  const unsigned char *aad, unsigned int aadLen,
                                  unsigned int blocksize);
SECStatus ppc_AES_GCM_DecryptAEAD(ppc_AES_GCMContext *gcm,
                                  unsigned char *outbuf,
                                  unsigned int *outlen, unsigned int maxout,
                                  const unsigned char *inbuf, unsigned int inlen,
                                  void *params, unsigned int paramLen,
                                  const unsigned char *aad, unsigned int aadLen,
                                  unsigned int blocksize);

/* Prototypes of the functions defined in the assembler file.  */

/* Prepares the constants used in the aggregated reduction method */
void ppc_aes_gcmINIT(unsigned char Htbl[8 * 16],
                     PRUint32 *KS,
                     int NR);

/* Produces the final GHASH value */
void ppc_aes_gcmTAG(unsigned char Htbl[8 * 16],
                    unsigned char *Tp,
                    unsigned long Mlen,
                    unsigned long Alen,
                    unsigned char *X0,
                    unsigned char *TAG);

/* Hashes the Additional Authenticated Data, should be used before enc/dec.
   Operates on any length of data. Partial block is padded internally. */

void ppc_aes_gcmHASH(unsigned char Htbl[8 * 16],
                     const unsigned char *AAD,
                     unsigned long Alen,
                     unsigned char *Tp);

/* Crypt only, used in combination with ppc_aes_gcmAAD().
   Operates on any length of data, however partial block should only be encrypted
   at the last call, otherwise the result will be incorrect. */

void ppc_aes_gcmCRYPT(const unsigned char *PT,
                      unsigned char *CT,
                      unsigned long len,
                      unsigned char *CTRP,
                      PRUint32 *KS,
                      int NR);

#endif

Messung V0.5
C=95 H=90 G=92

¤ 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.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge