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

陕西网站开发价格网红营销对消费者行为的影响

陕西网站开发价格,网红营销对消费者行为的影响,泉州网红,网站建设石家庄文章目录 Presm-crypto如何使用如何引入依赖 sm2获取密钥对加密解密签名验签获取椭圆曲线点 sm3sm4加密解密 Pre 加密与安全_三种方式实现基于国密非对称加密算法的加解密和签名验签 sm-crypto https://github.com/antherd/sm-crypto 国密算法sm2、sm3和sm4的java版。基于js… 文章目录 Presm-crypto如何使用如何引入依赖 sm2获取密钥对加密解密签名验签获取椭圆曲线点 sm3sm4加密解密 Pre 加密与安全_三种方式实现基于国密非对称加密算法的加解密和签名验签 sm-crypto https://github.com/antherd/sm-crypto 国密算法sm2、sm3和sm4的java版。基于js版本进行封装无缝兼容js版公私钥加解密。 PS: js版https://github.com/JuneAndGreen/sm-crypto PS: 小程序版https://github.com/wechat-miniprogram/sm-crypto 如何使用 如何引入依赖 如果需要使用已发布的版本在dependencies中添加如下依赖 dependencygroupIdcom.antherd/groupIdartifactIdsm-crypto/artifactIdversion0.3.2.1/version /dependencysm2 获取密钥对 Keypair keypair Sm2.generateKeyPairHex(); String privateKey keypair.getPrivateKey(); // 公钥 String publicKey keypair.getPublicKey(); // 私钥加密解密 // cipherMode 1 - C1C3C20 - C1C2C3默认为1 String encryptData Sm2.doEncrypt(msg, publicKey); // 加密结果 String decryptData Sm2.doDecrypt(encryptData, privateKey); // 解密结果签名验签 ps理论上来说只做纯签名是最快的。 // 纯签名 生成椭圆曲线点 String sigValueHex Sm2.doSignature(msg, privateKey); // 签名 boolean verifyResult Sm2.doVerifySignature(msg, sigValueHex, publicKey); // 验签结果// 纯签名 QueuePoint pointPool new LinkedList(Arrays.asList(Sm2.getPoint(), Sm2.getPoint(), Sm2.getPoint(), Sm2.getPoint())); SignatureOptions signatureOptions2 new SignatureOptions(); signatureOptions2.setPointPool(pointPool); // 传入事先已生成好的椭圆曲线点可加快签名速度 String sigValueHex2 Sm2.doSignature(msg, privateKey, signatureOptions2); boolean verifyResult2 Sm2.doVerifySignature(msg, sigValueHex2, publicKey); // 验签结果// 纯签名 生成椭圆曲线点 der编解码 SignatureOptions signatureOptions3 new SignatureOptions(); signatureOptions3.setDer(true); String sigValueHex3 Sm2.doSignature(msg, privateKey, signatureOptions3); // 签名 boolean verifyResult3 Sm2.doVerifySignature(msg, sigValueHex3, publicKey, signatureOptions3); // 验签结果// 纯签名 生成椭圆曲线点 sm3杂凑 SignatureOptions signatureOptions4 new SignatureOptions(); signatureOptions4.setHash(true); String sigValueHex4 Sm2.doSignature(msg, privateKey, signatureOptions4); // 签名 boolean verifyResult4 Sm2.doVerifySignature(msg, sigValueHex4, publicKey, signatureOptions4); // 验签结果// 纯签名 生成椭圆曲线点 sm3杂凑不做公钥推导 SignatureOptions signatureOptions5 new SignatureOptions(); signatureOptions5.setHash(true); signatureOptions5.setPublicKey(publicKey); // 传入公钥的话可以去掉sm3杂凑中推导公钥的过程速度会比纯签名 生成椭圆曲线点 sm3杂凑快 String sigValueHex5 Sm2.doSignature(msg, privateKey, signatureOptions5); // 签名 boolean verifyResult5 Sm2.doVerifySignature(msg, sigValueHex5, publicKey, signatureOptions5); // 验签结果// 纯签名 生成椭圆曲线点 sm3杂凑 不做公钥推 添加 userId长度小于 8192 // 默认 userId 值为 1234567812345678 SignatureOptions signatureOptions6 new SignatureOptions(); signatureOptions6.setHash(true); signatureOptions6.setPublicKey(publicKey); signatureOptions6.setUserId(testUserId); String sigValueHex6 Sm2.doSignature(msg, privateKey, signatureOptions6); // 签名 boolean verifyResult6 Sm2.doVerifySignature(msg, sigValueHex6, publicKey, signatureOptions6); // 验签结果获取椭圆曲线点 Point point Sm2.getPoint(); // 获取一个椭圆曲线点可在sm2签名时传入sm3 String hashData Sm3.sm3(abc); // 杂凑sm4 加密 String msg hello world! 我是 antherd.; String key 0123456789abcdeffedcba9876543210; // 16 进制字符串要求为 128 比特String encryptData1 Sm4.encrypt(msg, key); // 加密默认使用 pkcs#5 填充输出16进制字符串Sm4Options sm4Options2 new Sm4Options(); sm4Options2.setPadding(none); String encryptData2 Sm4.encrypt(msg, key, sm4Options2); // 加密不使用 padding输出16进制字符串Sm4Options sm4Options3 new Sm4Options(); sm4Options3.setPadding(none); byte[] encryptData3 Sm4.hexToBytes(Sm4.encrypt(msg, key, sm4Options3)); // 加密不使用 padding输出转为字节数组Sm4Options sm4Options4 new Sm4Options(); sm4Options4.setMode(cbc); sm4Options4.setIv(fedcba98765432100123456789abcdef); String encryptData4 Sm4.encrypt(msg, key, sm4Options4); // 加密cbc 模式输出16进制字符串解密 String encryptData 0e395deb10f6e8a17e17823e1fd9bd98a1bff1df508b5b8a1efb79ec633d1bb129432ac1b74972dbe97bab04f024e89c; // 加密后的 16 进制字符串 String key 0123456789abcdeffedcba9876543210; // 16 进制字符串要求为 128 比特String decryptData5 Sm4.decrypt(encryptData, key); // 解密默认使用 pkcs#5 填充输出 utf8 字符串Sm4Options sm4Options6 new Sm4Options(); sm4Options6.setPadding(none); String decryptData6 Sm4.decrypt(encryptData, key, sm4Options6); // 解密不使用 padding输出 utf8 字符串Sm4Options sm4Options7 new Sm4Options(); sm4Options7.setPadding(none); byte[] decryptData7 Sm4.utf8ToArray(Sm4.decrypt(encryptData, key, sm4Options7)); // 解密不使用 padding输出转为字节数组Sm4Options sm4Options8 new Sm4Options(); sm4Options8.setMode(cbc); sm4Options8.setIv(fedcba98765432100123456789abcdef); String decryptData8 Sm4.decrypt(encryptData, key, sm4Options8); // 解密cbc 模式输出 utf8 字符串
http://www.dnsts.com.cn/news/174612.html

