当前位置: 首页 > news >正文

广东君冠建设有限公司网站上海php网站开发

广东君冠建设有限公司网站,上海php网站开发,杭州做seo的公司,蚌埠做企业网站文章目录 openssl3.2 - 官方demo学习 - digest - EVP_MD_demo.c概述笔记END openssl3.2 - 官方demo学习 - digest - EVP_MD_demo.c 概述 使用 SHA3-512 对多个buffer连续进行摘要, 最后得到一个摘要值 笔记 /*! \file EVP_MD_demo.c \note openssl3.2 - 官方demo学习 - dig… 文章目录 openssl3.2 - 官方demo学习 - digest - EVP_MD_demo.c概述笔记END openssl3.2 - 官方demo学习 - digest - EVP_MD_demo.c 概述 使用 SHA3-512 对多个buffer连续进行摘要, 最后得到一个摘要值 笔记 /*! \file EVP_MD_demo.c \note openssl3.2 - 官方demo学习 - digest - EVP_MD_demo.c 使用 SHA3-512 对多个buffer连续进行摘要, 最后得到一个摘要值 *//*-* Copyright 2021-2023 The OpenSSL Project Authors. All Rights Reserved.** Licensed under the Apache License 2.0 (the License). You may not use* this file except in compliance with the License. You can obtain a copy* in the file LICENSE in the source distribution or at* https://www.openssl.org/source/license.html*//** Example of using EVP_MD_fetch and EVP_Digest* methods to calculate* a digest of static buffers*/#include string.h #include stdio.h #include openssl/err.h #include openssl/evp.h#include my_openSSL_lib.h/*-* This demonstration will show how to digest data using* the soliloqy from Hamlet scene 1 act 3* The soliloqy is split into two parts to demonstrate using EVP_DigestUpdate* more than once.*/const char* hamlet_1 To be, or not to be, that is the question,\n Whether tis nobler in the minde to suffer\n The ſlings and arrowes of outragious fortune,\n Or to take Armes again in a sea of troubles,\n And by opposing, end them, to die to sleep;\n No more, and by a sleep, to say we end\n The heart-ache, and the thousand natural shocks\n That flesh is heir to? tis a consumation\n Devoutly to be wished. To die to sleep,\n To sleepe, perchance to dreame, Aye, theres the rub,\n For in that sleep of death what dreams may come\n When we haue shuffled off this mortal coil\n Must give us pause. Theres the respect\n That makes calamity of so long life:\n For who would bear the Ships and Scorns of time,\n The oppressors wrong, the proud mans Contumely,\n The pangs of dispised love, the Laws delay,\n ; const char* hamlet_2 The insolence of Office, and the spurns\n That patient merit of theunworthy takes,\n When he himself might his Quietas make\n With a bare bodkin? Who would fardels bear,\n To grunt and sweat under a weary life,\n But that the dread of something after death,\n The undiscovered country, from whose bourn\n No traveller returns, puzzles the will,\n And makes us rather bear those ills we have,\n Then fly to others we know not of?\n Thus conscience does make cowards of us all,\n And thus the native hue of Resolution\n Is sickled oer with the pale cast of Thought,\n And enterprises of great pith and moment,\n With this regard their currents turn awry,\n And lose the name of Action. Soft you now,\n The fair Ophelia? Nymph in thy Orisons\n Be all my sins rememberd.\n ;/* The known value of the SHA3-512 digest of the above soliloqy */ const unsigned char known_answer[] {0xbb, 0x69, 0xf8, 0x09, 0x9c, 0x2e, 0x00, 0x3d,0xa4, 0x29, 0x5f, 0x59, 0x4b, 0x89, 0xe4, 0xd9,0xdb, 0xa2, 0xe5, 0xaf, 0xa5, 0x87, 0x73, 0x9d,0x83, 0x72, 0xcf, 0xea, 0x84, 0x66, 0xc1, 0xf9,0xc9, 0x78, 0xef, 0xba, 0x3d, 0xe9, 0xc1, 0xff,0xa3, 0x75, 0xc7, 0x58, 0x74, 0x8e, 0x9c, 0x1d,0x14, 0xd9, 0xdd, 0xd1, 0xfd, 0x24, 0x30, 0xd6,0x81, 0xca, 0x8f, 0x78, 0x29, 0x19, 0x9a, 0xfe, };int demonstrate_digest(void) {OSSL_LIB_CTX* _ossl_lib_ctx;int ret 0;const char* _psz_option_properties NULL;EVP_MD* _evp_md NULL;EVP_MD_CTX* _evp_md_ctx NULL;unsigned int digest_length;unsigned char* _p_digest_value NULL;int j;_ossl_lib_ctx OSSL_LIB_CTX_new();if (_ossl_lib_ctx NULL) {fprintf(stderr, OSSL_LIB_CTX_new() returned NULL\n);goto cleanup;}/** Fetch a message digest by name* The algorithm name is case insensitive.* See providers(7) for details about algorithm fetching*/_evp_md EVP_MD_fetch(_ossl_lib_ctx,SHA3-512, _psz_option_properties);if (_evp_md NULL) {fprintf(stderr, EVP_MD_fetch could not find SHA3-512.);goto cleanup;}/* Determine the length of the fetched digest type */digest_length EVP_MD_get_size(_evp_md);if (digest_length 0) {fprintf(stderr, EVP_MD_get_size returned invalid size.\n);goto cleanup;}_p_digest_value OPENSSL_malloc(digest_length);if (_p_digest_value NULL) {fprintf(stderr, No memory.\n);goto cleanup;}/** Make a message digest context to hold temporary state* during digest creation*/_evp_md_ctx EVP_MD_CTX_new();if (_evp_md_ctx NULL) {fprintf(stderr, EVP_MD_CTX_new failed.\n);goto cleanup;}/** Initialize the message digest context to use the fetched* digest provider*/if (EVP_DigestInit(_evp_md_ctx, _evp_md) ! 1) {fprintf(stderr, EVP_DigestInit failed.\n);goto cleanup;}/* Digest parts one and two of the soliloqy */if (EVP_DigestUpdate(_evp_md_ctx, hamlet_1, strlen(hamlet_1)) ! 1) {fprintf(stderr, EVP_DigestUpdate(hamlet_1) failed.\n);goto cleanup;}if (EVP_DigestUpdate(_evp_md_ctx, hamlet_2, strlen(hamlet_2)) ! 1) {fprintf(stderr, EVP_DigestUpdate(hamlet_2) failed.\n);goto cleanup;}if (EVP_DigestFinal(_evp_md_ctx, _p_digest_value, digest_length) ! 1) {fprintf(stderr, EVP_DigestFinal() failed.\n);goto cleanup;}for (j 0; j (int)digest_length; j) {fprintf(stdout, %02x, _p_digest_value[j]);}fprintf(stdout, \n);/* Check digest_value against the known answer */if ((size_t)digest_length ! sizeof(known_answer)) {fprintf(stdout, Digest length(%d) not equal to known answer length(%lu).\n,digest_length, (unsigned long)sizeof(known_answer));}else if (memcmp(_p_digest_value, known_answer, digest_length) ! 0) {for (j 0; j sizeof(known_answer); j) {fprintf(stdout, %02x, known_answer[j]);}fprintf(stdout, \nDigest does not match known answer\n);}else {fprintf(stdout, Digest computed properly.\n);ret 1;}cleanup:if (ret ! 1)ERR_print_errors_fp(stderr);/* OpenSSL free functions will ignore NULL arguments */EVP_MD_CTX_free(_evp_md_ctx);OPENSSL_free(_p_digest_value);EVP_MD_free(_evp_md);OSSL_LIB_CTX_free(_ossl_lib_ctx);return ret; }int main(void) {return demonstrate_digest() ? EXIT_SUCCESS : EXIT_FAILURE; } END
http://www.hkea.cn/news/14389412/

