<?phpの / ** * 3DES加密 * / クラスの暗号化{ パブリック関数pkcs5_pad($テキスト、$のブロックサイズ){ $パッド= $ブロックサイズ- (STRLEN($テキスト)%$ブロックサイズ)。 $テキストを返します。STR_Repeat(CHR($パッド)、$パッド); } パブリック関数pkcs5_unpad($テキスト){ $パッド= ORD($テキスト{strlenを($テキスト) - 1})。 ($パッド> strlenを($テキスト)){場合は falseを返します。 } 戻りSUBSTR($テキスト、0、-1 * $パッド); } / ** *加密 * @paramの$キー * @paramの$入力 * @return文字列 * / パブリック関数des3Encryption($キー、$入力){ $入力=の$ this - > pkcs5_pad($入力、8)。 $のTD =は、mcrypt_module_open( 'トリプルDES'、 ''、 'ECB'、「 「); $ IV = mcrypt_create_iv(mcrypt_enc_get_iv_size($のTD)、MCRYPT_RAND)。 mcrypt_generic_init($ tdが、$キー、$ IV); $ en_res = mcrypt_generic($のTD、$入力)。 mcrypt_generic_deinit($のTD); mcrypt_module_close($のTD); $ en_resを返します。 } / ** *解密 * @paramの$キー * @paramする$陰窩 * @return文字列 * / パブリック関数DES3DECRYPT($キー、$の陰窩){ $の陰窩= BASE64_DECODE($の陰窩)。 $ TD =は、mcrypt_module_open( 'トリプルDES'、 ''、 'ECB'、 ''); mcrypt_generic_deinit($のTD); mcrypt_module_close($のTD); $ IV = mcrypt_create_iv(mcrypt_enc_get_iv_size($のTD)、MCRYPT_RAND)。 mcrypt_generic_init($ tdが、$キー、$ IV); $ decrypted_data = mdecrypt_generic($ tdが、$の暗号)。 $ decrypted_data =の$ this - > pkcs5_unpad($のdecrypted_data)。 RTRIM返す($ decrypted_data)。 } } $ OBJ =新しい暗号化(); $キー= "9oyKs7cVo1yYzkuisP9bhA =="; $入力= '123456'; $ enc_res = BASE64_ENCODE($ obj-> des3Encryption($キー、$入力))。 $ enc_resをエコー。 $暗号= 'KkljLXJH9jnUg4 + UyiPjzsmohuAxRTi0Iybiub47dTySoEqIK2NKg / LgKzhXWRc3Eken0YW09xcApE6kJEUfoEIsrAWnsnSCeZjr62quFEMv51BlE7RmUALXIta + P3aVRl5D6fg + xpeIgsJAY9kkhmLmdQmbvB3hMqwF / Gh7X6ZYGr7dHo4DfjNFiHaSUnDQ6s8ik1I + ye85rr2uWIZ / yPuvrRuTw05 + gFe1z01v / kWzVLfKXmsxZOrPIpNSPsnv + 08mckR2nsNT8ljOr9ggcDQovf3FgybIw3w2OraFKhnrOebzsGV0Wt5gwesKGbg8s6wam1d8qGLxLyUno74iLNRa / Kaz6LjoKWmMmpol1pEDQnM / UNCKc3Sdp34yenHj1Fr8prPouOgVBMTlBqWLtrDTl1R6apVi + ZUOnw / cKexsmJiCsHEAHK7oy6vj / 44R1QGg6H8mF5tPIfZtvp8e2i + l0eC4yveATbjJ7LcZ4 + qAEbveQC8x / eix3PBjmhYeKANzeJqNEflTuvIHQIQWuKeT9Vw0nFrR3Dt + MBQrsMV / lWs1H3w4NrgQdQEtR / 7L2wxNR2tMHM64EHUBLUf + Y6 + VuMP83CbwQurJQ6l0LGSKAunFwvRbJM5CYrr8qIitU / JTokRlYdPl0yDuNqjqyQe9nS8WymTachpKe1ZmP6jIOu6rxeC0F6qI0ZH / KagceLZRBiz / R7Bf3sT15jsfqBfSiXwSROhvsa2PsLRoFz8i4eMTiLfbu0xP + Mrs65coYec + gMJK7hzpQnc5I / UJjSmjL9slAVpJc74hRGJ3dwlV / zmnmZeyeQzX3qsF3rMnopsHrYLniK +徐/ Cwl7G55Su1pGekbno2「; $ desc_res = $ obj-> DES3DECRYPT($キー、$の暗号)。 エコー'<前>'; $ desc_resをエコー。 ?>