[#DES_xcbc_encrypt]
= DES&lowbar;xcbc&lowbar;encrypt
:mrdocs:

Encrypt or decrypt with DES in RSA DESX&hyphen;CBC (XCBC) mode (deprecated&semi; prefer EVP)&period;

== Synopsis

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

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
&lsqb;&lsqb;deprecated&rsqb;&rsqb;
void
DES&lowbar;xcbc&lowbar;encrypt(
    unsigned char const* input,
    unsigned char* output,
    long length,
    xref:DES_key_schedule.adoc[DES&lowbar;key&lowbar;schedule]* schedule,
    xref:DES_cblock.adoc[DES&lowbar;cblock]* ivec,
    xref:const_DES_cblock.adoc[const&lowbar;DES&lowbar;cblock]* inw,
    xref:const_DES_cblock.adoc[const&lowbar;DES&lowbar;cblock]* outw,
    int enc);
----

[WARNING]
====
https://en.cppreference.com/cpp/language/attributes/deprecated[Deprecated^]. Use of this entity is allowed but discouraged.
====
== Parameters

[cols="1,4"]
|===
| Name| Description
| *input*
| Input bytes of length `length&period;`
| *output*
| Output buffer of length `length&period;`
| *length*
| Number of bytes to process&period;
| *schedule*
| Expanded DES key schedule&period;
| *ivec*
| 8&hyphen;byte IV updated in place&period;
| *inw*
| Whitening value XORed with plaintext before DES (inw)&period;
| *outw*
| Whitening value XORed with DES output (outw)&period;
| *enc*
| DES&lowbar;ENCRYPT to encrypt, or DES&lowbar;DECRYPT to decrypt&period;
|===


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