As the RC4* stream cipher, widely used for file encryption and secure communications, is the property of RSA Security Inc., a cipher discussed in this section and resulting in the same encryption/decryption as RC4* is called ARCFour.
The ARCFour stream cipher ([AC]) uses a variable length key of up to 256 octets (bytes). ARCFour operates in the Output Feedback mode (OFB), defined in [NIST SP 800-38A], which creates the keystream independently of both the plaintext and the ciphertext.
Table “Intel IPP ARCFour Algorithm Functions” lists Intel IPP ARCFour algorithm functions:
Function Base Name | Operation |
---|---|
ARCFourGetSize | Gets the size of the IppsARCFourState context. |
ARCFourCheckKey | Checks weakness of a user defined key. |
ARCFourInit | Initializes user-supplied memory as the IppsARCFourState context for future use. |
ARCFourPack, ARCFourUnpack | Packs/unpacks the ARCFourSpec context into/from a user-defined buffer. |
ARCFourEncrypt | Encrypts a variable length data stream according to ARCFour. |
ARCFourDecrypt | Decrypts a variable length data stream according to ARCFour. |
ARCFourReset | Resets the IppsARCFourState context to the initial state. |
The ARCFour algorithm functions, described in this section, use the context IppsARCFourState as an operational vehicle to carry variables needed to execute the algorithm: S-Boxes and a current pair of indices.
The typical application code for conducting an encryption or decryption using ARCFour should follow the sequence of operations listed below:
The ARCFourSpec context is position-dependent. The ARCFourPack/ARCFourUnpack functions transform the position-dependent context to a position-independent form and vice versa.
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.