desedekeygenerator.java

来自「进行与数字证书相关开发必须的java源码」· Java 代码 · 共 47 行

JAVA
47
字号
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   DESedeKeyGenerator.java

package jit.crypto.generators;

import jit.crypto.CipherKeyGenerator;
import jit.crypto.KeyGenerationParameters;
import jit.crypto.params.DESedeParameters;
import jit.security.SecureRandom;

// Referenced classes of package jit.crypto.generators:
//            DESKeyGenerator

public class DESedeKeyGenerator extends DESKeyGenerator
{

    public DESedeKeyGenerator()
    {
    }

    public void init(KeyGenerationParameters param)
    {
        super.init(param);
        if(strength == 0 || strength == 21)
            strength = 24;
        else
        if(strength == 14)
            strength = 16;
        else
        if(strength != 24 && strength != 16)
            throw new IllegalArgumentException("DESede key must be 192 or 128 bits long.");
    }

    public byte[] generateKey()
    {
        byte newKey[] = new byte[strength];
        do
        {
            random.nextBytes(newKey);
            DESedeParameters.setOddParity(newKey);
        } while(DESedeParameters.isWeakKey(newKey, 0, newKey.length));
        return newKey;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?