A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 任涛 黑马帝   /  2011-12-15 11:31  /  1438 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 任涛 于 2011-12-16 16:52 编辑

通过反射可以得到类成员变量,得到构造方法,得到成员方法等,作为反汇编语言,这个应该是安全方面的缺陷,请问有什么安全机制可以用来防止破译吗?

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

3 个回复

倒序浏览
这个也不是太懂,曾在网上查过的。又重新查了一下,供楼主参考。
反射经常由框架型代码使用,由于这一点,我们可能希望框架能够全面接入代码,无需考虑常规的接入限制。但是,在其它情况下,不受控制的接入会带来严重的安全性风险,例如当代码在不值得信任的代码共享的环境中运行时。

由于这些互相矛盾的需求,Java编程语言定义一种多级别方法来处理反射的安全性。基本模式是对反射实施与应用于源代码接入相同的限制:

1、   从任意位置到类公共组件的接入
2、   类自身外部无任何到私有组件的接入
3、   受保护和打包(缺省接入)组件的有限接入

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
王冀 黑马帝 2011-12-15 11:52:57
藤椅
本帖最后由 王冀 于 2011-12-15 11:53 编辑

反编译java的程序应该不只是通过反射,而是直接对class文件的字节码操作,所以个人认为向这方面考虑没用

有不少其他的反-反编译方法,比如混淆什么的

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
任涛 黑马帝 2011-12-15 22:59:06
板凳
李振元 发表于 2011-12-15 11:50
这个也不是太懂,曾在网上查过的。又重新查了一下,供楼主参考。
反射经常由框架型代码使用,由于这一点, ...

O(∩_∩)O谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马