• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C# IDigest类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



IDigest类属于命名空间,在下文中一共展示了IDigest类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: Encode

		/// <summary>
		/// Encode the stream with the given digest.
		/// </summary>
		/// <param name="data">The byte array to be encoded.</param>
		/// <param name="digest">The digest to be used.</param>
		/// <returns>Hashed value of the byte array as a hex string.</returns>
		private static string Encode(byte[] data, IDigest digest)
		{
			digest.BlockUpdate(data, 0, data.Length);
			byte[] output = new byte[digest.GetDigestSize()];
			digest.DoFinal (output, 0);
			return Hex.Encode(output);
		}
开发者ID:acschmit,项目名称:cryptography.Net,代码行数:13,代码来源:DigestSHA.cs


示例2: PssSigner

 /// <summary>Basic constructor</summary>
 /// <param name="cipher">the asymmetric cipher to use.</param>
 /// <param name="digest">the digest to use.</param>
 /// <param name="salt">the fixed salt to be used.</param>
 public PssSigner(
     IAsymmetricBlockCipher cipher,
     IDigest digest,
     byte[] salt)
     : this(cipher, digest, digest, digest, salt.Length, salt, TrailerImplicit)
 {
 }
开发者ID:KimikoMuffin,项目名称:bc-csharp,代码行数:11,代码来源:PssSigner.cs


示例3: doExpectedTest

		private void doExpectedTest(IDigest digest, int seed, byte[] expected, byte[] noCycle)
		{
			DigestRandomGenerator rGen = new DigestRandomGenerator(digest);
			byte[] output = new byte[digest.GetDigestSize()];

			rGen.AddSeedMaterial(seed);

			for (int i = 0; i != 1024; i++)
			{
				rGen.NextBytes(output);
			}

			if (noCycle != null)
			{
				if (Arrays.AreEqual(noCycle, output))
				{
					Fail("seed not being cycled!");
				}
			}

			if (!Arrays.AreEqual(expected, output))
			{
				Fail("expected output doesn't match");
			}
		}
开发者ID:KimikoMuffin,项目名称:bc-csharp,代码行数:25,代码来源:DigestRandomNumberTest.cs


示例4: GeneratePrivateValue

 public static BigInteger GeneratePrivateValue(IDigest digest, BigInteger N, BigInteger g, SecureRandom random)
 {
     int num = Math.Min(0x100, N.BitLength / 2);
     BigInteger min = BigInteger.One.ShiftLeft(num - 1);
     BigInteger max = N.Subtract(BigInteger.One);
     return BigIntegers.CreateRandomInRange(min, max, random);
 }
开发者ID:Novo,项目名称:apbprivateserver,代码行数:7,代码来源:Srp6Utilities.cs


示例5: CalculateSecret

 /**
  * Processes the client's credentials. If valid the shared secret is generated and returned.
  * @param clientA The client's credentials
  * @return A shared secret BigInteger
  * @throws CryptoException If client's credentials are invalid
  */
 public virtual BigInteger CalculateSecret(IDigest digest, BigInteger clientA)
 {
     this.A = Srp6Utilities.ValidatePublicValue(param.N, clientA);
     this.u = Srp6Utilities.CalculateU(digest, param.N, A, pubB);
     this.S = v.ModPow(u, param.N).Multiply(A).Mod(param.N).ModPow(privB, param.N);
     return S;
 }
开发者ID:GridProtectionAlliance,项目名称:openHistorian,代码行数:13,代码来源:SRP6Server.cs


示例6: DigestRandomGenerator

        public DigestRandomGenerator(
			IDigest digest)
        {
            this.digest = digest;
            this.state = new byte[digest.GetDigestSize()];
            this.counter = 1;
        }
开发者ID:hjgode,项目名称:iTextSharpCF,代码行数:7,代码来源:DigestRandomGenerator.cs


