Class Zuc128CoreEngine

    • Constructor Detail

      • Zuc128CoreEngine

        protected Zuc128CoreEngine()
        Constructor.
      • Zuc128CoreEngine

        protected Zuc128CoreEngine​(Zuc128CoreEngine pSource)
        Constructor.
        Parameters:
        pSource - the source engine
    • Method Detail

      • init

        public void init​(boolean forEncryption,
                         CipherParameters params)
        initialise a Snow3G cipher.
        Specified by:
        init in interface StreamCipher
        Parameters:
        forEncryption - whether or not we are for encryption.
        params - the parameters required to set up the cipher.
        Throws:
        IllegalArgumentException - if the params argument is inappropriate.
      • getMaxIterations

        protected int getMaxIterations()
        Obtain Max iterations.
        Returns:
        the maximum iterations
      • processBytes

        public int processBytes​(byte[] in,
                                int inOff,
                                int len,
                                byte[] out,
                                int outOff)
        Process bytes.
        Specified by:
        processBytes in interface StreamCipher
        Parameters:
        in - the input buffer
        inOff - the starting offset in the input buffer
        len - the length of data in the input buffer
        out - the output buffer
        outOff - the starting offset in the output buffer
        Returns:
        the number of bytes returned in the output buffer
      • reset

        public void reset()
        Reset the engine.
        Specified by:
        reset in interface StreamCipher
      • returnByte

        public byte returnByte​(byte in)
        Process single byte.
        Specified by:
        returnByte in interface StreamCipher
        Parameters:
        in - the input byte
        Returns:
        the output byte
      • encode32be

        public static void encode32be​(int val,
                                      byte[] buf,
                                      int off)
        Encode a 32-bit value into a buffer (little-endian).
        Parameters:
        val - the value to encode
        buf - the output buffer
        off - the output offset
      • setKeyAndIV

        protected void setKeyAndIV​(int[] pLFSR,
                                   byte[] k,
                                   byte[] iv)
        Process key and IV into LFSR.
        Parameters:
        pLFSR - the LFSR
        k - the key
        iv - the iv
      • makeKeyStreamWord

        protected int makeKeyStreamWord()
        Create the next keyStream word.
        Returns:
        the next word
      • copy

        public Memoable copy()
        Create a copy of the engine.
        Specified by:
        copy in interface Memoable
        Returns:
        the copy
      • reset

        public void reset​(Memoable pState)
        Reset from saved engine state.
        Specified by:
        reset in interface Memoable
        Parameters:
        pState - the state to restore