TexturePacker 图片加密

TexturePacker 图片加密摘自:http://article.ityran.com/archives/3950#jtss-tsinaTexturePacker最新版本中增加了一个新功能以防止你的产品资源被反编译出来。它被称为ContentProtection,即图片加密。你的app或者游戏仍可以解密数据,但是其他人则需要耗上很长的时间才能够完成激活成功教程。理论上别人仍可能从源码提取出密钥,并写出一些解码器,这是因为解

大家好,又见面了,我是你们的朋友全栈君。

TexturePacker最新版本中增加了一个新功能以防止你的产品资源被反编译出来。它被称为ContentProtection,即图片加密。

你的app或者游戏仍可以解密数据,但是其他人则需要耗上很长的时间才能够完成激活成功教程。

理论上别人仍可能从源码提取出密钥,并写出一些解码器,这是因为解码器和密钥已经被存储在你的app中-

否则不可能使用你的游戏资源。但是这需要花费知识,时间和精力来解密你的资源。所以他们很有可能找一些

其他更简单的猎物来激活成功教程而不是你的资源文件。

TexturePacker加密策略设置

假设你已经运行过TexturePacker 创建精灵表,所以只需要打开一个已经存在的.tps文件。

下载最新版的TexturePacker-在左侧你会看到一个新的option属性:Content Protection。按下“Lock”图标,并会弹出一个新的窗口:

TexturePacker 图片加密

在编辑框中你可以输入你想要设置的key-或者按Create new key 按钮创建新的key

使用Clear/Disable来关闭加密功能。

在 TexturePacker 中 按下Save as global key 会存储密钥key为全局变量,在.pvr查看器中用它来解密,

通过按下Use global key按钮你可以复制密钥key到其他精灵表中。

改变文件的格式为pvr.ccz是非常重要的,它是当前唯一支持解密的格式。

在TexturePacker中按下Publish完成在TexturePacker中的工作。

在命令行中输入的命令是:–content-protection <key> ,其中 key必须是32位十六进制值。

在Cocos2d工程准备 Content protection

下载并拷贝下面2个文件到你的cocos2d文件夹里: libs/cocos2d/Support

-替换已经存在的2个文件:

  1. ZipUtils.h
  2. ZipUtils.m

现在在你的app里设置密钥key。在第一个精灵表导入前你可以在你的程序启动前调用4个方法来完成它。

为了让他们更难被激活成功教程请尝试分开调用。

如果你的密钥是aaaaaaaabbbbbbbbccccccccdddddddd,你必须将它们分成4部分每部分8位:

  1. aaaaaaaa
  2. bbbbbbbb
  3. cccccccc
  4. dddddddd

128位加密密钥每个值是32位。在它是作为一个另一个值传递给函数,因此在app中它很难定位。

  1. caw_setkey_part(0, 0xaaaaaaaa);
  2. caw_setkey_part(1, 0xbbbbbbbb);
  3. caw_setkey_part(2, 0xcccccccc);
  4. caw_setkey_part(3, 0xdddddddd);

在每一个文件里使用caw_setkey_part,你都得确保添加下面一行:

  1. #import “ZipUtils.h”

如果你已经改了文件的格式,那么现在你需要导入的是.pvr.ccz文件代替你之前使用的。

当然你也可以添加新文件到你的工程里。对,就是这样!

总结

保护你游戏资源被盗是容易的。使用新的Content Protection功能你只需要不到五分钟的时间来设置就可以做到。

苹果需要加密和内容保护

我不是律师&我不知道这是否合法!根据我对苹果的iTunes Connect指导和工业安全局的理解:如果你使用TexturePacker的Content Protection,你不需要在你的app/游戏里获得ERN认可。

加密仅是用于保护你的知识产权的,并且用户是访问不了的-在规定中不被包含。

查看工业安全局加密 FAQ(the Bureau of Industry and Securitys Encryption FAQ) –

问题 15 (What is Note 4?)里面说到:

…不在第五类第二部分的项,包含在Note 4中,但是没有限制,这些项有:

可消费的应用,一些例子:

  • 软件或者音乐盗版和防盗版。
  • 音乐,电影,曲子/音乐,数码照片-播放器,录音机和管理器。
  • 游戏-设备,实时软件,HDMI和其他组件接口,开发工具。

TexturePacker 图片加密


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151993.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vs2015激活成功教程密钥_vs2015产品激活密钥

    vs2015激活成功教程密钥_vs2015产品激活密钥对于开发者而言,一款优秀智能的开发工具能够提升应用开发的效率,正因为如此,VisualStudio作为主流的开发工具,微软非常的用心,不仅能够让这款开发工具满足用户体验的需要,同时能够支持更多的新技术架构,并且,VS2012更加适合用于开发Windows8专用程序。网上好多无效的,为了收藏,先保存一份。一、VS2012下载地址。中文版:http://download….

    2022年10月14日
    4
  • netty 权威指南勘误[通俗易懂]

    netty 权威指南勘误[通俗易懂]近日就netty库的使用,试读了netty权威指南一书,就书中的编码问题进行以下校正1、我使用的是4.1.2版本的netty库2、IDE为netbeans8.1E1. handler适配器应使用ChannelInboundHandlerAdapter。 E2. 在私有协议开发一章:     编码器中函数encode中设置帧长度应为以下代码

    2022年9月1日
    6
  • 搭建SpringBoot源码环境的正确姿势(避坑必备)

    搭建SpringBoot源码环境的正确姿势(避坑必备)最近打算拉取SpringBoot源码,各种编译报错,各种问题。参考很多网上的教程,仍然是各种错误。最终研究出来了搭建SpringBoot源码环境的正确姿势。SpringBootGithub地址:https://github.com/spring-projects/spring-boot0、环境准备安装maven3.5或者以上版本。安装JDK8或者以上。1、fork到自…

    2022年6月11日
    30
  • java怎么调用.asmx_Java调用Webservice(asmx)的例子

    java怎么调用.asmx_Java调用Webservice(asmx)的例子importjava.util.LinkedList;importjava.util.List;importjava.util.Map;importjava.util.Vector;importjavax.xml.namespace.QName;importorg.apache.axis.client.Call;importorg.apache.axis.client.Service…

    2022年5月20日
    160
  • Spring AOP 实现原理

    Spring AOP 实现原理什么是AOPAOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-OrientedPrograming,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从

    2022年7月12日
    15
  • Linux学习(CentOS-7)—磁盘分区(概念、分区方法、分区方案)

    Linux学习(CentOS-7)—磁盘分区(概念、分区方法、分区方案)

    2021年9月23日
    137

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号