博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CocosCreator中使用RSA公钥加密
阅读量:6408 次
发布时间:2019-06-23

本文共 1365 字,大约阅读时间需要 4 分钟。

首先

我们先在cocos编辑器中引入jsencrypt.min.js这个文件。(如图)
图片描述

此时它会提示你“是否将当前载入的jsencrypt.min.js脚本设置为插件”,因为我们引入的js文件是第三方的插件,所以,我们选择是。(如图)

![图片描述

然后进行下一步(如图)

图片描述

这时候,控制台会有这样的提示(如图)

图片描述

我们打开jsencrypt.min.js这个文件,把第一行的 var JSEncryptExports 改为 window.JSEncryptExports (如图)

图片描述

此时,我们就完成了“jsencrypt.min.js”这个外部插件脚本的引入。

下一步

我创建了一个 Label 节点。并将该节点名字改为 public ,编辑 Label 组件的 string 属性,填入我们的公钥。并将该节点隐藏。(如图) 当然你也可以用其他方式,来让你在写脚本文件时获取到公钥的字符串。
图片描述

接下来

我们将会把 得到加密后的内容 的逻辑放在 HelloWorld 脚本里,打开 HelloWorld 脚本开始编辑,首先在properties区块的最后添加我们刚刚添加的名为 public 的 Label 组件的引用属性:

//HelloWorld.jsproperties: {    // ...    // public label 的引用    public: {        default: null,        type: cc.Label    }},

保存 HelloWorld 脚本后,回到层级管理器,选中 Canvas 节点,然后把前面添加好的 public 节点拖拽到 属性检查器 里 HelloWorld 组件的 public 属性中。(如图)

图片描述

然后,在 HelloWorld 脚本里添加名为 getJiaMi 的方法

//HelloWorld.jsgetJiaMi: function () {    //我这里就随便写一个密码了    var passWord = "aaabbb";    //获取 public 里面的写好的公钥    var publicKey = this.public.string;        var encrypt = new JSEncrypt();    //放入你的公钥    encrypt.setPublicKey(publicKey);    //加密后的内容    var encryptData = encrypt.encrypt(passWord);    //打印出加密的内容    console.log(encryptData);}

这样,获取加密后的内容 的方法就写好了。

然后,我直接在 onLoad 方法里调用刚添加的 getJiaMi 方法,onLoad方法会在场景加载后立刻执行,这样,在我刚进入场景的时候就会获得加密的内容了。

//HelloWorld.jsonLoad: function () {    this.getJiaMi();}

保存。点击 Cocos Creator 编辑器上方正中的预览游戏按钮。打开浏览器的控制台,我们就会看到我们获得的加密后的内容啦!(如图)

图片描述

第一次写文章,可能写的不太好,希望各位大神见谅( ̄▽ ̄)~*

转载地址:http://cyhea.baihongyu.com/

你可能感兴趣的文章
raid技术的读与想
查看>>
Hbase 中Column Family 的作用
查看>>
用鸡讲解技术债务的形成过程?
查看>>
Linux下的Tftp服务
查看>>
C#将集合和Json格式互相转换的几种方式
查看>>
java连接数据库并操作
查看>>
安装.net framework 4.0时提示HRESULT 0xc8000222
查看>>
集群下文件同步问题
查看>>
ASA 5510 V821 EASY ×××配置
查看>>
ubuntu server 更换源
查看>>
SQL SERVER 2008安装
查看>>
EXT中的gridpanel自适应窗口的方法
查看>>
unary operator expected
查看>>
IPC之共享内存
查看>>
新加坡之旅
查看>>
IBM X3650 M3服务器上RAID配置实战
查看>>
Mysql DBA 高级运维学习之路-索引知识及创建索引的多种方法实战
查看>>
go语言与java nio通信,解析命令调用上下文拉起ffmpeg,并引入livego做的简单流媒体服务器...
查看>>
JavaScript面向对象轻松入门之多态(demo by ES5、ES6、TypeScript)
查看>>
【数据结构】线性表(一):顺序列表
查看>>