精华内容
下载资源
问答
  • sha1 方法
    千次阅读
    2019-05-30 17:35:44

    在编写Linux驱动的时候常常需要对内核空间的某些数据进行hash计算,而在编写内核模块的时候很多用户空间的方法不能使用,例如Openssl(理论上可以,但是我没成功过)。但是Linux自身提供了一个Crypto API对数据进行各种加密计算,使用这个API就能够在内核模块中进行一些加密和签名操作,下面以sha1位例子。

    在4.15内核下编译加载通过。
    头文件需要包含:

    #include <crypto/hash.h>
    #include <crypto/skcipher.h>
    #include <linux/crypto.h>
    
    struct sdesc {
        struct shash_desc shash;
        char ctx[];
    };
    
    static struct sdesc *init_sdesc(struct crypto_shash *alg)
    {
        struct sdesc *sdesc;
        int size;
    
        size = sizeof(struct shash_desc) + crypto_shash_descsize(alg);
        sdesc = kmalloc(size, GFP_KERNEL);
        if (!sdesc)
            return ERR_PTR(-ENOMEM);
        sdesc->shash.tfm = alg;
        sdesc->shash.flags = 0x0;
        return sdesc;
    }
    
    static int calc_hash(struct crypto_shash *alg,
                 const unsigned char *data, unsigned int datalen,
                 unsigned char *digest)
    {
        struct sdesc *sdesc;
        int ret;
    
        sdesc = init_sdesc(alg);
        if (IS_ERR(sdesc)) {
            pr_info("can't alloc sdesc\n");
            return PTR_ERR(sdesc);
        }
    
        ret = crypto_shash_digest(&sdesc->shash, data, datalen, digest);
        kfree(sdesc);
        return ret;
    }
    
    /*
    测试函数,data是进行hash的数据,datalen为数据长度,digest为sha1结果(是一个 out变量)
    */
    static int test_hash(const unsigned char *data, unsigned int datalen,
                 unsigned char *digest)
    {
        struct crypto_shash *alg;
        char *hash_alg_name = "sha1";
        int ret;
    
        alg = crypto_alloc_shash(hash_alg_name, 0, 0);
        if (IS_ERR(alg)) {
                pr_info("can't alloc alg %s\n", hash_alg_name);
                return PTR_ERR(alg);
        }
        ret = calc_hash(alg, data, datalen, digest);
        crypto_free_shash(alg);
        return ret;
    }
    

    进行测试时,只需要将hash的数据按照对应的参数传入test_hash中即可。

    更多相关内容
  • 1、将打好的正式版app 后缀改为 .zip,解压; 2、 打开META-INF目录,该目录下会存在...3、 在该目录下打开cmd或powerShell,输入命令 :keytool -printcert -file CERT.RSA ,回车后将会显示出MD5和SHA1签名。 ...

    1、 将打好的正式版app 后缀改为 .zip,解压;
    2、 打开META-INF目录,该目录下会存在文件__UNI__.RSA 或者CERT.RSA
    3、 在该目录下打开cmd或powerShell,输入命令 :keytool -printcert -file CERT.RSA ,回车后将会显示出MD5和SHA1签名。

     

    展开全文
  • Java中实现SHA1加密

    2019-02-19 10:28:32
    此资源主要是实现Java中的SHA1加密方式,将资源下载后直接在程序中复制即可使用。
  • 易语言Base64_hmac_sha1加密算法源码
  • Android获取SHA1方法

    2021-01-04 02:16:36
    获取SHA-1有多种方法,这里我们介绍用命令行的方法。(使用keytool,注意,keytool是jdk的工具,所以要先设置好jdk的环境变量) SHA-1分为两种:发行版和调试版。这两种的获取方式是类似的。 1、调试版: (1)打开...
  • 本文实例讲述了Python实现计算文件MD5和SHA1方法。分享给大家供大家参考,具体如下: 不多说,直接源码: #file md5 import sys; import hashlib; import os.path; def GetFileMd5(strFile): file = None; bRet...
  • 本篇文章是对使用HMAC-SHA1的签名方法进行了详细的分析介绍,需要的朋友参考下
  • 为了证明这个想法,写了demo进行测试,android获取包名的方法很简单,但是我们还需要从客户端中获取keystore的指纹SHA1。 进行各种资料的查找和分析,才得出方法。 一、首先,科普一下apk包下的META-INF目录 我们...
  • 在Android开发中,经常要获取sha1证书指纹。例如:在嵌入高德地图的时候,就需要使用这个东东。这个东西在Eclipse中可以直接获取到,但是在Android Studio中,并没有直接提供,需要通过别的手段手动获取。 我们可以...
  • 1、 将打好的正式版app 后缀改为 .zip,并解压该压缩包;...3、 在该目录下打开cmd,输入命令 :keytool -printcert -file ANDROID.RSA 然后回车 则显示出SHA1 (此操作需要电脑已经配置了java运行环境)...

    1、 将打包好的app后缀改为 .zip的压缩文件,并解压该压缩包;
    2、解压完成之后 打开META-INF目录,该目录下会存在文件ANDROID.RSA并在该目录下打开cmd,输入命令 :keytool -printcert -file ANDROID.RSA  然后回车 则显示出SHA1 (此操作需要电脑已经配置了java运行环境)

    展开全文
  • Android 百度地图Sha1获取的方法 场景一 由于最近项目钟要用到定位功能因此肯定需要用到地图以及地位功能,相信大家也知道目前国内比较出名的地图像百度、高德、腾讯等这些还是用到比较多的,于是思考了一下决定还是...
  • 调用方法:hex_sha1即可。 复制代码 代码如下:/*  *  * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined  * in FIPS PUB 180-1  *  * By lizq  *  * 2006-11-11  *  */ /* ...
  • 1. 创建 .jks文件 2.找到文件所在的地方,右键(已安装git) 3.输入 keytool -list -v -keystore 名字.jks 4.输入密钥密码 5.获取到了你想要的东西了

    1. 创建  .jks文件

    2.找到文件所在的地方,右键(已安装git)

    3.输入 keytool -list -v -keystore 名字.jks

    4.输入密钥密码

    5.获取到了你想要的东西了

    展开全文
  • js的sha1加密方法

    2018-05-30 11:28:31
    JavaScript的sha1加密方法代码,可以直接拿来使用,同样适用微信小程序
  • SHA1加密方法..

    2017-12-20 14:39:26
    可实现对字符串SHA1的加密,语言c#,可直接拿来引用该方法实现加密!可实现对字符串SHA1的加密,语言c#,可直接拿来引用该方法实现加密!
  • 如何使用sha1方法

    千次阅读 2017-06-08 12:08:36
    两年前,也使用过sha1方法,但是随着时间的远去,遗忘了它的使用方法,这一次使用sha1,搞了半天sha1结果都是错了,刚才被同事提醒了一下,才想起sha1的使用方法,赶紧记下来,进行sha1计算的数据长度,应该是可以...
  • SHA1的获取方法.docx

    2019-06-29 14:07:11
    在一些应用中经常需要使用到sha1这个值。sha1的获取对于初学者来说比较麻烦,这个文档提供了几种很简便的方式,可以直接使用android studio 或 eclipse获取。欢迎使用额
  • 此文件包含了base64加密方法/md5及sha1加密方法,应用于前端账户安全加密
  • 下面就是ASP.NET中几种加密方法。加密算法有两种,也就是上面提到的MD5和SHA1,这里我举的例子是以MD5为例,SHA1大致相同,只是使用的类不一样。
  • 115sha1 便捷的115sha1导入/导出功能。方便分享。 开源说明 本项目旨在练习golang 和减少劳动力。 本项目只是 fake115-go 的GUI包装,核心功能由fake115-go实现,对大佬进行感谢! 使用方法 需要Chrome 下载地址: ...
  • 本文实例总结了python加密方法。分享给大家供大家参考,具体如下: MD5加密: def md5(str): import hashlib m = hashlib.md5() m.update(str) ...sha1加密: 需要导入hashlib 模块: import hashlib
  • JAVA 加密算法
  • 本文实例讲述了Go语言对字符串进行SHA1哈希运算的方法。分享给大家供大家参考。具体如下: 代码如下:package main import (  “fmt”  “crypto/md5”  “crypto/sha1”  “io” ) //对字符串进行MD5哈希 func ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 141,919
精华内容 56,767
关键字:

sha1 方法