字符串特征是逆向分析的突破口,所以,也是正向开发必须被重点保护的。分享下我自己开发软件保护字符串的方式:通常我会将所有的字符串定义都搞成统一格式:final string a = "test"(如这样,c++的话也是一样的);这样操作后,通过python脚本编译代码的时候,可能通过正则将代码中所有的字符串都找出来,然后拼接所有的字符串,最后压缩、加密、分割写会源代码文件,哈哈。程序运行时会在一个类中进行拼接、解密、解压缩,然后初始化hashmap,这样运行时,就可以根据key来获取字符串value了。所以,最好把这个类搞成单例。不过,这个类也成了唯一突破口。这种保护方式,也在一些恶意样本中常被用(比如c#版本的agenttesla)。