A method for data cryptography includes accepting input data, which
contains a section that is to undergo a cryptographic operation and
starts at an offset with respect to a beginning of the input data, by a
Direct Memory Access (DMA) module. The input data is aligned by the DMA
module to cancel out the offset. The aligned input data is read out of
the DMA module, and the cryptographic operation is performed on the
section.