Java JNI的問題,透過圖書和論文來找解法和答案更準確安心。 我們找到下列懶人包和總整理

Java JNI的問題,我們搜遍了碩博士論文和台灣出版的書籍,推薦楊易寫的 深入解析Java虛擬機器HotSpot 和FLAPPYPIG戰隊的 CTF特訓營:技術詳解、解題方法與競賽技巧都 可以從中找到所需的評價。

另外網站資訊科技與管理- Java Native Interface (JNI)也說明:行銷方式 · 行銷理論 · 行銷預算 · 雲端運算科技 · 雲端運算科技動力圖 · 電子商務行銷 · 資訊科技與管理. Java Native Interface (JNI). Page updated. Report abuse.

這兩本書分別來自機械工業 和機械工業所出版 。

國防大學 資訊管理學系 傅振華、張敦仁所指導 葉乘銘的 應用指紋辨識於對稱式加密機制之研究-以Android智慧型手機為例 (2019),提出Java JNI關鍵因素是什麼,來自於智慧型行動裝置、指紋辨識、對稱式加密、動態密鑰。

而第二篇論文國立高雄科技大學 資訊管理系 李嘉紘所指導 陳旻緒的 利用卷積神經網路於台灣食用魚類辨識APP開發及應用之研究 (2019),提出因為有 行動裝置、魚類辨識、卷積神經網路、傳統特徵、開放資料的重點而找出了 Java JNI的解答。

