FFmpeg
|
#include <inttypes.h>
#include "avutil.h"
#include "common.h"
#include "intreadwrite.h"
#include "mem.h"
#include "des.h"
Go to the source code of this file.
Macros | |
#define | T(a, b, c, d, e, f, g, h) 64-a,64-b,64-c,64-d,64-e,64-f,64-g,64-h |
#define | T(a, b, c, d, e, f, g) 64-a,64-b,64-c,64-d,64-e,64-f,64-g |
#define | T(a, b, c, d, e, f) 56-a,56-b,56-c,56-d,56-e,56-f |
Functions | |
static uint64_t | shuffle (uint64_t in, const uint8_t *shuffle, int shuffle_len) |
static uint64_t | shuffle_inv (uint64_t in, const uint8_t *shuffle, int shuffle_len) |
static uint32_t | f_func (uint32_t r, uint64_t k) |
static uint64_t | key_shift_left (uint64_t CDn) |
rotate the two halves of the expanded 56 bit key each 1 bit left More... | |
static void | gen_roundkeys (uint64_t K[16], uint64_t key) |
static uint64_t | des_encdec (uint64_t in, uint64_t K[16], int decrypt) |
AVDES * | av_des_alloc (void) |
Allocate an AVDES context. More... | |
int | av_des_init (AVDES *d, const uint8_t *key, int key_bits, av_unused int decrypt) |
static void | av_des_crypt_mac (AVDES *d, uint8_t *dst, const uint8_t *src, int count, uint8_t *iv, int decrypt, int mac) |
void | av_des_crypt (AVDES *d, uint8_t *dst, const uint8_t *src, int count, uint8_t *iv, int decrypt) |
Encrypts / decrypts using the DES algorithm. More... | |
void | av_des_mac (AVDES *d, uint8_t *dst, const uint8_t *src, int count) |
Calculates CBC-MAC using the DES algorithm. More... | |
Variables | |
static const uint8_t | IP_shuffle [] |
static const uint8_t | PC1_shuffle [] |
static const uint8_t | PC2_shuffle [] |
static const uint32_t | S_boxes_P_shuffle [8][64] |
This table contains the results of applying both the S-box and P-shuffle. More... | |
|
static |
Definition at line 199 of file des.c.
Referenced by des_encdec(), f_func(), and gen_roundkeys().
|
static |
Definition at line 207 of file des.c.
Referenced by des_encdec().
|
static |
Definition at line 218 of file des.c.
Referenced by des_encdec().
|
static |
rotate the two halves of the expanded 56 bit key each 1 bit left
Note: the specification calls this "shift", so I kept it although it is confusing.
Definition at line 249 of file des.c.
Referenced by gen_roundkeys().
|
static |
Definition at line 257 of file des.c.
Referenced by av_des_init().
|
static |
Definition at line 270 of file des.c.
Referenced by av_des_crypt_mac().
Definition at line 293 of file des.c.
Referenced by ff_asfcrypt_dec(), nprobe(), and rprobe().
|
static |
Definition at line 305 of file des.c.
Referenced by av_des_crypt(), and av_des_mac().
|
static |
Definition at line 29 of file des.c.
Referenced by des_encdec().
|
static |
Definition at line 57 of file des.c.
Referenced by gen_roundkeys().
|
static |