当前位置: 首页>>代码示例>>Java>>正文


Java ElGamalPublicKey类代码示例

本文整理汇总了Java中org.bouncycastle.jce.interfaces.ElGamalPublicKey的典型用法代码示例。如果您正苦于以下问题:Java ElGamalPublicKey类的具体用法?Java ElGamalPublicKey怎么用?Java ElGamalPublicKey使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ElGamalPublicKey类属于org.bouncycastle.jce.interfaces包,在下文中一共展示了ElGamalPublicKey类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: engineTranslateKey

import org.bouncycastle.jce.interfaces.ElGamalPublicKey; //导入依赖的package包/类
protected Key engineTranslateKey(
    Key key)
    throws InvalidKeyException
{
    if (key instanceof DHPublicKey)
    {
        return new BCElGamalPublicKey((DHPublicKey)key);
    }
    else if (key instanceof DHPrivateKey)
    {
        return new BCElGamalPrivateKey((DHPrivateKey)key);
    }
    else if (key instanceof ElGamalPublicKey)
    {
        return new BCElGamalPublicKey((ElGamalPublicKey)key);
    }
    else if (key instanceof ElGamalPrivateKey)
    {
        return new BCElGamalPrivateKey((ElGamalPrivateKey)key);
    }

    throw new InvalidKeyException("key type unknown");
}
 
开发者ID:Appdome,项目名称:ipack,代码行数:24,代码来源:KeyFactorySpi.java

示例2: generatePublicKeyParameter

import org.bouncycastle.jce.interfaces.ElGamalPublicKey; //导入依赖的package包/类
static public AsymmetricKeyParameter generatePublicKeyParameter(
    PublicKey    key)
    throws InvalidKeyException
{
    if (key instanceof ElGamalPublicKey)
    {
        ElGamalPublicKey    k = (ElGamalPublicKey)key;

        return new ElGamalPublicKeyParameters(k.getY(),
            new ElGamalParameters(k.getParams().getP(), k.getParams().getG()));
    }

    throw new InvalidKeyException("can't identify ElGamal public key.");
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:15,代码来源:ElGamalUtil.java

示例3: elGamalTest

import org.bouncycastle.jce.interfaces.ElGamalPublicKey; //导入依赖的package包/类
private void elGamalTest()
    throws IOException, ClassNotFoundException
{
    ElGamalPublicKey pub = (ElGamalPublicKey)readObject(elGamalPub);

    if (!elGamalY.equals(pub.getY()))
    {
        fail("public key y mismatch");
    }
    if (!elGamalG.equals(pub.getParameters().getG()))
    {
        fail("public key g mismatch");
    }
    if (!elGamalP.equals(pub.getParameters().getP()))
    {
        fail("public key p mismatch");
    }
    
    ElGamalPrivateKey priv = (ElGamalPrivateKey)readObject(elGamalPriv);

    if (!elGamalX.equals(priv.getX()))
    {
        fail("private key x mismatch");
    }
    if (!elGamalG.equals(priv.getParameters().getG()))
    {
        fail("private key g mismatch");
    }
    if (!elGamalP.equals(priv.getParameters().getP()))
    {
        fail("private key p mismatch");
    }
}
 
开发者ID:NoYouShutup,项目名称:CryptMeme,代码行数:34,代码来源:SerialisationTest.java

示例4: JCEElGamalPublicKey

import org.bouncycastle.jce.interfaces.ElGamalPublicKey; //导入依赖的package包/类
JCEElGamalPublicKey(
    ElGamalPublicKey    key)
{
    this.y = key.getY();
    this.elSpec = key.getParameters();
}
 
开发者ID:Appdome,项目名称:ipack,代码行数:7,代码来源:JCEElGamalPublicKey.java

示例5: BCElGamalPublicKey

import org.bouncycastle.jce.interfaces.ElGamalPublicKey; //导入依赖的package包/类
BCElGamalPublicKey(
    ElGamalPublicKey key)
{
    this.y = key.getY();
    this.elSpec = key.getParameters();
}
 
开发者ID:Appdome,项目名称:ipack,代码行数:7,代码来源:BCElGamalPublicKey.java

示例6: engineTranslateKey

import org.bouncycastle.jce.interfaces.ElGamalPublicKey; //导入依赖的package包/类
protected Key engineTranslateKey(
    Key    key)
    throws InvalidKeyException
{
    if (key instanceof RSAPublicKey)
    {
        return new JCERSAPublicKey((RSAPublicKey)key);
    }
    else if (key instanceof RSAPrivateCrtKey)
    {
        //return new JCERSAPrivateCrtKey((RSAPrivateCrtKey)key);
    }
    else if (key instanceof RSAPrivateKey)
    {
        //return new JCERSAPrivateKey((RSAPrivateKey)key);
    }
    else if (key instanceof DHPublicKey)
    {
        //return new JCEDHPublicKey((DHPublicKey)key);
    }
    else if (key instanceof DHPrivateKey)
    {
        //return new JCEDHPrivateKey((DHPrivateKey)key);
    }
    else if (key instanceof DSAPublicKey)
    {
        //return new JDKDSAPublicKey((DSAPublicKey)key);
    }
    else if (key instanceof DSAPrivateKey)
    {
        //return new JDKDSAPrivateKey((DSAPrivateKey)key);
    }
    else if (key instanceof ElGamalPublicKey)
    {
        //return new JCEElGamalPublicKey((ElGamalPublicKey)key);
    }
    else if (key instanceof ElGamalPrivateKey)
    {
        //return new JCEElGamalPrivateKey((ElGamalPrivateKey)key);
    }

    throw new InvalidKeyException("key type unknown");
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:44,代码来源:JDKKeyFactory.java

示例7: engineInit

import org.bouncycastle.jce.interfaces.ElGamalPublicKey; //导入依赖的package包/类
protected void engineInit(
    int                     opmode,
    Key                     key,
    AlgorithmParameterSpec  params,
    SecureRandom            random) 
throws InvalidKeyException
{
    CipherParameters        param;

    if (params == null)
    {
        if (key instanceof ElGamalPublicKey)
        {
            param = ElGamalUtil.generatePublicKeyParameter((PublicKey)key);
        }
        else if (key instanceof ElGamalPrivateKey)
        {
            param = ElGamalUtil.generatePrivateKeyParameter((PrivateKey)key);
        }
        else
        {
            throw new InvalidKeyException("unknown key type passed to ElGamal");
        }
    }
    else
    {
        throw new IllegalArgumentException("unknown parameter type.");
    }

    if (random != null)
    {
        param = new ParametersWithRandom(param, random);
    }

    switch (opmode)
    {
    case javax.crypto.Cipher.ENCRYPT_MODE:
    case javax.crypto.Cipher.WRAP_MODE:
        cipher.init(true, param);
        break;
    case javax.crypto.Cipher.DECRYPT_MODE:
    case javax.crypto.Cipher.UNWRAP_MODE:
        cipher.init(false, param);
        break;
    default:
        throw new InvalidParameterException("unknown opmode " + opmode + " passed to ElGamal");
    }
}
 
开发者ID:NoYouShutup,项目名称:CryptMeme,代码行数:49,代码来源:CipherSpi.java


注:本文中的org.bouncycastle.jce.interfaces.ElGamalPublicKey类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。