• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

PHP如何实现可以与在线加密解密工具交互的des加密算法

php 搞代码 4年前 (2022-01-25) 35次浏览 已收录 0个评论
文章目录[隐藏]

使用php做des加密,加密出来的密文,可以在des在线加密解密工具上解密出来

回复内容:

使用php做des加密,加密出来的密文,可以在des在线加密解密工具上解密出来

  • 不同的加密方式可得出不同的结果可导致最终的数据并不通用尽管是同一个算法

PHP自带DES和3DES的加解密

PHP自身支持的加密方式列表(依赖mcrypt):http://cn2.php.net/manual/zh/mcrypt.ciph…

<code class="php">echo mcrypt_get_key_size(MCRYPT_DES,MCRYPT_MODE_CFB);// des cfb 秘钥长度为8位// 秘钥$key = 11111111;// 创建IV$iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_DES, MCRYPT_MODE_CFB),MCRYPT_RAND);// 加密 使用CFB模式$data = mcrypt_encrypt(MCRYPT_DES, $key, '加密的数据', MCRYPT_MODE_CFB, $iv);var_dump($data);</code>

另外PHP的OpenSSL扩展也可以直接用于加密 相关函数:openssl_encrypt

<code class="php">// 获取OpenSSL支持的加密参数列表print_r(openssl_get_cipher_methods());Array(    [0] => AES-128-CBC    [1] => AES-128-CFB    [2] => AES-128-CFB1    [3] => AES-128-CFB8    [4] => AES-128-CTR    [5] => AES-128-ECB    [6] => AES-128-OFB    [7] => AES-128-XTS    [8] => AES-192-CBC    [9] => AES-192-CFB    [10] => AES-192-CFB1    [11] => AES-192-CFB8    [12] => AES-192-CTR    [13] => AES-192-ECB    [14] => AES-192-OFB    [15] => AES-256-CBC    [16] => AES-256-CFB    [17] => AES-256-CFB1    [18] => AES-256-CFB8    [19] => AES-256-CTR    [20] => AES-256-ECB    [21] => AES-256-OFB    [22] => AES-256-XTS    [23] => BF-CBC    [24] => BF-CFB    [25] => BF-ECB    [26] => BF-OFB    [27] => CAMELLIA-128-CBC    [28] => CAMELLIA-128-CFB    [29] => CAMELLIA-128-CFB1    [30] => CAMELLIA-128-CFB8    [31] => CAMELLIA-128-ECB    [32] => CAMELLIA-128-OFB    [33] => CAMELLIA-192-CBC    [34] => CAMELLIA-192-CFB    [35] => CAMELLIA-192-CFB1    [36] => CAMELLIA-192-CFB8    [37] => CAMELLIA-192-ECB    [38] => CAMELLIA-192-OFB    [39] => CAMELLIA-256-CBC    [40] => CAMELLIA-256-CFB    [41] => CAMELLIA-256-CFB1    [42] => CAMELLIA-256-CFB8    [43] => CAMELLIA-256-ECB    [44] => CAMELLIA-256-OFB    [45] => CAST5-CBC    [46] => CAST5-CFB    [47] => CAST5-ECB    [48] => CAST5-OFB    [49] => DES-CBC    [50] => DES-CFB    [51] => DES-CFB1    [52] => DES-CFB8    [53] => DES-ECB    [54] => DES-EDE    [55] => DES-EDE-CBC    [56] => DES-EDE-CFB    [57] => DES-EDE-OFB    [58] => DES-EDE3    [59] => DES-EDE3-CBC    [60] => DES-EDE3-CFB    [61] => DES-EDE3-CFB1    [62] => DES-EDE3-CFB8    [63] => DES-EDE3-OFB    [64] => DES-OFB    [65] => DESX-CBC    [66] => GOST 28147-89    [67] => IDEA-CBC    [68] => IDEA-CFB    [69] => IDEA-ECB    [70] => IDEA-OFB    [71] => RC2-40-CBC    [72] => RC2-64-CBC    [73] => RC2-CBC    [74] => RC2-CFB    [75] => RC2-ECB    [76] => RC2-OFB    [77] => RC4    [78] => RC4-40    [79] => RC4-HMAC-MD5    [80] => SEED-CBC    [81] => SEED-CFB    [82] => SEED-ECB    [83] => SEED-OFB    [84] => aes-128-cbc    [85] => aes-128-ccm    [86] => aes-128-cfb    [87] => aes-128-cfb1    [88] => aes-128-cfb8    [89] => aes-128-ctr    [90] => aes-128-ecb    [91] => aes-128-gcm    [92] => aes-128-ofb    [93] => aes-128-xts    [94] => aes-192-cbc    [95] => aes-192-ccm    [96] => aes-192-cfb    [97] => aes-192-cfb1    [98] => aes-192-cfb8    [99] => aes-192-ctr    [100] => aes-192-ecb    [101] => aes-192-gcm    [102] => aes-192-ofb    [103] => aes-256-cbc    [104] => aes-256-ccm    [105] => aes-256-cfb    [106] => aes-256-cfb1    [107] => aes-256-cfb8    [108] => aes-256-ctr    [109] => aes-256-ecb    [110] => aes-256-gcm    [111] => aes-256-ofb    [112] => aes-256-xts    [113] => bf-cbc    [114] => bf-cfb    [115] => bf-ecb    [116] => bf-ofb    [117] => camellia-128-cbc    [118] => camellia-128-cfb    [119] => camellia-128-cfb1    [120] => camellia-128-cfb8    [121] => camellia-128-ecb    [122] => camellia-128-ofb    [123] => camellia-192-cbc    [124] => camellia-192-cfb    [125] => camellia-192-cfb1    [126] => camellia-192-cfb8    [127] => camellia-192-ecb    [128] => camellia-192-ofb    [129] => camellia-256-cbc    [130] => camellia-256-cfb    [131] => camellia-256-cfb1    [132] => camellia-2<i>1本文来#源gaodai$ma#com搞$代*码*网</i><pre>搞代gaodaima码

