孔明大衛(wèi)
【摘要】 隨著互聯(lián)網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,網(wǎng)絡(luò)的安全問題引起了人們的廣泛關(guān)注。而Java技術(shù)一直伴隨著互聯(lián)網(wǎng)的發(fā)展而發(fā)展,進而在一定的范圍內(nèi)取得了廣泛的應用。所以,Java技術(shù)的安全問題也同樣引起了人們的關(guān)注。因此,基于這種情況,本文對Java技術(shù)的概念及相關(guān)問題進行了闡述,并在此基礎(chǔ)之上從Java技術(shù)的安全體系結(jié)構(gòu)、安全特性這兩方面對Java技術(shù)的安全問題進行了研究,進而為關(guān)注這一話題的人們提供參考。
【關(guān)鍵詞】 Java技術(shù) 安全問題 研究
引言:自進入20世紀以來,互聯(lián)網(wǎng)技術(shù)在國內(nèi)取得了迅速的發(fā)展。而隨著互聯(lián)網(wǎng)絡(luò)的規(guī)模的增大,互聯(lián)網(wǎng)的網(wǎng)絡(luò)安全管理也變的更加困難,進而為互聯(lián)網(wǎng)絡(luò)的穩(wěn)定性和可用性帶來了一定的影響。而Java技術(shù)不僅在互聯(lián)網(wǎng)絡(luò)的發(fā)展過程中得到了廣泛的應用,其在安全管理方面也具有獨特的優(yōu)勢。所以,做好Java技術(shù)的安全問題的研究,從而使該技術(shù)成為加強網(wǎng)絡(luò)安全管理的技術(shù),才能夠進一步促進互聯(lián)網(wǎng)絡(luò)技術(shù)的發(fā)展,進而為人們的日常生活提供更多便利。
一、Java技術(shù)概述
早于上世紀90年代,Java技術(shù)就由Sun公司所推出。作為一種可以實現(xiàn)不同平臺程序設(shè)計的計算機語言,Java技術(shù)具有通用性強和可移植的特性,所以一經(jīng)推出就受到了很多互聯(lián)網(wǎng)絡(luò)用戶的喜愛。就現(xiàn)階段而言,Java技術(shù)包括了Java虛擬機、編程語言、程序接口語言和類文件四個部分。而在安全性方面,Java技術(shù)也有著一定的設(shè)計考量,進而使Java技術(shù)一度成為了推動互聯(lián)網(wǎng)絡(luò)發(fā)展的重要力量。不同于其他計算機語言形式,Java語言具有獨特的可移植特性,因此具有較好的面向?qū)ο笮?、可移植性、支持多線程、程序設(shè)計簡潔的特點,可以同時進行多個系統(tǒng)平臺的兼容[1]。另外,Java技術(shù)具有規(guī)避惡意代碼的安全策略,所以可以進行互聯(lián)網(wǎng)的安全性的維護。
二、Java技術(shù)的安全問題
2.1 Java的安全體系結(jié)構(gòu)
就目前而言,Java技術(shù)的安全體系結(jié)構(gòu)較為分散,并不具有集中的安全系統(tǒng)。所以,Java技術(shù)對其安全特性的實現(xiàn)是依靠動態(tài)類型檢查、字節(jié)碼校驗和運行時間的檢查來完成的。而從Java技術(shù)的安全體系結(jié)構(gòu)的發(fā)展情況來看,Java技術(shù)的發(fā)展經(jīng)歷的三個階段,既JDK1.0、JDK1.1和JDK1.2。在這三個階段,Java的安全實現(xiàn)機制都得到了完善和提升。但是,無論是哪一個階段,Java的安全實現(xiàn)機制內(nèi)容都是一致的。首先,Java語言具有類型安全和容易使用的特點。其次,無論是編譯器還是字節(jié)碼校驗器,都對Java字節(jié)碼的安全性有所要求。具體來說,就是只有合法的字節(jié)碼才能正常的運行。再者,Java的類裝載器進行本地命名空間的定義,從而保證了不被信任的Applet無法進行其他程序運行的干擾[2]。另外,只有通過安全管理器的檢查,JVM才能進行系統(tǒng)對重要系統(tǒng)資源的訪問的調(diào)停。
2.2 Java的安全特性
Java的安全特性有兩個,既類型安全和語義分析。其中,類型安全是實現(xiàn)Java安全的重要因素。而在類型安全中,需要考慮的問題則有類型檢查和類型安全。具體來說,就是計算機中的每個區(qū)域都存有Java對象,而且每個對象有與之相應的標簽,進而使對象與其允許的操作聯(lián)系起來,而這種方法就是動態(tài)類型檢查。而靜態(tài)類型檢查則主要是進行相應程序的考查的操作,常常應用在程序的載入的過程中。另外,類型混亂是比較常見的Java系統(tǒng)的安全問題。具體來說,就是Java系統(tǒng)往往將對象當做是內(nèi)存中的模塊,所以,所有對象的數(shù)據(jù)域就是被分配的內(nèi)存的排列組合。而一旦要進行某個對象的調(diào)用時,則需要根據(jù)對象的類型標簽,既目標地址的指向指針來進行對象的調(diào)用。所以,為了避免類型的混亂,從而確保Java系統(tǒng)的安全性,首先就要做好指針的標記。而語義分析作為Java技術(shù)的另一個安全特性,其分析可以從公共變量、被保護成員變量和Java包三個方面來進行。首先,由于Java的公共變量值能夠被任意的Java方法所改寫,所以公共變量中的任何存儲數(shù)據(jù)都有安全上的風險。其次,由于被保護成員變量能夠進行這一變量的類的創(chuàng)造,所以就可以進行這個類的所有子成員的訪問。所以,程序代碼可以通過聲明自己是包的成員而獲得被保護變量的訪問權(quán),進而使Java系統(tǒng)承擔一定的風險[3]。再者,Java包的模板不能嵌套,所以程序員并不能限制其對安全敏感組件的可見性。所以,就目前來看,Java系統(tǒng)只能進行變量的訪問權(quán)的控制,卻不能進行變量可見性的控制。
三、結(jié)論
總而言之,隨著我國互聯(lián)網(wǎng)絡(luò)技術(shù)的發(fā)展,Java技術(shù)的應用將引起更多的人的關(guān)注。所以,對Java技術(shù)的安全問題進行研究,從而掌握Java技術(shù)的安全特性,并做好Java技術(shù)的系統(tǒng)的開發(fā),才能進一步使Java技術(shù)得到廣泛的應用,進而解決我國互聯(lián)網(wǎng)絡(luò)的安全問題,促進互聯(lián)網(wǎng)技術(shù)取得進一步的發(fā)展。因此,本文對Java技術(shù)的安全問題進行的研究,對于促進互聯(lián)網(wǎng)絡(luò)的發(fā)展有著重要的意義。
參 考 文 獻
[1]陸鐘石.Java安全體系結(jié)構(gòu)設(shè)計與實現(xiàn)[D].北京郵電大學,2010.
[2]韓雅潔.基于JAVA的安全訪問控制技術(shù)的研究[J].城市地理,2014,20(01):194-195.
[3]劉帥.Java技術(shù)在網(wǎng)絡(luò)安全管理中的應用研究[J].電子世界,2014,03(01):170.