iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP 3DES加密
  • 685
分享到

PHP 3DES加密

phpdes加密 2023-10-03 18:10:38 685人浏览 安东尼
摘要

不多说,直接上代码类 然后自行依据实际情况调用即可 自行了解引用,有测试示例在代码中 来源地址:https://blog.csdn.net/Purgatory001/article/details/12753759

不多说,直接上代码类

然后自行依据实际情况调用即可

PHPclass STD3Des {    public static function encrypt($str, $key='xxx') {        $message = $str;        $iv = '';        $message_padded = $message;        $message_padded = self::pkcs5_pad($message_padded, 8);        if (strlen($message_padded) % 8) {            $message_padded = str_pad($message_padded, strlen($message_padded) + 8 - strlen($message_padded) % 8, "\0");        }        //$message_padded = self::pkcs5_pad($message_padded, 8);//原来是在这打包的,运行了一下发现密文不一样,就改到上面了//        $encrypted_mcrypt = mcrypt_encrypt(MCRYPT_3DES, $key,//                self::pkcs5_pad($message, 8), MCRYPT_MODE_ECB, $iv);        $encrypted_openssl = openssl_encrypt($message_padded, "DES-EDE3", $key, OPENSSL_RAW_DATA | OPENSSL_NO_PADDING);        //return strtoupper(bin2hex($encrypted_mcrypt));        return bin2hex($encrypted_openssl);    }    public static function encrypt_ECB($str, $key) {        $message = $str;        $iv = '';        $message_padded = $message;        $message_padded = self::pkcs5_pad($message_padded, 8);        if (strlen($message_padded) % 8) {            $message_padded = str_pad($message_padded, strlen($message_padded) + 8 - strlen($message_padded) % 8, "\0");        }        //$message_padded = self::pkcs5_pad($message_padded, 8);//原来是在这打包的,运行了一下发现密文不一样,就改到上面了//        $encrypted_mcrypt = mcrypt_encrypt(MCRYPT_3DES, $key,//                self::pkcs5_pad($message, 8), MCRYPT_MODE_ECB, $iv);        $encrypted_openssl = openssl_encrypt($message_padded, "DES-EDE3", $key, OPENSSL_RAW_DATA | OPENSSL_NO_PADDING);        //return strtoupper(bin2hex($encrypted_mcrypt));        //return bin2hex($encrypted_openssl);        return base64_encode($encrypted_openssl);    }    public static function decrypt_ECB($encrypted, $key) {//数据解密        $data = base64_decode($encrypted);//        $data = $encrypted;        $decrypted_openssl = openssl_decrypt($data, 'DES-EDE3', $key, OPENSSL_RAW_DATA);        return $decrypted_openssl;    }    public static function encrypt_CFB8($str, $key, $iv) {        $message = $str;        $message_padded = $message;        $message_padded = self::pkcs5_pad($message_padded, 8);        if (strlen($message_padded) % 8) {            $message_padded = str_pad($message_padded, strlen($message_padded) + 8 - strlen($message_padded) % 8, "\0");        }        $encrypted_openssl = openssl_encrypt($message_padded, "DES-EDE3-CFB8", $key, OPENSSL_RAW_DATA | OPENSSL_NO_PADDING, $iv);        return base64_encode($encrypted_openssl);    }    public static function decrypt($encrypted, $key) {//数据解密        $data = hex2bin($encrypted);//        $data = $encrypted;        $decrypted_openssl = openssl_decrypt($data, 'DES-EDE3', $key, OPENSSL_RAW_DATA);        return $decrypted_openssl;    }    private static function pkcs5_pad($text, $blocksize) {        $pad = $blocksize - (strlen($text) % $blocksize);        return $text . str_repeat(chr($pad), $pad);    }}//$encrypted_openssl =STD3Des::encrypt('0123456789', 'test0123456789');//echo 'encrypted_openssl=='.$encrypted_openssl.'
';//034dcda761d12373f82b025355c6870d//echo STD3Des::decrypt($encrypted_openssl, 'test0123456789');?>

自行了解引用,有测试示例在代码中

来源地址:https://blog.csdn.net/Purgatory001/article/details/127537594

--结束END--

本文标题: PHP 3DES加密

本文链接: https://www.lsjlt.com/news/423121.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PHP 3DES加密
    不多说,直接上代码类 然后自行依据实际情况调用即可 自行了解引用,有测试示例在代码中 来源地址:https://blog.csdn.net/Purgatory001/article/details/12753759...
    99+
    2023-10-03
    php des加密
  • DES/3DES/AES加密
          数据加密算法DES数据加密算法(Data Encryption Algorithm,DEA)的数据加密标准(Data Encryption Standard,DES)是规范的描述,它出自 IBM 的研究工作,并...
    99+
    2023-01-31
    DES AES
  • php如何使用3des加解密及hmacsha256加密
    目录一、3des加解密二、hmacsha256加密总结一、3des加解密 从PHP 7.2起它将被从核心代码中移除并且移到PECL中。PHP手册在7.1迁移页面给出了替代方案,就是用...
    99+
    2024-04-02
  • nodejs 实现3des加密解密
    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,它非常适合构建高性能的网络应用程序。3DES(Triple Data Encryption Standard)是一种常用的对称加密算法,在数据传输和存储...
    99+
    2023-05-16
  • 3DES,32位长秘钥加密
    一般3des加密的秘钥是一个24位的字节数组,但是很多遇到32位字符串秘钥,不知道怎么去用,其实只是经过几步转化就可以了。希望这篇文章对大家有帮助或者带来灵感比如:秘钥:33333333333333333333333333333333要加密...
    99+
    2023-01-31
    DES 位长秘钥
  • 基于EEE3模式的3DES算法加密和解密实现
    3DES(Triple Data Encryption Standard)算法是对DES算法的增强版本,它使用三次DES算法来实现更...
    99+
    2023-09-13
    EEE3
  • 使用Java怎么实现一个3des加密解密工具类
    这期内容当中小编将会给大家带来有关使用Java怎么实现一个3des加密解密工具类,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。具体如下:package com.gcloud.common;imp...
    99+
    2023-05-30
    java 3des
  • 使用keytool生成3DES密钥
    keytool 简介 keytool生成3DES密钥 C:\Program Files\Java\jre1.8.0_161\bin>keytool -genseckey -alias test-TDES -keyalg DESede ...
    99+
    2023-01-31
    密钥 keytool DES
  • php对称加密AES加密解密
    AES-128-ECB和AES-256-CBC是两种常见的AES加密模式,它们在加密方式和安全性上有以下区别: 加密方式: AES-128-ECB:ECB(Electronic Codebook)模式是最简单的AES加密模式,它将数据...
    99+
    2023-09-01
    php 开发语言 同态加密 hash-index 哈希算法
  • PHP AES 加密解密
    PHP 有一个使用 PHP 的 AES 方法加密和解密字符串的内置扩展。 函数 openssl_encrypt() 用于加密字符串,openssl_decrypt() 用于解密字符串。 在 P...
    99+
    2024-02-27
  • JavaScript加密库:Crypto-JS加密/PHP解密
    crypto-js是一个纯JavaScript的加密算法类库,可以非常方便的在前端进行其所支持的加解密操作。 本文附带php后端加密解密操作。 一、引入 crypto-js (点击可下载) 二、前端代码 const key ...
    99+
    2023-09-04
    javascript 前端 crypto-js php 加密解密
  • PHP实现RSA加密解密
    目录 安装phpseclib  代码编写 1.依赖引用 2.创建密钥 3.公钥加密 4.私钥解密 总结   安装phpseclib PHP安全通信库phpseclib,可以使用它来操作OpenSSL、GMP、libnaid或mcrypt...
    99+
    2023-09-08
    RSA phpseclib php 非对称加密
  • PHP sm4国密加密解密文件
    phpsm2sm3sm4: php 国密算法 支持 m2 sm3 sm4 SM3WithSM2签名 来源地址:https://blog.csdn.net/licanfeng1/article/details/132236052...
    99+
    2023-09-06
    android android studio ide php
  • PHP如何实现加密解密
    这篇文章主要为大家展示了“PHP如何实现加密解密”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“PHP如何实现加密解密”这篇文章吧。加密解密function encrypt($data,...
    99+
    2023-06-03
  • php如何实现密码加密
    这篇文章给大家分享的是有关php如何实现密码加密的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php密码加密方法:1、使用password_hash(),语法“password_hash(密码,PASSWORD_...
    99+
    2023-06-20
  • crypto-js 加密 php后端解密
    js代码 Title AesKey = '1234567890123456';//加密时用的key,跟php一样 AesIv='8NONwyJtHesysWpM';//iv 偏移量 var data='ABCDEFGH';...
    99+
    2023-08-31
    javascript 前端 php
  • PHP入门指南:加密和解密
    随着互联网的不断发展,越来越多的人开始关注数据的安全问题。作为一名程序员,我们需要了解如何对敏感数据进行加密,以保证数据的安全性。在编程语言中,PHP是一种常用的语言,支持多种加密和解密算法。本文将为您介绍PHP的加密和解密功能,帮助您更好...
    99+
    2023-05-20
    解密 PHP 加密
  • PHP加密解密技巧是什么
    今天就跟大家聊聊有关PHP加密解密技巧是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。我们在这里为大家详细介绍了有关PHP加密解密的实现方法。希望本文介绍的内容能够提高大家对PH...
    99+
    2023-06-17
  • PHP如何使用password_hash()加密密码
    这篇文章主要为大家展示了“PHP如何使用password_hash()加密密码”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“PHP如何使用password_hash()加密密码”这篇文章吧。使用...
    99+
    2023-06-02
  • php RSA加密解密返回空/false
    问题 字符串过长,加密/解密时返回false 原因(太底层,我也看不懂) 参考 RSA加解密中必须考虑到的密钥长度、明文长度和密文长度问题。明文长度需要小于密钥长度(1024),而密文长度则...
    99+
    2023-08-30
    php
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作