中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

珠海網站建設推廣廠商百度推廣開戶聯系方式

珠海網站建設推廣廠商,百度推廣開戶聯系方式,seo推廣方法,學院網站建設管理辦法SHA256 例程 一般文件的完整性要使用md5或者sha進行完整性校驗,這里提供兩個函數, intact_update_sha 是計算指定文件SHA值并保存到SHA文件 intact_check_sha 計算文件SHA值并和SHA文件進行對比 編譯方法: gcc demo.c -lssl -lcrypto #…

SHA256 例程

一般文件的完整性要使用md5或者sha進行完整性校驗,這里提供兩個函數,

intact_update_sha 是計算指定文件SHA值并保存到SHA文件

intact_check_sha 計算文件SHA值并和SHA文件進行對比

編譯方法:

gcc demo.c -lssl -lcrypto

#include <stdio.h>
#include <openssl/sha.h>
#include <string.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <openssl/md5.h>
#include <stdlib.h>enum {ERR_OK,ERR_FAIL,ERR_OPEN,ERR_OPEN_SHA,ERR_PATH,ERR_PARAM,ERR_NOEXIST,ERR_NOEXIST_SHA,ERR_KEY,ERR_MALLOC,};#define MAX_BUFFER_SIZE      1024
#define SHA_FILE_PATH        "/home/hfs/sha/%s.sha"
#define SHA_FILE_DIR         "/home/hfs/sha"static int intact_get_sha_file_path(char *path)
{int offset = 0;for (int i = 0; i < strlen(path); i++) {if (*(path + i) == '/')offset = i;}return offset;
}
int intact_check_sha(char *path)
{SHA256_CTX ctx;char buffer[MAX_BUFFER_SIZE];char sha_str[MAX_BUFFER_SIZE];int len = 0;FILE *fp = NULL;FILE *fp_sha = NULL;unsigned char sha[SHA256_DIGEST_LENGTH];char tmp[MAX_BUFFER_SIZE] = {0};char sha_file[MAX_BUFFER_SIZE] = {0};int offset;if (path == NULL) {return ERR_PARAM;}if (access(path, F_OK)) {return ERR_NOEXIST;}strcpy(tmp, path);if (tmp[strlen(tmp) - 1] == '/') {tmp[strlen(tmp) - 1] = '\0';}offset = intact_get_sha_file_path(tmp);if (offset == 0) {return ERR_PATH;}sprintf(sha_file, SHA_FILE_PATH, tmp + offset + 1);if (access(sha_file, F_OK)) {return ERR_NOEXIST_SHA;}fp = fopen(path, "r");if (fp == NULL) {  return ERR_OPEN;  }fp_sha = fopen(sha_file, "r");if (fp == NULL) {  fclose(fp);fp = NULL;return ERR_OPEN_SHA;  } SHA256_Init(&ctx);while ((len = fread(buffer, 1, MAX_BUFFER_SIZE, fp)) > 0) {SHA256_Update(&ctx, buffer, len);  memset(buffer, 0, sizeof(buffer));  } SHA256_Final(&(sha[0]), &ctx);sprintf(sha_str, "%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",sha[0], sha[1], sha[2], sha[3], sha[4], sha[5], sha[6], sha[7],sha[8], sha[9], sha[10], sha[11], sha[12], sha[13], sha[14], sha[15]);fread(buffer, 1, MAX_BUFFER_SIZE, fp_sha);if (strncmp(sha_str, buffer, 32) == 0) {fclose(fp);fp = NULL;fclose(fp_sha);fp_sha = NULL;return ERR_OK;}fclose(fp);fp = NULL;fclose(fp_sha);fp_sha = NULL;return ERR_FAIL;
}
int intact_update_sha(char *path)
{SHA256_CTX ctx;char buffer[MAX_BUFFER_SIZE];char sha_str[MAX_BUFFER_SIZE] = {0};int len = 0;FILE *fp = NULL;FILE *fp_sha = NULL;unsigned char sha[SHA256_DIGEST_LENGTH];char tmp[MAX_BUFFER_SIZE] = {0};char sha_file[MAX_BUFFER_SIZE] = {0};int offset;if (path == NULL) {return ERR_PARAM;}if (access(path, F_OK)) {return ERR_NOEXIST;}strcpy(tmp, path);if (tmp[strlen(tmp) - 1] == '/') {tmp[strlen(tmp) - 1] = '\0';}offset = intact_get_sha_file_path(tmp);if (offset == 0) {return ERR_PATH;}sprintf(sha_file, SHA_FILE_PATH, tmp + offset + 1);if (access(SHA_FILE_DIR, F_OK)) {mkdir(SHA_FILE_DIR, S_IRUSR | S_IWUSR | S_IXUSR);}fp = fopen(path, "r");if (fp == NULL) {  return ERR_OPEN;  }fp_sha = fopen(sha_file, "w+");if (fp == NULL) {  fclose(fp);fp = NULL;return ERR_OPEN_SHA;  } SHA256_Init(&ctx);while ((len = fread(buffer, 1, MAX_BUFFER_SIZE, fp)) > 0) {SHA256_Update(&ctx, buffer, len);  memset(buffer, 0, sizeof(buffer));  } SHA256_Final(&(sha[0]), &ctx);sprintf(sha_str, "%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",sha[0], sha[1], sha[2], sha[3], sha[4], sha[5], sha[6], sha[7],sha[8], sha[9], sha[10], sha[11], sha[12], sha[13], sha[14], sha[15]);fwrite(sha_str, 1, MAX_BUFFER_SIZE, fp_sha);fclose(fp);fp = NULL;fclose(fp_sha);fp_sha = NULL;return ERR_OK;
}

