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

wordpress仿站服务中国版动漫网站模板

wordpress仿站服务,中国版动漫网站模板,优设网ps教程,搜题在线使用网页版DES 是对称性加密里面常见一种#xff0c;全称为 Data Encryption Standard#xff0c;即数据加密标准#xff0c;是一种使用密钥加密的块算法。密钥长度是64位(bit)#xff0c;超过位数密钥被忽略。所谓对称性加密即加密和解密密钥相同#xff0c;对称性加密一般会按照固…DES 是对称性加密里面常见一种全称为 Data Encryption Standard即数据加密标准是一种使用密钥加密的块算法。密钥长度是64位(bit)超过位数密钥被忽略。所谓对称性加密即加密和解密密钥相同对称性加密一般会按照固定长度把待加密字符串分成块不足一整块或者刚好最后有特殊填充字符。 跨语言做 DES 加密解密经常会出现问题往往是填充方式不对、编码不一致或者加密解密模式没有对应上造成。 常见的填充模式有 pkcs5、pkcs7、iso10126、ansix923、zero。 加密模式有DES-ECB、DES-CBC、DES-CTR、DES-OFB、DES-CFB。 一、加密用到的方法 openssl_encrypt($data, $method, $password, $options, $iv)参数说明 1.$data 加密明文 2.$method 加密方法 DES-ECB DES-CBC DES-CTR DES-OFB DES-CF 3.$passwd 加密密钥[密码] 4.$options 数据格式选项可选【选项有】0 OPENSSL_RAW_DATA1 OPENSSL_ZERO_PADDING2 OPENSSL_NO_PADDING3 5.$iv 密初始化向量可选 需要注意如果method为DES−ECB则 method为DES-ECB则method为DES−ECB则iv无需填写 二、解密用到的方法 openssl_decrypt($data, $method, $password, $options, $iv)参数说明 1.$data 要解密的数据 其他参数同加密方法 三、用法案例 参数: $data ‘1234567887654321’;//加密明文 $method ‘DES-ECB’;//加密方法 $passwd ‘12344321’;//加密密钥 $options 0;//数据格式选项可选 $iv ‘’;//加密初始化向量可选 (1) 默认填充方式 加密 $result openssl_encrypt($data, $method, $passwd, $options); var_dump($result);结果 string(32) “kQYOdswcm9I5elv2wdJucplqAgqDNqXg” 解密 $result kQYOdswcm9I5elv2wdJucplqAgqDNqXg; var_dump(openssl_decrypt($result, $method, $passwd, 0));结果 string(16) “1234567887654321” (2) OPENSSL_RAW_DATA方式【会用PKCS#7进行补位】 加密 $result openssl_encrypt($data, $method, $passwd, OPENSSL_RAW_DATA); var_dump($result);结果 string(24) “v9z[nrj 6” 我们可以看到结果是乱码的这时我们需要base64一下 $result openssl_encrypt($data, $method, $passwd, OPENSSL_RAW_DATA); var_dump(base64_encode($result));这时结果是 string(32) “kQYOdswcm9I5elv2wdJucplqAgqDNqXg” 解密 result openssl_encrypt($data, $method, $passwd, OPENSSL_RAW_DATA); var_dump(openssl_decrypt($result, $method, $passwd,OPENSSL_RAW_DATA));结果 string(16) “1234567887654321” 我们可以看到默认填充方式与OPENSSL_RAW_DATA这两种方式加密结果是一样的 (3) OPENSSL_ZERO_PADDING方式 看字面意思是用0填充但是测试并不起作用 加密 $result openssl_encrypt($data, $method, $passwd, OPENSSL_ZERO_PADDING); var_dump($result);结果 string(24) “kQYOdswcm9I5elv2wdJucg” 解密 $result openssl_encrypt($data, $method, $passwd, OPENSSL_ZERO_PADDING); var_dump(openssl_decrypt($result, $method, $passwd,OPENSSL_ZERO_PADDING));结果 string(16) “1234567887654321” (4) OPENSSL_NO_PADDING【不填充需要手动填充】 在openssl_encrypt前加上填充过程 加密 $str_padded $data;if (strlen($str_padded) % 16) {$str_padded str_pad($str_padded,strlen($str_padded) 16 - strlen($str_padded) % 16, \0);}$result openssl_encrypt($str_padded, $method, $passwd, OPENSSL_NO_PADDING);var_dump($result);echo br;var_dump( base64_encode($result));结果 string(16) “v9z[nr” string(24) “kQYOdswcm9I5elv2wdJucg” 我们可以看到结果是加密的乱码需要用base64一下就可以看到结果了 解密 //加密begin $str_padded $data;if (strlen($str_padded) % 16) {$str_padded str_pad($str_padded,strlen($str_padded) 16 - strlen($str_padded) % 16, \0);}$result openssl_encrypt($str_padded, $method, $passwd, OPENSSL_NO_PADDING);//加密end//解密begin$str base64_encode($result);$m openssl_decrypt( base64_decode($str) , $method, $passwd, OPENSSL_NO_PADDING);var_dump( rtrim( rtrim( $m,chr(0) ), chr(7) ) );//解密 end 结果 string(16) “1234567887654321” ** 结尾要去除填充字符’\0’和’\a’。 ‘\a’是为了兼容用OPENSSL_RAW_DATA加密的结果。 ** 参照的文档有 PHP 基础篇 - PHP 中 DES 加解密详解 https://www.jianshu.com/p/546137b8ac7a 关于mcrypt_encrypt和openssl_encrypt加密结果不一致的解决 http://www.heylc.com/fuanyuopenssl.html 相关知识文章 RSA密码传输加密方案 https://wenku.baidu.com/view/83cb1d6df011f18583d049649b6648d7c1c7089d.html?review iOS 实现对称加密多种填充方式(ANSIX923、ISO10126、Zero) https://www.jianshu.com/p/7b6f5aaa7680 PHP由mcrypt扩展加密改为openssl扩展加密 https://www.xxling.com/blog/article/3114.aspx PHP用openssl_encrypt代替mcrypt_encrypt https://coderlife.cn/1624.html AES加密CBC模式兼容互通四种编程语言平台【PHP、Javascript、Java、C#】 https://my.oschina.net/Jacker/blog/86383 在PHP7.1中使用openssl取代mcrypt https://swoole.app/2018/05/15/在php7-1中使用openssl取代mcrypt/ PHP openssl加密扩展使用总结 https://www.bbsmax.com/A/ke5jNDe75r/ PHP 7.2使用openssl进行加解密 https://www.lytit.com/2018/01/26/118/ PHP OpenSSL扩展 - 对称加密 https://www.jianshu.com/p/8f82e8fd123e DES 加解密工具 http://tool.chacuo.net/cryptdes RSA填充方式 https://www.jianshu.com/p/205abb4b9dc6 AES加密模式和填充方式hashmd5ca
http://www.pierceye.com/news/964729/

