[#CRYPTO_cfb128_encrypt]
= CRYPTO&lowbar;cfb128&lowbar;encrypt
:mrdocs:

Encrypt or decrypt with a 128&hyphen;bit block cipher in full&hyphen;block CFB mode&period;

== Synopsis

Declared in `&lt;openssl&sol;modes&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
void
CRYPTO&lowbar;cfb128&lowbar;encrypt(
    unsigned char const* in,
    unsigned char* out,
    size&lowbar;t len,
    void const* key,
    unsigned char ivec[],
    int* num,
    int enc,
    xref:block128_f.adoc[block128&lowbar;f] block);
----

== Parameters

[cols="1,4"]
|===
| Name| Description
| *in*
| Input bytes of length `len&period;`
| *out*
| Output buffer of length `len` (may equal `in)&period;`
| *len*
| Number of bytes to process&period;
| *key*
| Cipher&hyphen;specific expanded key for `block&period;`
| *ivec*
| 16&hyphen;byte IV &sol; feedback block updated in place&period;
| *num*
| Offset into the current CFB block (updated&semi; typically starts at 0)&period;
| *enc*
| Non&hyphen;zero to encrypt, zero to decrypt&period;
| *block*
| Block&hyphen;encrypt function for the underlying cipher&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
