前言:

DES是一种加密方法,向服务器发送数据时,希望对数据进行简单的加密,并且在服务器上自行解密的教程。

步骤:

unity3D(C#)

​//对数据进行DES加密

public static String Encrypt(String str)

{

string Key = "98344334";//自行设置,随便8个数字(字母应该也行),作为加密解密的

密匙

byte[] bStr = Encoding.UTF8.GetBytes(str);

try

{

DESCryptoServiceProvider desc = new

DESCryptoServiceProvider();

desc.Key = ASCIIEncoding.ASCII.GetBytes(Key);

desc.IV = ASCIIEncoding.ASCII.GetBytes(Key);

MemoryStream mStream = new MemoryStream();

CryptoStream cStream = new CryptoStream(mStream,

desc.CreateEncryptor(), CryptoStreamMode.Write);

cStream.Write(bStr, 0, bStr.Length);

cStream.FlushFinalBlock();

StringBuilder ret = new StringBuilder();

foreach (byte b in mStream.ToArray())

{

ret.AppendFormat("{0:X2}", b);

}

ret.ToString();

return ret.ToString();

}

catch

{

return string.Empty;

}

}

以上函数,传进来一个要加密的数据,return出加过密的数据,要加的头文件大家自行添加。。。

服务器端(PHP)​

class DES

{

var $key =

'98344334';  //和上面的KEY要相同

var $iv =

'98344334'; //和上面的KEY相同

function encrypt($str) {

//加密,返回大写十六进制字符串

$size = mcrypt_get_block_size ( MCRYPT_DES,

MCRYPT_MODE_CBC );

$str = $this->pkcs5Pad ( $str,

$size );

return strtoupper( bin2hex(

mcrypt_cbc(MCRYPT_DES, $this->key, $str,

MCRYPT_ENCRYPT, $this->iv ) ) );

}

function decrypt($str) {

//解密

$strBin = $this->hex2bin(

strtolower( $str ) );

$str = mcrypt_cbc( MCRYPT_DES,

$this->key, $strBin, MCRYPT_DECRYPT,

$this->iv );

$str = $this->pkcs5Unpad( $str );

return $str;

}

function hex2bin($hexData)

{

$binData = "";

for($i = 0; $i < strlen (

$hexData ); $i += 2) {

$binData

.= chr ( hexdec ( substr ( $hexData, $i, 2 ) ) );

}

return $binData;

}

function pkcs5Pad($text,

$blocksize) {

$pad = $blocksize - (strlen ( $text ) %

$blocksize);

return $text . str_repeat ( chr ( $pad ), $pad

);

}

function pkcs5Unpad($text)

{

$pad = ord ( $text {strlen ( $text ) - 1} );

if ($pad > strlen ( $text ))

return

false;

if (strspn ( $text, chr ( $pad ), strlen ( $text

) - $pad ) != $pad)

return

false;

return substr ( $text, 0, - 1 * $pad );

}

}

在PHP里加入上面的类​,

$des = new DES();​//创建一个变量

​$password =

$des->decrypt($password);//调用函数即可获得解密后的数据。

以上的代码直接可复制使用,只需修改key的值。​

php descryptoserviceprovider,在unity3D上对数据进行DES加密,在PHP服务器上进行解密的详细教程...相关推荐

  1. svn如何删除服务器上的文件,【SVN】彻底 svn 服务器上的 删除某一个文件或文件夹...

    参考: CSDN1:https://blog.csdn.net/u011729865/article/details/78764523 CSDN2:https://blog.csdn.net/wyyo ...

  2. 单个文件过大上传服务器的方案,上传很大的文件到云服务器上

    上传很大的文件到云服务器上 内容精选 换一换 安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器.例如QQ.exe.在本地主机和Windows云服务器上分别安装 ...

  3. BS结构中,web如何将数据进行DES加密并写道IC卡中

    在IC卡应用系统中,一般都要对IC卡数据进行DES加密,以保证数据的安全.友我科技RFID读写器云服务2.0充分考虑了这个需求,只需要软件工程师简单的配置即可实现数据的加解密并且写到数据块中.如下图所 ...

  4. nextcloud+宝塔在阿里云服务器上搭建个人云存储盘(如何在服务器上搭建个人云盘)

    以下操作经实践,已成功执行实现.读者若安装失败,可在云服务器操作台上初始化云盘,再次进行重装.望读者,不畏挫折,愈败愈战,请别因为环境的安装失败影响你的学习的兴趣,不妨多次"重启试试&quo ...

  5. 服务器上怎么安装软件系统安装,怎么在云服务器上安装软件

    怎么在云服务器上安装软件 内容精选 换一换 使用mount命令将文件系统挂载至Linux云服务器时,提示wrong fs type, bad option.Linux云服务器系统未安装NFS客户端,用 ...

  6. Kettle-开源的ETL工具集-实现SqlServer到Mysql表的数据同步并部署在Windows服务器上

    场景 kettle 中文名称叫水壶,该项目的主程序员MATT希望把各种数据放到一个壶里,然后 以一种指定的格式流出.是一款由纯Java编写的ETL工具,绿色无需安装,数据抽取高效稳定(数据迁移工具). ...

  7. 若依前后端分离版源码分析-前端头像上传后传递到后台以及在服务器上存储和数据库存储设计

    场景 使用若依前后端分离版本时,分析其头像上传机制. 可作为续参考学习. 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获 ...

  8. 服务器上的文件如何查看,如何查看远程服务器上的文件

    如何查看远程服务器上的文件 内容精选 换一换 分析辅助软件是一款支持部署到多台服务器目标环境上,实现对整个业务集群的数据采集和优化的组件.已成功登录Java性能分析.待安装分析辅助软件的服务器已开启s ...

  9. 云服务器上传文件到哪个文件夹,云服务器上传到那个文件夹

    云服务器上传到那个文件夹 内容精选 换一换 Model File:模型文件.单击右侧的文件夹图标,在后台服务器sample所在路径(工程目录/run/out/test_data/model)选择需要转 ...

最新文章

  1. Elasticsearch Java API 6.2(java client)
  2. BGP建立邻居的详细过程
  3. 金蝶系统服务器要求,金蝶服务器安装及其相关要求.doc
  4. 中兴面试一个星期没有回音_如何在没有回声的情况下从亚马逊获取即时时尚建议...
  5. “西邮漫记”--自由照耀中国
  6. 十、CSS三行代码实现 溢出的文字省略号显示(white-space: nowrap;overflow: hidden;text-overflow: ellipsis;)
  7. 可输入过滤和直接选择的select控件
  8. 最良心的 chrome 插件可以良心到什么程度?
  9. 樊登读书分享ppt_樊登读书精华分享-《分手后,成为更好的自己》
  10. Vue实现副本编辑器
  11. 好看好用的字体软件-字体下载大全提供下载
  12. 如何撰写发明专利申请文件 - 赵烟桥
  13. 传奇怎么设置沙巴克自动攻城
  14. vue+echarts+springboot实现云词图
  15. 数据库SQLite之嵌入式Linux实际网关项目使用初步
  16. 【HTML】3.Form表单
  17. 腾讯云mysql服务cpu毛刺问题
  18. Windows命令行学习笔记
  19. 实时传输协议:RTP、RTCP、RTSP介绍
  20. m3u8格式下载合并mp4视频

热门文章

  1. 【Java】强软弱虚四种引用,弱引用在ThreadLocal中的应用
  2. Leet Code OJ 223. Rectangle Area [Difficulty: Easy]
  3. python访问web网页_python访问web的利器:urllib2
  4. 容器学习 之 docker存储(十五)
  5. 01.elasticsearch-mapping全面解析
  6. shell脚本命令set
  7. canal原理的一些学习-2(HA 模式搭建)
  8. PAT甲级 -- 1002 A+B for Polynomials (25 分)
  9. 1、请简述DNS的作用,并说明当你输入网址“www.nxtc.edu.cn“按下回车后,DNS是怎么工作的?(关键步骤可以给出相应图示) 2、详细描述域名劫持攻击的过程及防御方式。
  10. 统一过程(UP)定义了初启阶段、精化阶段、构建阶段、移交阶段和产生阶段,每个阶段以达到某个里程碑时结束,其中()的里程碑是生命周期架构。 A.初启阶段 B.精化阶段 C.构建阶段 D.移交阶段