cocos2dx-lua 能不能用AMF3来加密lua源文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cocos2dx-lua 能不能用AMF3来加密lua源文件相关的知识,希望对你有一定的参考价值。
RT, 如能这么做该如何配置 THX
你用的是cocos2dx 3.2版本吗?如果是的话,加密就会比较简单了。官方文档详见:http://cocos2d-x.org/wiki/Cocos_luacompile
.lua文件编译为.luac文件[.lua to .luac]
在项目文件目录下尝试
cocos luacompile -h查看帮助信息
cocos luacompile -s ./projects/MyLuaGame/src -d ./projects/MyLuaGame/src -e -k MyLuaKey -b MyLuaSign
./projects/MyLuaGame/src--》lua源文件目录
./projects/MyLuaGame/src--》生成luac存放目录
关于MyLuaKey及MyLuaSign的设置,见AppDelegate.cpp
stack->setXXTEAKeyAndSign("2dxLua", strlen("2dxLua"), "XXTEA", strlen("XXTEA"));
修改对应的key及sign即可。 参考技术A 你用的是cocos2dx 3.2版本吗?如果是的话,加密就会比较简单了。
官方文档详见:http://cocos2d-x.org/wiki/Cocos_luacompile
.lua文件编译为.luac文件[.lua to .luac]
在项目文件目录下尝试
cocos luacompile -h查看帮助信息
cocos luacompile -s ./projects/MyLuaGame/src -d ./projects/MyLuaGame/src -e -k MyLuaKey -b MyLuaSign
./projects/MyLuaGame/src--》lua源文件目录
./projects/MyLuaGame/src--》生成luac存放目录
关于MyLuaKey及MyLuaSign的设置,见AppDelegate.cpp
stack->setXXTEAKeyAndSign("2dxLua", strlen("2dxLua"), "XXTEA", strlen("XXTEA"));
修改对应的key及sign即可。
(非)对称加密
对称加密算法:加密和解密用同一个秘钥
优点:加解密速度快,性能开销小 [适合加密大量数据]
缺点:密钥分发难(如果通讯方数量庞大,实现共享秘钥困难),不能实现抗抵赖性(缺少签名机制),存在被抓包破解的风险
非对称加密算法:加密和解密用不同的秘钥
公钥加密的数据只能用私钥解密,用私钥加密的数据只能用公钥解密
私钥永远能掌握在自己手中
数字信封
A获得收件人的公钥
A创建一个随机的对称秘钥
A使用加密秘钥和对称秘钥算法将明文数据转换为密文数据
A使用B的公钥将机密秘钥转换为密文机密秘钥
A将密文数据和密文机密秘钥一起发送给收件人
B使用私钥将密文机密秘钥转换为明文
B使用明文机密密码将密文数据转换为明文数据
缺点:对于B来说完整性无法校验,身份无法验证
可引入签名机制解决问题
引入签名的秘钥交换
A本地产生会话秘钥(123)
用B的公钥加密123(会话秘钥)
对原始数据(Huawei)数据进行哈希运算(hash)
A用私钥加密hash得到abc
A发送密文Huawei,密文对称秘钥,签名abc
B用私钥解密123(密文会话秘钥)
B用解密后的123解密Huawei,得到明文Huawei
B对解密后的Huawei做哈希,后使用A的公钥解密abc,会得到一个hash,如果数据一样则没有被篡改,真的是A发的
自我思考
常见的对称加密算法
DES、3DES、AES
除了RSA还有什么非对称加密算法?
DSA,ECC,背包算法
非对称怎么满足可靠性、完整性?
可靠性:双方需要线具备对方的公钥,通过对方的公钥加密,只有对方的私钥才能解密,而私钥永远掌握在自己手中,通过公私钥加解密,即实现了数据加密也实现了数据源认证,确保了可靠性
完整性:通过签名,用私钥加密一个HASH值,对方收到以后,用自己的公钥解密,解密出来之后再计算HASH值,可以认证数据的完整性
如何实现源认证和完整性认证?证书申请方式
证书申请方式:1.在线2.离线
对称秘钥和非对称秘钥算法有哪些?
对称加密算法DES\3DES\AES等;非对称加密算法:RSA DSA ECC
Hash函数有特点?
(1)不可逆推(2)相同输入得到相同输出(3)定长输出(4)雪崩效应[少量信息位变化引起信息摘要许多位变化]
SM3是对称还是非对称?
国密算法!既不是对称也不是非对称,是一种hash函数!
什么是签名?私钥有什么特点?
签名:私钥加密的HASH值。跟公钥成对出现
举几个使用非对称秘钥算法的场景?
电商场景|网上银行|HTTPS
DES使用的秘钥是多少位?
用56位的秘钥加密64位的明文
——————————————————————
我华为面试时就考到了这个.....
面试官大概问的就是:通过采取"签名"介入的方法还会遇到什么安全问题?如何解决?
我的回答:第一个问题我忘记怎么回答的了。解决方案是通过接入一个中立机构,如CA机构。
随后面试官追问:如果引入了CA机构,那还会遇到什么问题?
我回答:必须保证CA机构的真实性
以上是关于cocos2dx-lua 能不能用AMF3来加密lua源文件的主要内容,如果未能解决你的问题,请参考以下文章