为了保证软件的安全性,Java采用了那些措施?

为了保证软件的安全性,Java采用了那些措施?,第1张

Java的安全性主要体现在以下几个方面:

使用引用取代了指针,指针的功能强大,但是也容易造成错误,如数组越界问题。

拥有一套异常处理机制,使用关键字 throw、throws、try、catch、finally

强制类型转换需要符合一定规则

字节码传输使用了加密机制

运行环境提供保障机制:字节码校验器->类加载器->运行时内存布局->文件访问限制

不用程序员显示控制内存释放,JVM 有垃圾回收机制

程序加密?你说的是代码加密还是数据加密。我都说一下吧。

Java代码加密:

这点因为Java是开源的,想达到完全加密,基本是不可能的,因为在反编译的时候,虽然反编译回来的时候可能不是您原来的代码,但是意思是接近的,所以是不行的。

那么怎么增加反编译的难度(阅读难度),那么可以采用多层继承(实现)方式来解决,这样即使反编译出来的代码,可读性太差,复用性太差了。

Java数据加密:

我们一般用校验性加密,常用的是MD5,优点是速度快,数据占用空间小。缺点是不可逆,所以我们一般用来校验数据有没有被改动等。

需要可逆,可以选用base64,Unicode,缺点是没有密钥,安全性不高。

而我们需要可逆而且采用安全的方式是:对称加密和非堆成加密,我们常用的有AES、DES等单密钥和双密钥的方式。而且是各种语言通用的。

全部手动敲字,望采纳,下面是我用Javascript方式做的一系列在线加密/解密工具:

http://www.sojson.com/encrypt.html


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8136144.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存