我正在使用Xamarin Forms开发一个应用程序,我的应用程序必须使用特定的API-Keys调用几个API。 因此,我想加密它们,以便没有人可以反编译我的App包并提取密钥。 这就是我想使用Dotfuscator的原因,但我很难让它加密这些字符串。 这是我的代码,我创建了一个litte公共类,其唯一目的是保存我的密钥:
using System.Reflection;
namespace App
{
public class Data
{
[ObfuscationAttribute(Feature = "stringencryption", Exclude = false, ApplyToMembers = true)]
public static string GetAPIKey()
{
string we = "MYAPIKEY";
return we;
}
}
}
当我用ILSpy反编译.dll时,我可以很容易地从中提取密钥,没有像本例https://www.preemptive.com/dotfuscator/pro/quickstart/en/feature_obfuscation_string_encryption.html
那样加密Dotfuscator的“正常”重命名在这个.dll中运行得很好。 在我的DotfuscatorConfig.xml中也为此.dll激活了混淆属性。