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


Java LongDigest类代码示例

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


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

示例1: TlsMac

import org.bouncycastle.crypto.digests.LongDigest; //导入依赖的package包/类
/**
 * Generate a new instance of an TlsMac.
 *
 * @param context the TLS client context
 * @param digest  The digest to use.
 * @param key     A byte-array where the key for this mac is located.
 * @param keyOff  The number of bytes to skip, before the key starts in the buffer.
 * @param len     The length of the key.
 */
public TlsMac(TlsContext context, Digest digest, byte[] key, int keyOff, int keyLen)
{
    this.context = context;

    KeyParameter keyParameter = new KeyParameter(key, keyOff, keyLen);

    this.secret = Arrays.clone(keyParameter.getKey());

    // TODO This should check the actual algorithm, not rely on the engine type
    if (digest instanceof LongDigest)
    {
        this.digestBlockSize = 128;
        this.digestOverhead = 16;
    }
    else
    {
        this.digestBlockSize = 64;
        this.digestOverhead = 8;
    }

    if (context.getServerVersion().isSSL())
    {
        this.mac = new SSL3Mac(digest);

        // TODO This should check the actual algorithm, not assume based on the digest size
        if (digest.getDigestSize() == 20)
        {
            /*
             * NOTE: When SHA-1 is used with the SSL 3.0 MAC, the secret + input pad is not
             * digest block-aligned.
             */
            this.digestOverhead = 4;
        }
    }
    else
    {
        this.mac = new HMac(digest);

        // NOTE: The input pad for HMAC is always a full digest block
    }

    this.mac.init(keyParameter);
}
 
开发者ID:Appdome,项目名称:ipack,代码行数:53,代码来源:TlsMac.java

示例2: TlsMac

import org.bouncycastle.crypto.digests.LongDigest; //导入依赖的package包/类
/**
 * Generate a new instance of an TlsMac.
 *
 * @param context the TLS client context
 * @param digest  The digest to use.
 * @param key     A byte-array where the key for this MAC is located.
 * @param keyOff  The number of bytes to skip, before the key starts in the buffer.
 * @param keyLen  The length of the key.
 */
public TlsMac(TlsContext context, Digest digest, byte[] key, int keyOff, int keyLen)
{
    this.context = context;

    KeyParameter keyParameter = new KeyParameter(key, keyOff, keyLen);

    this.secret = Arrays.clone(keyParameter.getKey());

    // TODO This should check the actual algorithm, not rely on the engine type
    if (digest instanceof LongDigest)
    {
        this.digestBlockSize = 128;
        this.digestOverhead = 16;
    }
    else
    {
        this.digestBlockSize = 64;
        this.digestOverhead = 8;
    }

    if (TlsUtils.isSSL(context))
    {
        this.mac = new SSL3Mac(digest);

        // TODO This should check the actual algorithm, not assume based on the digest size
        if (digest.getDigestSize() == 20)
        {
            /*
             * NOTE: When SHA-1 is used with the SSL 3.0 MAC, the secret + input pad is not
             * digest block-aligned.
             */
            this.digestOverhead = 4;
        }
    }
    else
    {
        this.mac = new HMac(digest);

        // NOTE: The input pad for HMAC is always a full digest block
    }

    this.mac.init(keyParameter);

    this.macLength = mac.getMacSize();
    if (context.getSecurityParameters().truncatedHMac)
    {
        this.macLength = Math.min(this.macLength, 10);
    }
}
 
开发者ID:ttt43ttt,项目名称:gwt-crypto,代码行数:59,代码来源:TlsMac.java

示例3: TlsMac

import org.bouncycastle.crypto.digests.LongDigest; //导入依赖的package包/类
/**
 * Generate a new instance of an TlsMac.
 *
 * @param context the TLS client context
 * @param digest  The digest to use.
 * @param key     A byte-array where the key for this MAC is located.
 * @param keyOff  The number of bytes to skip, before the key starts in the buffer.
 * @param len     The length of the key.
 */
public TlsMac(TlsContext context, Digest digest, byte[] key, int keyOff, int keyLen)
{
    this.context = context;

    KeyParameter keyParameter = new KeyParameter(key, keyOff, keyLen);

    this.secret = Arrays.clone(keyParameter.getKey());

    // TODO This should check the actual algorithm, not rely on the engine type
    if (digest instanceof LongDigest)
    {
        this.digestBlockSize = 128;
        this.digestOverhead = 16;
    }
    else
    {
        this.digestBlockSize = 64;
        this.digestOverhead = 8;
    }

    if (TlsUtils.isSSL(context))
    {
        this.mac = new SSL3Mac(digest);

        // TODO This should check the actual algorithm, not assume based on the digest size
        if (digest.getDigestSize() == 20)
        {
            /*
             * NOTE: When SHA-1 is used with the SSL 3.0 MAC, the secret + input pad is not
             * digest block-aligned.
             */
            this.digestOverhead = 4;
        }
    }
    else
    {
        this.mac = new HMac(digest);

        // NOTE: The input pad for HMAC is always a full digest block
    }

    this.mac.init(keyParameter);

    this.macLength = mac.getMacSize();
    if (context.getSecurityParameters().truncatedHMac)
    {
        this.macLength = Math.min(this.macLength, 10);
    }
}
 
开发者ID:NoYouShutup,项目名称:CryptMeme,代码行数:59,代码来源:TlsMac.java


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