Loading...
Searching...
No Matches
DES
libavutil » Crypto and Hashing

## Data Structures

struct | AVDES

## Functions

AVDES * | av_des_alloc (void)
| Allocate an AVDES context.
int | av_des_init (struct AVDES *d, const uint8_t *key, int key_bits, int decrypt)
| Initializes an AVDES context.
void | av_des_crypt (struct AVDES *d, uint8_t *dst, const uint8_t *src, int count, uint8_t *iv, int decrypt)
| Encrypts / decrypts using the DES algorithm.
void | av_des_mac (struct AVDES *d, uint8_t *dst, const uint8_t *src, int count)
| Calculates CBC-MAC using the DES algorithm.

## Detailed Description

## Function Documentation

## av_des_alloc()

AVDES * av_des_alloc | ( | void |  | ) |

Allocate an AVDES context.

## av_des_init()

int av_des_init | ( | struct AVDES * | d,
|  | const uint8_t * | key,
|  | int | key_bits,
|  | int | decrypt
| ) |  |

Initializes an AVDES context.

Parameters

  d | pointer to a AVDES structure to initialize
  key | pointer to the key to use
  key_bits | must be 64 or 192
  decrypt | 0 for encryption/CBC-MAC, 1 for decryption

Returns
  zero on success, negative value otherwise

## av_des_crypt()

void av_des_crypt | ( | struct AVDES * | d,
|  | uint8_t * | dst,
|  | const uint8_t * | src,
|  | int | count,
|  | uint8_t * | iv,
|  | int | decrypt
| ) |  |

Encrypts / decrypts using the DES algorithm.

Parameters

  d | pointer to the AVDES structure
  dst | destination array, can be equal to src, must be 8-byte aligned
  src | source array, can be equal to dst, must be 8-byte aligned, may be NULL
  count | number of 8 byte blocks
  iv | initialization vector for CBC mode, if NULL then ECB will be used, must be 8-byte aligned
  decrypt | 0 for encryption, 1 for decryption

## av_des_mac()

void av_des_mac | ( | struct AVDES * | d,
|  | uint8_t * | dst,
|  | const uint8_t * | src,
|  | int | count
| ) |  |

Calculates CBC-MAC using the DES algorithm.

Parameters

  d | pointer to the AVDES structure
  dst | destination array, can be equal to src, must be 8-byte aligned
  src | source array, can be equal to dst, must be 8-byte aligned, may be NULL
  count | number of 8 byte blocks