我正在尝试制作一个混淆器,到目前为止一切顺利。现在,我正在尝试使用base64
然后对字符串进行编码rot13
,只是为了让它变得更加不可读并隐藏我的sooper sekret字符串。
这就是我在混淆器上编码字符串的方法:
ILProcessor processor = method.Body.GetILProcessor();
foreach (Instruction instruction in processor.Body.Instructions)
{
if (instruction.OpCode == OpCodes.Ldstr)
{
instruction.Operand = Enc.to64(Enc.Rot((String)instruction.Operand, 0x0D)); //0x0D = 13
}
}
所以现在我需要做的就是将我的Enc
类注入到根命名空间中,因为这些函数是静态的,所以我可以在不创建类实例的情况下使用它们。然后我需要做的是将每个字符串包装在两个函数中,Enc
以便在实际使用程序时解码字符串,使
string lel = "x";
进入
string lel = Enc.from64(Enc.Rot("encoded x", 0x0D));
我知道如何做这两件事,所以我需要你的帮助。
所以回顾一下,我需要知道如何将一个类(带有静态函数)注入根命名空间,然后用来自该类的两个函数包装程序中的所有字符串,以便在反射时不可读,但在使用时解码。