编译前保护源代码 - 页 7

 
pako:
你没有回答。
请注意,这个主题不是关于黑客的,而是关于对开发者的额外保护,并涉及测试一种动态加密算法。
 
Vladimir Pastushak:

不幸的是,你的编码器没有任何优势,最大的优势已经由mt4和mt5终端的开发者给出。

+1

弗拉基米尔-帕斯图沙克

虽然我真的希望看到一个真正强大的东西。

不包括

 
Pavel Izosimov:
请注意,这个主题不是关于黑客攻击,而是关于对开发者的额外保护和动态加密算法的测试。
什么都不知道
 
Pavel Izosimov:
请注意,这个主题不是关于黑客,而是关于对开发者的额外保护和动态加密算法的测试。
不幸的是,根据混淆代码的结果,如果你使用下面的技巧,就不清楚了。

1)函数的主体 被分成几个部分(这需要对执行流程进行分析)。
// для примера

void func()
  {
   // часть #1
   // декларация переменных 

   // часть #2
   // инициализация цикла

   // часть #3
   // тело цикла

   // часть #4
   // инкременты цикла

   // часть #5
   // выход из функции
  }
2) 声明了一个全局数组ExecutePath,它被初始化为一些值
3) 我们的函数主体被一个带有ExecutePath数组开关的循环所取代
4)结果。
ExecutePath[]={ PART_3,PART_2,PART_1,PART_4, PART_N };

void func()
  {
   for(int i=0;;i++)
     {
      switch(ExecutePath[i])
        {
         case PART_3:
            // выполняем часть 1 нашей функции

         ...
  
         case PART_N:
            // выполняем часть N нашей функции


          case PART_RET:
            // выполняем часть с кодом выхода из нашей функции
        }
     }
  }

5)除了区块之外,原始函数在开关中生成带有代码的区块,其执行将永远不会达到
 
Ilyas:
不幸的是,从被混淆的代码的结果来看,并不清楚你是否在使用以下的技巧

1)函数主体 被分割成几个部分(这需要分析执行流程)。
2) 声明了一个全局数组ExecutePath,它被初始化为一些值
3) 我们的函数主体被一个带有ExecutePath数组开关的循环所取代
4)结果。
5)除了区块之外,原始函数在开关中生成带有代码的区块,其执行将永远不会达到
我和我们参与实施这个项目的开发团队的领导,我们真诚地感谢你对我们的主题所采取的切实可行的方法!"。

你建议的有用的技巧在我们修改下一级保护措施的计划中,还有其他技巧。

正如你所了解的,我们不能透露所使用的全部算法清单,但事实上,最初的混淆代码的结果,它不清楚使用的是什么,它不能帮助但请:)
 
Pavel Izosimov:

伊戈尔,日安!

所有必要的信息,一些文件的例子,以及主要来源的直接链接,都在这个主题的一开始就提供给了MQL管理员Renat。

我们不打算与每个好奇的人分享我们同事的悲伤,因为我们提到的资源仍然充满了新鲜的破解产品。

我们尊重我们的同事,不会为非法传播他们的产品做出贡献

我们也尊重Metatrader终端的开发者,我们相信他们做了很多工作来保护他们的代码,并提供所有关于他们请求的必要信息。

请注意,这个主题不是关于黑客的,相反,它是关于对开发者的额外保护和动态加密算法的测试。

只是为了保护你的产品,你需要知道破解者使用的方法。我不是要求你分享你在某处找到的方法,而只是要求你分享已经公开的内容。你说窃贼是在公共场合行动的。所以这些信息已经在网上了,你不会对任何秘密的传播做出贡献。此外,你已经在你的混淆器中考虑到了破解者的方法。

因此,如果你分享了这个链接,就会给你在这里谈论的一切带来重量。

特别是作为一个开发人员感兴趣,而不是作为一个黑客感兴趣。我永远不会走黑掉别人的软件的道路,因为这是一条破坏性的道路。它导致了与发展相反的方向。

 
Игорь Герасько:

为了保护你的产品,你需要知道破解者使用的方法。我不要求你分享你在某个地方找到的方法,而只要求你分享那些已经公开的方法。你说窃贼是在公共场合行动的。所以这些信息已经在网上了,你不会对任何秘密的传播做出贡献。此外,你已经在你的混淆器中考虑到了破解者的方法。

因此,如果你分享了这个链接,它将为你在这里谈论的一切增加重量。

伊戈尔,不要以为我想冒犯你,但我们不需要重量,我们这样做也是为了我们自己的实际用途,并且确信它对许多开发者是有用的。

我们不打算说服任何人,我们只是执行既定的任务,不管任何人想要什么。

聪明的人明白,批评这样的解决方案符合那些以后必须处理的人的利益--那些在 "街垒 "另一边的人,即 "外来 "黑客的专业人士。

就我们而言,我们将尽力使他们尽可能地 "不舒服",以打破不属于他们的东西 :)

 
Pavel Izosimov:

伊戈尔,不要以为我想冒犯你,但我们不需要重量,我们这样做是为了我们自己的实际用途,我们确信这对许多开发者来说是有用的

我们不打算说服任何人,我们只是执行手头的任务,不管任何人想要什么。

聪明的人明白,批评这样的解决方案符合那些以后必须处理的人的利益--那些在 "街垒 "另一边的人,即 "外来 "黑客的专业人士。

就我们而言,我们将尽力使他们尽可能地 "不舒服",以打破不属于他们的东西 :)

用什么?我是一个在市场上发布的开发者,它将如何帮助我?
 
Игорь Герасько:

我永远不会走上黑掉别人的软件的道路,因为这是一条破坏性的道路。它导致了与发展相反的方向。

永不言弃
 
Vladimir Pastushak:
用什么?我是一个在市场上发布的开发者,它对我有什么用?

我们也在市场上发布,但通过市场发布所有东西远非总是合适。

例如,我们在网络上组织对我们的开发成果进行公开的测试,赠送试验品,并在我们发布最终产品之前许可与我们合作的用户的特定账户。

或者,举例来说,我们为某一群体的用户创造一个产品。

这些并不是不适合在市场上公布的所有情况。