最後網站[ Java小學堂] JNI 簡介與簡單範例 - 程式扎記則補充:JAVA 通過JNI調用本地方法,而本地方法是以庫文件的形式存放的(在WINDOWS平臺 ... The Java Native Interface (JNI) is a programming framework that ...

接下來讓我們看這些論文和書籍都說些什麼吧:

除了Java JNI,大家也想知道這些:

深入解析Java虛擬機器HotSpot

為了解決Java JNI的問題,作者楊易 這樣論述:

很多JVM的底層技術細節你是否只瞭解表面? 面對JVM Crash或性能調優方面的問題時你是否會束手無策? 面對上層Java應用發生的偏離預期的行為是否會不知所措? …… 這本書以源碼分析為基礎,從運行時、垃圾回收器、即時編譯器3個維度全面、深入解析HotSpot VM的底層實現和工作機制,同時與上層的Java語言和庫結合,指導讀者解決JVM開發、JVM調優和JVM排錯方面遇到的各種問題。 廣度與深度兼顧:廣度上涵蓋Graal VM、CDS、Instrumentation、編譯重放、非標準位元組碼、RTM鎖、JIT調試工具、EpsilonGC/ShenandoahGC/ZGC、G1字串去重等

重要知識點;深度上深入解析了C1、C2、G1GC、ObjectMonitor、Mutex、範本解譯器等的底層實現。 全書共 11 章,參考 OpenJDK 社區的劃分方式來組織內容,分為運行時、即時編譯器、垃圾回收器三個部分。   第一部分(第1~6章) 運行時 首先,從Java生態系統的角度,簡單介紹了JDK、JVM、JEP、HotSpot VM、Graal VM,引導讀者快速進入Java虛擬機器的世界;然後從源碼的角度深入解析了HotSpot VM的類可用機制、物件和類、運行時、範本解譯器和併發設施。 第二部分(第7~9章) 即時編譯器 首先重點介紹了即時編譯器技術、編譯理論、編譯器調試

方法等編譯器的基礎知識;然後詳細講解了C1和C2兩個即時編譯器的實現原理、工作機制和優化方法。 第三部分(第10~11章) 垃圾回收器 首先全面介紹了Epsilon GC、Serial GC、Parallel GC、CMS GC、G1 GC、Shenandoah GC、ZGC等各種垃圾回收器,然後重點剖析了G1 GC。 楊易 Java開發工程師,就職于阿裡雲基礎設施部。.熱衷於研究程式設計語言的設計與實現,對Java語言的設計與實現有非常深入的研究,尤其是Java的虛擬機器HotSpot VM,在JVM的開發、調優和排錯方面積累了豐富的經驗。此外,在編譯器領域也有較深厚的

積累。.有著自由軟體精神的開發者,是GitHub中國區followers數量排名前100的開源項目維護者。 第1章 Java大觀園 1 1.1 OpenJDK 1 1.2 JEP 2 1.3 Java虛擬機器 4 1.4 HotSpot VM 5 1.4.1 源碼模組 7 1.4.2 構建和調試 7 1.4.3 回歸測試 12 1.5 Graal VM 14 1.6 本章小結 16 第2章 類可用機制 17 2.1 類的載入 17 2.1.1 位元組碼 17 2.1.2 類載入器 19 2.1.3 文件解析 21 2.2 類的連結 23 2.2.1 位元組碼驗證 24 2

.2.2 位元組碼重寫 24 2.2.3 方法連結 26 2.3 類的初始化 32 2.4 類的重定義 35 2.5 本章小結 36 第3章 對象和類 38 3.1 對象與類 38 3.2 對象 39 3.2.1 創建對象 39 3.2.2 對象頭 41 3.2.3 對象雜湊值 43 3.3 類 44 3.3.1 欄位遍歷 45 3.3.2 虛表 46 3.4 本章小結 48 第4章 運行時 49 4.1 執行緒創生紀 49 4.1.1 容器化支持 51 4.1.2 Java執行緒 52 4.1.3 虛擬機器執行緒 54 4.1.4 編譯器執行緒 57 4.1.5 服務執行緒 58 4.1

.6 計時器執行緒 58 4.2 Java執行緒 58 4.2.1 執行緒啟動 60 4.2.2 執行緒停止 61 4.2.3 睡眠與中斷 63 4.3 棧幀 66 4.4 Java/JVM溝通 68 4.4.1 JNI 69 4.4.2 JavaCalls 72 4.5 Unsafe類 74 4.5.1 堆外記憶體 75 4.5.2 記憶體屏障 75 4.5.3 阻塞和喚醒 76 4.5.4 物件資料修改 76 4.6 本章小結 77 第5章 範本解譯器 78 5.1 解譯器體系 78 5.1.1 C++解譯器行為 78 5.1.2 範本解譯器行為 79 5.2 機器代碼片段 81 5.3

 CodeCache 82 5.4 指令緩存刷新 84 5.5 解譯器生成 86 5.5.1 普通方法入口 86 5.5.2 方法加鎖 89 5.5.3 本地方法入口 90 5.5.4 標準位元組碼 91 5.5.5 非標準位元組碼 106 5.6 本章小結 107 第6章 併發設施 108 6.1 指令重排序 108 6.1.1 編譯器重排序 109 6.1.2 處理器重排序 110 6.2 記憶體模型 112 6.2.1 happens-before記憶體模型 113 6.2.2 Java記憶體模型 114 6.3 基礎設施 116 6.3.1 原子操作 116 6.3.2 ParkEv

ent 116 6.3.3 Parker 118 6.3.4 Monitor 120 6.4 鎖優化 126 6.4.1 偏向鎖 127 6.4.2 基本物件鎖 128 6.4.3 重量級鎖 128 6.4.4 RTM鎖 131 6.5 本章小結 132 第7章 編譯概述 133 7.1 編譯器簡介 133 7.1.1 運行時代碼生成 134 7.1.2 JIT編譯器 135 7.1.3 AOT編譯器 136 7.1.4 JVMCI JIT編譯器 136 7.2 即時編譯技術 137 7.2.1 分層編譯 137 7.2.2 棧上替換 138 7.2.3 退優化 139 7.3 編譯理論基礎

139 7.3.1 中間表示 139 7.3.2 基本塊與控制流圖 140 7.3.3 靜態單賦值 142 7.3.4 規範化 142 7.3.5 值編號 143 7.3.6 自頂向下重寫系統 144 7.3.7 迴圈不變代碼外提概述 144 7.4 調試方法 145 7.4.1 編譯日誌 145 7.4.2 編譯神諭 146 7.4.3 視覺化工具 146 7.5 本章小結 149 第8章 C1編譯器 150 8.1 編譯流程 150 8.1.1 進入C1 150 8.1.2 高級中間表示 152 8.1.3 低級中間表示 153 8.2 從位元組碼到HIR 155 8.2.1 識別基本

塊 155 8.2.2 抽象解釋 156 8.3 HIR代碼優化 158 8.3.1 規範化 158 8.3.2 內聯 159 8.3.3 基本塊優化 160 8.3.4 值編號 160 8.3.5 陣列範圍檢查 162 8.3.6 迴圈不變代碼外提 162 8.4 從HIR到LIR 164 8.4.1 return生成 165 8.4.2 new生成 165 8.4.3 goto生成 166 8.4.4 線性掃描寄存器分配 167 8.5 本章小結 171 第9章 C2編譯器 172 9.1 編譯流程 172 9.1.1 進入C2 172 9.1.2 理想圖 174 9.1.3 理想圖流程

概述 180 9.1.4 C2代碼優化 183 9.1.5 代碼生成流程 185 9.1.6 設置機器代碼 186 9.2 構造理想圖 187 9.2.1 構造示例 187 9.2.2 Identity、Ideal、GVN 191 9.3 機器無關優化 193 9.3.1 IGVN 193 9.3.2 逃逸分析 194 9.3.3 向量化 197 9.4 代碼生成 199 9.4.1 指令選擇 199 9.4.2 圖著色寄存器分配 200 9.5 本章小結 203 第10章 垃圾回收 204 10.1 垃圾回收基礎概述 204 10.1.1 GC Root 205 10.1.2 安全點 20

6 10.1.3 執行緒局部握手 208 10.1.4 GC屏障 209 10.2 Epsilon GC 209 10.2.1 源碼結構 209 10.2.2 EpsilonHeap 210 10.2.3 對象分配 211 10.2.4 回收垃圾 212 10.3 Serial GC 212 10.3.1 弱分代假說 212 10.3.2 卡表 213 10.3.3 Young GC 214 10.3.4 Full GC 218 10.3.5 世界停頓 221 10.4 Parallel GC 221 10.4.1 多執行緒垃圾回收 221 10.4.2 GC工作管理員 223 10.4.3 

並行與併發 226 10.5 CMS GC 227 10.5.1 回收策略 227 10.5.2 物件丟失問題 228 10.5.3 Old GC週期 229 10.5.4 併發模式失敗 234 10.5.5 堆碎片化 235 10.6 G1 GC 235 10.6.1 簡介 235 10.6.2 混合回收 236 10.7 Shenandoah GC 237 10.8 ZGC 239 10.9 本章小結 241 第11章 G1 GC 242 11.1 G1 GC簡介 242 11.1.1 基於Region的堆 242 11.1.2 記憶集RSet 243 11.1.3 停頓預測模型 244

11.2 Young GC 245 11.2.1 選擇CSet 245 11.2.2 清理根集 246 11.2.3 處理RSet 247 11.2.4 對象複製 247 11.3 Mixed GC 248 11.3.1 SATB 249 11.3.2 全域併發標記 251 11.3.3 對象複製 254 11.4 Full GC 254 11.5 字串去重 255 11.6 本章小結 257

應用指紋辨識於對稱式加密機制之研究-以Android智慧型手機為例

為了解決Java JNI的問題,作者葉乘銘 這樣論述:

根據國家發展委員會統計,我國行動通信用戶數量2,925萬戶中,上網比例已經突破九成,在各行業中透過行動裝置隨時掌握資訊、傳遞資料已經屬於相當普遍之行為。然而,許多大型企業為了避免重要資料洩漏,已經透過軟、硬體來管控員工之行動裝置。加密是一個很好的解決方案,能夠保護行動裝置內機敏資料,並有效降低機敏資料遭「入侵竊取」或「傳輸途中擷取」等危害的風險。本研究嘗試運用智慧型行動裝置上內建指紋裝置及對稱式加密機制確保所儲存機敏文件的安全性;研究所提加密機制將整合個人指紋辨識驗證與AES256區塊加密機制,透過檔案長度及名稱動態產生加密密鑰,以強化密文資料被破解的難度,以有效提升加密資料使用的便利性及可

利用性。最後,本研究以Android Studio做為研究應用程式開發平臺,透過Java程式語言開發App,並利用JNI呼叫以C程式語言所撰寫的加密核心程式,完成一個Android智慧型行動裝置適用的App,並進行實驗驗證,其結果驗證本研究所提加密機制應用於Android智慧型行動裝置之可行性與實用性。

CTF特訓營:技術詳解、解題方法與競賽技巧

為了解決Java JNI的問題,作者FLAPPYPIG戰隊 這樣論述:

本書由國內老牌CTF戰隊FlappyPig撰寫,戰隊成員曾多次榮獲XCTF國際聯賽冠軍、TCTF/0CTF冠軍、WCTF世界駭客大師挑戰賽季軍,多次入圍Defcon全球總決賽,具有豐富的實戰經驗。   本書圍繞CTF競賽需要的安全技術、解題方法和競賽技巧3個維度展開,旨在通過作者扎實的技術功底和豐富的競賽經驗,引領對CTF競賽感興趣的讀者快速入門。書中依據CTF競賽的特點,分別從Web、Reverse、PWN、Crypto、APK、IoT這六個方面系統地對CTF競賽的知識點、模式、技巧進行了深入講解,每一篇都搭配歷年真題,幫助讀者加深理解。全書一共分六篇。   Web篇(第1~8章)主要講解C

TF比賽中Web類型題目的一些基礎知識點與常用的工具和外掛程式,這些知識點和工具也可以用於部分滲透測試的實戰中。Reverse篇(第9~10章)主要對CTF中逆向分析的主要方法、常用分析工具、逆向分析技術和破解方法進行講解,幫助讀者提高逆向分析能力。PWN篇(第11~17章)對PWN二進位漏洞挖掘利用的詳細分析,主要講解了針對各種漏洞的利用方法和利用技巧,作者可以結合實例題目加深理解。Crypto篇(第18~22章)對Crypto類型題目的知識和例題講解,主要從概述、編碼、古典密碼、現代密碼以及真題解析幾個方向進行敘述。   APK篇(第23~25章)講解CTF中的APK的相關內容,主要從AP

K的基礎知識點、Dalvik層的逆向分析技術,以及Native層的逆向分析技術三個方面介紹APK題目的寄出內容、解題方法和競賽技巧。IoT篇(第26~30章)對IoT類型題目的講解,內容涉及IoT、無線通訊的基礎知識和相關題型的解題技巧,幫助大家培養解決IoT相關題目的能力。 FlappyPig   國內老牌知名CTF戰隊,曾獲數十個各級CTF競賽冠亞季軍,具備國際CTF競賽水準,具備豐富的CTF參賽經驗。先後獲得XCTF聯賽總冠軍、XNUCA總決賽冠軍、CISCN冠軍、TCTF/0CTF(Defcon外卡賽)冠軍、WCTF世界駭客大師挑戰賽季軍,連續三年闖進Defcon決

賽,Defcon最好成績第10名。戰隊開發維護了CTFrank網站進行了CTF賽事的rank評級和推薦。 現在以r3kapig聯合戰隊的方式參賽。 戰隊成員挖掘並披露漏洞獲得CVE編號上百枚,向各類SRC報備漏洞數百個。戰隊成員在Geekpwn、天府杯、PWN2OWN等漏洞挖掘類競賽也取得了不錯的成績。 戰隊主要成員目前就職于阿裡巴巴、騰訊、京東等,從事網路安全、漏洞挖掘相關工作。在網路安全競賽、漏洞挖掘、滲透測試等領域具有非常深厚的積累,擅長Web、應用層軟體、作業系統、區塊鏈、嵌入式等多領域的漏洞挖掘與利用。 前 言 第一篇 CTF之Web 第1章 常用工具安裝及

使用 2 1.1 Burp Suite 2 1.2 Sqlmap 8 1.3 流覽器與外掛程式 9 1.4 Nmap 11 第2章 SQL注入攻擊 13 2.1 什麼是SQL注入 13 2.2 可以聯集查詢的SQL注入 14 2.3 報錯注入 14 2.4 Bool 盲注 16 2.5 時間盲注 17 2.6 二次注入 18 2.7 limit之後的注入 20 2.8 注入點的位置及發現 20 2.9 繞過 21 2.10 SQL讀寫文件 24 2.11 小結 24 第3章 跨站腳本攻擊 25 3.1 概述 25 3.2 常見XSS漏洞分類 25 3.3 防護與繞過 29 3.4 危害與利

用技巧 38 3.5 實例 40 第4章 服務端請求偽造 42 4.1 如何形成 42 4.2 防護繞過 43 4.3 危害與利用技巧 43 4.4 實例 46 第5章 利用特性進行攻擊 48 5.1 PHP語言特性 48 5.1.1 弱類型48 5.1.2 反序列化漏洞49 5.1.3 截斷51 5.1.4 偽協議51 5.1.5 變數覆蓋52 5.1.6 防護繞過54 5.2 Windows系統特性 54 第6章 代碼審計 56 6.1 源碼洩露 56 6.2 代碼審計的方法與技巧 61 第7章 條件競爭 67 7.1 概述 67 7.2 條件競爭問題分析及測試 68 第8章 案

例 解 析 73 8.1 NSCTF 2015 Web實例 73 8.2 湖湘杯2016線上選拔賽Web實例 75 8.3 0CTF 2017 Web實例 79 8.4 2019 WCTF 大師賽賽題剖析:P-door 80 本篇小結 87 第二篇 CTF之Reverse 第9章 Reverse 概述 90 9.1 逆向分析的主要方法 90 9.2 彙編指令體系結構 91 9.2.1 x86指令體系91 9.2.2 x64指令體系92 9.3 逆向分析工具介紹 93 9.3.1 反彙編和反編譯工具93 9.3.2 調試器97 9.3.3 Trace類工具100 第10章 Reverse

分析 102 10.1 常規逆向分析流程 102 10.1.1 關鍵代碼定位102 10.1.2 常見加密演算法識別104 10.1.3 求解flag109 10.2 自動化逆向 113 10.2.1 IDAPython114 10.2.2 PythonGdb114 10.2.3 pydbg115 10.2.4 Angr115 10.3 幹擾分析技術及破解方法 116 10.3.1 花指令116 10.3.2 反調試117 10.3.3 加殼119 10.3.4 控制流混淆121 10.3.5 雙進程保護124 10.3.6 虛擬機器保護127 10.4 指令碼語言的逆向 132 10.4.

1 .NET程式逆向132 10.4.2 Python程式逆向135 10.4.3 Java程式逆向137 本篇小結 139 第三篇 CTF之PWN 第11章 PWN 基礎 142 11.1 基本工具 142 11.2 保護機制 143 11.3 PWN類型 143 11.4 常見利用方法 144 11.5 程式記憶體佈局 149 11.6 真題解析 150 第12章 棧相關漏洞 166 12.1 棧介紹 166 12.1.1 函數棧的調用機制167 12.1.2 函數參數傳遞168 12.2 棧溢出 169 12.2.1 基本概念169 12.2.2 覆蓋棧緩衝區的具體用途170 12

.3 棧的特殊利用 177 12.4 棧噴射 177 12.5 執行緒棧 178 12.6 真題解析 184 12.6.1 {ZCTF-2015} guess(PWN100)184 12.6.2 {ZCTF-2015} spell (PWN300)187 12.6.3 {Codegate-2015} Chess(PWN700)189 12.6.4 {RCTF-2015} Welpwn(PWN200)196 第13章 堆相關漏洞 198 13.1 堆介紹 198 13.1.1 堆基本資料結構chunk198 13.1.2 堆空閒塊管理結構bin200 13.1.3 malloc基本規則201

13.1.4 free基本規則201 13.1.5 tcache202 13.2 漏洞類型 204 13.3 利用方法 206 13.3.1 最基本的堆利用206 13.3.2 unlink208 13.3.3 fastbin attack211 13.3.4 forgotten chunk212 13.3.5 house of force217 13.3.6 house of spirit218 13.3.7 house of orange218 13.3.8 堆噴射224 13.3.9 更多堆利用技巧224 13.4 真題解析 225 第14章 格式化字串漏洞 244 14.1 基本概念

244 14.2 資訊洩露與修改 245 14.3 額外技巧 249 14.4 真題解析 254 14.4.1 {CCTF-2016} PWN3(PWN350)254 14.4.2 {RCTF-2015} nobug(PWN300)256 14.4.3 {LCTF-2016} PWN200258 第15章 整型漏洞 261 15.1 寬度溢出 261 15.2 符號轉換 263 15.3 陣列越界 264 15.4 真題解析 265 第16章 邏輯漏洞 269 16.1 基本概念 269 16.2 競態條件漏洞 269 16.3 真題解析 271 第17章 Attack&Defense

模式 273 17.1 修補方案 273 17.1.1 大小修改法273 17.1.2 函數替換法275 17.1.3 .eh_frame 段Patch法276 17.1.4 其他方法277 17.2 攻防策略 277 相關知識連結推薦 278 本篇小結 279 第四篇 CTF之Crypto 第18章 Crypto 概述 282 第19章 編碼 284 19.1 hex 284 19.2 urlencode 286 19.3 morsecode 286 19.4 jsfuck 289 19.5 uuencode 291 19.6 base家族 291 第20章 古典密碼 294 20.

1 移位元密碼 294 20.1.1 簡單移位元密碼 294 20.1.2 曲路密碼 296 20.1.3 雲影密碼 296 20.1.4 柵欄密碼 296 20.2 替代密碼 298 20.2.1 單表替代密碼 298 20.2.2 多表替代密碼 303 第21章 現代密碼 309 21.1 區塊編碼器和序列密碼 309 21.1.1 DES/AES基本加解密 309 21.1.2 區塊編碼器CBC bit翻轉攻擊 310 21.1.3 區塊編碼器CBC選擇密文攻擊 312 21.1.4 區塊編碼器CBC padding oracle攻擊 312 21.1.5 Feistel結構分析 31

3 21.1.6 攻擊偽亂數發生器 314 21.2 公開金鑰密碼 319 21.2.1 RSA基礎 319 21.2.2 直接模數分解 320 21.2.3 費馬分解和Pollard_rho分解 322 21.2.4 公約數模數分解 325 21.2.5 其他模數分解方式 327 21.2.6 小指數明文爆破 329 21.2.7 選擇密文攻擊 330 21.2.8 LLL-attack 330 21.2.9 Wiener Attack & Boneh Durfee Attack 334 21.2.10 共模攻擊 338 21.2.11 廣播攻擊 340 21.2.12 相關消息攻擊 342

21.2.13 DSA 343 21.3 雜湊 344 21.3.1 雜湊碰撞 344 21.3.2 雜湊長度擴展攻擊 345 第22章 真題解析 348 22.1 SUPEREXPRESS 348 22.2 VIGENERE 350 22.3 Revolver 357 22.4 Railgun 362 本篇小結 365 第五篇 CTF之APK 第23章 APK基礎 368 23.1 Android題目類型 368 23.2 Android基本架構 368 23.2.1 Android的Dalvik虛擬機器 369 23.2.2 Native層 369 23.3 ARM架構基礎知識 3

69 23.3.1 函式呼叫/跳轉指令 370 23.3.2 出棧入棧指令 371 23.3.3 保存/恢復寄存器的值 371 23.4 adb 371 23.5 APK檔案格式 372 第24章 Dalvik層逆向分析 373 24.1 Dalvik基礎知識 373 24.1.1 寄存器 374 24.1.2 類型 374 24.1.3 方法 375 24.1.4 指令特點 375 24.2 靜態分析 376 24.2.1 使用Apktool反編譯APK程式 376 24.2.2 使用dex2jar生成jar檔 379 24.2.3 使用jd-gui查看反編譯的Java代碼 380 24.

2.4 使用FernFlower反編譯Jar檔 381 24.2.5 使用Android Killer / jadx / APK Studio逆向分析平臺 381 24.2.6 使用JEB進行靜態分析 388 24.2.7 其他的靜態分析軟體 393 24.3 動態調試 394 24.3.1 使用log調試 394 24.3.2 smali動態調試 396 24.3.3 使用Xposed框架Hook進程 400 24.3.4 使用Frida框架Hook進程 405 24.4 Dalvik層混淆及加固技術 409 24.4.1 ProGuard混淆 409 24.4.2 DEX破壞 409 24

.4.3 APK偽加密 410 24.4.4 APK增加資料 410 24.4.5 DEX隱藏 410 第25章 Native層逆向 411 25.1 Native層介紹 411 25.1.1 正向—使用NDK編寫Native層應用 411 25.1.2 JNI調用特徵分析 413 25.2 使用IDA Pro靜態分析 419 25.3 動態調試 423 25.3.1 使用IDA Pro進行動態調試 423 25.3.2 使用GDB進行動態調試 425 25.3.3 使用Frida框架HOOK進程 428 25.4 OLLVM混淆及加固技術 430 25.4.1 -fla 431 25.4.

2 -bcf 432 25.4.3 -sub 434 本篇小結 436 第六篇 CTF之IoT 第26章 IoT基礎知識 438 26.1 什麼是IoT 438 26.2 什麼是嵌入式系統 439 26.3 嵌入式系統的基本概念 439 26.4 CTF中常見的IoT題型歸類 441 第27章 IoT固件逆向工程 443 27.1 常見IoT架構介紹 443 27.2 晶片手冊的尋找與閱讀 446 27.3 使用IDA手動尋找固件入口點 450 27.4 寄存器位址和SRAM位址的處理方法 453 27.5 IDA之CPU高級選項 456 27.6 動態調試環境搭建 458 27.7 專

業調試工具 459 27.8 反編譯工具 469 第28章 固件結構分析 470 28.1 常見固件類型 470 28.2 Flash檔案系統 471 28.3 固件基底位址確定方法 471 28.4 固件分析工具 473 第29章 無線信號分析 475 29.1 無線通訊基本理論介紹 475 29.2 常見調製方式與解調方法 476 29.3 Matlab在數位信號處理中的應用 478 第30章 經典賽題講解 483 30.1 PCTF2016:Confused ARM 483 30.2 UCTF2016資格賽:TWI 486 30.3 UCTF2016決賽:Normandie 491

30.4 ACTF2016:4G Radio 498 30.5 UCTF2016資格賽:感測器(1)(2) 500 30.6 UCTF2016資格賽:Add 502 本篇小結 506

利用卷積神經網路於台灣食用魚類辨識APP開發及應用之研究

為了解決Java JNI的問題,作者陳旻緒 這樣論述:

  由於台灣市場魚類品種繁多,一般人要辨識非常不容易,詢問老闆可能會因為工作繁忙而被忽略且傳統市場大多以魚類的俗稱稱呼,就算知道名稱也不一定了解確切的學名來搜尋魚類的資訊,在價格方面因為害怕買貴,所以必須花費很多時間貨比三家。  而隨著公開資料的興起與行動裝置辨識技術的成長,本研究提出一個基於Client-Server架構的魚類辨識與資料查詢APP,選取25種常見食用魚類影像作為實驗資料集並利用手機客戶端模型與伺服器模型的結合使用來達到不需連網也能運作的效果,辨識特徵方面分為傳統特徵與深度學習兩大類,傳統特徵使用LBP、Lab、HSV、HMMD,深度學習模型使用AlexNet、ResNet5

0、Inception-v4、DenseNet121進行特徵擷取與辨識,並進一步比較資料擴增前後在無裁切、手動裁切與橢圓裁切資料集的辨識效果,結果為擴增後資料集在任何特徵下皆比擴增前辨識率高且裁切資料集辨識率皆高於無裁切資料集,橢圓裁切版本資料集則是在傳統顏色特徵中有較大正面影響,最後以最高辨識率的Inception-v4為系統辨識模型並利用全連接層的輸出值取每一類門檻來實現未知類別的辨識。  實驗結果顯示,整個APP使用流程從裁切到辨識結果平均可在4秒內完成,並利用獨立於訓練集不同的資料集做測試,平均辨識率可達96%且能拒絕約七成的非魚類影像。