org.spongycastle.jce.provider.symmetric.Skipjack Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of scprov-jdk15 Show documentation
Show all versions of scprov-jdk15 Show documentation
Spongy Castle is a package-rename (org.bouncycastle.* to org.spongycastle.*) of Bouncy Castle intended for Android.
Android ships with a stripped-down version of Bouncy Castle - this causes classloader collisions if you try to add
an alternative (updated/complete) Bouncy Castle jar.
This jar contains JCE provider and lightweight API for the Bouncy Castle Cryptography APIs for JDK 1.5.
The newest version!
package org.spongycastle.jce.provider.symmetric;
import java.util.HashMap;
import org.spongycastle.crypto.CipherKeyGenerator;
import org.spongycastle.crypto.engines.SkipjackEngine;
import org.spongycastle.crypto.macs.CBCBlockCipherMac;
import org.spongycastle.crypto.macs.CFBBlockCipherMac;
import org.spongycastle.jce.provider.JCEBlockCipher;
import org.spongycastle.jce.provider.JCEKeyGenerator;
import org.spongycastle.jce.provider.JCEMac;
import org.spongycastle.jce.provider.JDKAlgorithmParameters;
public final class Skipjack
{
private Skipjack()
{
}
public static class ECB
extends JCEBlockCipher
{
public ECB()
{
super(new SkipjackEngine());
}
}
public static class KeyGen
extends JCEKeyGenerator
{
public KeyGen()
{
super("Skipjack", 80, new CipherKeyGenerator());
}
}
public static class AlgParams
extends JDKAlgorithmParameters.IVAlgorithmParameters
{
protected String engineToString()
{
return "Skipjack IV";
}
}
public static class Mac
extends JCEMac
{
public Mac()
{
super(new CBCBlockCipherMac(new SkipjackEngine()));
}
}
public static class MacCFB8
extends JCEMac
{
public MacCFB8()
{
super(new CFBBlockCipherMac(new SkipjackEngine()));
}
}
public static class Mappings
extends HashMap
{
public Mappings()
{
put("Cipher.SKIPJACK", "org.spongycastle.jce.provider.symmetric.Skipjack$ECB");
put("KeyGenerator.SKIPJACK", "org.spongycastle.jce.provider.symmetric.Skipjack$KeyGen");
put("AlgorithmParameters.SKIPJACK", "org.spongycastle.jce.provider.symmetric.Skipjack$AlgParams");
put("Mac.SKIPJACKMAC", "org.spongycastle.jce.provider.symmetric.Skipjack$Mac");
put("Alg.Alias.Mac.SKIPJACK", "SKIPJACKMAC");
put("Mac.SKIPJACKMAC/CFB8", "org.spongycastle.jce.provider.symmetric.Skipjack$MacCFB8");
put("Alg.Alias.Mac.SKIPJACK/CFB8", "SKIPJACKMAC/CFB8");
}
}
}