none
有什么办法能防止别人修改IL RRS feed

答案

  • 程序做了混淆,但还是被别人反编译修改IL破解了,有没有什么办法能防止别人修改IL的?

    算神的博客

    这儿提供一些我的个人看法,

    因为微软NET的机制就是要实现“多平台享用”,因此编译的公共代码IL必然是一个破解的入口途径,基本上无法避免。你想连得微软都被破解了……啊哈哈

    如果你一定要100%不能破解,那么必须:

    1)制作网页版而不是个人桌面版(因为桌面版exe必然会把IL带出去)。

    2)然后重要方法用WCF或者WebService进行处理。

    3)防止别人暴力破解,请对请求字符串进行加密处理。

    这样基本可以做到别人无法看到源码,何来破解?

    希望对您有帮助!不要伤心难过,事物总是两面性的;)


    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处

    2012年9月24日 7:32
    版主

全部回复

  • 编译成native code,然后将exe加壳

    Mike Feng
    MSDN Community Support | Feedback to us
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年9月20日 10:11
    版主
  • 如何编译成native code?如果你说的是NGen.exe就算了,那个一样可以被反编译的,而且部署也相当麻烦,编译的Code只能在本机运行

    至于加壳,微软有没有官方认可的壳?用第三方的壳,要么被360这种流氓误杀,要么就偶尔会运行出错(注:程序没加壳前是正常的)


    算神的博客

    2012年9月20日 10:33
  • 微软官方编译native工具就是NGEN。

    另外我想说的是,就算你用0101去编写你的程序,一样有人能看懂你写的什么,干什么用。今天你可能用了一个很牛的加壳算法,看似无人能破解,事实上,从事这方面工作的,兴趣爱好者很多,说不定 没过多久一样被破解,加密解密不就是这样一路走过来的么。

    你的程序都给人用了,也就是很明确的告诉别人你的整段代码的主要功能是什么了。


    Mike Feng
    MSDN Community Support | Feedback to us
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年9月21日 3:13
    版主
  • 微软官方编译native工具就是NGEN。

    另外我想说的是,就算你用0101去编写你的程序,一样有人能看懂你写的什么,干什么用。今天你可能用了一个很牛的加壳算法,看似无人能破解,事实上,从事这方面工作的,兴趣爱好者很多,说不定 没过多久一样被破解,加密解密不就是这样一路走过来的么。

    你的程序都给人用了,也就是很明确的告诉别人你的整段代码的主要功能是什么了。


    Mike Feng
    MSDN Community Support | Feedback to us
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    客户给了钱他想看代码也没什么,甚至很多代码我都乐意在社区共享,但有人拿到你的软件,反编译出IL修改个字符串什么的信息,然后重新编译,当成他自己的软件在卖,心中总会有疙瘩吧

    所以我想寻求一种办法,让人家修改得没这么容易,至少不要用 一个软件+VS自带的IL工具+记事本 这么简单的方式就能把我软件里面的某些东西换掉


    算神的博客

    2012年9月21日 4:32
  • >>客户给了钱他想看代码也没什么,甚至很多代码我都乐意在社区共享,但有人拿到你的软件,反编译出IL修改个字符串什么的信息,然后重新编译,当成他自己的软件在卖,心中总会有疙瘩吧

    你这个有点类似于预防山寨,他的代码跟你的重复率达到一定程度了,就侵权了,可以通过法律途径来解决。


    Mike Feng
    MSDN Community Support | Feedback to us
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年9月21日 6:00
    版主
  • 法律途径。。。在天朝 山寨就是一流氓,Google还不是拿阿里OS没办法,Google还知道他要打官司对象是谁。我连哪位高手破解了我的软件都不知道,只知道有人偷偷在卖。我不是什么大公司耗不起几年的官司,与其有这时间,还不如改良下软件让人不能轻易的修改,所以才来这里寻求技术帮助。结果版主您却给了这样的答复,失望~

    算神的博客

    2012年9月21日 10:54
  • 我真心不想让您失望

    〉〉至于加壳,微软有没有官方认可的壳?用第三方的壳,要么被360这种流氓误杀,要么就偶尔会运行出错(注:程序没加壳前是正常的)

    据我所知,微软没有推出公共的壳,就连很多微软本身的应用也都没有加壳,甚至编译为native code。

    当你编译为native代码后,要将它还原为IL代码可不是那么轻而易举的。


    Mike Feng
    MSDN Community Support | Feedback to us
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年9月24日 5:13
    版主
  • 可事实与你想的恰恰相反,与其花心思反破解,不如想法打官司,后者还可能赢,前者几乎没有可能,看看那么多公司,大大小小,几个成功反破解了?

    当然如果你一定要尝试,可试试硬件加密狗,一般的就算了,有种可以嵌入IL代码到狗里的,可以试试,不过价格不菲就是了.

    2012年9月24日 5:20
  • 程序做了混淆,但还是被别人反编译修改IL破解了,有没有什么办法能防止别人修改IL的?

    算神的博客

    这儿提供一些我的个人看法,

    因为微软NET的机制就是要实现“多平台享用”,因此编译的公共代码IL必然是一个破解的入口途径,基本上无法避免。你想连得微软都被破解了……啊哈哈

    如果你一定要100%不能破解,那么必须:

    1)制作网页版而不是个人桌面版(因为桌面版exe必然会把IL带出去)。

    2)然后重要方法用WCF或者WebService进行处理。

    3)防止别人暴力破解,请对请求字符串进行加密处理。

    这样基本可以做到别人无法看到源码,何来破解?

    希望对您有帮助!不要伤心难过,事物总是两面性的;)


    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处

    2012年9月24日 7:32
    版主
  • 可以购买第三方的加密系统,能够将.net程序内部的运行逻辑加密,同时还不影响反射的使用
    2012年9月27日 3:27