示例7: HashSP800Drbg

        /**
	     * Construct a SP800-90A Hash DRBG.
	     * <p>
	     * Minimum entropy requirement is the security strength requested.
	     * </p>
	     * @param digest  source digest to use for DRB stream.
	     * @param securityStrength security strength required (in bits)
	     * @param entropySource source of entropy to use for seeding/reseeding.
	     * @param personalizationString personalization string to distinguish this DRBG (may be null).
	     * @param nonce nonce to further distinguish this DRBG (may be null).
	     */
	    public HashSP800Drbg(IDigest digest, int securityStrength, IEntropySource entropySource, byte[] personalizationString, byte[] nonce)
	    {
	        if (securityStrength > DrbgUtilities.GetMaxSecurityStrength(digest))
	            throw new ArgumentException("Requested security strength is not supported by the derivation function");
	        if (entropySource.EntropySize < securityStrength)
	            throw new ArgumentException("Not enough entropy for security strength required");

            mDigest = digest;
	        mEntropySource = entropySource;
	        mSecurityStrength = securityStrength;
            mSeedLength = (int)seedlens[digest.AlgorithmName];

            // 1. seed_material = entropy_input || nonce || personalization_string.
	        // 2. seed = Hash_df (seed_material, seedlen).
	        // 3. V = seed.
	        // 4. C = Hash_df ((0x00 || V), seedlen). Comment: Preceed V with a byte
	        // of zeros.
	        // 5. reseed_counter = 1.
	        // 6. Return V, C, and reseed_counter as the initial_working_state

	        byte[] entropy = GetEntropy();
	        byte[] seedMaterial = Arrays.ConcatenateAll(entropy, nonce, personalizationString);
	        byte[] seed = DrbgUtilities.HashDF(mDigest, seedMaterial, mSeedLength);

            mV = seed;
	        byte[] subV = new byte[mV.Length + 1];
	        Array.Copy(mV, 0, subV, 1, mV.Length);
	        mC = DrbgUtilities.HashDF(mDigest, subV, mSeedLength);

            mReseedCounter = 1;
	    }
开发者ID:KimikoMuffin,项目名称:bc-csharp,代码行数:42,代码来源:HashSP800Drbg.cs


示例8: Iso9796d2Signer

		/// <summary>
		/// Generate a signer for the with either implicit or explicit trailers
		/// for ISO9796-2.
		/// </summary>
		/// <param name="cipher">base cipher to use for signature creation/verification</param>
		/// <param name="digest">digest to use.</param>
		/// <param name="isImplicit">whether or not the trailer is implicit or gives the hash.</param>
		public Iso9796d2Signer(
			IAsymmetricBlockCipher	cipher,
			IDigest					digest,
			bool					isImplicit)
		{
			this.cipher = cipher;
			this.digest = digest;

			if (isImplicit)
			{
				trailer = TrailerImplicit;
			}
			else
			{
				if (digest is Sha1Digest)
				{
					trailer = TrailerSha1;
				}
				else if (digest is RipeMD160Digest)
				{
					trailer = TrailerRipeMD160;
				}
				else if (digest is RipeMD128Digest)
				{
					trailer = TrailerRipeMD128;
				}
				else
				{
					throw new System.ArgumentException("no valid trailer for digest");
				}
			}
		}
开发者ID:nicecai,项目名称:iTextSharp-4.1.6,代码行数:39,代码来源:Iso9796d2Signer.cs


示例9: RsaDigestSigner

		public RsaDigestSigner(
			IDigest digest)
        {
            this.digest = digest;

			algId = new AlgorithmIdentifier( (DerObjectIdentifier)oidMap[digest.AlgorithmName] , DerNull.Instance);
        }
开发者ID:nicecai,项目名称:iTextSharp-4.1.6,代码行数:7,代码来源:RsaDigestSigner.cs


示例10: DsaDigestSigner

		public DsaDigestSigner(
			IDsa	signer,
			IDigest	digest)
        {
            this.digest = digest;
            this.dsaSigner = signer;
        }
开发者ID:htlp,项目名称:itextsharp,代码行数:7,代码来源:DsaDigestSigner.cs


示例11: DeferredHash

 private DeferredHash(byte prfHashAlgorithm, IDigest prfHash)
 {
     this.mBuf = null;
     this.mHashes = Platform.CreateHashtable();
     this.mPrfHashAlgorithm = prfHashAlgorithm;
     mHashes[prfHashAlgorithm] = prfHash;
 }
开发者ID:JohnMalmsteen,项目名称:mobile-apps-tower-defense,代码行数:7,代码来源:DeferredHash.cs


示例12: NonMemoableDigest

        /**
         * Base constructor.
         *
         * @param baseDigest underlying digest to use.
         * @exception IllegalArgumentException if baseDigest is null
         */
        public NonMemoableDigest(IDigest baseDigest)
        {
            if (baseDigest == null)
                throw new ArgumentNullException("baseDigest");

            this.mBaseDigest = baseDigest;
        }
