• C#中求SHA224哈希值


    C#中求SHA224哈希值

     

    C#里提供了许多开发库,包括了有关密码学需要用到的算法。今天帮别人写了个很简单的小程序,这里让需要的人参考参考:

     

      SHA224是SHA256结果中的前28字节的内容。 

     

    using System.Security.Cryptography;

     

    //--------------------------------------------------

    // Desc: 用来计算 SHA224 哈希算法

    // Para: src -- 要被哈希散列的字符串

    // Retn: 计算出来的 224 位哈希值(0101数字)

    //--------------------------------------------------

    public string getSHA224(string src)

    {

        SHA256 sha = new SHA256Managed();  // 用来计算 SHA256 哈希值

        UTF8Encoding uen = new UTF8Encoding();  // 用来把char[]转换成byte[]

        byte[] bytestr = uen.GetBytes(src.ToCharArray());

        sha.ComputeHash(bytestr);  // 计算哈希值

        String sha224 = "";

        for (int i = 0; i < 28; ++i)

        {

            int dec = int.Parse(sha.Hash.GetValue(i).ToString());   // 十进制

            String bin = Convert.ToString(dec, 2).PadLeft(8, '0');  // 转成二进制数,是8位的,不足8位前面补0

            sha224 += bin;

        }

        return sha224;

    }

  • 相关阅读:
    html实现 省——市——区三级联动
    test
    JAVA课程设计——坦克大战
    Java MOOC-互评作业-流与文件
    DS博客作业06--图
    DS博客作业08--课程总结
    DS博客作业07--查找
    DS博客作业06--图
    DS博客作业05-树
    DS博客作业01--日期抽象数据类型设计与实现
  • 原文地址:https://www.cnblogs.com/cxun/p/771387.html
Copyright © 2020-2023  润新知