A method and apparatus for encrypting information. In one embodiment, a
method for encrypting information includes obtaining a value A from an
array having a plurality of values and determining a value B based on the
value A in a first pipeline stage. In a second pipeline stage, a value V
may be determined from the value A and the value B. The value V may then
be exclusive ORed (XORed) with a data value that forms a portion of the
information being encrypted. A first logic unit may include the first
pipeline stage, while a second logic unit may include the second pipeline
stage. The array may be stored in a plurality of flip-flops in one
embodiment, or may be stored in one or more register files in a second
embodiment. The method and apparatus may be used for decrypting
information as well.