开发者ID:KimikoMuffin,项目名称:bc-csharp,代码行数:13,代码来源:NonMemoableDigest.cs


示例13: GenericSigner

        public GenericSigner(
			IAsymmetricBlockCipher	engine,
			IDigest					digest)
        {
            this.engine = engine;
            this.digest = digest;
        }
开发者ID:Noyabronok,项目名称:itextsharpml,代码行数:7,代码来源:GenericSigner.cs


示例14: OaepEncoding

 public OaepEncoding(
     IAsymmetricBlockCipher	cipher,
     IDigest					hash,
     byte[]					encodingParams)
     : this(cipher, hash, hash, encodingParams)
 {
 }
开发者ID:MBrekhof,项目名称:pleiobox-clients,代码行数:7,代码来源:OaepEncoding.cs


示例15: Init

	    /**
	     * Initialises the client to begin new authentication attempt
	     * @param N The safe prime associated with the client's verifier
	     * @param g The group parameter associated with the client's verifier
	     * @param digest The digest algorithm associated with the client's verifier
	     * @param random For key generation
	     */
	    public virtual void Init(BigInteger N, BigInteger g, IDigest digest, SecureRandom random)
	    {
	        this.N = N;
	        this.g = g;
	        this.digest = digest;
	        this.random = random;
	    }
开发者ID:htlp,项目名称:itextsharp,代码行数:14,代码来源:SRP6Client.cs


示例16: Gost3410DigestSigner

		public Gost3410DigestSigner(
			IDsa	signer,
			IDigest	digest)
		{
			this.dsaSigner = signer;
			this.digest = digest;
		}
开发者ID:Xanagandr,项目名称:DisaOpenSource,代码行数:7,代码来源:GOST3410DigestSigner.cs


示例17: Iso9796d2Signer

        /// <summary>
        /// Generate a signer for the with either implicit or explicit trailers
        /// for ISO9796-2.
        /// </summary>
        /// <param name="cipher">base cipher to use for signature creation/verification</param>
        /// <param name="digest">digest to use.</param>
        /// <param name="isImplicit">whether or not the trailer is implicit or gives the hash.</param>
        public Iso9796d2Signer(
            IAsymmetricBlockCipher	cipher,
            IDigest					digest,
            bool					isImplicit)
        {
            this.cipher = cipher;
            this.digest = digest;

            if (isImplicit)
            {
                trailer = TrailerImplicit;
            }
            else
            {
                string digestName = digest.AlgorithmName;

                if (trailerMap.Contains(digestName))
                {
                    trailer = (int)trailerMap[digest.AlgorithmName];
                }
                else
                {
                    throw new System.ArgumentException("no valid trailer for digest");
                }
            }
        }
开发者ID:bitcoinkit,项目名称:BitcoinKit-CSharp,代码行数:33,代码来源:Iso9796d2Signer.cs


示例18: CreateTlsMac

        protected virtual TlsMac CreateTlsMac(IDigest digest, byte[] buf, ref int off)
		{
			int len = digest.GetDigestSize();
			TlsMac mac = new TlsMac(digest, buf, off, len);
			off += len;
			return mac;
		}
开发者ID:zzilla,项目名称:ONVIF-Device-Manager,代码行数:7,代码来源:TlsBlockCipher.cs


示例19: Compute

 public static byte[] Compute(IDigest hash, byte[] data)
 {
     var result = new byte[hash.GetDigestSize()];
     hash.BlockUpdate(data, 0, data.Length);
     hash.DoFinal(result, 0);
     return result;
 }
开发者ID:GridProtectionAlliance,项目名称:openHistorian,代码行数:7,代码来源:Hash.cs


示例20: PssSigner

		/// <summary>Basic constructor</summary>
		/// <param name="cipher">the asymmetric cipher to use.</param>
		/// <param name="digest">the digest to use.</param>
		/// <param name="saltLen">the length of the salt to use (in bytes).</param>
		public PssSigner(
			IAsymmetricBlockCipher	cipher,
			IDigest					digest,
			int						saltLen)
			: this(cipher, digest, saltLen, TrailerImplicit)
		{
		}
开发者ID:MBrekhof,项目名称:pleiobox-clients,代码行数:11,代码来源:PssSigner.cs



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# IDirectedProtocolMessage类代码示例发布时间:2022-05-24
下一篇:
C# IDictionaryEnumerator类代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap