当前位置:文档之家› 新一代Java智能卡技术研究

新一代Java智能卡技术研究

新一代Java智能卡技术研究
新一代Java智能卡技术研究

新一代Java智能卡技术研究

马旭,王立,彭晓锋

北京邮电大学电信工程学院,北京 (100876)

E-mail:marxuxp@https://www.doczj.com/doc/221924283.html,

摘要:本文较详细地讨论了最新的Java 2.2智能卡技术,包括系统结构、运行时环境、编程模型、Java类库支持、虚拟机原理及设计,最后简要介绍了Java2.2智能卡的安全机制。关键词: Java Card智能卡2.2,JCRE,JCVM,安全性

1.引言

智能卡也称为芯片卡、IC卡。是将集成电路芯片封装在一个塑料基片上,通过芯片内的通信模块,智能卡可以和外部设备通信,完成数据传输、存储和处理,实现各种业务。早期的智能卡实际上并不是严格意义下的智能卡,只是一种存储卡。因为它没有片上微处理器,而只有少量的存储单元和固化的逻辑电路。随着技术的发展,出现了微处理器卡,能够提供更高的安全性和更多的功能。这种卡不能直接和外部交换数据,而是通过外部设备对微处理器发送一组指令,再由微处理器执行相关的操作,并把数据返回给外部设备。

由于Java语言的平台无关性、高安全性和易开发性,在智能卡应用中有相当的优势。Java 语言刚诞生不久的1996年11月,美国Schlumberger 产品中心首先介绍了Java智能卡的API,并决定将智能卡开发重点转到保护信息安全上来。Schlumberger 提出了Java API草案并创立了Java智能卡论坛[1]。在广大厂商的支持下,SUN推出了Java Card 1.1规范,为Java智能卡定义了技术标准,并陆续推出了2.0、2.1、2.2版,提出了更为完整的技术要求。目前,Java 智能卡技术已经趋于成熟,得到了广泛应用。

2.Java智能卡体系结构

在智能卡硬件平台上,通过构建一个硬件或软件系统,以支持Java语言下载、运行,称为Java智能卡。Java智能卡继承了Java技术的平台无关性,将硬件和软件分离,简化了应用程序开发,提高了程序移植性。

Java智能卡由以下几部分组成[2]:

z硬件系统

包括微处理器、存储器、通信电路、加密协处理器等模块

z与智能卡硬件相关的本地方法集

完成基本的I/O、存储、加密解密等对硬件的操作

z JCVM(Java Card Virtual Machine)解释器

完成对类文件的解析、构建Java栈和帧结构以支持Java字节码的执行

z Java智能卡类库

包括支持Java智能卡运行的核心类库和扩展类库

z Java智能卡应用管理组件

完成对卡上Applet的安装、注册和删除

z Java智能卡运行环境

包括支持卡内的Applet间的安全机制和对象共享机制,支持卡内的事务处理和异常处理

z Java智能卡应用程序

运行智能卡上的Java 应用程序

系统结构如图1[2]。

图1 Java 智能卡系统结构 3.Java 智能卡应用程序开发和运行

3.1 Java 语法规范

Java 智能卡支持一个简化的Java 语法集,删除了较复杂和耗时的部分,但保留了面向

对象特性。表1[2]列出了一些支持和不支持的Java 特性

表1 Java 智能卡支持和不支持的Java 特性

Java 智能卡支持特性 Java 智能卡不支持特性

简单数据类型 boolean byte short

大数据类型 long float 等 一维数组

多维数组 Java 包 类 接口以及异常

字符和字符串 面向对象特性:继承 多态 虚方法 重载 动

态对象生成 存取范围

动态类装载 安全管理 垃圾回收和结束 线程 对象编序 可选int 关键字和32位整数数据类型

对象克隆

Java 智能卡也有相应的包支持,但也只是标准Java 的一个子集。具体介绍请参见表2[2]。

表2 JCRE2.2提供的API

功能 Java.io

Java.io 的子集,基本I/O 操作 https://www.doczj.com/doc/221924283.html,ng

程序开发的基本支持类 Java.rmi

定义了远程调用接口,以支持远程方法调用 Javacard.framework

提供用于建立Applet,提供相应的类和接口框架 Javacard.framework.service

提供允许Java 卡Applet 被设计为服务集合体的类和接口框架 Javacard.security

提供Java 卡安全服务和加密机制的公共类和接口 Javacard.cyipto 包含为实现java 卡主动安全机制和加

密框架的外部控制功能的扩展包

编写的Java源程序首先要编译为二进制类文件,需要将此类文件进一步转换,以使其结构更紧凑,适宜于安装在智能卡上。转换后的文件(Converted Applet, CAP)即为安装文件。最后需要下载CAP文件,并完成其卡内安装注册。

3.2 运行时环境(JCRE)

应用程序在卡内的执行由运行时环境决定,有以下三个状态:

z选中状态(Select)

只有应用程序被选中后才能进入处理状态与读写器交互。

z处理状态(Process)

此时Java智能卡和读写器通信,执行应用程序中的process方法,通过重载此方法可以实现不同的功能。

z取消选择状态(Deselect)

此时应用程序为非激活状态。

JCRE2.2支持多通道[3],最多可以有4个逻辑通道同时打开,但是由于Java卡并不支持并行同通信,所以实际上只有一个Applet处于活动通信状态。其中Channel0为基本通道,不能够关闭,其他通道需要通过通道选择或者文件选择APDU打开。当卡复位时,只有Channel0是打开的。

由多通道特性引出了Multiselectable概念。即当一个通道选择了一个Applet后,其他通道也可以选择相同或者在同一个包中的Applet,具有Multiselectable性质的包需要实现Multiselectable接口。一个Applet有多个实例在不同通道运行并不会造成信息的混乱,JCRE 精心设计的安全机制能保证两者的隔离和各自信息的安全。

有两种方法选择通道,即通道选择和文件选择,对应MANAGE CHANNEL OPEN APDU 和SELECT FILE APDU指令。关闭通道时可以用MANAGE CHANNEL CLOSE APDU指令。这些操作都对应一个复杂的管理流程,请参阅相关文献[2] [3]。

Java Card 2.2允许为每一个通路选择一个默认的Applet,当复位启动的时候就隐含了一个Applet实例。打开其他通路的时候也可以有默认Applet或者选择其他Applet。JCRE2.2新增了对远程对象调用(JCRMI)的支持,使得读卡器可以调用存储在卡内的远程方法。实现这种机制的关键是在Javacrad.framework.service包中增加类RMIService。请求的远程调用服务都被传递到这个类中的方法来处理。JCRMI支持标准RMI服务的一个子集。

3.3 Java卡虚拟机(JCVM)

3.3.1 JCVM体系结构

Java卡虚拟机简称JCVM,是Java程序的运行环境,目前有两类JCVM实现方案。一种是硬件的Java微处理器[4] [5] [6] [7],可以在硬件上直接执行Java字节码。可以使用专用Java 微处理器,或者使用Java协理器。此方案的优点是执行速度快,但是电路比较复杂,成本高,适用于一些高端应用。另一种是软件实现[1] [2],即在智能卡上构建一个Java解释器,逐条将Java语句解释为机器码执行。优点是结构简单,成本低,但是执行速度较慢。

解释型JCVM分为卡内和卡外两部分。卡外虚拟机工作在PC上,主要执行文件编译、转化,生成安装文件。卡内虚拟机工作在智能卡上,负责解释执行程序代码。通过这种机制,Java保持了其平台无关性。

