![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
security_huks
文章平均质量分 93
心永向阳
所谓无底深渊,下去也是前程万里!
展开
-
security_huks模块下hks_service.c代码评注(四)
security_huks模块下hks_service.c代码评注(四)本篇概述代码框架密钥检查服务1. hks_service_import_public_key2. hks_service_export_public_key3. hks_service_delete_key4. hks_service_is_key_exist安全相关服务1. hks_service_register_file_callbacks2. hks_service_get_pub_key_alias_list3. hks_se原创 2021-10-09 20:43:40 · 174 阅读 · 0 评论 -
security_huks模块下hks_service.c代码评注(三)
security_huks模块下hks_service.c代码评注(三)本篇概述代码框架非对称密钥与认证服务1. hks_service_asymmetric_sign2. hks_service_asymmetric_verify3. hks_service_verify_with_alias4. hks_service_asymmetric_verify_init大数运算服务1. hks_service_bn_exp_mod_check2. hks_service_bn_exp_mod本篇概述本篇接原创 2021-10-09 17:35:34 · 190 阅读 · 0 评论 -
security_huks模块下hks_service.c代码评注(二)
非对称部分算法服务部分管理服务部分安全模块封装原创 2021-10-09 00:09:50 · 281 阅读 · 0 评论 -
security_huks模块下hks_service.c代码评注(一)
security_huks模块下hks_service.c代码评注(一)本篇概述本篇框架准备工作添加包依赖定义静态量核心函数定义1. hks_service_generate_key、2.本篇概述由security_huks模块下hks_service部分代码框架,我们可将华为密钥存储hks的服务部分分成:密钥服务、算法服务、管理服务和检验服务这几个模块,本篇主要讲述有关密钥服务的部分代码注释。本篇框架准备工作添加包依赖本部分要特别注意增加mbedtls相关接口源码库,其中的hkdf、ecdh、原创 2021-09-30 12:23:11 · 380 阅读 · 0 评论 -
security_huks模块下hks_service部分代码框架
security_huks模块下hks_service部分代码框架本篇综述hks_service代码框架generate_key_service部分algorithm_sign_verify_service部分functional_service部分key_management_service部分general_security_guarantee部分本篇综述本篇文章主要讲解hks_service的代码框架,依照hks_service.h部分函数的申明和头文件的定义,我们能够先入为主地了解到hks_se原创 2021-09-24 12:29:13 · 227 阅读 · 0 评论 -
ECDH算法详解
ECDH算法详解ECDH算法详解DH密钥交换原理结合ECC椭圆曲线算法ECDSA签名算法ECDH算法详解DH密钥交换原理进一步解释:两端(Alice 和 Bob)想要安全的交换信息并且第三方不能获取到该信息。当然这也是TLS协议中的目的之一,举个例子。(其实下面的描述其实是ECDHE,而不是ECDH)Alice 和 Bob 生成他们自己的私钥和公钥,即 Alice 已知随机数a, 以及一个底数g和一个大质数p;Bob已知随机数b。Alice把经过模幂运算的结果A,以及已知的g,p发给B原创 2021-09-23 20:59:37 · 2989 阅读 · 0 评论 -
Curve25519加解密与Ed25519加密签
Curve25519加解密与Ed25519加密签几种著名的椭圆曲线的方程和对应的实际应用几种著名的椭圆曲线的方程和对应的实际应用魏尔斯特拉斯曲线和基于魏尔斯特拉斯曲线的若干种椭圆曲线公钥算法蒙哥马利曲线和基于蒙哥马利曲线的Curve25519密钥协商算法爱德华曲线和基于爱德华曲线的Ed25519数字签名算法...原创 2021-09-17 00:28:46 · 7799 阅读 · 0 评论 -
密钥导出函数KDF
密钥导出函数KDFKDF概述KDF执行方法密钥派生算法KDFs的使用KDF流程图参考地址KDF概述KDF全称(Key derivation function) 密钥导出函数。密码学中,密钥导出函数是指使用伪随机函数从主密钥master_key中导出一个或多个密钥key。KDF可用于将密钥扩展到更长的密钥或获得所需格式的密钥。密钥加密哈希函数是用于密钥推导的伪随机函数的流行示例。KDF执行方法实现 key stretching [1] 的方法,具体就是从一个 master key,password原创 2021-09-05 23:47:24 · 20159 阅读 · 2 评论 -
security_huks模块下hks_rkc.c代码评注第六部分
security_huks模块下hks_rkc.c代码评注第六部分本篇概述代码框架代码详解1. hks_rkc_chk_init_para2. hks_rkc_init_ksf3. hks_rkc_init4. hks_rkc_destroy5. hks_rkc_clear_mem6. hks_rkc_chk_kek_para7. hks_rkc_get_kek本篇小结本篇概述本篇是接着:security_huks模块下hks_rkc.c代码评注第一部分security_huks模块下hks_rk原创 2021-09-04 00:55:21 · 436 阅读 · 0 评论 -
security_huks模块下hks_rkc.c代码评注第五部分
security_huks模块下hks_rkc.c代码评注第五部分本篇概述代码框架密钥加密、生成与掩码1. hks_rkc_mk_crypt2. hks_rkc_mask_mk3. hks_rkc_make_mk4. hks_rkc_create_ksf密钥内存恢复1. hks_rkc_recover_mk_mem2. hks_rkc_recover_rk_mem3. hks_rkc_load_ksf本章小结本篇概述本篇是接着:security_huks模块下hks_rkc.c代码评注第一部分se原创 2021-08-30 17:50:15 · 160 阅读 · 0 评论 -
security_huks模块下hks_rkc.c代码评注第四部分
security_huks模块下hks_rkc.c代码评注第四部分本篇概述代码框架密钥获取部分1. hks_rkc_pbkdf2_hmac2.本篇概述本篇是接着:security_huks模块下hks_rkc.c代码评注第一部分security_huks模块下hks_rkc.c代码评注第二部分security_huks模块下hks_rkc.c代码评注第三部分在讲解完密钥库文件的检查操作、密钥库文件中材料的生成相关操作和方法后,本篇将继续讲述hks_rkc.c代码中有关密钥获取以及写所有密钥库原创 2021-08-29 23:46:32 · 319 阅读 · 0 评论 -
mbedTLS简介
mbedTLS简介mbedTLS的背景介绍关于mbedTLS的简要概括mbedTLS常用结构体1. 公钥算法类型mbedtls_pk_type_t2. 摘要算法类型mbedtls_md_type_t3. 公钥上下文mbedtls_pk_context4. 解析证书得到的mbedtls_pk_info_tmbedTLS使用事例mbedTLS_API分析参考文章mbedTLS的背景介绍MbedTLS前身是开源加密算法库PolarSLL,现已被arm公司收购并由arm技术团队进行维护更新,是对TLS和SSL协原创 2021-08-28 21:56:24 · 14883 阅读 · 1 评论 -
PBKDF2算法原理
PBKDF2算法原理算法介绍函数定义PBKDF2的算法流程主密钥生成流程图算法执行步骤结合SHA-256算法流程图PBKDF2算法的产生背景参考资料算法介绍PBKDF2(Password-Based Key Derivation Function) 应用一个伪随机函数以导出密钥。导出密钥的长度本质上是没有限制的(但是,导出密钥的最大有效搜索空间受限于基本伪随机函数的结构)。它的基本原理是通过一个伪随机函数(例如 HMAC 函数),把明文和一个盐值作为输入参数,然后重复进行运算,并最终产生密钥。如果重原创 2021-08-28 16:26:36 · 10630 阅读 · 0 评论 -
security_huks模块下hks_rkc.c代码评注第二部分
security_huks模块下hks_rkc.c代码评注第二部分本篇综述本篇代码架构关键信息提取1.hks_rkc_extract_ksf_file_flag2.hks_rkc_extract_ksf_hash3.hks_rkc_extract_ksf_rk4.hks_rkc_extract_ksf_mk5. hks_rkc_extract_ksf_buf读取密钥库文件1.hks_rkc_read_ksf2.hks_rkc_read_all_ksf本篇小结本篇综述本篇是hks_rkc.c代码评注的第二原创 2021-08-25 18:13:10 · 230 阅读 · 0 评论 -
security_huks模块下hks_rkc.c代码评注第一部分
security_huks模块下hks_rkc.c代码评注第一部分本篇综述变量定义与初始化密钥库文件属性初始化初始化熵填充密钥库文件缓冲区填充哈希字段到缓冲区填充根密钥数据到缓冲区填充主密钥数据到缓冲区填充密钥库文件信息(整体封装)写入密钥库文件本篇小结本篇综述hks_rkc.c中主要包含了对密钥库文件操作的各项函数定义,结合hks_rkc.h我们能详细了解根密钥组件在密钥系统当中是如何工作并发挥效能的。本篇是hks_rkc.c代码评注的第一部分,主要讲解在hks_rkc.c中变量定义与初始化、密钥库文原创 2021-08-21 18:58:27 · 297 阅读 · 0 评论 -
security_huks模块下hks_rkc.h代码评注
security_huks模块下hks_rkc.h代码评注本篇综述代码框架关键代码展开1. 枚举类型定义2. 预编译模块3. 结构体定义4. 函数声明本篇小结本篇综述本篇主要讲解hks_rkc头文件代码的主要内容。hks_rkc.h中主要定义了有关RKC(root key component)根密钥组件相关的一系列结构体、枚举类型、预编译以及函数声明部分,对hks_rkc.h的了解有助于我们进一步对hks_rkc.c的理解。因此,本篇我们会重点讲解hks_rkc.h中含有的关键定义,为hks_rkc.c原创 2021-08-20 17:55:38 · 177 阅读 · 0 评论 -
security_huks模块下hks_file.c代码评注
security_huks模块下hks_file.c代码评注本篇综述关键代码架构关键先导1. 结构体 hks_file_callbacks2. 函数 hks_init_buf_data3. 空间的申请与释放hks_file.c中关键函数1. hks_file_register_callbacks2. hks_file_read3. hks_file_write4. hks_file_size5. hks_file_init_data6. hks_file_del_s本篇小结本篇综述hks_file.c是原创 2021-08-19 19:26:11 · 202 阅读 · 0 评论 -
security_huks模块下hks_client.c代码评注(下)
security_huks模块下hks_client.c代码评注(下)hks_client.c总述(下)代码关键部分模块框架各模块详解hks的aead加密hks的密钥派生和密钥许可协议hash运算相关函数集服务类函数集其他函数知识提点AEAD加密服务类调用原函数参考hks_client.c总述(下)本篇解上篇代码评注展开,上篇详见:security_huks模块下hks_client.c代码评注(上)代码关键部分模块框架hks_client.c├── include│ └── "hks_cl原创 2021-08-17 21:01:51 · 240 阅读 · 0 评论 -
security_huks模块下hks_client.c代码评注(上)
这里写目录标题一级目录知识提点DLL编程的导入导出二级目录三级目录一级目录知识提点DLL编程的导入导出#ifdef _EXPORTING#define API_DECLSPEC __declspec(dllexport)#else#define API_DECLSPEC __declspec(dllimport)#endif这个宏,是为了便于开发和使用自己写的dll库的。用同样的 API_DECLSPEC 类型声明,在dll的.cpp文件里,添加#define _EXPORTING原创 2021-08-17 19:42:55 · 312 阅读 · 0 评论