aboutsummaryrefslogtreecommitdiffstats
path: root/libraries/spongycastle/prov/src/main/java/org/spongycastle/jcajce/provider/symmetric/Noekeon.java
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/spongycastle/prov/src/main/java/org/spongycastle/jcajce/provider/symmetric/Noekeon.java')
-rw-r--r--libraries/spongycastle/prov/src/main/java/org/spongycastle/jcajce/provider/symmetric/Noekeon.java153
1 files changed, 0 insertions, 153 deletions
diff --git a/libraries/spongycastle/prov/src/main/java/org/spongycastle/jcajce/provider/symmetric/Noekeon.java b/libraries/spongycastle/prov/src/main/java/org/spongycastle/jcajce/provider/symmetric/Noekeon.java
deleted file mode 100644
index 4342b1024..000000000
--- a/libraries/spongycastle/prov/src/main/java/org/spongycastle/jcajce/provider/symmetric/Noekeon.java
+++ /dev/null
@@ -1,153 +0,0 @@
-package org.spongycastle.jcajce.provider.symmetric;
-
-import java.security.AlgorithmParameters;
-import java.security.InvalidAlgorithmParameterException;
-import java.security.SecureRandom;
-import java.security.spec.AlgorithmParameterSpec;
-
-import javax.crypto.spec.IvParameterSpec;
-
-import org.spongycastle.crypto.BlockCipher;
-import org.spongycastle.crypto.CipherKeyGenerator;
-import org.spongycastle.crypto.engines.NoekeonEngine;
-import org.spongycastle.crypto.generators.Poly1305KeyGenerator;
-import org.spongycastle.crypto.macs.GMac;
-import org.spongycastle.crypto.modes.GCMBlockCipher;
-import org.spongycastle.jcajce.provider.config.ConfigurableProvider;
-import org.spongycastle.jcajce.provider.symmetric.util.BaseAlgorithmParameterGenerator;
-import org.spongycastle.jcajce.provider.symmetric.util.BaseBlockCipher;
-import org.spongycastle.jcajce.provider.symmetric.util.BaseKeyGenerator;
-import org.spongycastle.jcajce.provider.symmetric.util.BaseMac;
-import org.spongycastle.jcajce.provider.symmetric.util.BlockCipherProvider;
-import org.spongycastle.jcajce.provider.symmetric.util.IvAlgorithmParameters;
-import org.spongycastle.jce.provider.BouncyCastleProvider;
-
-public final class Noekeon
-{
- private Noekeon()
- {
- }
-
- public static class ECB
- extends BaseBlockCipher
- {
- public ECB()
- {
- super(new BlockCipherProvider()
- {
- public BlockCipher get()
- {
- return new NoekeonEngine();
- }
- });
- }
- }
-
- public static class KeyGen
- extends BaseKeyGenerator
- {
- public KeyGen()
- {
- super("Noekeon", 128, new CipherKeyGenerator());
- }
- }
-
- public static class GMAC
- extends BaseMac
- {
- public GMAC()
- {
- super(new GMac(new GCMBlockCipher(new NoekeonEngine())));
- }
- }
-
- public static class Poly1305
- extends BaseMac
- {
- public Poly1305()
- {
- super(new org.spongycastle.crypto.macs.Poly1305(new NoekeonEngine()));
- }
- }
-
- public static class Poly1305KeyGen
- extends BaseKeyGenerator
- {
- public Poly1305KeyGen()
- {
- super("Poly1305-Noekeon", 256, new Poly1305KeyGenerator());
- }
- }
-
- public static class AlgParamGen
- extends BaseAlgorithmParameterGenerator
- {
- protected void engineInit(
- AlgorithmParameterSpec genParamSpec,
- SecureRandom random)
- throws InvalidAlgorithmParameterException
- {
- throw new InvalidAlgorithmParameterException("No supported AlgorithmParameterSpec for Noekeon parameter generation.");
- }
-
- protected AlgorithmParameters engineGenerateParameters()
- {
- byte[] iv = new byte[16];
-
- if (random == null)
- {
- random = new SecureRandom();
- }
-
- random.nextBytes(iv);
-
- AlgorithmParameters params;
-
- try
- {
- params = AlgorithmParameters.getInstance("Noekeon", BouncyCastleProvider.PROVIDER_NAME);
- params.init(new IvParameterSpec(iv));
- }
- catch (Exception e)
- {
- throw new RuntimeException(e.getMessage());
- }
-
- return params;
- }
- }
-
- public static class AlgParams
- extends IvAlgorithmParameters
- {
- protected String engineToString()
- {
- return "Noekeon IV";
- }
- }
-
- public static class Mappings
- extends SymmetricAlgorithmProvider
- {
- private static final String PREFIX = Noekeon.class.getName();
-
- public Mappings()
- {
- }
-
- public void configure(ConfigurableProvider provider)
- {
-
- provider.addAlgorithm("AlgorithmParameters.NOEKEON", PREFIX + "$AlgParams");
-
- provider.addAlgorithm("AlgorithmParameterGenerator.NOEKEON", PREFIX + "$AlgParamGen");
-
- provider.addAlgorithm("Cipher.NOEKEON", PREFIX + "$ECB");
-
- provider.addAlgorithm("KeyGenerator.NOEKEON", PREFIX + "$KeyGen");
-
- addGMacAlgorithm(provider, "NOEKEON", PREFIX + "$GMAC", PREFIX + "$KeyGen");
- addPoly1305Algorithm(provider, "NOEKEON", PREFIX + "$Poly1305", PREFIX + "$Poly1305KeyGen");
- }
- }
-}