java 安全机制

为了达到安全性的目的,java 提供了一个用户可配置的“沙箱” 在沙箱中可以放置不可靠的Java程序。

1.0中applet的活动限制

1.对本地硬盘的读写

2.进行任何网络连接,但补课连接到提供此applet的源主机

3.创建新进程

4.装载新的动态链接库

 

基本沙箱组件如下

1.类装载器结构

2.class文件检验器

3.内置Java虚拟机(及语言)的安全特性

4.安全管理器及JavaApi

 

java 安全模型最大优点是组件中的类加载器和安全管理器是可以定制的。

 

下面详细介绍一下。

1.类加载器体系结构

  1)放置恶意代码干涉善意代码

  2)它守护了被信任的类库的边界

  3)它把代码归入某类(保护域) ,该类确定了代码可以进行那些操作

 

两个类加载器提供了不同的命名空间,不同类加载器之间互不可见

类加载器有以下几类

1)引导类加载器

2扩展类加载器

3)系统类加载器(应用类加载器)

类加载器为父-子体系结构

Bootstrap             rt.jar

Extension           jre/lib/ext

System               CLASSPATH

Plugin                  plugin.jar

 

注意 类加载器倒置问题。

每个线程都有一对类加载器的引用,称为上下文类加载器  主线程创建的是系统类加载器,新线程创建时,上下文类加载器会被设置成创建线程的上下文类加载器

 

Class文件检验器

 

class文件的四趟独立扫描

1)类加载时进行 class文件检验器检查其内部结构,保证他可以安全编译

2)23趟在连接时过程中进行,检查所有字节码完整性,

3)4趟动态连接过程中解析符号引用时进行,class文件检验器确认被引用类,字段和方法确实存在

 

安全管理器与访问权限

 

 

数字签名技术

 

公钥加密 私钥签名   与计算机网络中数字安全一样哈。。不详细说了

 

每一个方法调用都有自己的一个栈帧,存储局部变量信息和计算的中间结果 用于存储方法中间结果的部分被成为方法的操作数栈。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值