http://m.risenshineclean.com/news/63231.html

相關文章:

  • 贛州公司做網站域名服務器查詢
  • 網站qq獲取百度新聞客戶端
  • 企業(yè)做網站需要注意什么哪家公司做推廣優(yōu)化好
  • 南通網站排名站長是什么級別
  • 小企業(yè)做網站多少錢惠州網站營銷推廣
  • 塔城地區(qū)建設工程信息網站谷歌搜索廣告
  • 建個好網站網絡推廣外包公司
  • 網站導航做多大神馬seo服務
  • 九九電視劇免費觀看完整版seo搜索培訓
  • 大連商城網站建設百度營銷登錄入口
  • 廣東微信網站制作哪家好西安網站優(yōu)化公司
  • 網頁設計與制作教程web前端開發(fā)整站優(yōu)化提升排名
  • 平涼市住房和城鄉(xiāng)建設局網站sem賬戶托管外包
  • 網站登陸驗證怎么用java做拓客最有效方案
  • 網站設計任務怎么讓客戶主動找你
  • dw做的網站如何上傳圖片灰色行業(yè)推廣平臺網站
  • 網站開發(fā)要網絡營銷運營策劃
  • 政府網站數據開放 建設方案網絡營銷師證書有用嗎
  • 免費信息網站建設平臺有趣的軟文
  • 保定市城鄉(xiāng)規(guī)劃建設局網站公司宣傳網頁怎么做
  • 政府網站建設監(jiān)管力度不夠成都seo達人
  • 杭州網站制作報價推廣網站要注意什么
  • 找合作項目app平臺濟南做seo外包
  • 外包公司做的網站貼吧友情鏈接在哪
  • 專業(yè)做幼兒園網站萬網域名注冊查詢網
  • xxx網站建設規(guī)劃治療腰椎間盤突出的特效藥
  • 合肥 做網站濟南seo官網優(yōu)化
  • 香港公司如何做國內網站的備案小說推廣關鍵詞怎么弄
  • 重慶旅游景點廈門seo優(yōu)化多少錢
  • 網站頭部導航代碼網站seo優(yōu)化怎么做