英文原文:It's time to rewrite Java from scratch, security expert says
如果说最近的 Java 暴露出来的安全缺陷能给我带来什么警示,那就是现在是到了 Oracle 公司重写这种语言的时候了。
这是杀毒软件 Bitdefender 的缔造者、资深软件威胁分析师、罗马尼亚人 Bogdan Botezatu 做出的结论,由于本周发现的最新的 java 缺陷,他估计会导致多于 1 亿台计算机暴露在黑客攻击的危险之中。
按 Botezatu 的说法,Oracle 的 Java 代码已经处于失控之中,这就是为什么严重的安全问题不断的出现在这种语言软件中的原因。
“Oracle 需要整理出 Java 的一些核心组件,彻底重写它们,”在一次访谈中他这样说。
一些成熟的产品,比如 Java 或 Adobe 公司的几款软件,在过去的很长的时间里已经被无数人的手动过。“这些产品变得如此庞大,被如此多的程序员维护过,导致这些软件的出品人基本上对这些软件里应该有的东西失去了控制。”Botezatu 说。
与软件缺陷的战争
Oracle 最近在对 Java 漏洞进行修补的结果证实了这位罗马尼亚安全专家的分析。
例如,2012 年 8 月份在新版的 java7 修订版 7 中,Oracle 修补了 3 个安全漏洞。就在这些补丁包发布的几个小时后,波兰安全专家、Security Explorations 公司的创始人和 CEO——Adam Gowdiak 发现了一个由这些补丁程序造成的安全漏洞。一些安全专家认为,Java 现在是年老多病,很多功能器官都要依赖其它技术手段来维持工作。
根据 Gowdiak 所说,这种编程语言里最近发现的一个还没有相关补丁包的安全漏洞也同样被认为是 2012 年 10 月份的那次安全升级的补丁包引入的。这些安全补丁包本身就不安全,它们打开了大门让自己暴露在黑客攻击下。
“现在是一个很好的重写 Java 的时机,以此来消除 bug,而不是一层一层的打补丁。”Botezatu 说。
然而,Botezatu 知道这是不可能的。“Oracle 不可能去做一些大的动作,因为这样会影响现有市场上的众多程序,”他补充道。
目前 Oracle 所面对的 Java 开发上的问题是一个所有软件生产商都在面对的问题:如何在不破坏对以前版本兼容性的前提下改进软件。
“你可以看一下 Windows Vista,看看它是如何因为一些客户的在 Windows XP 上的应用不能在 Vista 里运行而不被用户接受的。”Botezatu 解释说。
不管怎样,一些迹象显示,Oracle 真正努力解决 Botezatu 所说的这些问题。在周五,Oracle 宣布,从 9 月份的 Java8 开始,新的版本将以两年一次的频度发布。
鉴于目前安全形势,美国国土安全部建议禁掉浏览器里的 Java,可以通过 Oracle 公司提供的以下这些步骤实现。
相关推荐
Java重写equals同时需要重写hashCode的代码说明,以及如何重写hashCode方法,此代码演示按照effective java书籍说明的重写思路。代码中演示了使用集合存储对象,并且对象作为key,需重写equals和hashCode.
JAVA重写和重载.pdf
23种设计模式实现designpattern书籍代码的重写Java版
10.java方法的重写.zip10.java方法的重写.zip10.java方法的重写.zip10.java方法的重写.zip10.java方法的重写.zip10.java方法的重写.zip10.java方法的重写.zip10.java方法的重写.zip10.java方法的重写.zip10.java方法...
在很多情况下,WEB中进行URL重写一般是使用WEB服务器自身提供的组件。开源项目Url Rewrite Filter ,使用Filter来完成这项工作,从而不依赖于WEB服务器组件。
Java 继承知识点的相关学习。
java代码-使用java解决重写void paint( Graphics g )方法的源代码 ——学习参考资料:仅用于个人学习使用!
我根据我的理解来谈谈Java中重写方法与重载方法的区别。 重写 Java 中重写又叫覆盖,主要是指继承(extends)父类或者实现(implements)接口时将父类或者接口中已经存在的方法进行重新定义。重写的方法在父类...
方法的重载: 同一个类中的多个方法 方法名相同 参数列表不同 方法的重写: 1.不同的类 2.继承|实现 3.方法签名相同
为了让程序员更好地掌握这两种编程语言,重写Java经典100例源码合集成了Python语言版本。这个合集可以让程序员更加深入地理解Java和Python的语法和实现方式,同时还可以比较两种语言在不同场景下的适用性和差异。...
主要总结了java中的重载和重写的区别,供大家理解参考,有问题可以补充
JAVA中的方法重写与方法重载的区别,还算挺详细的
将SOAP传输数据进行加密和压缩,接收方再进行解压缩、分析进行持久化操作
重载与重写的区别,详细描述了java中重载与重写的区别。
使用JavaSwing重写的美化版窗口模板,包括主窗口和登录窗口
实现多人聊天功能。用户昵称登陆既可。张思民《Java程序设计实践教程》4.3节程序的重写。 Netbeans6.7中文版环境下,解压后直接打开项目即可。
java用sax实现修改xml文件内容,util工具包中,包含所需jar文件、测试xml文件、startup.bat文件以及使用说明文档
从HAL层到java应用层重写mini6410 led功能
对Java中方法的重载和重写的具体描述,有利于区分方法的重载和重写