用Java做网站,代码安全吗???

scut98 2006-02-11 08:40:36

都说Java程序会被反编译,那我用Java做的网站,代码岂不是很不安全?
目前最常用的方法是Jsp+Java Bean实现网站,Tomcat做服务器。Jsp文件本身就可以通过一些漏洞获得(如文章http://www.51one.net/study/jsp/10748.html),Java Bean的class说不定也有些黑客能入侵机器,把它取到手。即使不是黑客,像我等做网站都是买空间的,并不会到电信局专有一台服务器。买别人的空间,代码在空间商的机器上,他要是想得到(或者竞争对手收买他取得),那是易如反掌。得到后,反编译一研究,那自己还有什么商业机密可言?
你想,如果是IIS做服务器,我用asp、aspx写网站,核心的东西我可用C++写成dll用ISAPI实现网页。即使别人得到我的文件,也不能把dll反编译出来呀。有最后一道防线,我可以保证我的技术机密不泄漏。
难道我要放弃Java,改用asp吗?大家给点意见?
...全文
855 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
zouzhiqiangzzq 2006-05-30
  • 打赏
  • 举报
回复
++++++++++++++++++++++++++++++++++++++
我倒!商业机密和程序有什么关系?安全的问题首先是网络的防护,如果有源码基于你这种思想什么都没用,window没源码,照样被俄罗斯牛人搞个破解
+++++++++++++++++++++++++++++++++++++
同意!
hufangyu 2006-05-22
  • 打赏
  • 举报
回复
wrongagain98(乱云) 建议不错!
mem_fox 2006-05-20
  • 打赏
  • 举报
回复
我倒!商业机密和程序有什么关系?安全的问题首先是网络的防护,如果有源码基于你这种思想什么都没用,window没源码,照样被俄罗斯牛人搞个破解
aqu0616 2006-05-10
  • 打赏
  • 举报
回复
http://www.51one.net/study/jsp/10748.html

这上面说的都“洞”都是N年前的了,现在Tomcat都5.5 JDK都6.0啦!
liujiwe79 2006-05-10
  • 打赏
  • 举报
回复
java代码你可以用混淆器加密后,别人就不容易破解了
onsirius 2006-04-02
  • 打赏
  • 举报
回复
你可以试试逼着一个程序员去读被混淆的代码,估计他得上吊
gzshenlong 2006-03-30
  • 打赏
  • 举报
回复
java开发的程序的保护

众所周知,java开发语言提供了很方便的开发平台,而且开发出来的程序很容易在不同的平台上面进行移植,现在越来越多的人使用它开发软件。
Java有了它方便的一个方面,但是他同时也带给了开发者一个烦恼,这就是保护的办法不多,而且大多数不是很好用,这样自己辛苦开发出来的程序很容易被人复制而据为己有,一般情况下,大多数的人都是用混编器(java obfuscator)来把开发出来的程序进行打乱以达到没有办法来反编译观看源代码,但是这种办法在网上很容易找到相关的软件来重新整理,那么这个混编只能控制一些本来也没有办法动您的软件的人,而对于一些掌握工具的人几乎是透明的,还有就是利用硬件加密锁,但大多数公司提供的硬件加密锁只是提供了一些dll的连接或简单的api调用,只要反编译他们,就很容易把一些api调用去掉,这样硬件加密锁也就不起作用了,但是现在到底有没有好的办法呢?
以色列阿拉丁公司提供的HASP HL加密锁提供的外壳加密工具中有一个叫做数据加密的功能,这个功能能更好的防止去除api的调用,各位都知道:硬件加密锁的保护原理就是要您被加密过的软件和加密锁的硬件要紧紧地结合在一起,而且不容易被轻易的剔出原来的调用,这样才能更好的保证您的软件不被盗版,同时这种方式也很容易被程序员掌握,要对一个软件实现保护,只需要几分钟的时间就可以了,下面简单介绍一下他的原理:
运用阿拉丁公司提供的外壳工具先把调用您的java解释器来进行加密,那么就是说如果要运用这个解释器就需要有一把特定的加密锁存在,然后我们再运用它提供的外壳加密工具中的数据加密功能,把您写好的java程序代码class文件进行数据加密产生新的文件来代替(加密过后的class文件是乱码,这时采用任何反编译工具都编译不出),然后再用加密过后的java解释器来调用,这个加密是采用的AES128位的算法的,这样这个加密过的数据文件——您的软件就只能被您保护过的java解释器来进行解释,但是在没有加密锁的情况下就不能够运行您的软件,或者是在有锁的情况下也看不到软件代码从而达到真正保护您的软件的目的。
我们作为以色列aladdin加密锁的代理商,很愿意和您分享这样的保护方式,如果您对我们的产品感兴趣,我们公司将提供产品测试!

联系人 龙令军 13538771708
邮件 :long@hzbhasp.com.cn
英文网址:http://www.ealaddin.com
中文网址:http://www.ealaddin.com.cn
gzshenlong 2006-03-30
  • 打赏
  • 举报
回复
java开发的程序的保护

众所周知,java开发语言提供了很方便的开发平台,而且开发出来的程序很容易在不同的平台上面进行移植,现在越来越多的人使用它开发软件。
Java有了它方便的一个方面,但是他同时也带给了开发者一个烦恼,这就是保护的办法不多,而且大多数不是很好用,这样自己辛苦开发出来的程序很容易被人复制而据为己有,一般情况下,大多数的人都是用混编器(java obfuscator)来把开发出来的程序进行打乱以达到没有办法来反编译观看源代码,但是这种办法在网上很容易找到相关的软件来重新整理,那么这个混编只能控制一些本来也没有办法动您的软件的人,而对于一些掌握工具的人几乎是透明的,还有就是利用硬件加密锁,但大多数公司提供的硬件加密锁只是提供了一些dll的连接或简单的api调用,只要反编译他们,就很容易把一些api调用去掉,这样硬件加密锁也就不起作用了,但是现在到底有没有好的办法呢?
以色列阿拉丁公司提供的HASP HL加密锁提供的外壳加密工具中有一个叫做数据加密的功能,这个功能能更好的防止去除api的调用,各位都知道:硬件加密锁的保护原理就是要您被加密过的软件和加密锁的硬件要紧紧地结合在一起,而且不容易被轻易的剔出原来的调用,这样才能更好的保证您的软件不被盗版,同时这种方式也很容易被程序员掌握,要对一个软件实现保护,只需要几分钟的时间就可以了,下面简单介绍一下他的原理:
运用阿拉丁公司提供的外壳工具先把调用您的java解释器来进行加密,那么就是说如果要运用这个解释器就需要有一把特定的加密锁存在,然后我们再运用它提供的外壳加密工具中的数据加密功能,把您写好的java程序代码class文件进行数据加密产生新的文件来代替(加密过后的class文件是乱码,这时采用任何反编译工具都编译不出),然后再用加密过后的java解释器来调用,这个加密是采用的AES128位的算法的,这样这个加密过的数据文件——您的软件就只能被您保护过的java解释器来进行解释,但是在没有加密锁的情况下就不能够运行您的软件,或者是在有锁的情况下也看不到软件代码从而达到真正保护您的软件的目的。
我们作为以色列aladdin加密锁的代理商,很愿意和您分享这样的保护方式,如果您对我们的产品感兴趣,我们公司将提供产品测试!

联系人 龙令军 13538771708
邮件 :long@hzbhasp.com.cn
英文网址:http://www.ealaddin.com
中文网址:http://www.ealaddin.com.cn
hot3833 2006-03-27
  • 打赏
  • 举报
回复
TOMCAT
sagis 2006-03-22
  • 打赏
  • 举报
回复
sp文件本身就可以通过一些漏洞获得(如文章http://www.51one.net/study/jsp/10748.html),

上面都是几百年前的漏洞了,早就不存在了

jinfei2003 2006-03-22
  • 打赏
  • 举报
回复
路过,帮你顶上去...
hot3833 2006-03-21
  • 打赏
  • 举报
回复
wrongagain98(乱云) 是高手回答的好`
wrongagain98 2006-03-20
  • 打赏
  • 举报
回复
C++的dll也能反编译,其实世界上没有不能反编译的东西,只要你肯一条一条地跟踪汇编指令,这只是时间问题。
-------------------------------------------
反编译跟反汇编是两回事,C++只能反汇编,不能反编译
wuyg719 2006-03-18
  • 打赏
  • 举报
回复
如果你的代码如此重要,你不会舍不得搞一个自己的服务器,又不贵。
whp320 2006-03-14
  • 打赏
  • 举报
回复
谁有这个时间去跟踪!!?
xiangbo520 2006-03-10
  • 打赏
  • 举报
回复
C++的dll也能反编译,其实世界上没有不能反编译的东西,只要你肯一条一条地跟踪汇编指令,这只是时间问题。
yoyozizou1985 2006-03-08
  • 打赏
  • 举报
回复
用混淆器,即使反编译出来了也只是一串毫无意义的字母
wrongagain98 2006-03-04
  • 打赏
  • 举报
回复

我觉得楼主的问题用混淆器不能彻底解决,混淆器只是让反编译的代码变得难读些,只能阻止一些好事者。要是像竞争对手这样的人,吐血都要把你的代码研究出来,那么再难读的代码,他们也一样去读。
我觉得可以这样,可以照样用jsp、javabean写网站,但核心的东西就用C++写成dll,jsp通过jni去调用dll。这样,核心的东西就不能反编译了。不过当然,这样是会破坏java的跨平台性。不过,跨平台与安全相比,实在算不了什么。
wrongagain98 2006-03-04
  • 打赏
  • 举报
回复
sqbj(色秦不俭)
dLL文件照样可以把你反编译出来的
----------------------------------
C++的dll就反编译不了了嘛。要是C++的dll都能反编译,微软早都不用混了,软件早全部被反编译了。
panzi667 2006-02-28
  • 打赏
  • 举报
回复
混淆器
加载更多回复(9)

50,527

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