JCVM使用了一种称为token的动态链接技术[3]。当包A(一个CAP文件)引用包B中

的对象时,它并不知道此对象对应的具体物理地址,这时就可以动态地加载token来定位要

引用对象的物理地址。本质上token是CAP文件中的一些表的索引。

转化器在解析Java的类文件的时候,根据被引用的EXP文件,将类文件中使用的其他

包中对象的源代码字符串转化为相应的token值存储在CAP文件中。实际上就是一些偏移

量,这些偏移量是相对于CAP文件开始位置的偏移量。

在智能卡上解析CAP文件的时候,如果遇到一个token,就说明这时候要用到别的包的

对象了。便将此token作为一个索引,在相应的表〔table〕或者数组中去查找,得到所引用

对象在内存中的绝对位置。

3.3.2 CAP文件安装

CAP文件的安装和解析是一个比较复杂的过程,下面予以简要介绍。

CAP文件一共有12个组件[4]。分别为:COMPONET_Header, COMPONET_Directory, COMPONET_Applet, COMPONET_Import, COMPONET_ConstantPool, COMPONET_Class, COMPONET_Method, COMPONET_StaticField, COMPONET_ReferenceLocation, COMPONET_Export, COMPONET_Descriptor, COMPONET_Debug。其中Applet,Export和Debug组件为可选组件,只有当需要相应功能时才需要加入。每个组件封装为一个CAP包,

包含在Jar包中。最后在卡上只保留了5个组件:COMPONET_Method,COMPONET_Class,COMPONET_ConstantPool,COMPONET_StaticField和COMPONET_Export。其余的组件只

是安装时提取有用信息而不在卡中保存。

Java应用程序写到存储器之后,还不能立刻使用,还需要初始化和个人化。初始化是将

一些初始信息下载到永久存储区,它们是卡的通用信息。个人化是将个人信息写到卡上,包

括物理个人化和电子个人化。物理个人化是在卡表面写上个人信息;电子个人化是将个人信

息写到永久存储器中。

3.3.3 JCVM实现

JCVM采用了面向堆栈的结构,但是做了进一步简化。堆用于存放Java程序运行时创

建的对象和数组,在字节码的对象创建指令运行时,JCVM将为其分配相应的空间存储。栈

主要用于方法调用时保存返回信息和上下文。

JCVM中只设置了4个寄存器,分别是pc寄存器、frame寄存器、var寄存器和optop

寄存器。pc寄存器指向当前方法中要执行的下一条语句;frame寄存器指向帧结构运行环境;

var寄存器指向帧结构中局部变量区的最底端;optop指向帧结构中操作数栈的栈顶。

4. Java智能卡的安全性和完整性

智能卡要得到广泛应用,首先就要解决信息的安全性和完整性问题。Java卡中提供了多

种加密和安全措施[8] [9] [10]。每个阶段都有对应的安全措施,在文件下载安装时有相应的合法

性检查,程序运行时提供数据保护和隔离机制,并提供了各种标准加密包以简化加密编程。

4.1 JCRE安全机制

当多个Applet处于激活状态的时候,JCRE必须提供相应的安全机制保证数据的隔离和

通信,运行时的安全机制主要是防火墙。

防火墙机制主要用于隔离不同上下文的Applet对象。同一个上下文的对象可以互相访

问,包括Applet对象,Applet的域和其他类型的对象。JCRE利用现在活动上下文(Currently Active Context)来实施防火墙规则,它是指当前得到系统控制权的Applet的上下文,系统

中只有一个现在活动上下文。当访问另一个对象时,访问者的上下文就是现在活动上下文,如果被访问者也处于其中则可以访问,否则将抛出https://www.doczj.com/doc/221924283.html,ng.SecurityException。如果调用一个对象的实例方法处于不同的上下文,JCRE将执行上下文切换。和普通的方法调用一样,只是这里还需要在栈中保存上下文信息,调用完成后恢复到原来的上下文。

Applet对象间访问机制主要是通过实现sharable接口来实现。首先,服务提供者实现这个接口,或者是和服务提供者在同一个上下文的Applet实现此接口。必须要重载一个静态方法Applet.getSharableInterfaceObject,此对象称为Sharable Interface Object (SIO)。服务请求者通过调用JCSystem.getAppletSharableInterfaceObject方法可以得到SIO的对象引用,通过此引用就可以得到服务提供者的服务。JCRE扮演的角色是,为client applet获取server applet的SIO对象引用,并在通信过程中维护现在活动上下文和实施防火墙策略。

同时,JCRE还提供了一套跨防火墙访问机制。系统定义了一些特殊的对象,可以被其他任何上下文内的对象访问。主要有两种:JCRE入口点对象和全局数组,通过他们可以实现跨防火墙通信。

除了运行环境对安全性的支持,Java 卡还提供了相应的加密标准API,通过继承和实现这些类或者接口,可以实现信息加密和数字签名功能。目前较常用的一些加密算法,如DES、RSA都有相应的包支持。同时,Java语言提供了一个友好的开发环境,可以很容易开发和移植各种安全插件。

4.2 Java完整性

Java卡提供了一种类似于数据库中回滚(Rollback)的原子性操作机制。如果系统中出现了一些意外情况,如掉电、中断等,系统可以回滚到交易前的状态,可以保证数据的完整性。Applet通过调用JCSystem.beginTransaction开始一个原子操作,调用https://www.doczj.com/doc/221924283.html,mitTransaction后才会将数据写入永久数据存储区,如果出现了任何故障,系统将自动回滚到调用JCSystem.beginTransaction之前的状态。期间可以调用JCSystem.abortTransaction取消操作。原子操作不允许嵌套,在一个时间内只能有一个。回滚时只能恢复永久数据,对一些全局数组和临时对象不做保护。如果此时发生了上下文切换,在新的上下文中对永久数据的更新是有条件的,直到此操作完成或取消。

JCRE对原子操作的支持使Java卡可以应用在金融、银行、移动钱包等需要高安全性和完整性的行业。

5. 总结

以上较全面地介绍了Java智能卡技术。在许多应用中,智能卡是一项关键技术。例如在移动通信中,机卡分离实现了用户和移动台的分开管理,而用户管理主要是通过SIM卡,实现用户鉴权、认证、计费等。目前,支持Java技术的智能卡已经得到了广泛应用,世界许多大型电信运营商都以此为平台开发SIM卡。

安全性是Java智能卡是否能得到广泛应用的关键。虽然目前可以提供良好的信息存储和管理功能,但还不能保证高安全性。在金融、移动钱包等应用中,安全性是首要问题,也是目前的瓶颈,还需要进一步深入研究。

参考文献

[1] 赵丽颖. Java智能卡结构分析与实现[硕士学位论文][D]. 北京:北京邮电大学,2004

[2] 靳伟. Java智能卡虚拟机设计与实现[硕士学位论文][D]. 北京:北京航空航天大学,2004

[3] 邱世庆. Java在智能卡中的实现与应用[硕士学位论文][D]. 上海:复旦大学,2000

[4] 刘嵩岩. 毛志刚. 叶以正. Java卡的研究与实现[J]. 微电子学. 2000年06期

[5] 徐科. 32位嵌入式RISC处理器核的VLSI实现[硕士学位论文][D]. 上海:复旦大学,2003

[6] 张建杰. 杨之廉. 葛元庆. Java智能卡微处理器的设计与验证[J]. 清华大学学报(自然科学版). 2002年

01期

[7] 李飞卉. 张建杰. 葛元庆. 岳震伍. 周润德. Java智能卡微处理器软件仿真指令的研究与实现[J]. 微电

