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

做公司的网站大概多少钱网站怎么绑定域名

做公司的网站大概多少钱,网站怎么绑定域名,北京赛车网站开发河南,电子商务网站开发实训体会文章目录 一、SM2 签名理论基础二、SM2签名开发实例 一、SM2 签名理论基础 SM2是中国国家密码管理局发布的椭圆曲线密码算法标准#xff0c;用于数字签名、密钥交换和公钥加密等安全通信场景。以下是SM2签名的理论基础相关知识点#xff1a; 椭圆曲线密码学#xff08;Elli… 文章目录 一、SM2 签名理论基础二、SM2签名开发实例 一、SM2 签名理论基础 SM2是中国国家密码管理局发布的椭圆曲线密码算法标准用于数字签名、密钥交换和公钥加密等安全通信场景。以下是SM2签名的理论基础相关知识点 椭圆曲线密码学Elliptic Curve CryptographyECC SM2基于椭圆曲线密码学该密码学利用椭圆曲线上的数学运算实现加密和签名。椭圆曲线的选择对于安全性至关重要。 SM2签名算法 SM2签名算法采用基于椭圆曲线的数字签名算法ECDSA。签名过程涉及到私钥的使用和椭圆曲线上的数学运算。 椭圆曲线参数 SM2使用了特定的椭圆曲线参数包括椭圆曲线方程、基点坐标、曲线上的素数阶数等。这些参数在标准中有详细规定。 椭圆曲线的离散对数问题 ECC的安全性基于椭圆曲线上的离散对数问题的难解性即在给定椭圆曲线参数和基点的情况下计算离散对数是困难的。 SM2签名流程 选择椭圆曲线参数。生成随机数作为私钥。利用椭圆曲线上的点乘法计算公钥。签名者使用私钥和消息的哈希值进行签名得到签名值。验证者使用签名值、公钥和消息的哈希值进行验证。 SM2签名验证 验证SM2签名的过程是使用签名者的公钥、签名值和消息的哈希值进行一系列的椭圆曲线运算最终验证签名的有效性。 消息摘要算法 SM2签名使用消息摘要算法对原始消息进行哈希通常采用SM3算法。 随机数生成 随机数在SM2签名中的生成对于私钥的安全性至关重要。伪随机数生成器的质量直接影响签名的安全性。 SM2签名安全性 SM2签名的安全性基于椭圆曲线的数学困难问题如离散对数问题。在选择椭圆曲线参数时需要确保足够的安全强度。 这些知识点构成了SM2签名的理论基础理解这些基础概念有助于深入了解SM2签名算法的工作原理和安全性。 二、SM2签名开发实例 要在Linux环境下使用C和OpenSSL库实现SM2签名你可以按照以下步骤进行 安装 OpenSSL 确保你的系统上已经安装了 OpenSSL 库。可以使用包管理器进行安装例如在 Ubuntu 上可以使用以下命令 sudo apt-get install libssl-dev创建 C 项目 创建一个新的 C 项目并确保项目的编译脚本中包含 OpenSSL 库的链接。 编写 SM2 签名代码 使用 OpenSSL 提供的 API 进行 SM2 签名。以下是一个简单的示例代码 #include openssl/evp.h #include openssl/sm2.h #include openssl/pem.hint main() {EVP_PKEY* key EVP_PKEY_new();FILE* privateKeyFile fopen(private_key.pem, r);// 从文件中加载私钥if (!PEM_read_PrivateKey(privateKeyFile, key, NULL, NULL)) {perror(Error loading private key);return 1;}fclose(privateKeyFile);// 创建 SM2 签名上下文EVP_MD_CTX* ctx EVP_MD_CTX_new();EVP_MD_CTX_init(ctx);// 选择 SM3 摘要算法const EVP_MD* md EVP_sm3();// 初始化签名if (!EVP_DigestSignInit(ctx, NULL, md, NULL, key)) {perror(Error initializing signature);return 1;}// 添加要签名的数据const char* message Hello, SM2!;if (!EVP_DigestSignUpdate(ctx, message, strlen(message))) {perror(Error updating signature);return 1;}// 获取签名长度size_t sig_len;if (!EVP_DigestSignFinal(ctx, NULL, sig_len)) {perror(Error getting signature length);return 1;}// 执行签名unsigned char* signature (unsigned char*)malloc(sig_len);if (!EVP_DigestSignFinal(ctx, signature, sig_len)) {perror(Error signing data);return 1;}// 输出签名printf(Signature: );for (size_t i 0; i sig_len; i) {printf(%02X, signature[i]);}printf(\n);// 释放资源EVP_MD_CTX_free(ctx);EVP_PKEY_free(key);free(signature);return 0; }请注意这只是一个简单的示例实际应用中需要适应你的具体需求例如加载公钥、处理错误等。 编译和运行 使用适当的编译器和选项来编译你的代码。例如使用 g 编译上述代码 g -o sm2_sign sm2_sign.cpp -lssl -lcrypto然后运行可执行文件 ./sm2_sign请注意私钥文件 private_key.pem 需要事先准备好它包含了用于签名的私钥信息。确保你在实际应用中妥善管理密钥并且根据你的具体情况进行适当的错误处理和安全性考虑。
http://www.pierceye.com/news/626233/

相关文章:

  • 重庆网站制作公司妇联加强网站平台建设
  • php mysql网站开发全程实例.pdf网站的视频怎么下载
  • 海南医院网站建设软件工程公司排名
  • 微信公众号怎么分享wordpress网站优化搜索
  • 永定门网站建设佛山网红打卡景点大全排名榜
  • 网站建设模板推广重庆网络问政平台华龙网
  • 今科云平台网站建设技术中国电力建设股份部官方网站
  • 门户网站的三大基本特征vs2017做的网站如何发布
  • 怎么样自己做网站接订单网站建设和的注意事项
  • 月付商城网站建站男装商城网站建设
  • 建网站的步骤及方法php做的网站怎么运行
  • 英德市住房和城乡建设局手机网站html5手机网站模板下载
  • 网站建设手机建设网站 系统占用空间
  • 网站没内容网站域名.xin
  • 布吉建设网站网站是怎么制作出来的
  • 有赞网站开发凡科建站网
  • html5商业网站开发北大青鸟wordpress免费模版
  • 网站建设及那个科目提升网站页面打开速度
  • 直接玩的网页游戏关键词优化工具有哪些
  • 单页面网站如何优化引流四川网站建设贴吧
  • 贵州省建设银行网站wordpress首页调用文章缩略图
  • 项城市住房和城乡建设局网站融资平台公司
  • asp企业网站设计sage wordpress
  • 做视频网站需要哪些条件wordpress登录页面背景图片尺寸
  • 专门教做衣服的网站西宁电商网站建设
  • 无锡网站科技公司qq哪家公司开发的
  • 强化 门户网站建设今天的新闻大事
  • 专业做刀具网站的公司单页面网站模板
  • 企业网站制作及cms技术wordpress站点 HTML
  • 网络宣传网站建设制作加盟网络推广方案怎么写