56-cfb8 [133] => camellia-256-ecb [134] => camellia-256-ofb [135] => cast5-cbc [136] => cast5-cfb [137] => cast5-ecb [138] => cast5-ofb [139] => des-cbc [140] => des-cfb [141] => des-cfb1 [142] => des-cfb8 [143] => des-ecb [144] => des-ede [145] => des-ede-cbc [146] => des-ede-cfb [147] => des-ede-ofb [148] => des-ede3 [149] => des-ede3-cbc [150] => des-ede3-cfb [151] => des-ede3-cfb1 [152] => des-ede3-cfb8 [153] => des-ede3-ofb [154] => des-ofb [155] => desx-cbc [156] => gost89 [157] => gost89-cnt [158] => id-aes128-CCM [159] => id-aes128-GCM [160] => id-aes128-wrap [161] => id-aes192-CCM [162] => id-aes192-GCM [163] => id-aes192-wrap [164] => id-aes256-CCM [165] => id-aes256-GCM [166] => id-aes256-wrap [167] => id-smime-alg-CMS3DESwrap [168] => idea-cbc [169] => idea-cfb [170] => idea-ecb [171] => idea-ofb [172] => rc2-40-cbc [173] => rc2-64-cbc [174] => rc2-cbc [175] => rc2-cfb [176] => rc2-ecb [177] => rc2-ofb [178] => rc4 [179] => rc4-40 [180] => rc4-hmac-md5 [181] => seed-cbc [182] => seed-cfb [183] => seed-ecb [184] => seed-ofb)

<code class="php">// 使用openssl加密数据$string = openssl_encrypt('要加密的数据','des-cfb','秘钥des为8位',0,'IV des为8位');var_dump($string);</code>

主要是des的算法,然后是发送一个请求,返回结果而已。
网上应该有类似的算法,推荐一个:
http://www.cnblogs.com/wangchuang/archiv&#8230;
(百度搜索,找到的)

跟其他语言交互的时候,对方语言直接先base64解密再进行des解密就可以获得原始数据了.python,ios是可以,其他语言没测试,即des_decrypt(base64_decrypt($pass_string))就可了


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:PHP如何实现可以与在线加密解密工具交互的des加密算法

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址