子学. 2002年05期

[8] 周捷. 吴东辉. 陈章龙. Java卡平台安全性的设计与实现[J]. 计算机工程与应用. 2004年21期

[9] 胥冠军 Java智能卡的一种加密算法与实现[J]. 计算机与数字工程. 2004年04期

[10] 王明华. 杨义先. NTRU公钥密码算法基于Java Card的实现计算机工程与应用[J]. 2005年01期

A Study On New Java Card

Ma Xu,Wang Li,Peng Xiaofeng

School of Telecommunication Engineering,Beiing University of Posts and Telecommunications,

Beijing (100876)

Abstract

This paper gives a discussion of .Java Card 2.2, including system architecture, Java card run environment, programming modal, Java support library, principle and design of JVM. An introduction of security scheme is also presented.

Keywords:Java Card 2.2,JCRE,JCVM,security

作者简介:

马旭,男,1982年生,硕士研究生,主要研究方向是Java技术,数字电视CA;

王立,男,1982年生,硕士研究生,主要研究方向是MPEG2技术和数字电视;

彭晓锋,男,1982年生,硕士研究生,主要研究方向是MPEG2技术和数字电视。

数据库安全技术研究与应用

学术.技术

学术.技术 (2)安全管理技术:安全管理指采取何种安全管理机制实现数据库管理权限分配,安全管理分集中控制和分散控制两种方式。集中控制由单个授权者来控制系统的整个安全维护,可以更有效、更方便地实现安全管理;分散控制则采用可用的管理程序控制数据库的不同部分来实现系统的安全维护[6]。 (3)数据库加密:是防止数据库中数据泄露的有效手段,通过加密,可以保证用户信息的安全,减少因备份介质失窃或丢失而造成的损失。数据库加密的方式主要有:库外加密、库内加密、硬件加密等[7]。 (4)审计追踪与攻击检测:审计功能在系统运行时,自动将数据库的所有操作记录在审计日志中,攻击检测系统则是根据审计数据分析检测内部和外部攻击者的攻击企图,再现导致系统现状的事件,分析发现系统安全弱点,追查相关责任者[8]。 (5)信息流控制:信息流控制机制对系统的所有元素、组成成分等划分类别和级别。信息流控制负责检查信息的流向,使高保护级别对象所含信息不会被传送到低保护级别的对象中去,这可以避免某些怀有恶意的用户从较低保护级别的后一个对象中取得较为秘密的信息[9]。 (6)推理控制:是指用户通过间接的方式获取本不该获取的数据或信息。推理控制的目标就是防止用户通过间接的方式获取本不该获取的数据或信息[9]。 (7)数据备份与恢复。 2.3.2数据安全传输常用协议 (1)SSL协议:SSL协议(Secure socket layer)现已成为网络用来鉴别网站和网页浏览者身份,以及在浏览器使用者及网页服务器之间进行加密通讯的全球化标准。S S L 技术已建立到所有主要的浏览器和W e b服务器程序中,因此,仅需安装数字证书或服务器证书就可以激活服务器功能。 (2)IPSec协议:IPSec (Internet Protocol Security) 是由IETF 定义的安全标准框架,用以提供公用和专用网络的端对端加密和验证服务。它指定了各种可选网络安全服务,而各组织可以根据自己的安全策略综合和匹配这些服务,可以在 IPSec 框架之上构建安全性解决方法,用以提高发送数据的机密性、完整性和可靠性。该协议提供了“验证头”、“封装安全载荷”和“互联网密钥管理协议”3个基本元素用以保护网络通信。 (3)H T T P S协议:H T T P S(S e c u r e H y p e r t e x t T r a n s f e r P r o t o c o l)安全超文本传输协议,它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。 2.4 数据库安全技术研究趋势 要在确保可用性的前提下研究数据库安全,随着计算机技术的发展和数据库技术应用范围的扩大,将会有以下发展趋势[6,9]: (1)安全模型的研究,包括旧安全模型在实际中的具体应用和新安全模型的研究。 (2)隐蔽信道问题,即如何通过信息流控制和推理控制等其他安全控制机制来彻底检测与消除。 (3)当前处于主流地位的R D B M S大都采用D A C机制,有必要进一步扩展D A C授权模型的表达能力以支持各种安全策略,并开发合适的工具和通用的描述安全策略的语言来支持这些模型。 (4)数据库的审计跟踪,目前粒度较细的审计很耗时间和空间,如何改进审计机制或者是否有可以借助的高效率的自动化审计工具与DBMS集成。 (5)数据库技术与其他相关技术的相互结合对数据库安全的影响。 (6)多级安全数据库语义的研究和D B M S的多级安全保护体制的进一步完善。 (7)数据库系统的弱点和漏洞可以被轻易地利用,因此数据库安全要和入侵检测系统、防火墙等其他安全产品应配套研究使用。 (8)对应用系统和数据库连接部分的程序本身的安全研究也是广义数据库系统安全研究的范围。 (9)数据库加密技术的研究应用是今后数据库在金融、商业等其他重要应用部门研究和推广的重点。 (10)推理问题将继续是数据库安全面临的问题。 3 高校实践教学管理系统数据库安全技术方案3.1系统安全体系结构 图1 系统安全体系结构框图 系统采用B/S模式实现功能基本业务模块。主要事务逻辑在W E B服务器(S e r v e r)上实现,极少部分事务

智能卡应用程序的开发

