| FFmpeg
    | 
#include <stddef.h>#include "libavutil/bswap.h"#include "libavutil/des.h"#include "libavutil/intreadwrite.h"#include "libavutil/mem.h"#include "libavutil/rc4.h"#include "asfcrypt.h"Go to the source code of this file.
| Functions | |
| static uint32_t | inverse (uint32_t v) | 
| find multiplicative inverse modulo 2 ^ 32  More... | |
| static void | multiswap_init (const uint8_t keybuf[48], uint32_t keys[12]) | 
| read keys from keybuf into keys  More... | |
| static void | multiswap_invert_keys (uint32_t keys[12]) | 
| invert the keys so that encryption become decryption keys and the other way round.  More... | |
| static uint32_t | multiswap_step (const uint32_t keys[12], uint32_t v) | 
| static uint32_t | multiswap_inv_step (const uint32_t keys[12], uint32_t v) | 
| static uint64_t | multiswap_enc (const uint32_t keys[12], uint64_t key, uint64_t data) | 
| "MultiSwap" encryption  More... | |
| static uint64_t | multiswap_dec (const uint32_t keys[12], uint64_t key, uint64_t data) | 
| "MultiSwap" decryption  More... | |
| void | ff_asfcrypt_dec (const uint8_t key[20], uint8_t *data, int len) | 
| 
 | static | 
find multiplicative inverse modulo 2 ^ 32
| v | number to invert, must be odd! | 
Definition at line 36 of file asfcrypt.c.
Referenced by multiswap_invert_keys().
| 
 | static | 
read keys from keybuf into keys
| keybuf | buffer containing the keys | 
| keys | output key array containing the keys for encryption in native endianness | 
Definition at line 55 of file asfcrypt.c.
Referenced by ff_asfcrypt_dec().
| 
 | static | 
invert the keys so that encryption become decryption keys and the other way round.
| keys | key array of ints to invert | 
Definition at line 67 of file asfcrypt.c.
Referenced by ff_asfcrypt_dec().
| 
 | static | 
Definition at line 76 of file asfcrypt.c.
Referenced by multiswap_enc().
| 
 | static | 
Definition at line 88 of file asfcrypt.c.
Referenced by multiswap_dec().
| 
 | static | 
"MultiSwap" encryption
| keys | 32 bit numbers in machine endianness, 0-4 and 6-10 must be inverted from decryption | 
| key | another key, this one must be the same for the decryption | 
| data | data to encrypt | 
Definition at line 108 of file asfcrypt.c.
Referenced by ff_asfcrypt_dec().
| 
 | static | 
"MultiSwap" decryption
| keys | 32 bit numbers in machine endianness, 0-4 and 6-10 must be inverted from encryption | 
| key | another key, this one must be the same as for the encryption | 
| data | data to decrypt | 
Definition at line 132 of file asfcrypt.c.
Referenced by ff_asfcrypt_dec().
| void ff_asfcrypt_dec | ( | const uint8_t | key[20], | 
| uint8_t * | data, | ||
| int | len | ||
| ) | 
Definition at line 148 of file asfcrypt.c.
Referenced by asf_parse_packet(), asf_read_multiple_payload(), and asf_read_single_payload().
 1.8.17
 1.8.17