- NAME
- SYNOPSIS
- FUNCTION DESCRIPTIONS

- FinalizeSignature
- GetSignatureInfo
- SignatureImage
- TransformSignature
- UpdateSignature

# NAME

signature - Add a digital signature to the image

# SYNOPSIS

FinalizeSignature( SignatureInfo *signature_info );

GetSignatureInfo( SignatureInfo *signature_info );

unsigned int SignatureImage( Image *image );

TransformSignature( SignatureInfo *signature_info );

UpdateSignature( SignatureInfo *signature_info, const unsigned char *message, const size_t length );

# FUNCTION DESCRIPTIONS

## FinalizeSignature

Method FinalizeSignature finalizes the SHA message digest computation.

The format of the FinalizeSignature method is:

> FinalizeSignature ( SignatureInfo *signature_info );

A description of each parameter follows:

signature_info:
  The address of a structure of type SignatureInfo.

## GetSignatureInfo

Method GetSignatureInfo initializes the SHA message digest structure.

The format of the GetSignatureInfo method is:

> GetSignatureInfo ( SignatureInfo *signature_info );

A description of each parameter follows:

signature_info:
  The address of a structure of type SignatureInfo.

## SignatureImage

> SignatureImage() computes a message digest from an image pixel stream with an implementation of the NIST SHA-256 Message Digest algorithm. This signature uniquely identifies the image and is convenient for determining if an image has been modified or whether two images are identical.

The format of the SignatureImage method is:

> unsigned int SignatureImage ( Image *image );

A description of each parameter follows:

image:
  The image.

## TransformSignature

> TransformSignature() transforms the SHA message digest.

The format of the TransformSignature method is:

> TransformSignature ( SignatureInfo *signature_info );

A description of each parameter follows:

signature_info:
  The address of a structure of type SignatureInfo.

## UpdateSignature

> UpdateSignature() updates the SHA message digest.

The format of the UpdateSignature method is:

> UpdateSignature ( SignatureInfo *signature_info, const unsigned char *message, const size_t length );

A description of each parameter follows:

signature_info:
  The address of a structure of type SignatureInfo.

message:
  the message

length:
  The length of the message.