嵌入式linux开发,HmacSHA256下载与使用
2023-09-14 09:09:33 时间
HmacSHA256,散列哈希HASH加密
一、C语言,HMACSHA256-master
GitHub - yingzh2020/HMACSHA256: hmacsha256,HMACSHA256-master,选此
GitHub - megrimm/pd-hmacsha256: puredata library for creating hmac sha 256
例程
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include "hmac_sha256.h"
#include <string.h>
#ifdef __cplusplus
extern "C" {
#endif
int main(int argc, char **argv)
{
for (int i = 0; i < argc; i++)
{
printf("argv[%d]=%s\n", i, argv[i]);
}
if (argc < 2)
{
printf("atgc < 2\n");
return -1;
}
//sha256
uint8_t *text = argv[1];
uint8_t buf[SHA256_BLOCK_SIZE] = {0};
SHA256_CTX ctx;
SHA256_Init(&ctx);
SHA256_Update(&ctx, text, strlen((const char *)text));//无法比对成功,是否编码问题
SHA256_Final(&ctx, buf);
printf("sha256=\n");
for (int i = 0; i < SHA256_BLOCK_SIZE; i++)
{
printf("%02x", buf[i]);
}
printf("\n");
//Hmacsha256
unsigned char *enkey = "";
unsigned char keylen = 0;
unsigned char *encdata = argv[1];
unsigned char datalen = strlen(encdata);
//unsigned char output[SHA256_BLOCK_SIZE] = {0};
Hmacsha256_enc(enkey, keylen, encdata, datalen, buf);
printf("Hmacsha256=\n");
for (int i = 0; i < SHA256_BLOCK_SIZE; i++)
{
printf("%02x", buf[i]);
}
printf("\n");
return 0;
}
#ifdef __cplusplus
}
#endif
二、C++,只有sha256,无Hmacsha256
GitHub - FreeCodeCampXYG/HmacSHA256
https://codeload.github.com/dcariotti/hmacsha256/zip/refs/heads/main,hmacsha256-main,选此
相关文章
- linux下安装pycharm到桌面_Linux下载pycharm
- 实现嵌入式Arm处理器端 Linux 系统(arm-linux)
- Linux实用工具大集合(linux常用软件大全)
- Linux服务器上的下载方法简明指南(linux服务器怎么下载)
- Linux 优麒麟:极致性能的稳定之旅(linux优麒麟)
- Linux下快速以太网配置指南(linux以太网配置)
- Linux现代化编程:嵌入式脚本开发(linux嵌入脚本)
- Linux轻松卸载JDK:4步搞定(linux怎么卸载jdk)
- 探索Linux内的时间之谜(linux系统看时间)
- 查看Linux系统下JDK版本信息(查看linux的jdk)
- Linux头文件快速下载指南(linux头文件下载)
- 深入浅出:嵌入式Linux之旅(嵌入式linux题目)
- Linux绝对值:开启智能生活新篇章(linux绝对值)
- 入门篇:学习嵌入式Linux(嵌入式linux入门教程)
- Linux下载与解压缩指南(linux下载解压)
- 探索Linux中的Perl之旅(linux中perl)
- 使用情况国内 Linux 空间:发展与启示(国内linux空间)
- Linux 切换模式:从命令行到终端(linux切换命令模式)
- Linux禁用NUMA:简单而有效的技巧(linux关闭numa)
- Linux系统中安装LZMA压缩文件管理器(linux安装lzma)
- Linux批量下载技巧: 让你的下载更高效!(linux批量下载)
- 安装Linux:从U盘开始(从u盘安装linux)
- Linux的分支之路(linux的分支)
- 打造高效工作平台:Linux开发环境快速搭建指南(linux开发环境的搭建)
- 掌握Linux下查看服务状态的技巧(linux查看服务的状态)
- 编程实现嵌入式Linux系统(嵌入式linux系统编程)
- 「掌握重点」Linux 服务如何按顺序启动?(linux服务启动顺序)
- Linux命令:精通匹配技巧(linux命令匹配)
- 探秘Linux服务器开机时间:启动速度如何影响业务效率?(linux服务器开机时间)
- Linux端口通信异常问题排查(linux 端口不通)
- 普华Linux:快速下载,开启智能之旅(普华linux下载)
- Linux:从高版本降级为低版本(linux降级)