相关文章:

  • 西安网站制作公司排名ps做网站导航条
  • 网上做平面设计的网站有下划线的网址是什么网站
  • 西湖区网站建设jsp网站自身安全性通过什么技术实现
  • 大同本地做网站的会泽网站建设
  • 网站开发的一般流程网站开发技术方案与实施
  • 网站优化电话wordpress主题适应手机浏览器
  • 小程序公司优化工具 wordpress
  • 深圳手机网站制作价钱深圳人才市场现场招聘信息
  • 定州网站建设公司网站开发哪里安全
  • 深圳网站开发培训价格iis做网站上传速度慢
  • 交易类网站seo怎么做苏州电信网站备案
  • 网站建设技术支持昆明网站制作报价
  • 哈尔滨住房城乡建设局网站首页wordpress a
  • 绍兴网站建设免费怎么制作公司网站
  • 自己做网站运营网站建设费用高低有什么区别
  • 网站建设能赚多少钱微信开发小程序开发网站建设
  • 图库网站建设搜索引擎排名优化方案
  • 网站动态效果用什么软件做的广东网站建设设计服务
  • 企业网站备案价格网络搭建教程
  • 铜仁市住房和城乡建设部网站装潢设计什么意思
  • 庆阳做网站的公司博购企业名录搜索软件
  • 没有排名的网站怎么做济南制作网站企业
  • 怎么做网站公众号ui设计师是做网站吗
  • wordpress获取站点副标题网站建设哪些网站可以
  • 大型网站seo方案站长工具介绍
  • 全国网站建设汇编wordpress 搜索关键词
  • pc网站与手机网站手机响应式网站怎么做
  • 网站对接qq群 虚拟主机wordpress searchform.php
  • 聊城手机网站公司电话防钓鱼网站宣传
  • 邢台县建设局网站网站流量查询最准的