Windows系统提供了大量的API来方便的进行智能卡应用程序的开发,通过它们我们可以直接控制智能卡读卡器对智能卡进行操作,也可以与智能卡建立直接的虚拟连接而不用考虑智能卡读卡器。 智能卡应用程序开发的一般流程是: 1)建立连接(使用函数SCardEstablishContext和SCardConnect,SCardReconnect); 2)开始事务处理(使用函数SCardBeginTransaction); 3)进行事务处理(使用函数SCardTransmit); 4)结束事务处理(使用函数SCardEndTransaction); 5)断开连接(使用函数SCardDisconnect和SCardReleaseContext)。 下面就具体看看各个函数的功能和用法吧! 1)SCardEstablishContext函数用于建立进行设备数据库操作的资源管理器上下文: LONG WINAPI SCardEstablishContext( __in DWORD dwScope, //资源管理器上下文的范围,取值如下: //SCARD_SCOPE_USER---数据库操作在用户域中 //SCARD_SCOPE_SYSTEM---数据库操作在系统域中,调用的应用程序 //必须具有对任何数据库操作的权限 __in LPCVOID pvReserved1, //保留值,必须设为NULL __in LPCVOID pvReserved2, //保留值,必须设为NULL __out LPSCARDCONTEXT phContext //建立的资源管理器上下文句柄 ); 返回值:成功时返回SCARD_S_SUCCESS;失败时返回智能卡特定错误码。 函数返回的资源管理器上下文句柄可以被对设备数据库进行查询和管理的函数使用。如果一个客户试图在远程会话中实现智能卡操作,例如运行在终端服务器上的客户会话,而且客户会话所在的操作系统不支持智能卡重定向,则函数SCardEstablishContext返回ERROR_BROKEN_PIPE。 下面的代码是建立资源管理器上下文的例子: SCARDCONTEXT hSC; LONG lReturn; //Establish the context lReturn = SCardEstablishContext(SCARD_SCOPE_USER, NULL, NULL, &hSC); if(SCARD_S_SUCCESS != lReturn) printf("Failed SCardEstablishContext/n"); else { //Use the context as needed, when done, //free the context by calling SCardReleaseContext } 2)SCardConnect函数利用特定资源管理器上下文,在应用程序与包含在特定读卡器中的智能卡之间建立一条连接: LONG WINAPI SCardConnect( __in SCARDCONTEXT hContext, //资源管理器上下文句柄

信息安全技术发展现状及发展趋势

信息安全技术发展现状及发展趋势 摘要:随着信息化建设步伐的加快,人们对信息安全的关注程度越来越高。,信息安全的内涵也在不断地延伸,从最初的信息保密性发展到信息的完整性、可用性、可控性和不可否认性,进而又发展为“攻(攻击)、防(防范)、测(检测)、控(控制)、管(管理)、评(评估)”等多方面的基础理论和实施技术。信息安全涉及数学、物理、网络、通信和计算机诸多学科的知识。与其他学科相比,信息安全的研究更强调自主性和创新性。本文对信息安全技术发展现状和趋势问题作一粗浅分析。 关键词:密码学;信息安全;发展现状 引言 网络发展到今天,对于网络与信息系统的安全概念,尽管越来越被人们认识和重视,但仍还有许多问题还没有解决。这是因为在开放网络环境下,一些安全技术还不完善,许多评判指标还不统一,于是网络与信息安全领域的研究人员和技术人员需要为共同探讨和解决一些敏感而又现实的安全技术问题而努力。 目前,信息安全技术涉及的领域还包括黑客的攻防、网络安全管理、网络安全评估、网络犯罪取证等方面的技术。信息安全不仅关系到个人、企事业单位,还关系到国家安全。21世纪的战争,实际上很大程度上取决于我们在信息对抗方面的能力。 信息安全技术从理论到安全产品,主要以现代密码学的研究为核心,包括安全协议、安全体系结构、信息对抗、安全检测和评估等关键技术。以此为基础,还出现了一大批安全产品。下面就目前信息安全技术的现状及研究的热点问题作一些介绍。 现今信息安全问题面临着前所未有的挑战,常见的安全威胁有:第一,信息泄露。信息被泄露或透露给某个非授权的实体。第二,破坏信息的完整性。数据被非授权地进行增删、修改或破坏而受到损失。第三,拒绝服务。对信息或其他资源的合法访问无条件地阻止。第四,非法使用(非授权访问)。某一资源被某个非授权的人,或以非授权的方式使用。第五,窃听。用各种可能的合法或非法的的信息资源和敏感信息。第六,业务流分析。通过对系统进行长期监听,利用统计分析方法对诸如通信频度、通信的信息流向、通信总量的变化等参数进行研究,从中发现有价值的信息和规律。第七,假冒。通过欺骗通信系统(或用户)达到非法用户冒充成为合法用户,或者特权小的用户冒充成为特权大的用户的目的。黑客大多是采用假冒攻击。第八,旁路控制。攻击者利用系统的安全缺陷或安全性上的脆弱之处获得

网络安全技术研究的目的、意义和现状

网络安全技术综述 研究目的: 随着互联网技术的不断发展和广泛应用,计算机网络在现代生活中的作用越来越重要,如今,个人、企业以及政府部门,国家军事部门,不管是天文的还是地理的都依靠网络传递信息,这已成为主流,人们也越来越依赖网络。然而,网络的开放性与共享性容易使它受到外界的攻击与破坏,网络信息的各种入侵行为和犯罪活动接踵而至,信息的安全保密性受到严重影响。因此,网络安全问题已成为世界各国政府、企业及广大网络用户最关心的问题之一。 21世纪全世界的计算机都将通过Internet联到一起,信息安全的内涵也就发生了根本的变化。它不仅从一般性的防卫变成了一种非常普通的防范,而且还从一种专门的领域变成了无处不在。当人类步入21世纪这一信息社会、网络社会的时候,我国将建立起一套完整的网络安全体系,特别是从政策上和法律上建立起有中国自己特色的网络安全体系。 网络安全技术指致力于解决诸如如何有效进行介入控制,以及何如保证数据传输的安全性的技术手段,主要包括物理安全分析技术,网络结构安全分析技术,系统安全分析技术,管理安全分析技术,及其它的安全服务和安全机制策略。在网络技术高速发展的今天,对网络安全技术的研究意义重大,它关系到小至个人的利益,大至国家的安全。对网络安全技术的研究就是为了尽最大的努力为个人、国家创造一个良好的网络环境,让网络安全技术更好的为广大用户服务。 研究意义: 一个国家的信息安全体系实际上包括国家的法规和政策,以及技术与市场的发展平台.我国在构建信息防卫系统时,应着力发展自己独特的安全产品,我国要 想真正解决网络安全问题,最终的办法就是通过发展民族的安全产业,带动我国网络安全技术的整体提高。信息安全是国家发展所面临的一个重要问题.对于这个问题,我们还没有从系统的规划上去考虑它,从技术上,产业上,政策上来发展它.政府不仅应该看见信息安全的发展是我国高科技产业的一部分,而且应该看到,发展安全产业的政策是信息安全保障系统的一个重要组成部分,甚至应该看到它对我国未来电子化,信息化的发展将起到非常重要的作用。 信息安全问题已成为社会关注的焦点。特别是随着Internet 的普及和电子商

新一代Java智能卡技术研究

新一代Java智能卡技术研究 马旭,王立,彭晓锋 北京邮电大学电信工程学院,北京 (100876) E-mail:marxuxp@https://www.doczj.com/doc/221924283.html, 摘要:本文较详细地讨论了最新的Java 2.2智能卡技术,包括系统结构、运行时环境、编程模型、Java类库支持、虚拟机原理及设计,最后简要介绍了Java2.2智能卡的安全机制。关键词: Java Card智能卡2.2,JCRE,JCVM,安全性 1.引言 智能卡也称为芯片卡、IC卡。是将集成电路芯片封装在一个塑料基片上,通过芯片内的通信模块,智能卡可以和外部设备通信,完成数据传输、存储和处理,实现各种业务。早期的智能卡实际上并不是严格意义下的智能卡,只是一种存储卡。因为它没有片上微处理器,而只有少量的存储单元和固化的逻辑电路。随着技术的发展,出现了微处理器卡,能够提供更高的安全性和更多的功能。这种卡不能直接和外部交换数据,而是通过外部设备对微处理器发送一组指令,再由微处理器执行相关的操作,并把数据返回给外部设备。 由于Java语言的平台无关性、高安全性和易开发性,在智能卡应用中有相当的优势。Java 语言刚诞生不久的1996年11月,美国Schlumberger 产品中心首先介绍了Java智能卡的API,并决定将智能卡开发重点转到保护信息安全上来。Schlumberger 提出了Java API草案并创立了Java智能卡论坛[1]。在广大厂商的支持下,SUN推出了Java Card 1.1规范,为Java智能卡定义了技术标准,并陆续推出了2.0、2.1、2.2版,提出了更为完整的技术要求。目前,Java 智能卡技术已经趋于成熟,得到了广泛应用。 2.Java智能卡体系结构 在智能卡硬件平台上,通过构建一个硬件或软件系统,以支持Java语言下载、运行,称为Java智能卡。Java智能卡继承了Java技术的平台无关性,将硬件和软件分离,简化了应用程序开发,提高了程序移植性。 Java智能卡由以下几部分组成[2]: z硬件系统 包括微处理器、存储器、通信电路、加密协处理器等模块 z与智能卡硬件相关的本地方法集 完成基本的I/O、存储、加密解密等对硬件的操作 z JCVM(Java Card Virtual Machine)解释器 完成对类文件的解析、构建Java栈和帧结构以支持Java字节码的执行 z Java智能卡类库 包括支持Java智能卡运行的核心类库和扩展类库 z Java智能卡应用管理组件 完成对卡上Applet的安装、注册和删除 z Java智能卡运行环境 包括支持卡内的Applet间的安全机制和对象共享机制,支持卡内的事务处理和异常处理 z Java智能卡应用程序

网络安全技术研究的目的、意义和现状

论文:网络安全技术综述 研究目的: 随着互联网技术的不断发展和广泛应用,计算机网络在现代生活中的作用越来越重要,如今,个人、企业以及政府部门,国家军事部门,不管是天文的还是地理的都依靠网络传递信息,这已成为主流,人们也越来越依赖网络。然而,网络的开放性与共享性容易使它受到外界的攻击与破坏,网络信息的各种入侵行为和犯罪活动接踵而至,信息的安全保密性受到严重影响。因此,网络安全问题已成为世界各国政府、企业及广大网络用户最关心的问题之一。 21世纪全世界的计算机都将通过Internet联到一起,信息安全的内涵也就发生了根本的变化。它不仅从一般性的防卫变成了一种非常普通的防范,而且还从一种专门的领域变成了无处不在。当人类步入21世纪这一信息社会、网络社会的时候,我国将建立起一套完整的网络安全体系,特别是从政策上和法律上建立起有中国自己特色的网络安全体系。 网络安全技术指致力于解决诸如如何有效进行介入控制,以及何如保证数据传输的安全性的技术手段,主要包括物理安全分析技术,网络结构安全分析技术,系统安全分析技术,管理安全分析技术,及其它的安全服务和安全机制策略。在网络技术高速发展的今天,对网络安全技术的研究意义重大,它关系到小至个人的利益,大至国家的安全。对网络安全技术的研究就是为了尽最大的努力为个人、国家创造一个良好的网络环境,让网络安全技术更好的为广大用户服务。 研究意义: 一个国家的信息安全体系实际上包括国家的法规和政策,以及技术与市场的发展平台.我国在构建信息防卫系统时,应着力发展自己独特的安全产品,我国要 想真正解决网络安全问题,最终的办法就是通过发展民族的安全产业,带动我国网络安全技术的整体提高。信息安全是国家发展所面临的一个重要问题.对于这个问题,我们还没有从系统的规划上去考虑它,从技术上,产业上,政策上来发展它.政府不仅应该看见信息安全的发展是我国高科技产业的一部分,而且应该看到,发展安全产业的政策是信息安全保障系统的一个重要组成部分,甚至应该看到它对我国未来电子化,信息化的发展将起到非常重要的作用。

数据库安全技术及其应用研究

数据库安全技术及其应用研究 文章首先概述了数据库安全面临的主要威胁,然后分析了数据库安全关键技术,有针对性地阐述了一个典型应用,最后总结了数据库安全技术的研究意义。 标签:访问控制;加密技术;数字水印 1 数据库安全面临的主要威胁 数据库安全面临的威胁主要来自两方面:一是数据库自身脆弱性。主要体现在数据库自身存在安全漏洞,数据库审计措施不力,数据库通信协议存在漏洞,没有自主可控的数据库,操作系统存在缺陷等方面;二是网络攻击。数据库受到的网络攻击包括网络传输威胁,SQL注入攻击,拒绝服务攻击以及病毒攻击等方面。开放的网络环境下,数据库系统面临的安全威胁和风险迅速增大,数据库安全技术研究领域也在迅速扩大,下面我们共同探讨一些关键的数据库安全技术。 2 数据库安全关键技术 2.1 数据库访问控制技术 访问控制是数据库最基本、最核心的技术,是指通过某种途径显式地准许或限制访问能力及范围,防止非法用户侵入或合法用户的不慎操作造成破坏。可靠的访问控制机制是数据库安全的必要保证,传统访问控制技术根据访问控制策略划分为自主访问控制、强制访问控制和基于角色的访问控制。在开放网络环境中,许多实体之间彼此并不认识,而且很难找到每个实体都信赖的权威,传统的基于资源请求者的身份做出授权决定的访问控制机制不再适用开放网络环境,因此如信任管理、数字版权管理等概念被提了出来,进而形成了使用控制模型研究。 2.2 数据库加密技术 数据库加密是对敏感数据进行安全保护的有效手段。数据库加密系统实现的主要功能:对存储在数据库中的数据进行不同级别的存储加密,可以在操作系统层、DBMS内核层和DBMS外层三个层次实现;数据库的加密粒度可以分为数据库级、表级、记录级、字段级和数据项级,在数据库加密时应根据不同的应用需要,选择合适的加密粒度;数据库加密算法是数据加密的核心,加密算法包括对称和非对称密码算法,根据不同的应用领域和不同的敏感程度选择加合适的算法。 2.3 数据库水印技术 随着网络数据共享和数据交换需求的不断增多,如果不采取有效的安全控制和版权保护措施,常常会给攻击者以可乘之机。同时,如果缺乏数据库完整性验

武大计算机学院信息安全专业研究生培养方案

信息安全专业研究生培养方案 一、培养目标 培养德、智、体全面发展的计算机科学与技术领域的专门人才。要求学生较好地学习与掌握马列主义、毛泽东思想和邓小平理论,热爱祖国、遵纪守法、品德良好;掌握坚实的基础理论和系统的专门知识,比较熟练地掌握和运用一门外语,具有较宽的知识面,了解当前国内外本学科最新前沿,具有从事基础性、理论性科学研究和教学工作的能力,能够在本学科领域做出创造性的成果;并且身心健康。 二、研究方向 1)密码学技术主要研究分组密码、序列密码、公钥密码、演化密码、量子和DNA密码、认证、数字签名、密码芯片、智能卡、安全协议、密码应用技术等。2)网络安全技术主要研究防火墙技术、入侵保护技术、虚拟专网技术、网络容侵、可信网络、网络信息获取技术、网络安全测试与评估、网络安全事件应急响应、访问控制、网络故障诊断等。3)可信计算主要研究可信计算安全体系、可信计算平台技术、可信计算环境的构造与测评技术以及基于可信计算的应用安全技术等。4)信息系统安全主要研究信息系统物理安全、安全测评方法和技术、软件可靠性技术、恶意软件分析方法与检测技术、操作系统安全、数据库系统安全、可信性度量方法与技术、取证技术、验证码安全技术等。研究电子商务安全分析和设计方法、电子政务安全分析和设计方法、嵌入式系统安全技术、云计算安全技术和物联网信息安全等。5)内容安全主要研究信息隐藏方法、数字水印与数字版权管理技术、隐秘通信与隐写分析技术、基于内容的过滤和识别技术、舆情分析、媒体内容加密与取证技术和隐私保护技术等。6)空天信息安全主要研究多源空间信息共享技术、航天信息服务链技术、空天信息加密插件技术、空天信息处理与仿真技术、遥感影像降解密处理技术、空天信息数字水印技术等。 三、学习年限 3年。 四、课程设置及学分分配(见本专业硕士研究生课程计划表) 五、应修满的学分总数 应修满的学分总数:30.0 ,其中学位课程21.0学分 六、学位论文 1.论文选题:应密切结合学科发展与国家经济和社会建设的需要,要求具有一定的理论创新与应用价值,并经导师审核同意。 2.开题报告:选题后,学生应拟定撰写计划,于第三学期末或第四学期初在本专业或指导小组(不少于3人,含导师)内进行开题报告。经指导小组讨论通过后,方可正式进行搜集资料、专题研究和论文撰写工作。 3.论文撰写:开题报告完成后,应在导师指导下进入论文撰写阶段,时长不少于1年。论文应阐述理论或设计应用方面的研究成果,要求格式规范、命题正确、逻辑推理严谨、数据可靠、文字流畅,反映对所研究课题有新的见解,并表明作者具有从事科学研究工作或担负专门技术工作的能力。学位论文完成并经指导小组审查通过后,在论文答辩前一个月提交给2位论文评阅人评阅。评阅人须是具备教授、副教授或相当职称的同行专家。评阅意见在合格以上者,方可进入论文答辩环节。 4.答辩资格:本专业硕士研究

