基于ARM平臺的Java智能卡虛擬機研究與實現(xiàn)
發(fā)布時間:2017-03-25 04:13
本文關鍵詞:基于ARM平臺的Java智能卡虛擬機研究與實現(xiàn),由筆耕文化傳播整理發(fā)布。
【摘要】:Java智能卡是一種能夠運行Java程序的智能卡,其以擁有平臺無關特性、支持一卡多用和重用、安全穩(wěn)定等眾多優(yōu)勢正主導著網絡時代智能卡技術的發(fā)展趨勢,也使得該技術成為了智能卡領域的研究發(fā)展熱點。我國智能卡技術雖然正在迅速發(fā)展,但仍處于追趕落后狀態(tài),許多運營商需要花費大量授權費引入國外技術,對我國的生產發(fā)展帶來影響。在此背景下,基于國家自主可控安全技術的戰(zhàn)略需要,與企業(yè)進行產學合作研究具有自主知識產權的Java卡產品將具有較大的現(xiàn)實意義。Java卡虛擬機是實現(xiàn)Java卡應用程序平臺無關性的基礎,負責為指定的硬件平臺解釋執(zhí)行字節(jié)碼,并進行存儲空間的管理和異常處理等工作。本文研究的課題就是在基于ARM微處理器的嵌入式系統(tǒng)上實現(xiàn)一個能夠和Sun公司的Java卡標準兼容的Java卡虛擬機方案。Sun公司提供的Java卡虛擬機規(guī)范只是綱領性文檔,如何在資源十分有限的硬件環(huán)境中既實現(xiàn)Java卡規(guī)范的基本要求,又能盡可能確保系統(tǒng)運行的效率及安全控制是設計與實現(xiàn)Java卡虛擬機時需要研究的主要難點。本文首先基于Java卡的相關規(guī)范對Java卡技術進行了深入系統(tǒng)地分析研究,尤其是Java卡運行環(huán)境與虛擬機的相關規(guī)范和安全控制機制。接著詳細敘述了基于ARM Cortex-M0核硬件平臺的Java卡的軟硬件架構,包括對主控芯片特性和軟件平臺框架的介紹,并著重分析了Java卡虛擬機卡內外模型。隨后在仔細分析了虛擬機功能實現(xiàn)所需模塊和各個模塊之間的交互關系基礎上,著重于設計與實現(xiàn)Java智能卡虛擬機內部的CAP文件解析模塊,寄存器、Java棧、堆等內存管理模塊,以及解釋執(zhí)行模塊和異常處理模塊,并歸納應用程序的格式和開發(fā)流程,同時對與Java卡運行環(huán)境協(xié)同下的安全控制機制進行了設計。在研究現(xiàn)有方案的同時對指令執(zhí)行效率方面進行了研究并給出相應優(yōu)化方案,并在隨后的功能測試中對本方案進行了驗證。此外,本文還在此基礎上研究了Java智能卡的安全性,著重從邏輯攻擊和混合攻擊兩種方式研究了Java智能卡當前存在的安全威脅,并給出相應解決措施。
【關鍵詞】:Java智能卡 虛擬機 解釋器 邏輯攻擊
【學位授予單位】:上海交通大學
【學位級別】:碩士
【學位授予年份】:2015
【分類號】:TP302
【目錄】:
- 摘要3-5
- ABSTRACT5-13
- 第一章 緒論13-19
- 1.1 課題研究背景13-14
- 1.2 課題研究現(xiàn)狀14-16
- 1.2.1 國內外發(fā)展現(xiàn)狀14
- 1.2.2 Java智能卡系統(tǒng)架構14-16
- 1.2.3 Java智能卡虛擬機研究熱點16
- 1.3 課題研究意義16-17
- 1.4 論文主要研究內容及論文結構17-18
- 1.5 本章小結18-19
- 第二章 Java智能卡虛擬機技術基礎19-29
- 2.1 JCRE基本概念及主要功能19-24
- 2.1.1 與外界環(huán)境的通信及數(shù)據(jù)交換19-21
- 2.1.2 Applet安裝功能21-22
- 2.1.3 Applet生命周期控制功能22
- 2.1.4 原子性與事務機制22-23
- 2.1.5 防火墻與對象共享機制23-24
- 2.2 Java智能卡虛擬機基本概念及主要功能24-26
- 2.2.1 卡外轉換器25
- 2.2.2 卡內解釋器25
- 2.2.3 Java卡虛擬機生命周期25-26
- 2.3 Java智能卡關鍵技術26-27
- 2.3.1 存儲管理機制與安全保護機制26
- 2.3.2 卡內安裝器、解釋器26-27
- 2.4 本章小結27-29
- 第三章 基于ARM核的Java智能卡虛擬機分析與設計29-55
- 3.1 Java智能卡總體框架29-34
- 3.1.1 Java智能卡硬件平臺30-32
- 3.1.2 Java智能卡軟件平臺32
- 3.1.3 Java智能卡虛擬機架構32-34
- 3.2 Java智能卡卡外轉換器34-36
- 3.2.1 CAP文件格式35-36
- 3.3 Java智能卡卡內安裝器36-39
- 3.3.1 注冊表創(chuàng)建與維護38
- 3.3.2 組件預處理38-39
- 3.4 寄存器管理模塊39-41
- 3.5 Java棧管理模塊41-45
- 3.5.1 Java棧幀結構41-43
- 3.5.2 空間共享方式的Java棧幀設計43-44
- 3.5.3 Java棧運行機制44-45
- 3.6 堆空間管理模塊45-46
- 3.7 解釋執(zhí)行模塊46-48
- 3.7.1 指令集46-47
- 3.7.2 Java智能卡虛擬機指令的解釋執(zhí)行47-48
- 3.8 異常處理模塊48-49
- 3.9 安全機制的設計49-52
- 3.9.1 原子性操作的設計49-50
- 3.9.2 事務處理的設計50-51
- 3.9.3 共享訪問機制原理51-52
- 3.9.4 防火墻的設計52
- 3.10本章小結52-55
- 第四章 Java智能卡虛擬機的實現(xiàn)55-69
- 4.1 Java卡虛擬機實現(xiàn)所需軟硬件環(huán)境55
- 4.2 卡內安裝器的實現(xiàn)55-60
- 4.2.1 注冊表的實現(xiàn)細節(jié)55-57
- 4.2.2 下載安裝過程實現(xiàn)細節(jié)57-58
- 4.2.3 CAP文件各組件解析實現(xiàn)細節(jié)58-60
- 4.3 寄存器管理模塊的實現(xiàn)60-61
- 4.4 Java棧管理模塊的實現(xiàn)61-62
- 4.5 堆空間管理模塊的實現(xiàn)62-63
- 4.5.1 空間分配機制62-63
- 4.5.2 堆空間管理實現(xiàn)63
- 4.6 指令解釋執(zhí)行模塊的實現(xiàn)63-67
- 4.6.1 指令集的實現(xiàn)63-65
- 4.6.2 解釋執(zhí)行字節(jié)碼的實現(xiàn)65-67
- 4.7 異常處理模塊的實現(xiàn)67-68
- 4.8 本章小結68-69
- 第五章 測試與運行效果69-73
- 5.1 測試方案69
- 5.2 功能驗證測試及結果69-71
- 5.2.1 基本類型加法操作測試用例69-70
- 5.2.2 APDU交互測試用例70-71
- 5.3 本章小結71-73
- 第六章 Java智能卡虛擬機安全性研究73-85
- 6.1 邏輯攻擊73-78
- 6.1.1 防火墻與共享機制的安全漏洞73-76
- 6.1.2 事務機制的安全威脅76-77
- 6.1.3 邏輯攻擊防范措施77-78
- 6.2 混合攻擊78-83
- 6.2.1 混合攻擊方式78-83
- 6.2.2 混合攻擊防范措施83
- 6.3 本章小結83-85
- 第七章 總結與展望85-87
- 7.1 本文總結85-86
- 7.1.1 核心技術85-86
- 7.1.2 創(chuàng)新點86
- 7.2 后續(xù)展望86-87
- 參考文獻87-91
- 附錄91-95
- 致謝95-97
- 攻讀碩士學位期間已發(fā)表或錄用的論文97-99
【參考文獻】
中國期刊全文數(shù)據(jù)庫 前1條
1 王濤,毛志剛,葉以正;一種JavaIC卡專用CPU結構研究[J];電子學報;2000年11期
本文關鍵詞:基于ARM平臺的Java智能卡虛擬機研究與實現(xiàn),,由筆耕文化傳播整理發(fā)布。
本文編號:266653
本文鏈接:http://www.sikaile.net/shoufeilunwen/xixikjs/266653.html