Skip to content

miniproto_native::crypto::aes_256_cbc_decrypt

  • Crate: miniproto_native
  • Rust visibility: restricted
  • Source: rust/miniproto/src/crypto.rs
  • Python exposure: miniproto._native.aes_256_cbc_decrypt (confirmed from adjacent PyO3 attributes)
fn aes_256_cbc_decrypt(py: _, ciphertext: _, key: _, iv: _) -> _
  • py: The acquired GIL token used to detach large decryption work.
  • ciphertext: AES-block-aligned bytes to decrypt.
  • key: The 32-byte AES-256 key.
  • iv: The 16-byte CBC initialization vector.
fn aes_256_cbc_decrypt(py: Python<'_>, ciphertext: Vec<u8>, key: Vec<u8>, iv: Vec<u8>) -> PyResult<Vec<u8>>

Defined in rust/miniproto/src/crypto.rs:337-347

Decrypts block-aligned bytes with Python aes_256_cbc_decrypt without padding.

Requires 32-byte key and 16-byte IV inputs; invalid lengths become ValueError and large ciphertexts release the GIL.

  • py: The acquired GIL token used to detach large decryption work.
  • ciphertext: AES-block-aligned bytes to decrypt.
  • key: The 32-byte AES-256 key.
  • iv: The 16-byte CBC initialization vector.