网络安全问题研究性课题报告

班级: 指导老师:组长: 组员:

课题研究涉及的主导科目:信息技术 课题研究涉及的非主导科目:语文数学 提出背景:随着计算机技术和网络技术的发展,网络已经逐渐走入我们平常百 姓家,网络也在也不是个陌生的字眼。大到企业办公,小到私人娱乐。网络正以其独特的魅力向世人昭示它的风采。但同时,网络安全问题也随之与来,在今天已经成为网络世界里最为人关注的问题之一危害网络安全的因素很多,它们主要依附于各种恶意软件,其中病毒和木马最为一般网民所熟悉。针对这些危害因素,网络安全技术得以快速发展,这也大大提高了网络的安全性。 研究目的:了解网络安全问题触发的原因、方式、后果及影响 研究意义:认识到网络安全的重要性,提高自我防范意识 研究目标:1、使广大青少年朋友对网络安全有一些初步的了解和认识。 2、通过宣传网络安全知识,使青少年朋友加强安全防范意识。 研究假设:同学们对网络安全不给予重视,网络安全问题迫在眉睫 研究内容: 1、触发网络信息安全问题的原因 2、我国的网络信息安全问题及政策建议 3、什么是网络安全 4、计算机网络安全的含义 5、常见的几种网络入侵方法 一、触发网络信息安全问题的原因 日益严重的网络信息安全问题,不仅使上网企业、机构及用户蒙受了巨大经济损失,而且使国家的安全与主权面临严重威胁。要避免网络信息安全问题,首先必须搞清楚触发这一问题的原因。归纳起来,主要有以下几个方面原因。

