之前帮人开发了一个asp.net+access的网站,因没收到钱,所以把网站删了,结果现在发现对方还在使用,估计是有做过备份。
对这样的人,已经无语了,只能怪自己没有保护源码的意识。
想请教一下高手,怎么保护asp.net的源码呢?我一般是把源码整个上传,因为在公司不需要做这方面的保护,所以是不是也可以打包或者整理成类似exe文件的东东?
还有就想知道,一般遇到这种情况,大家是如何处理的?没有经验,只好到这里来寻求帮助,也好知道以后该怎么做。难道真要像朋友说得,在里面放个木马吗?

解决方案 »

  1.   

    http://time-is-life.cnblogs.com/articles/310693.html
      

  2.   

    你可以发布的时候删除所有的*.vb文件
    真正运行的时候程序调用的都是生成的DLL文件,所以删除.vb文件对程序运行无影响
    不过这只能起到保护你原代码的作用,至于你说的不让拷贝什么的就不太清楚了
      

  3.   

    使用vs.net带的混淆器吧,防君子不防小人。
      

  4.   

    只要上传web.config、*.aspx和bin目录下在*.dll,网站就可以浏览的了。
    bin目录下在 (项目名).dll 就是*.cs和*.vb编译之后的程序文件。关于保护dll:
    如果用DotFuscator(VS.net自带)和MaxtoCode之类的混淆器处理ASP.NET项目的dll,dll就不能用了。因为*.aspx页面运行时是继承其同名的*.aspx.cs(或*.aspx.vb)的类,当dll被糢糊处理之后(变量和方法被糢糊重命名),所有*.aspx页面里的服务器控件名在父类中就不找不到了。在DotFuscator中有一项功能“重命名->排除->”,可是一个一个地点,点到手软都还没点完 :-(等楼下的高手们来指点一下...
      

  5.   

    很谢谢楼上这么多位的意见和建议
    目前感觉还是删除.cs文件最快捷
    不过如果dll也可以模糊的话,就最好了
      

  6.   

    dll 可以混淆的,直接使用.net2003里面的Dotfuscator Community Edition
    或者使用其他的混淆器,可以参见以下
    http://www.cnblogs.com/aiasted/archive/2005/06/23/140083.html
      

  7.   

    最好的方法:还是自己先买好FTP服务器,把源文件控制在自己手中,让他去使用!到给清账目才给他全部文件..
      

  8.   

    >>最好的方法:还是自己先买好FTP服务器,把源文件控制在自己手中,让他去使用!到给清账目才给他全部文件..也不安全啊,世界还有这么多黑客!
    呵呵~~~
      

  9.   

    世界还有这么多黑客!....-____-||那不要接入internet了...不过我接触几家公司都是这样的方式哦,这样做比较保险
      

  10.   

    To godspell(风言冷):
    你的方法很好,可是对个人来说,代价太高了 :(To brando_beat(Eの懒龙):
    我也知道,会出这样的问题,完全是自己的保护意识不够,所以才上来请教大家如何保护自己的源码和权益。不过当初会什么都不签,也是事出有因,唉~~不说也罢,生气总结大家的留言,发现以后至少要准备两个步骤:
    1.把.cs文件删除,然后用混淆dll
    2.签合同,并留出一个后门或者时间锁,或者部分功能不可浏览害人之心不可有,防人之心不可无,人都是这么给逼坏的
      

  11.   

    vs.net里面有复制项目,不包含源码.提意尽量将代码封装到DLL文件中.
      

  12.   

    同情搂住,以后多长个心眼.
    要相信,现在好人TNND不多.==============
    今年本命年!
      

  13.   

    将代码封装到DLL文件中,打包安装后只有aspx页面文件和dll文件还有其他资源文件,不过现在有好多工具可以破译出dll里的源码
      

  14.   

    .NET不需要传源码的
    只传.ASPX页面和BIN/工程名.DLL
    就可以了所有代码在你访问前都已经被编译了
      

  15.   

    在生成编译后只要把页面文件和BIN里面的DLL文件留下就可以了其它的一些代码.vb,.resx页面可以删除掉
      

  16.   

    Asp.net程序就不提供源码,直接全是编译完了的.dll+html模板。
    楼主参考一下http://www.zfans.net。 这个论坛就是全是dll提供的自定义控件+Html模板,没有dll的源码基本无法作修改。
      

  17.   

    呵呵  在组件里边加上一个时间限制1个月内没有更新 将删掉数据库中所有的表。
    不知道dll是不是可以加壳能加的话估计要破就不容易了
      

  18.   

    .net的dll不是com时代的dll了,可以通过很多工具查看到其源代码或者IL代码
    最好的办法是用snk文件的密钥加密,详情请搜索 snk sn.exe
      

  19.   

    支持 删除源程序文件保留页面文件和bin下的Dll + 后门(恶性代码)其实那有那么多人会去反编DLL文件啊,就是反编的也不一定能全都看的懂,除非你也得实在是太简单了,有时候自己写得代码都懂什么意思,何况取得那些杂七杂八的变量名,就是看的懂的人也没那个精神去细细阅读啊!不给源文件是合情合理的,也是应当的,必竟个人产权保护吗,加后门代码是为了防止他有备份,因为他有你那些文件就可以运行你的网站了,他并不需要你的源代码,他只要能运行就行啊!如果对方不给钱的话你可以直接上网站上执行恶性代码删除数据库就行了