相关文章:

  • 企业在线购物网站建设如何在百度上建立网站
  • 好网站制作可喜安cms系统
  • 东莞网站建设咨询公网络域名多少钱一年
  • 网站伪静态设置网店推广的目的
  • 长沙做旅游网站多少钱百度站长工具数据提交
  • 网站开发能用udp协议吗wordpress用户个人页面
  • 深圳宝安企业网站建设手机端网站建设的注意事项
  • 东莞网站建设公司百推wordpress系统邮件设置
  • 网站跟信息推广有哪些信息化建设网页制作自学
  • 网站通内容管理系统关键词优化话术
  • 淮阳住房城乡建设局网站建设网站涉及哪些问题
  • 淘宝内部优惠券网站怎么建设服装公司简介
  • 网站内部链接优化个人网站 摄影展示
  • 网站做桌面应用 iOS基于淘宝的网站开发分析
  • 学网站建设可以从事什么工作iis5.1建网站
  • 动漫网站源码免费无锡做网站公司哪家好电话
  • 想开个网站建设的公司百度推广联盟
  • 徐州关键词排名优化昆明seo网站
  • 相册特效手机网站成都本地推广平台
  • 南通网站建设项目网站开发费计入什么科目合适
  • 电商网站建设步骤2024年报申报入口官网
  • 温州购物网络商城网站设计制作网络公司电话是多少
  • 网站建设结单 优帮云网站内链工作做足
  • 建设网站的4个根目录被删如网站性质为公司 请以企业备案
  • 秦皇岛网站备案做网站 科目
  • 哪个网站可以查公司注册信息php网站开发小程序
  • 建网站收费吗技能培训有哪些科目
  • 网站开发有什么技术要求html购物网站设计论文
  • 吴江区网站建设wordpress手机上用的
  • 抚州市住房和城乡建设局网站山东机关建设网站道德模范