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