A device for and method of cryptographically wrapping information by first
constructing information to be wrapped into an even multiple of y bits.
Information to be wrapped is parsed into equal blocks P.sub.1, P.sub.2, .
. . , P.sub.n. Next, registers R.sub.i are loaded with the blocks
P.sub.i. Next, an initialization vector IV is stored into a register A.
Set j=0. Set i=1. Set t=(n.times.j)+i. Concatenate A and R.sub.i. Encrypt
the result of the last step to form 2y encrypted bits. Divide the
encrypted bits into a first set of y bits and a second set of y bits. Set
R.sub.i equal to the first set. Combine the second set with t using a
user-definable function. Set A equal to the combination. If i=n then
increment j and reset i=1; otherwise, increment i. If j is equal to a
user-definable number then return A, R.sub.1, R.sub.2, . . . , R.sub.n as
the cryptographically wrapped information and stop. Otherwise, return to
the step where t is set.