1 package org.bouncycastle.crypto.engines; 2 3 import org.bouncycastle.util.Memoable; 4 5 /** 6 * Zuc256 implementation. 7 * Based on https://www.is.cas.cn/ztzl2016/zouchongzhi/201801/W020180126529970733243.pdf 8 */ 9 public final class Zuc128Engine 10 extends Zuc128CoreEngine 11 { 12 /** 13 * Constructor for streamCipher. 14 */ Zuc128Engine()15 public Zuc128Engine() 16 { 17 super(); 18 } 19 20 /** 21 * Constructor for Memoable. 22 * 23 * @param pSource the source engine 24 */ Zuc128Engine(final Zuc128Engine pSource)25 private Zuc128Engine(final Zuc128Engine pSource) 26 { 27 super(pSource); 28 } 29 30 /** 31 * Create a copy of the engine. 32 * 33 * @return the copy 34 */ copy()35 public Memoable copy() 36 { 37 return new Zuc128Engine(this); 38 } 39 } 40