org.bouncycastle.jcajce.spec.FPEParameterSpec Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bcprov-jdk15to18 Show documentation
Show all versions of bcprov-jdk15to18 Show documentation
The Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms. This jar contains JCE provider and lightweight API for the Bouncy Castle Cryptography APIs for JDK 1.5 to JDK 1.8.
package org.bouncycastle.jcajce.spec;
import java.security.spec.AlgorithmParameterSpec;
import org.bouncycastle.crypto.util.RadixConverter;
import org.bouncycastle.util.Arrays;
public class FPEParameterSpec
implements AlgorithmParameterSpec
{
private final RadixConverter radixConverter;
private final byte[] tweak;
private final boolean useInverse;
public FPEParameterSpec(int radix, byte[] tweak)
{
this(radix, tweak, false);
}
public FPEParameterSpec(int radix, byte[] tweak, boolean useInverse)
{
this(new RadixConverter(radix), tweak, useInverse);
}
public FPEParameterSpec(RadixConverter radixConverter, byte[] tweak, boolean useInverse)
{
this.radixConverter = radixConverter;
this.tweak = Arrays.clone(tweak);
this.useInverse = useInverse;
}
public int getRadix()
{
return radixConverter.getRadix();
}
public RadixConverter getRadixConverter()
{
return radixConverter;
}
public byte[] getTweak()
{
return Arrays.clone(tweak);
}
public boolean isUsingInverseFunction()
{
return useInverse;
}
}