1.黑客的攻击。由于缺乏针对网络犯罪卓有成效的反击和跟踪手段,因此黑客的攻击不仅“杀伤力”强,而且隐蔽性好。目前,世界上有20多万个黑客网站,其攻击方法达几千种之多。 2.管理的欠缺。网站或系统的严格管理是企业、机构及用户免受攻击的重要措施。事实上,很多企业、机构及用户的网站或系统都疏于这方面的管理。据IT界企业团体ITAA 的调查显示,美国90%的IT企业对黑客攻击准备不足。目前,美国75%-85%的网站都抵挡不住黑客的攻击,约有75%的企业网上信息失窃,其中25%的企业损失在25万美元以上。 3.网络的缺陷。因特网的共享性和开放性使网上信息安全存在先天不足,因为因特网最初的设计考虑是该网不会因局部故障而影响信息的传输,但它仅是信息高速公路的雏形,在安全可靠、服务质量、带宽和方便性等方面存在着不适应性。 4.软件的漏洞或“后门”。1999年底保加利亚软件测试专家发现微软网络浏览器IE存在安全漏洞,它可以使不怀好意的网站管理人员入侵访问者的计算机文件,随后微软公司承认了这一事实。 5.人为的触发。基于信息战和对他国监控的考虑,个别国家或组织有意识触发网络信息安全问题。 二、我国的网络信息安全问题及政策建议 随着世界信息化和经济全球化的迅速发展,我国信息基础设施建设非常迅速。目前已经形成公用网、专用网和企业网三大类别的计算机网络系统,因特网已经覆盖200多个城市,并有3000多个政府数据库和1万多个企业数据库与该网连接。相应地,网络信息安全亦存在着相当大的隐患。1999年国家权威部门对国内网站安全系统测试结果表明,不少单位计算机系统都存在着安全漏洞,随时可能被黑客入侵。为更有效地保护我国的网络信息安全,应加强以下几个方面工作。 1.注重对黑客入侵的有效防范。针对我国已有3000多个政府数据库和1万多个企业数据库已与因特网连接,以及上网用户和连网计算机数目飞速增长的现实,应确实加强网络信息安全保护工作。对党政信息网和重要部门信息网应考虑加强技术安全保卫,诸如网络入侵预警、处理与防范工作等;对企业可考虑采取一定措施鼓励其采取给操作系统和服务器加装补丁程序,经常对网络进行扫描及其它相应措施,完善网络信息安全保护体系。

智能卡安全问题及其对策分析演示教学

智能卡安全问题及其对策分析 在信息化高速发展的今天,“智能卡”这个词在我们的日常生活中已随处可见.智能卡在中国的发展速度十分迅猛,目前在我国, IC卡已在众多领域获得广泛应用,并取得了初步的社会效益和经济效益。2000年,全国IC卡发行量约为2.3亿张,其中电信占据了大部分市场份额。公用电话IC卡1.2亿多张,移动电话SIM卡超过4200万张,其它各类IC卡约6000万张。2001年IC卡总出货量约3.8亿张,较上年增长26%;发行量约3.2亿张,较上年增长40%。从应用领域来看,公用电话IC卡发行超过1.7亿张,SIM卡发行5500万张,公交IC 卡为320万张,社保领域发卡为1400万张,其它发卡为8000万张。智能卡市场呈现出以几何级数增长的态势,智能卡以其特有的安全可靠性,被广泛应用于从单个器件到大型复杂系统的安全解决方案。然而随着智能卡的日益普及,针对智能卡安全漏洞的专用攻击技术也在同步发展。分析智能卡面临的安全攻击,研究相应的防御措施,对于保证整个智能卡应用系统的安全性有重大的意义。本文首先分析了目前主要的智能卡攻击技术,并有针对性地提出相应的安全设计策略。 智能卡是将具有存储、加密及数据处理能力的集成电路芯片镶嵌于塑料基片上制成的卡片,其硬件主要由微处理器和存储器两部分构成,加上固化于卡中的智能卡操作系统(COS)及应用软件,一张智能卡即构成了一台便携和抗损的微型计算机。智能卡的硬件构成包括:CPU、存储器(含RAM、ROM 和EEPROM 等)、卡与读写终端通讯的I/O 接口以及测试与安全逻辑,如图1 所示。作为芯片核心的微处理器多采用8 位字长的CPU(更高位的CPU 也正在开始应用),负责完成所有运算和数据交换功能。卡内的存储器容量一般都不是很大,其中,ROM 中固化的是操作系统代码及自测程序,其容量取决于所采用的微处理器,典型值为32 KB;RAM 用于存放临时数据或中间数据,例如短期密码、临时变量和堆栈数据等,容量通常不超过1 KB;EEPROM 中则存储了智能卡的各种应用信息,如加密数据和应用文件等,有时还包括部分COS 代码,容量通常介于2 KB 到32 KB 之间,这部分存储资源可供用户开发利用。 智能卡操作系统COS 的主要功能是控制智能卡和外界的信息交换,管理智能卡内的存储器并在卡内部完成各种命令的处理。卡中的数据以树型文件结构的形式组织存放。卡与终端之间通过命令响应对的形式交换信息。 CPU 与COS 的存在使智能卡能够方便地采用PIN 校验、加密技术及认证技术等来强化智能卡的安全性,但这并不意味着智能卡是绝对安全的。在智能卡的设计阶段、生产环境、生产流程及使用过程中会遇到各种潜在的威胁。攻击者可能采取各种探测方法以获取硬件安全机制、访问控制机制、鉴别机制、数据保护系统、存储体分区、密码模块程序的设计细节以及初始化数据、私有数据、口令或密码密钥等敏感数据,并可能通过修改智能卡上重要安全数据的方法,非法获得对智能卡的使用权。这些攻击对智能卡的安全构成很大威胁。 对智能卡的攻击可分3 种基本类型:逻辑攻击、物理攻击和边频攻击。下面就这3 种攻击技术的具体实施方式加以分析。逻辑攻击技术分析:逻辑攻击的主要方法是对处理器的通信接口进行分析,以期发现智能卡协议、密码算法及其实现过程中所潜藏的逻辑缺陷,包括潜藏未用的命令、不良参数与缓冲器溢出、文件存取漏洞、恶意进程、通信协议和加密协议的设计与执行过程等。逻辑攻击者在软件的执行过程中插入窃听程序,利用这些缺陷诱骗卡泄露机密数据或允许

