|
@@ -63,6 +63,8 @@ cdef extern from "openssl/evp.h":
|
|
|
const EVP_CIPHER *EVP_aes_256_ocb()
|
|
|
const EVP_CIPHER *EVP_chacha20_poly1305()
|
|
|
|
|
|
+ EVP_CIPHER_CTX *EVP_CIPHER_CTX_new()
|
|
|
+ void EVP_CIPHER_CTX_free(EVP_CIPHER_CTX *a)
|
|
|
void EVP_CIPHER_CTX_init(EVP_CIPHER_CTX *a)
|
|
|
void EVP_CIPHER_CTX_cleanup(EVP_CIPHER_CTX *a)
|
|
|
|
|
@@ -82,17 +84,6 @@ cdef extern from "openssl/evp.h":
|
|
|
int EVP_CTRL_AEAD_SET_TAG
|
|
|
int EVP_CTRL_AEAD_SET_IVLEN
|
|
|
|
|
|
- const EVP_MD *EVP_sha256() nogil
|
|
|
-
|
|
|
- EVP_CIPHER_CTX *EVP_CIPHER_CTX_new()
|
|
|
- void EVP_CIPHER_CTX_free(EVP_CIPHER_CTX *a)
|
|
|
-
|
|
|
-cdef extern from "openssl/hmac.h":
|
|
|
- unsigned char *HMAC(const EVP_MD *evp_md,
|
|
|
- const void *key, int key_len,
|
|
|
- const unsigned char *data, int data_len,
|
|
|
- unsigned char *md, unsigned int *md_len) nogil
|
|
|
-
|
|
|
|
|
|
import struct
|
|
|
|
|
@@ -175,7 +166,7 @@ class UNENCRYPTED:
|
|
|
|
|
|
|
|
|
cdef class AES256_CTR_BASE:
|
|
|
- # Layout: HEADER + MAC 32 + IV 8 + CT (same as attic / borg < 1.3 IF HEADER = TYPE_BYTE, no AAD)
|
|
|
+ # Layout: HEADER + MAC 32 + IV 8 + CT (same as attic / borg < 2.0 IF HEADER = TYPE_BYTE, no AAD)
|
|
|
|
|
|
cdef EVP_CIPHER_CTX *ctx
|
|
|
cdef unsigned char enc_key[32]
|
|
@@ -407,7 +398,7 @@ ctypedef const EVP_CIPHER * (* CIPHER)()
|
|
|
|
|
|
|
|
|
cdef class _AEAD_BASE:
|
|
|
- # new crypto used in borg >= 1.3
|
|
|
+ # new crypto used in borg >= 2.0
|
|
|
# Layout: HEADER + MAC 16 + CT
|
|
|
|
|
|
cdef CIPHER cipher
|