Examples of PBEParametersGenerator


Examples of org.bouncycastle.crypto.PBEParametersGenerator

            PBEKeySpec keySpec,
            int type,
            int hash,
            int keySize)
        {
            PBEParametersGenerator  generator = makePBEGenerator(type, hash);
            byte[]                  key;
            CipherParameters        param;
   
            key = convertPassword(type, keySpec);
           
            generator.init(key, keySpec.getSalt(), keySpec.getIterationCount());
   
            param = generator.generateDerivedMacParameters(keySize);
   
            for (int i = 0; i != key.length; i++)
            {
                key[i] = 0;
            }
View Full Code Here

Examples of org.bouncycastle.crypto.PBEParametersGenerator

    {
        static private PBEParametersGenerator makePBEGenerator(
            int                     type,
            int                     hash)
        {
            PBEParametersGenerator  generator;
   
            if (type == PKCS5S1)
            {
                switch (hash)
                {
View Full Code Here

Examples of org.bouncycastle.crypto.PBEParametersGenerator

            {
                throw new IllegalArgumentException("Need a PBEParameter spec with a PBE key.");
            }
   
            PBEParameterSpec        pbeParam = (PBEParameterSpec)spec;
            PBEParametersGenerator  generator = makePBEGenerator(pbeKey.getType(), pbeKey.getDigest());
            byte[]                  key = pbeKey.getEncoded();
            CipherParameters        param;
   
            if (pbeKey.shouldTryWrongPKCS12())
            {
                key = new byte[2];
            }
           
            generator.init(key, pbeParam.getSalt(), pbeParam.getIterationCount());

            if (pbeKey.getIvSize() != 0)
            {
                param = generator.generateDerivedParameters(pbeKey.getKeySize(), pbeKey.getIvSize());
            }
            else
            {
                param = generator.generateDerivedParameters(pbeKey.getKeySize());
            }

            if (targetAlgorithm.startsWith("DES"))
            {
                if (param instanceof ParametersWithIV)
View Full Code Here

Examples of org.bouncycastle.crypto.PBEParametersGenerator

            {
                throw new IllegalArgumentException("Need a PBEParameter spec with a PBE key.");
            }
   
            PBEParameterSpec        pbeParam = (PBEParameterSpec)spec;
            PBEParametersGenerator  generator = makePBEGenerator(pbeKey.getType(), pbeKey.getDigest());
            byte[]                  key = pbeKey.getEncoded();
            CipherParameters        param;
   
            if (pbeKey.shouldTryWrongPKCS12())
            {
                key = new byte[2];
            }
           
            generator.init(key, pbeParam.getSalt(), pbeParam.getIterationCount());

            param = generator.generateDerivedMacParameters(pbeKey.getKeySize());
   
            for (int i = 0; i != key.length; i++)
            {
                key[i] = 0;
            }
View Full Code Here

Examples of org.bouncycastle.crypto.PBEParametersGenerator

            int                     type,
            int                     hash,
            int                     keySize,
            int                     ivSize)
        {   
            PBEParametersGenerator  generator = makePBEGenerator(type, hash);
            byte[]                  key;
            CipherParameters        param;
   
            if (type == PKCS12)
            {
                key = PBEParametersGenerator.PKCS12PasswordToBytes(keySpec.getPassword());
            }
            else
            {  
                key = PBEParametersGenerator.PKCS5PasswordToBytes(keySpec.getPassword());
            }
           
            generator.init(key, keySpec.getSalt(), keySpec.getIterationCount());
   
            if (ivSize != 0)
            {
                param = generator.generateDerivedParameters(keySize, ivSize);
            }
            else
            {
                param = generator.generateDerivedParameters(keySize);
            }
   
            for (int i = 0; i != key.length; i++)
            {
                key[i] = 0;
View Full Code Here

Examples of org.bouncycastle.crypto.PBEParametersGenerator

            PBEKeySpec              keySpec,
            int                     type,
            int                     hash,
            int                     keySize)
        {
            PBEParametersGenerator  generator = makePBEGenerator(type, hash);
            byte[]                  key;
            CipherParameters        param;
   
            if (type == PKCS12)
            {
                key = PBEParametersGenerator.PKCS12PasswordToBytes(keySpec.getPassword());
            }
            else
            {  
                key = PBEParametersGenerator.PKCS5PasswordToBytes(keySpec.getPassword());
            }
           
            generator.init(key, keySpec.getSalt(), keySpec.getIterationCount());
   
            param = generator.generateDerivedMacParameters(keySize);
   
            for (int i = 0; i != key.length; i++)
            {
                key[i] = 0;
            }
View Full Code Here

Examples of org.bouncycastle.crypto.PBEParametersGenerator

        int         iterationCount = dIn.readInt();

        HMac                    hMac = new HMac(new SHA1Digest());
        MacInputStream          mIn = new MacInputStream(dIn, hMac);
        PBEParametersGenerator  pbeGen = new PKCS12ParametersGenerator(new SHA1Digest());
        byte[]                  passKey = PBEParametersGenerator.PKCS12PasswordToBytes(password);

        pbeGen.init(passKey, salt, iterationCount);

        hMac.init(pbeGen.generateDerivedMacParameters(hMac.getMacSize()));

        for (int i = 0; i != passKey.length; i++)
        {
            passKey[i] = 0;
        }
View Full Code Here

Examples of org.bouncycastle.crypto.PBEParametersGenerator

        dOut.write(salt);
        dOut.writeInt(iterationCount);

        HMac                    hMac = new HMac(new SHA1Digest());
        MacOutputStream         mOut = new MacOutputStream(dOut, hMac);
        PBEParametersGenerator  pbeGen = new PKCS12ParametersGenerator(new SHA1Digest());
        byte[]                  passKey = PBEParametersGenerator.PKCS12PasswordToBytes(password);

        pbeGen.init(passKey, salt, iterationCount);

        hMac.init(pbeGen.generateDerivedMacParameters(hMac.getMacSize()));

        for (int i = 0; i != passKey.length; i++)
        {
            passKey[i] = 0;
        }
View Full Code Here

Examples of org.bouncycastle.crypto.PBEParametersGenerator

        }

        public TestResult perform()
        {
            char[]                  password = { 'p', 'a', 's', 's', 'w', 'o', 'r', 'd' };
            PBEParametersGenerator  generator = new PKCS5S2ParametersGenerator();
            ByteArrayInputStream    bIn = new ByteArrayInputStream(sample);
            ASN1InputStream         dIn = new ASN1InputStream(bIn);
            EncryptedPrivateKeyInfo info;

            try
            {
                info = new EncryptedPrivateKeyInfo((ASN1Sequence)dIn.readObject());
            }
            catch (Exception e)
            {
                return new SimpleTestResult(false, getName() + ": failed construction - exception " + e.toString());
            }

            PBES2Parameters         alg = new PBES2Parameters((ASN1Sequence)info.getEncryptionAlgorithm().getParameters());
            PBKDF2Params            func = PBKDF2Params.getInstance(alg.getKeyDerivationFunc().getParameters());
            EncryptionScheme        scheme = alg.getEncryptionScheme();
   
            if (func.getKeyLength() != null)
            {
                keySize = func.getKeyLength().intValue() * 8;
            }
   
            int     iterationCount = func.getIterationCount().intValue();
            byte[]  salt = func.getSalt();
   
            generator.init(
                PBEParametersGenerator.PKCS5PasswordToBytes(password),
                salt,
                iterationCount);
   
            CipherParameters    param;
   
            if (scheme.getObjectId().equals(RC2_CBC))
            {
                RC2CBCParameter rc2Params = new RC2CBCParameter((ASN1Sequence)scheme.getObject());
                byte[]  iv = rc2Params.getIV();
   
                param = new ParametersWithIV(generator.generateDerivedParameters(keySize), iv);
            }
            else
            {
                byte[]  iv = ((ASN1OctetString)scheme.getObject()).getOctets();

                param = new ParametersWithIV(generator.generateDerivedParameters(keySize), iv);
            }
   
            cipher.init(false, param);
   
            byte[]  data = info.getEncryptedData();
View Full Code Here

Examples of org.bouncycastle.crypto.PBEParametersGenerator

        char[]  password,
        byte[]  salt,
        int     iCount,
        byte[]  result)
    {
        PBEParametersGenerator  generator = new PKCS12ParametersGenerator(
                                                    new SHA1Digest());

        generator.init(
                PBEParametersGenerator.PKCS12PasswordToBytes(password),
                salt,
                iCount);

        CipherParameters  key = generator.generateDerivedParameters(24 * 8);

        if (isEqual(result, ((KeyParameter)key).getKey()))
        {
            return new SimpleTestResult(true, "PKCS12Test: Okay");
        }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.