北邮java智能卡实验报告实验三电子钱包(一)

智能卡技术实验报告 学院:电子工程学院 班级:2011211204 学号:2011210986 姓名:

实验三 Java卡电子钱包程序 一、实验目的 建立Java卡电子钱包程序,并进行java卡程序的编译和调试 二、实验设备 PC机、智能卡读卡器、Java卡 三、实验内容 1、建立一个JavaCard工程 2、编写电子钱包应用代码 3、使用卡模拟器对应用代码进行编译调试 4、使用Java卡对应用代码进行编译调试 四、实验设计 1、实验说明 设计一个电子钱包小应用程序,应该至少能够实现以下功能:电子钱包的安装、选择与撤销选择、存款、借款、获取钱包余额以及身份验证。 2、流程图绘制 A、总体框图

B、存款模块图

C、消费模块图 D、PIN验证模块图

E、查询余额模块图 五、关键代码部分 A、PIN的次数判断 public boolean select(){ //在选择钱包应用之前,对pin可尝试次数进行判断,若可尝试次数为零,即钱包已锁定,则该钱包应用不能被选择 if(pin.getTriesRemaining()==0) return false; return true; } public void deselect(){ //当钱包应用被取消选择是,将pin的状态清空为初始值 pin.reset(); }

B、APDU入口 public void process(APDU apdu) { byte[] buffer=apdu.getBuffer();/*APDU对象为JCRE临时入口点对象,它可以被任何应用所访问,负责传递终端 发送的APDU命令。通过APDU.getBuffer()命令即可以得到APDU对象的通信缓冲区, 即APDU命令数组*/ buffer[ISO7816.OFFSET_CLA]=(byte)(buffer[ISO7816.OFFSET_CLA]&(byt e)0xFC);//判断命令头是否正确 if((buffer[ISO7816.OFFSET_CLA]==0)&&(buffer[ISO7816.OFFSET_INS]== (byte)(0xA4))) return;//若为select命令,则直接返回,不做其他操作 if(buffer[ISO7816.OFFSET_CLA]!=Wallet_CLA) ISOException.throwIt(ISO7816.SW_CLA_NOT_SUPPORTED);/*若为其他命令,则判断命令CLA和INS是否能为钱包应用所支持, 若为支持范围外的其他值,则返回对象的错误状态字*/ switch (buffer[ISO7816.OFFSET_INS]) { case GET_BALANCE: getBalance(apdu); return; case DEBIT: debit(apdu); return; case CREDIT: credit(apdu); return; case VERIFY: verify(apdu); return; default: ISOException.throwIt(ISO7816.SW_INS_NOT_SUPPORTED); } } C、存款模块 private void credit(APDU apdu){ if(!pin.isValidated()) ISOException.throwIt(SW_PIN_VERIFICATION_REQUIRED);//钱包应用鉴权

国家网络空间安全技术研究方向

网络与系统安全防护技术研究方向 1.1网络与系统安全体系架构研究(基础前沿类) 研究内容:针对网络大规模更新换代所面临的安全可信和管理问题,面向开放和互通的国家网络管理,研究网络和系统安全体系结构,重点研究以IPv6网络层的真实可信为基础的网络安全管理体系结构、关键机制和关键应用。针对未来多层次、动态、异构、差异度巨大的无线接入环境,研究新型无线网络安全接入管理机制。针对国际上新型网络与系统体系结构的发展,如软件定义网络和系统、网络功能虚拟化、命名数据网络和系统等,对其安全问题和安全机制进行前沿探索研究。 考核指标:提出IPv6网络安全管理体系结构中的信任锚点、真实可信的网络定位符和标识符机制,并制定国际标准;基于上述安全可信基础,提出兼顾国际开放互通与国家安全管理的IPv6网络安全体系结构,通过安全威胁模型检验该体系结构的安全性。提出IPv6安全管理体系结构下的关键机制,至少包括:兼顾用户隐私性、可验证性和可还原性的可信标识符认证、管理、追溯与审计机制,分级管理机制,网络监控和灵活路由机制等。完成一套IPv6安全管理体系结构、关键机制和关键应用的软硬件原型系统。基于国际学术网络合作、国内主干网、园区网(校园网或企业网),对上述原理机制和原型系统进行跨国、自治系统间、自治系统内、接入子网等多层次网络的试验验证。提出新型无线网络安全接入管理机制,研究适用在多维、异构的无线有线一体化融合网络中的信任锚点、真实可信的网络定位符和标识符机制,实现上述一体化融合网络的网络层真实可信;支持软件定义无线电,支持最新IEEE 802.11ac或802.11ax等新型无线接入技术;支持移动终端在至少2种无线网络间的安全接入选择、可信透明移动。提出SDN/NFV等新型组网技术和NDN等未来互联网体系下的安全可信问题的解决方案,提出并解决能够支持SDN/NFV和未来网络体系结构的可编程网络基础设施的安全问题,提出相关计算系统中的安全可信问题解决方法。完成安全体系结构相关国际标准3项以上,并获国际标准组织(IETF、ITU、IEEE等)立项或批准;申请国家发明专利15项以上。原理机制和原型系统需通过一定规模的真实网络试验验证,至少包括10个关键应用、10万IPv6用户。 1.2 面向互联网+的云服务系统安全防护技术(重大共性关键技术类) 研究内容:针对体系架构、关键技术、防护系统研制等方面开展云服务系统纵深安全防护技术研究。重点研究可定义、可重构、可演进的云服务安全防护体系架构;研究分析用户和业务安全等级差异,实现高效灵活的安全服务链和安全策略按需定制;研究专有安全设备硬件解耦技术,实现安全资源弹性扩展与按需部署;研究云数据中心内生安全机理,突破软件定义动态异构冗余、主动变迁等关键技术,实现对未知漏洞和后门威胁的主动防御;实现云环境虚拟密码服务模型构建,密码服务资源动态调度,密码资源安全迁移及防护等关键技术;研究虚拟资源主

浅谈数据库安全技术研究

浅谈数据库安全技术研究 发表时间:2009-02-11T15:56:13.560Z 来源:《黑龙江科技信息》2008年9月下供稿作者:田丹刘申菊 [导读] 针对目前可能存在的威胁数据库安全性的各类风险,结合实例展开对于数据库安全技术研究。 摘要:从数据库安全性的基本概念入手,在其安全体系的基础上,针对目前可能存在的威胁数据库安全性的各类风险,结合实例展开对于数据库安全技术研究。 关键词:数据库安全性;安全体系;风险 引言 随着计算机网络技术的发展,越来越多的人们开始使用网络传送和共享数据,这不仅方便了用户,同时提高了数据的利用率。与此同时,数据在网络中传送的安全性以及保存这些数据的数据库的安全性也逐渐成为研究的热点。下面结合数据库安全体系的构成,分析各种潜在的安全威胁,结合实例进行对于数据库安全技术的研究。 1 数据库安全性概念及安全体系 数据库安全性是指保护数据库以防止非法用户的越权使用、窃取、更改或破坏数据。数据库安全性涉及到很多层面,例如SQL Server 数据库的安全性包括自身的安全机制、外部网络环境、操作人员的技术水平等。因此,数据库的安全性可以划分为三个层次:网络系统安全:这是数据库的第一个安全屏障。目前网络系统面临的主要威胁有木马程序、网络欺骗、入侵和病毒等。操作系统安全:本层次的安全问题主要来自网络内使用的操作系统的安全。例如目前通用的操作系统Windows 2003 Server主要包括:操作系统本身的缺陷;对操作系统的安全配置,即相关安全策略配置;病毒的威胁三个方面。 数据库管理系统安全:根据采用的数据库管理系统的不同采用的安全设置方法不同。针对SQL Server 2000可以由数据库管理员将数据库用户分类,不同的用户有不同的访问权限;也可以采用视图的方法进行信息隔离,防止用户对基本表的操作;同时要定期进行数据库备份操作,防止由于系统问题导致的数据丢失。 这三个层次构筑成数据库的安全体系,与数据安全的关系是逐步紧密的。 2 数据库系统面临的主要风险 数据库系统在实际应用中存在来自各方面的安全风险,最终引起各类安全问题。数据库系统的面临的安全风险大体划分为: 2.1操作系统的风险 数据库系统的安全性最终要靠操作系统和硬件设备所提供的环境,如果操作系统允许用户直接存取数据库文件,则在数据库系统中采取最可靠的安全措施也没有用。 2.2管理的风险 主要指用户的安全意识,对信息网络安全的重视程度及相关的安全管理措施。 2.3用户的风险 主要表现在用户账号和对特定数据库对象的操作权限。 2.4数据库管理系统内部的风险 3 数据库安全技术研究 针对以上存在的各种风险,提出以下几种防范技术。 3.1数据加密技术 对数据库中存储的重要数据进行加密处理,例如采用MD5 算法,以实现数据存储的安全保护。数据加密以后,在数据库表中存储的是加密后的信息,系统管理员也不能见到明文,只有在执行了相应的解密算法后,能正确进入数据库中,大大提高了关键数据的安全性。 3.2用户认证技术 用户认证技术是系统提供的最外层安全保护措施。对于SQL Server 2000提供了两种用户验证方式,即Windows用户身份验证和混合模式验证。通过用户身份验证,可以阻止未授权用户的访问,而通过用户身份识别,可以防止用户的越权访问。 3.3访问控制技术 访问控制是数据库管理系统内部对已经进入系统的用户的控制,可防止系统安全漏洞。通常采用下面两种方法进行:(1)按系统模块对用户授权 每个模块对不同用户设置不同权限,如用户A无权进入模块A、仅可查询模块B,用户B可以进入模块A,可以执行统计操作等。系统模块名、用户登录名与用户权限可保存在同一数据库中。 (2)将数据库系统权限赋予用户 用户访问服务器时需要认证用户的身份、确认用户是否被授权。通常数据库管理系统主要使用的是基于角色的访问控制。 3.4采取必要的防注入技术 目前流行的SQL Injection即“SQL注入”,就是利用某些数据库的外部接口把用户数据插入到实际的数据库操作语言当中,从而达到入侵数据库乃至操作系统的目的。典型的利用SQL Injection的攻击方法如下。 例如:使用用户名为tt,密码为rr的一个普通用户访问本地网站,其主机头为https://www.doczj.com/doc/221924283.html,,端口号为8081,在地址栏输入:https://www.doczj.com/doc/221924283.html,:8081/index.asp?username=tt&password=rr 返回“成功登录”。说明输入了正确的用户和密码,如果输入密码错误,如下: https://www.doczj.com/doc/221924283.html,:8081/index.asp?username=tt&password=yy 将返回“登录失败”。此时用户无法进入系统。但是,如果输入如下的数据: https://www.doczj.com/doc/221924283.html,/index.asp?username='tt' —— '&password=yy 则返回“成功登录”,即不需要密码可以直接进入系统。 以上就是SQL注入的应用,因为“——”在SQL Server中代表注释符,若针对系统默认的管理员用户Administrator,输入

JavaCard简介(中文版)

1、简介 Java Card 3 平台由两个版本组成Classic Edition和Connected Edition: Classic Edition是一个基于 2.2.2版本的前端兼容的演化平台,针对资源有限的设备仅支持applet-based应用。如果你只对Classic Edition中提供的功能感兴趣的话就可以忽略Connected Edition。 Connected Edition提供了一个显著增强的运行时环境和一个新的虚拟机。包含了一些新的面向网络的应用,例如提供了针对web应用的Servlet APIs,并且支持一些新的applet功能增强。一个Connected Edition的应用可能会用到Classic Edition提供的特性,因此这两个版本的规范应用一起使用。 1.1动机 Java Card技术使得用Java编程语言编写的程序可以运行在智能卡和其他小的资源紧张的设备上。开发人员可以用标准的软件开发工具和环境来编译和调试程序,然后把程序转化成能被Java Card支持的格式。Java Card上的应用程序被称为Applet,或者更明确的称为Java Card Applet 或者Card Applet(为了和浏览器Applets做区分)。 Java Card技术使得用Java语言编写的程序可以在智能卡上运行,然而如此小的设备远不足以支持Java平台的全部功能。因此,Java Card平台仅仅支持一个被仔细挑选,定制的Java平台属性的的子集。这个子集使得写的程序在小设备上有更好适应性,并且保持了Java语言的面向对象的特性。 一个简单的途径是定义一个代码可以在所有Java Card环境下移植的Java虚拟机的子集。结合JVM的子集规定和信息,智能卡提供商可以在Java Card规范上构建自己的工具。虽然手段是可行的,但有一个严重的缺点,目标平台将会丧失字节码的移植性。 Java平台的规范允许Java的代码在所有Java平台上移植,Java的“写一次,所有地方运行”的属性或许是平台的最重要的特性。部分Java Card平台创建的工作就是为了把这种代码移植性带到智能卡行业。在世界上有千百万的不同处理器和配置的智能卡,为支持软件派发所支持的多种代码格式的代价是不能承受的。 这个Java Card的虚拟机规范(版本3.0.1Classic Edition)是提供代码移植性的关键。理解这个规范做了什么的一个方法是和Java平台的对应副本进行比较。Java虚拟机规范定义了一个引导和按指令集执行Java类文件的引擎。类文件是Java体系结构里面核心的部分,并且是代码移植性的支柱。Java Card的虚拟机规范(版本3.0.1Classic Edition)仍然定义了一个实现了Java Card平台代码移植性的文件格式:CAP文件格式是软件被导入到实现了Java Card虚拟机规范的设备的格式。 1.2The Java Card Virtual Machine Java Card虚拟机的角色在Java Card平台的生产和开发流程下很好理解。Java Card虚拟机和若干个组件组成一个Java Card系统,一个Converter(转换器),一个终端安装工具,和一个运行在设备上的安装程序。如下图1-1和1-2。

相关主题
文本预览
相关文档 最新文档