


全文预览已结束
付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java软件的加密方法及应用探讨 摘要:随着Java技术的广泛应用和发展,对于Java应用程序的安全问题逐步得到重视,相关安全技术也逐步改进中。文章主要探讨了Java软件的加密方法及应用,以供参考。 下载 关键词:Java软件;加密;方法 中图分类号:TP311.52 文献识别码:A 文章编号:1001-828X(2016)005-000-01 Java的安全性都是借助手动安装安全管理器执行安全措施,并非自动运行。而安全措施都是都是依赖于代码的来源进行授权,根据代码来源设定相应的资源访问权限,有助于保证应用程序的安全运行。Java的安全性是Java语言的重要组成部分,它自身内置多种安全特性,因此要进行合理加密,方可有效保证Java应用程序的安全。 一、 Java特性分析 (一)操作相对简单 Java操作相对简单,只要具备C语言基础,稍加学习基本就可以掌握操作方法。而且其在设计过程中所面向的对象是数据和数据接口,可以实现即插即用,其在使用过程中采用类机制,为系统提供一类对象的原型,在继承以及承载机制的支持下可以对父类进行重新定义,得到一个新的子类,这一过程中实际上就是代码复用过程。 (二)对内存进行自动管理 可以对内存进行自动管理,对于一些无用内存直接回收,开发工作因此被简化。最初所使用的垃圾回收技术显然不具备这种优势,由于占用系统过多资源导致整个系统运行速度都受到影响,而Java对这种回收技术进行升级,定期对系统内的单元进行检查,并自动回收一些无用单元,程序的稳定性明显提升。 (三)稳定性和安全性 非法访问内存使我们在使用程序过程中会经常遇到的问题,实际上就是程序指针的出现错误,而Java就可以解决这一问题,因为其并不使用指针算术法,而是将真正的数组提供给程序。同时,在对象类型转换过程中,指针不会替换数组中的任意数,因此编程工作量大大减少,运行错误率降低,系统稳定性明显提升。另外,Java设计的最终目标是为设计者提供一个可靠的计算环境,因此安全性是非常重要的,要保证其在使用过程不受到病毒侵袭。验证技术的使用就可以满足这种安全需要,该技术的基础为公钥加密,对于各类安全策略的实施具有重要意义。 (四)解释执行 如果机器已经安装解释器,其就可以发挥自身的解释功能,实现字节代码的执行,可以不必对其进行重新编译。解释器具有向上兼容的特征,就是说低版本可以在高版本环境下正常运行,但是如果将高版本放在低版本环境下运行,就有可能出现不兼容现象。同时Java还可以适应跨异构环境,典型特征就是可以实现一次编译、到处运行,只要系统安装Java虚拟机,无论主机以及处理器为何种类型,都不会影响Java的运行,这也是其受到企业青睐的主要原因。使用Java所开发出来的系统几乎可以实现“零移植”,也就是平时我们所说的平滑移植,只要简单修改一下配置文件即可。 二、Java软件的加密方法 (一) BASE BASE是典型对称加密算法,该技术已十分成熟,属于一种属于编码格式的加密方法,是目前最为常用的加密方式,能对Bit字节代码进行加密,能对HTTP环境下的信息进行标识加密,使编码数据不会被人用肉眼所直接看到。例如,在JavaPersistence系统Hibernate中加密方式,就是利用Base将唯一标识符编码加密,使其无法被直接读取。 (二)MD MD加密方法是当前最为广泛使用的杂凑算法之一,加密效果好,且对于保证传输数据的完整性有着显著效果,很多主流软件都利用了MD加密方式。MD在JAVA中的应用能生成与软件相互对应的固定长度的MD值,在使用中需要验证MD值是否一致。MD加密方式具有较强的抗修改性,并且想要伪造MD值数据,获取原数据的MD值也非常困难。在JAVA中的应用,可用于大数据数字前面软件签署秘钥,非常值得推广和应用。 (三)SHA SHA加密安全性和稳定性好,主要适用于数字签名标准里面定义的数字签名算法。该加密方式被需要加密专家研究并完善,其技术已非常成熟,被广泛应用。SHA是生成个位的信息摘要明文,然后在以不可逆的方式将其转为为一段密文,而想要读取数据就要取得一串输入码,进行密文的验证。并且这种加密方式中,生成的密文长度较短、位数固定、管理方便,且不易破解,能大大提高软件安全性。 三、类文件加密方法分析 加密Java类文件可以有效防止其被反编译,保护Java软件的安全,经过加密以后,文件的格式发生变化,特征也与以往有明显不同,即使对其进行反编译,所得到的原代码也是没有价值的。JEC属于扩展平台,其中包含着多种加密算法,而且操作简便;而AES属于一种高级加密算法,前面提到过其具有对称性的特征,加密效率很高,安全性也较好,加密系统中可以将这两种加密方式结合起来使用,提升加密的可靠性。 传统的DES加密算法之所以被取代,是因为其只包含了56位秘钥,随着计算机技术的提高,系统的计算能力明显增强,完全可以凭借其强大的计算能力将其破解,而其本身结构又比较紧凑,一旦修改一些细节,整体性就会被破坏。AES加密算法就弥补了以上不足,其采用128、192及256比特的秘钥,具体算法原理如下:加密秘钥在扩展算法的计算下得到轮秘钥,其总位数等于分组长度与轮数的乘积再加上1。这种算法有一个优势就是即使扩展算法被修改,其影响的也只是与其对应部分的加密工作,其他部分并不会受到影响,不仅不会破坏整体性,算法的扩展性也大大增强。 但是加密组件的工作并不仅仅是完成类文件的加密,同时还要对加密秘钥进行二次加密,这一环节是非常有必要的,因为AES的高安全性是建立在加密秘钥安全的前提下,秘钥中同时包含了加密和解密,一旦秘钥被窃取,之前所有工作就都失去了意义。对秘钥进行二次加密时,采用字符串变换函数的方式,按照一定的规律对其进行转换,转换以后的字符串是没有任何意义的,虽然其复杂程度不高,但是可以满足实际需要。 类文件经过筛选以后,在加密系统的作用下完成加密工作,这一过程需要筛选器提供支持,其会生成一种特定规则作为加密条件,如果其有加密的需要,AES加密组件就会完成加密工作,如果其没有加密的需要,则原class文件就会被保存下来。如果秘钥和密码相同,在对数据进行加密和解密时,要求密码对象采用一样的方式,将Cipher初始化,然后读取类文件数据,明确哪些数据是需要加密的,然后就正式开始加密工作,加密完的文件会被自动保存,将原始类文件覆盖掉。 四、结束语 综上所述,Java语言是目前较为常用的软件开发语言,编程相对简单,软件开发周期短,成本低。但是,由于Java语言的特点,导致Java软件易
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民法学江平第三十章课件
- 华金资本:新质生产力的实践
- 民族风土人情课件教学
- 自媒体:新质生产力的新赛道
- 建筑施工企业新质生产力的场景
- 施工企业评价标准讲解
- 师德师风考核奖惩方案
- 2025年血液科淋巴瘤诊断治疗进展考核答案及解析
- 工程力学 课件 挠度和转角
- 2025年心血管内科冠心病患者心电图分析考试卷答案及解析
- 创新社区治理新路径
- 2025-2030中国智慧城市建设项目投资规模与运营效益评估报告
- 校园常见传染病防控知识课件
- 百师联盟2025-2026学年高三上学期开学摸底联考化学试卷
- 短波无线电通信原理课件
- 2025贵阳市菜篮子集团有限公司招聘11人笔试备考题库及答案解析
- (2025年标准)蔬菜订单收购协议书
- 放射卫生知识培训内容描述课件
- 2025云南普洱市融媒体中心招聘下属公司工作人员4人考试参考题库附答案解析
- 2025年锂电池隔膜行业规模分析及投资前景研究报告
- 2025-2026学年人教版(2024)初中物理八年级上册教学计划及进度表
评论
0/150
提交评论