FFmpeg
|
RTMP Diffie-Hellmann utilities. More...
#include <stdint.h>
#include <string.h>
#include "config.h"
#include "libavutil/attributes.h"
#include "libavutil/error.h"
#include "libavutil/mem.h"
#include "libavutil/random_seed.h"
#include "rtmpdh.h"
Go to the source code of this file.
Macros | |
#define | P1024 |
#define | Q1024 |
Functions | |
static int | dh_is_valid_public_key (FFBigNum y, FFBigNum p, FFBigNum q) |
av_cold FF_DH * | ff_dh_init (int key_len) |
Initialize a Diffie-Hellmann context. More... | |
int | ff_dh_generate_public_key (FF_DH *dh) |
Generate a public key. More... | |
int | ff_dh_write_public_key (FF_DH *dh, uint8_t *pub_key, int pub_key_len) |
Write the public key into the given buffer. More... | |
int | ff_dh_compute_shared_secret_key (FF_DH *dh, const uint8_t *pub_key, int pub_key_len, uint8_t *secret_key, int secret_key_len) |
Compute the shared secret key from the private FF_DH value and the other party's public value. More... | |
RTMP Diffie-Hellmann utilities.
Definition in file rtmpdh.c.
#define P1024 |
Definition at line 41 of file rtmpdh.c.
Referenced by ff_dh_init().
#define Q1024 |
Definition at line 49 of file rtmpdh.c.
Referenced by ff_dh_compute_shared_secret_key(), and ff_dh_generate_public_key().
|
static |
Definition at line 230 of file rtmpdh.c.
Referenced by ff_dh_compute_shared_secret_key(), and ff_dh_generate_public_key().
av_cold FF_DH* ff_dh_init | ( | int | key_len | ) |
Initialize a Diffie-Hellmann context.
key_len | length of the key |
Definition at line 269 of file rtmpdh.c.
Referenced by ff_rtmpe_gen_pub_key(), test_random_shared_secret(), and test_ref_data().
int ff_dh_generate_public_key | ( | FF_DH * | dh | ) |
Generate a public key.
dh | a Diffie-Hellmann context |
Definition at line 296 of file rtmpdh.c.
Referenced by ff_rtmpe_gen_pub_key(), and test_random_shared_secret().
int ff_dh_write_public_key | ( | FF_DH * | dh, |
uint8_t * | pub_key, | ||
int | pub_key_len | ||
) |
Write the public key into the given buffer.
dh | a Diffie-Hellmann context, containing the public key to write |
pub_key | the buffer where the public key is written |
pub_key_len | the length of the buffer |
Definition at line 322 of file rtmpdh.c.
Referenced by ff_rtmpe_gen_pub_key(), test_random_shared_secret(), and test_ref_data().
int ff_dh_compute_shared_secret_key | ( | FF_DH * | dh, |
const uint8_t * | pub_key, | ||
int | pub_key_len, | ||
uint8_t * | secret_key, | ||
int | secret_key_len | ||
) |
Compute the shared secret key from the private FF_DH value and the other party's public value.
dh | a Diffie-Hellmann context, containing the private key |
pub_key | the buffer containing the public key |
pub_key_len | the length of the public key buffer |
secret_key | the buffer where the secret key is written |
secret_key_len | the length of the secret key buffer |
Definition at line 338 of file rtmpdh.c.
Referenced by ff_rtmpe_compute_secret_key(), test_random_shared_secret(), and test_ref_data().