# dsa.h File Reference

## Detailed Description

Definition in file dsa.h.

`#include "gfpcrypt.h"`

Go to the source code of this file.

## Enumerations
enum | DSASignatureFormat { DSA_P1363, DSA_DER, DSA_OPENPGP }
## Functions
size_t | DSAConvertSignatureFormat (byte *buffer, size_t bufferSize, DSASignatureFormat toFormat, const byte *signature, size_t signatureLen, DSASignatureFormat fromFormat)
| This function converts between these formats, and returns length of signature in the target format.

## Enumeration Type Documentation

enum DSASignatureFormat

The DSA signature format used by Crypto++ is as defined by IEEE P1363. Java uses the DER format, and OpenPGP uses the OpenPGP format.

Definition at line 13 of file dsa.h.

## Function Documentation

size_t DSAConvertSignatureFormat | ( | byte * | buffer,
|  | size_t | bufferSize,
|  | DSASignatureFormat | toFormat,
|  | const byte * | signature,
|  | size_t | signatureLen,
|  | DSASignatureFormat | fromFormat |
| ) |  |  |

This function converts between these formats, and returns length of signature in the target format.

If toFormat == DSA_P1363, bufferSize must equal publicKey.SignatureLength()

Definition at line 12 of file dsa.cpp.

References Integer::BERDecode(), Integer::Decode(), Integer::DEREncode(), Integer::Encode(), DERGeneralEncoder::MessageEnd(), BERGeneralDecoder::MessageEnd(), Integer::OpenPGPDecode(), Integer::OpenPGPEncode(), and ArraySink::TotalPutLength().