- Java加密与解密的艺术(第2版)
- 梁栋
- 1170字
- 2023-03-03 19:25:45
1.5 小结
大家都知道安全问题很重要,却不能很好地处理它。每当安全事故发生后,我们才想起要亡羊补牢,但往往为时已晚。在对安全现状做了一些简要总结后,我们发现身边的安全隐患无处不在,PDA里存的年度报表、好友的聊天信息、网上交易的银行卡号以及轻易以明文存储的口令信息等,都可能被盗取、泄露和篡改。
通过安全技术目标的定义,我们知道安全技术目标包含保密性、完整性、可用性、可靠性和抗否认性。这五项技术目标基本上概括了我们所遇到的安全隐患问题,那么我们是否有一整套可行的对策呢?安全体系结构对这个问题给予了相当权威的理论支撑。
OSI参考模型在原有网络通信七层结构的基础上构建了OSI安全体系结构,它由五类安全服务和八类安全机制构成。其中,五类安全服务以安全技术目标为主旨,包括认证(鉴别)服务、访问控制服务、数据保密性服务、数据完整性服务和抗否认性服务;八类安全机制针对五类安全服务做了详尽的补充,包括加密机制、数字签名机制、访问控制机制、数据完整性机制、认证机制、业务流填充机制、路由控制机制和公证机制。
随着卫星和无线网络的出现,原有OSI参考模式已不能应对这些网络的安全问题,此时TCP/IP出现了,但是安全问题也随即突出。为了解决这些安全问题,TCP/IP安全体系结构诞生了,包括网络接口层安全、网络层安全、传输层安全和应用层安全四项内容。其中,网络接口层安全和网络层安全依靠物理硬件来完成,传输层安全和应用层安全通过SSL/TLS+HTTP协议(也就是HTTPS协议)来完成。
通过密码学,我们找到了应对企业应用安全问题的银弹,在Java EE企业应用中也找到了相应的支持。
虽然通过用户名和口令的方式来控制用户访问是最简单,甚至是最简陋的方法,但它仍是企业安全应用的第一道屏障。我们可以合理使用相应的访问控制理论来提高对用户访问控制的安全性。例如基于用户组与用户角色的访问控制方式。在密码学的支持下,我们可以对数据进行加密和解密,确保数据的保密性,也可以通过信息摘要的方式对数据完整性进行验证。单向加密算法可以对数据完整性进行验证,常用算法如MD5、SHA。对称加密算法可以用于数据加密存储,常用算法如DES。非对称加密算法可用于数据加密传输,常用算法如RSA。我们制定出了相应的算法,同时也需要相应的载体。数字证书作为一种凭证、一种载体,可以用于数字加密解密、数字签名验证、自身有效性验证,尤其是当数字证书结合HTTPS协议应用于电子商务后,极大地提高了网络通信的安全性。
随着计算机技术的不断发展,新的存储方式、新的网络结构将层出不穷,相应的商务应用环节也会发生翻天覆地的变化,紧随其后的安全问题也会“穷追不舍”。虽然我们可以通过各种技术相应提高企业应用的安全性,但这些技术统统基于密码学理论。同样,密码学并不是固若金汤般的坚不可摧,密码学的破解每一天都有发生。我们应当合理使用各种安全技术,使其有机结合、优势互补,确保企业应用具有更高的安全性。