相关文章:

  • 怎么做网站视频教程做广告牌子
  • 合肥做网站公网站设网页设计
  • 罗田做网站凡科网小程序
  • 玻璃钢产品哪个网站做推广好.加强网站安全建设
  • 扬州公司网站建设网络建设与管理包括哪些方面
  • 我的网站域名福州网站的优化
  • 威海市网站建设微信在线登录平台
  • 2014网站设计成都网站设计合理柚v米科技
  • 建设自己网站需要多钱网站规划与设计就业
  • 用flash做的网站欣赏手机网站图片切换jquery
  • 昆明做网站seo网站推广策略什么时候
  • 网站添加 百度商桥wordpress 友情链接 代码
  • 一鸿建设设计网站百家号排名
  • 网站最新一次改版时间什么意思电商平台应该如何推广
  • 网站设计制作程序网站开发列表
  • 企业网站建设需要哪些费用做算法的网站
  • 很大气的网站 营销js特效网站展示
  • 南宁建站程序成都新线加网站建设
  • 用微软雅黑做网站可以吗wordpress游客发帖插件
  • 网站备案怎样提交管局网页电商设计
  • 郑州华恩科技做网站怎么样网络竞价推广托管公司
  • 都江堰住房和城乡建设厅网站哈尔滨网站建设方案维护
  • 九江网站网站建设原始传奇经典复古
  • 宽屏营销型网站源码安微省住房和城乡建设厅网站
  • 做暖视频网站免费搜索引擎营销的模式有
  • 网站建设需要的条件榆林北京网站建设
  • 分类信息网站推广的意义wordpress安装教程wamp
  • 免费自助建站全系统建设银行永泰支行网站
  • 建网络商城网站如何开公司做网站
  • 长春网站制作色块网站设计