# signature.c File Reference

`#include "magick/studio.h"`
`#include "magick/exception.h"`
`#include "magick/exception-private.h"`
`#include "magick/property.h"`
`#include "magick/image.h"`
`#include "magick/memory_.h"`
`#include "magick/quantum.h"`
`#include "magick/quantum-private.h"`
`#include "magick/signature.h"`
`#include "magick/string_.h"`

## Defines
#define | Sigma0(x) (RotateRight(x,7) ^ RotateRight(x,18) ^ Trunc32((x) >> 3))
#define | Sigma1(x) (RotateRight(x,17) ^ RotateRight(x,19) ^ Trunc32((x) >> 10))
#define | Suma0(x) (RotateRight(x,2) ^ RotateRight(x,13) ^ RotateRight(x,22))
#define | Suma1(x) (RotateRight(x,6) ^ RotateRight(x,11) ^ RotateRight(x,25))
## Functions
static void | TransformSignature (SignatureInfo *)
MagickExport void | FinalizeSignature (SignatureInfo *signature_info)
MagickExport void | GetSignatureInfo (SignatureInfo *signature_info)
MagickExport MagickBooleanType | SignatureImage (Image *image)
static unsigned long | Ch (unsigned long x, unsigned long y, unsigned long z)
static unsigned long | Maj (unsigned long x, unsigned long y, unsigned long z)
static unsigned long | Trunc32 (unsigned long x)
static unsigned long | RotateRight (unsigned long x, unsigned long n)
MagickExport void | UpdateSignature (SignatureInfo *signature_info, const unsigned char *message, const size_t length)

## Define Documentation

#define Sigma0 | ( | x |  | ) | (RotateRight(x,7) ^ RotateRight(x,18) ^ Trunc32((x) >> 3))

#define Sigma1 | ( | x |  | ) | (RotateRight(x,17) ^ RotateRight(x,19) ^ Trunc32((x) >> 10))

#define Suma0 | ( | x |  | ) | (RotateRight(x,2) ^ RotateRight(x,13) ^ RotateRight(x,22))

#define Suma1 | ( | x |  | ) | (RotateRight(x,6) ^ RotateRight(x,11) ^ RotateRight(x,25))

## Function Documentation

static unsigned long Ch | ( | unsigned long | x,
|  | unsigned long | y,
|  | unsigned long | z |
| ) |  |  | `[inline, static]`

MagickExport void FinalizeSignature | ( | SignatureInfo * | signature_info | ) |

MagickExport void GetSignatureInfo | ( | SignatureInfo * | signature_info | ) |

static unsigned long Maj | ( | unsigned long | x,
|  | unsigned long | y,
|  | unsigned long | z |
| ) |  |  | `[inline, static]`

static unsigned long RotateRight | ( | unsigned long | x,
|  | unsigned long | n |
| ) |  |  | `[static]`

MagickExport MagickBooleanType SignatureImage | ( | Image * | image | ) |

static void TransformSignature | ( | SignatureInfo * | signature_info | ) | `[static]`

static unsigned long Trunc32 | ( | unsigned long | x | ) | `[inline, static]`

MagickExport void UpdateSignature | ( | SignatureInfo * | signature_info,
|  | const unsigned char * | message,
|  | const size_t | length |
| ) |  |  |