22 lines
468 B
Rust
22 lines
468 B
Rust
![]() |
extern "C" {
|
||
|
fn chacha20_cbc_encrypt(
|
||
|
input: *const u8,
|
||
|
output: *mut u8,
|
||
|
in_len: usize,
|
||
|
key: *const u8,
|
||
|
ivec: *mut u8,
|
||
|
);
|
||
|
}
|
||
|
|
||
|
pub fn chacha_cbc_encrypt(input: &[u8], output: &mut [u8], key: &[u8], ivec: &mut [u8]) {
|
||
|
unsafe {
|
||
|
chacha20_cbc_encrypt(
|
||
|
input.as_ptr(),
|
||
|
output.as_mut_ptr(),
|
||
|
input.len(),
|
||
|
key.as_ptr(),
|
||
|
ivec.as_mut_ptr(),
|
||
|
);
|
||
|
}
|
||
|
}
|