Documentation Archive Developer
Search
ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



CCHMAC(3)                BSD Library Functions Manual                CCHMAC(3)

NAME
     CCHmacInit, CCHmacUpdate, CCHmacFinal, CCHmac -- Common HMAC Algorithm
     Interfaces

LIBRARY
     These functions are found in libSystem.

SYNOPSIS
     #include <CommonCrypto/CommonHMAC.h>

     void
     CCHmacInit(CCHmacContext *ctx, CCHmacAlgorithm algorithm,
         const void *key, size_t keyLength);

     void
     CCHmacUpdate(CCHmacContext *ctx, const void *data, size_t dataLength);

     void
     CCHmacFinal(CCHmacContext *ctx, void *macOut);

     void
     CCHmac(CCHmacAlgorithm algorithm, const void *key, size_t keyLength,
         const void *data, size_t dataLength, void *macOut);

DESCRIPTION
     This interface provides access to a number of HMAC algorithms. The fol-lowing following
     lowing algorithms are available:

     kCCHmacAlgSHA1    - HMAC with SHA1 digest

     kCCHmacAlgMD5     - HMAC with MD5 digest

     kCCHmacAlgSHA256  - HMAC with SHA256 digest

     kCCHmacAlgSHA384  - HMAC with SHA384 digest

     kCCHmacAlgSHA224  - HMAC with SHA224 digest

     kCCHmacAlgSHA512  - HMAC with SHA512 digest

     The object declared in this interface, CCHmacContext, provides a handle
     for use with the CCHmacInit() CCHmacUpdate() and CCHmacFinal() calls to
     complete the HMAC operation.  In addition there is a one shot function,
     CCHmac() that performs a complete HMAC on a single piece of data.

SEE ALSO
     CC_MD5(3cc), CC_SHA(3cc), CC_crypto(3cc), CCCrypto(3cc)

BSD                             March 22, 2007                             BSD