Java Libgdx:混淆游戏资产

Java Libgdx:混淆游戏资产,java,android,encryption,libgdx,Java,Android,Encryption,Libgdx,我正试图找到一种方法来混淆我的libgdx资产。 我想用一个私钥短语 我不知道我怎样才能使这项工作与全班 加载我的文件的方式是: dynamicManager = new AssetManager(); game.dynamicManager.load("loadingscreen/loadingscreen0.jpg", Texture.class); game.dynamicManager.load("sounds/levelup.ogg", Sound.class); ga

我正试图找到一种方法来混淆我的libgdx资产。 我想用一个私钥短语

我不知道我怎样才能使这项工作与全班

加载我的文件的方式是:

dynamicManager = new AssetManager();
game.dynamicManager.load("loadingscreen/loadingscreen0.jpg", Texture.class);
    game.dynamicManager.load("sounds/levelup.ogg", Sound.class);
    game.dynamicManager.load("sounds/bow.ogg", Sound.class);
我找到了一种加密/解密字符串的方法:

但是需要一些关于混淆libgdx游戏资产文件夹的帮助。
有人取得过这样的成就吗?请帮忙

有很多方法可以混淆或保护您的资产。没有一个能真正阻止任何人想要得到你的资产。如果游戏包含这些资产和解锁它们的钥匙,那么它们就没有真正的保护。只需要多做一点工作就可以提取

假设您按照建议使用私钥加密资产。没有人能够读取您的文件。到现在为止,一直都还不错。当您在源代码中存储用于解密文件的密钥时,问题就出现了。您的jar可以很容易地反编译,并且源代码就在您编写它的时候

你可以试着通过周而复始来阻止随意的黑客攻击/窃取你的资产,但最终你真的应该担心那些随意的黑客吗? 我找到了一个与一些想法的链接,其中包含一些最省力的想法,以阻止偶然的黑客:

如果你担心一些中国的克隆开发人员窃取你的游戏,那么有时候他们所做的只是更改代码中的包名,然后以他们自己的方式销售。
这就是版权和商标的用途。

为什么要使用私钥加密?我愿意接受任何想法。我认为这是一个好方法:1)使用算法和密钥加密资产2)使用libgdx读取资产时解密资产。你认为什么最好?你会把钥匙放在哪里?硬编码?不是私钥密码。您应该使用对称加密。另一件需要记住的事情是,如果加密和解密发生在同一台设备上,那么资产就不会得到真正的保护。可以从应用程序中检索解密密钥。反编译jar并获取源代码非常容易。如果有人真的想要你的资产,他们会得到的。你可以混淆你的代码和资产,使用所有你想要的加密,但最终你只需要为自己创造大量的工作。你害怕谁会偷走你的资产?你认为他们会怎么处理?你好,铁钱,谢谢你的回答。我明白你的意思,但是有很多随意的破解程序,只需进入.apk并窃取资产文件夹,这是我必须说的大多数。我的目标是让他们更加困难,并劝阻他们。我怎样才能做到这一点?你知道我的意思吗?