• 沒有找到結果。

AES之遠端嵌入式系統平台

N/A
N/A
Protected

Academic year: 2021

Share "AES之遠端嵌入式系統平台"

Copied!
68
0
0

加載中.... (立即查看全文)

全文

(1)國立臺灣師範大學應用電子科技學系 碩士論文. 指導教授:黃奇武副教授 張吉正教授. AES 之遠端嵌入式系統平台 AES Remote Embedded System Platform. 研究生:陳泓佑 撰 中華民國 101 年 7 月.

(2) A. E. 之. S. 遠. 端. 嵌. 入. 學生:陳泓佑. 式. 系. 統. 平. 台. 指導教授:黃奇武 副教授 張吉正 教授. 國立臺灣師範大學應用電子科技學系碩士班. 摘. 要. 當今科技傳播進步,高級加密標準(Advanced Encryption Standard)已經被 廣泛應用於各方面軟硬體通訊設備。 本實驗室使用AES演算法為基礎,透過物件導向程式語言,開發出一套AES 應用軟體的平台。本研究將平台增加與修改,製作出對AES之初學者能快速學習 的e-learning平台。硬體方面,在EDK環境下使用MicroBlaze處理器,將AES的32 位元硬體架構與軟體架構同時放置於FPGA中,讓嵌入式系統可執行AES的軟硬 體功能。 此系統除了有AES基本架構外,還包含了在文字、各模式圖片、FPGA、遠端 控制等各類應用。本研究最後整合軟硬體,開發提供使用者學習AES的平台,對 研究AES來說,是一套很有用的工具。 關鍵字: AES、e-Learning、FPGA、MicroBlaze、遠端. -i-.

(3) AES Remote Embedded Systems Platform ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––. Student:Hong-You Chen. Advisors: Dr. Chi-Wu Huang Dr. Chi-Jeng Chang. Institute of Applied Electronics Technology National Taiwan Normal University. ABSTRACT Advances in technology, the Advanced Encryption Standard (Advanced Encryption Standard) has been widely used in all aspects of hardware and software communications equipment. In our laboratory using the AES algorithm, based on the C # programming language to develop a set of AES application software platform, In this study, the platform to increase and modify, create AES of the beginners can quickly learn the e-learning platform. MicroBlaze processor in the EDK environment,AES 32-bit hardware architecture and software architecture placed in the FPGA at the same time, let embedded system executable AES of Hardware and software features. AES basic architecture, this system also includes in the text, the pictures of each mode, FPGAs, remote control and other types of applications. Finally, integration of hardware and software, developed to provide users with the AES-learning platform for research AES is a useful tool.. Keywords: AES, e-Learning , FPGA, MicroBlaze , remote. -ii-.

(4) 誌. 謝. 兩年的研究生涯要結束了,邁向人生的另一個地方,很高興能來的國立 臺灣師範大學應電所這個大家庭,特別感謝黃奇武、張吉正兩位老師的熱心 指導,在課業論文研究上,不吝給學生指導及方向,也在做人處事上教導學 生,在兩年碩班的日子收穫良多,也特別謝謝國立雲林科技大學楊博惠教 授,擔任這次論文的口試委員,給學生很多寶貴的意見。 感謝實驗室的所有同學,謝謝適豪學長、英豪學長在我剛加入本研究室 時給我幫助與鼓勵,也傳承許多寶貴的研究經驗,以及小豪學長、國煌學 長、幸彰、方哲、鉅凱、佑軒、育碩、紹偉學弟、宗憲學弟…等,很高興能 夠與大家一同努力,讓實驗室充滿了愉快的氣氛。 感謝一路上支持我的朋友,謝謝育光、昱宗、國軒、坤勳、康霆、得 威、宗旻、哲安、偉傑、冠群、聖智、秉汶、致賢、柏翰、柏岳、偉銘、明 嶸、瑋廷、兆良、至弘、偲敏、亦昌、啟軒、佳鈴、佳微、于婷…等以及新 街國小同學,很高興有你們的支持。 最後,要非常感謝從小栽培我的父母,陳合豐先生,許秀滿女士以及陳 冠宇弟弟的全力支持,讓我有機會完成此篇論文。. 平安快樂. 陳泓佑 謹誌 中華民國一百零一年八月一日. -iii-.

(5) 目. 錄. 中文摘要..…………….………………………………..……………………………i 英文摘要..………..…………………………………………………………………ii 誌. 謝……………………………………………………………..……………iii. 目. 錄……………………………………………………………..……………iv. 圖 目 錄……………………………….…………….……………………………vii 表 目 錄………………………...………………………………...……………….x 第一章. 緒論……………………………………………………………………1. 1.1. 研究背景………………………………………………………………1. 1.2. 研究動機………………………………………………………………2. 1.3. 研究目的………………………………………………………………3. 1.4. 研究步驟………………………………………………………………4. 第二章. AES 以及嵌入式系統介紹……………………………………………5. 2.1. 高等加密標準演算法…………………………………………………5. 2.2. 位元組取代轉換與反位元組轉換(SubBytes / InvSubBytes)…….…7. 2.3. 移列轉換與反移列轉換(ShiftRows / InvShiftRows)…………...……8. 2.4. 混行轉換與反混行運算(MixColumns / InvMixColumns)……..…….9. 2.5. 金鑰加法運算(AddRoundkey)……………………...……………….10. 2.6. 金鑰擴展(KeyExpansion)…………………..……………………….10. 2.7. 嵌入式系統(embedded system)……………..……………………….11. 第三章. 相關文獻探討……………………...…………………………...……13. 3.1. 32-bit AES………….….……….…………………………...………13. 3.2. MicroBlaze 架構…….….……...….………………………...………14. 3.3. C#軟體模擬實現 AES….……….…………………………...………15. 3.4. Socket 架構…………………………………………………….…….18. 3.5. 線上學習(e-learning)………………………….……………….…….20 -iv-.

(6) 3.6. 維基百科……………………………………………………….…….21. 3.7. 五種模式比較分析…………………………………………….…….22. 3.8. 文獻分析……………………………………………………….…….26. 第四章. AES 軟體架構………………………………………………………27. 4.1. AES 軟體架構設計…………………………..…………………..…27. 4.2. AES 加密方塊………………………………..……………………28. 4.3. AES 解密方塊…………….……………..……………………..…28. 4.4. 金鑰產生…………………………………..……………………..…29. 4.5. 加解密流程…………………………………………..………………30. 4.6. 文字應用……………………………………………..………………30. 4.7. 基本圖片加解密…………………..…………………………………31. 4.8. 手寫圖片應用…………………..……………………………………33. 4.9. 壓縮圖片應用…………………..……………………………………34. 4.10. 各模式圖片加解密…………………..……………………………35. 4.11. 各種模式加密結果比較…………………..………………………37. 4.12. CTR 模式加密結果比較………………..…………………………38. 第五章. AES 嵌入式架構………………..…….……………….……………40. 5.2. FPGA 內部硬體設計流程..…..………………………………………40. 5.2. FPGA 內部軟體設計流程..…..………………………………………40. 5.3. 嵌入式系統..…………………....……………………………………41. 5.4. 遠端應用..……………………....……………………………………44. 第六章. 實驗結果……………………………………………………..………48. 6.1. 本研究環境……………………...………………..………...…..……48. 6.2. 本研究開發介面增加部分…………………………..………………49. 6.3. 執行速度比較..………………………………..……..………………50. 6.4. 遠端應用速度比較…………………………………..………………52. 第七章. 結論與未來展望……………………………………………..………53 -v-.

(7) 參考文獻…………………….…………………………………………………….54 自. 傳…………………….…………………………………………………….56. 學術成就…..……………….…………………………………………………..….57. -vi-.

(8) 圖 目 錄 圖 2-1. AES 高等加密演算法……….…………...…….………………………...6. 圖 2-2. 加解密方塊流程圖…………………………….………………………...7. 圖 2-3. 位元組取代轉換……………………………….………………………...8. 圖 2-4. 反位元組轉換……………………………….…………………………...8. 圖 2-5. SubBytes 查表法示意圖…………………….…………………………...8. 圖 2-6. ShiftRows/InvShiftRows 示意圖.…………...………...……...……..…...9. 圖 2-7. MixColumns /InvMixColumns 示意圖….….……....……......…….…..10. 圖 2-8. AddRoundKey 示意圖….….…….……………….....……......…….…..10. 圖 2-9. KeyExpansion 流程示意圖….….…....…………….....……......…….…11. 圖 2-10. 嵌入式系統架構…..…………..…......………….......……......…….…11. 圖 3-1. 影像嵌入式系統架構……………………..………………….…….…..13. 圖 3-2. MicroBlaze 架構…………….……………..………………….…….…..14. 圖 3-3. AES 學習應用介面………...…….…….….………………….….……..15. 圖 3-4. 圖片應用 ECB 模式…………...….….….….….…………………..…..16. 圖 3-5. 圖片應用 CTR 模式……………....….….….….…………………..…..16. 圖 3-6. 圖片應用 CBC 模式……….....…..….….….….….…………………....16. 圖 3-7. 圖片應用 CFB 模式………….…...….….….….…………………..…..17. 圖 3-8. 圖片應用 OFB 模式………….…...….….….….…………………..…..17. 圖 3-9. API 的函數…………………..….…..…………………………………..19. 圖 3-10. 維基百科瀏覽內容…...…………….…..…….…...…………………..21. 圖 3-11. ECB 模式…………..…………...…….....…….…...…………………..22. 圖 3-12. CTR 模式…….……..…...……...…….....…….…...…………………..23. 圖 3-13. CBC 模式…………..…………...…….....…….…...………………….24. 圖 3-14. CFB 模式…………..…………...…….....…….…...…………………..25. 圖 3-15. OFB 模式…………..…………...…….....…….…...…………………..25 -vii-.

(9) 圖 4-1. AES 軟體整體介面……..…. .……....……….……………….…….…..27. 圖 4-2. 加密方塊……….……………….............................………….…….…..28. 圖 4-3. 解密方塊……….……………….............................………….…….…..29. 圖 4-4. 金鑰產生……….……………….............................………….…….…..29. 圖 4-5. 加解密流程………..………..…...…………...….....…..….……..……..30. 圖 4-6. 文字應用……….……………….............................………….…….…..31. 圖 4-7. 基本圖片加解密…….………….............................………….…….…..32. 圖 4-8. 詳細比較資料……….………….............................………….…….…..33. 圖 4-9. 手寫圖片應用……….………….............................………….…….…..33. 圖 4-10. 圖片壓縮平台………...……….............................………….…….…..34. 圖 4-11. 風景圖及其三色直方圖(Histogram)……….....……...…….…….…..35. 圖 4-12. 亂度定義……….……..……….............................………….…….…..36. 圖 4-13. 各模式圖片加解密……..………..….…………...………….…….…..37. 圖 4-14. 各種模式加密結果比較…..……….……........…..….…..……..……..38. 圖 4-15. CTR 模式加密結果比較…….....……………........…..….……..……..39. 圖 5-1. 嵌入式系統架構…….…………….….………...…………….…….…..40. 圖 5-2. FPGA 內部 C 語言控制流程圖……………….…….........….…….…..41. 圖 5-3. 下載程式偵錯報告………………………….……….........….…….…..42. 圖 5-4. 傳至 FPGA 內部硬體介面…………………….….….........….…….…..43. 圖 5-5. 傳至 FPGA 內部硬體介面…………………………...........….…….…..43. 圖 5-6. 遠端系統整體規劃…………...………….….……….........….…….…..44. 圖 5-7. 客戶端………………………………...………….….….....….…….…..45. 圖 5-8. 開發伺服器的過程………..………………..…..…...….....….…….…..46. 圖 5-9. 伺服器………………………...…………………...……..…...…….…..46. 圖 5-10. 整體網路架構流程圖…………….…………...………..…...…….…..47. 圖 6-1. FPGA 開發環境規格……..……….……………………..…...…….…..48. 圖 6-2. 個人電腦 PC 軟體與硬體的基本介紹……..…………....…...…….…..48 -viii-.

(10) 圖 6-3. 開發介面增加部分………………….…...….….……......…...…….…..49. -ix-.

(11) 表 目 錄. 表 2-1. 加解密回合數………………….….………...…………………………...4. 表 3-1. 伺服器與用戶端應用程式之 API 的函.…...…………………………...18. 表 6-1. 各種模式加密結果比較……………....…...…………………………...50. 表 6-2. 個人電腦與 FPGA 內部軟硬體執行速度比較.…..…………………...51. 表 6-3. 遠端應用速度比較結果.…...………………………...………………...52. -x-.

(12) 第一章. 緒論. 1.1 研究背景 在 2001 年高級加密標準(AES)宣布於美國的國家標準與技術研究所 (NIST)。此為一個對稱分組的加解密碼方法。 過去本實驗室團隊在開發 AES 數位電路時,為求驗證開發的硬體各步驟的 執行準確性,由於 NIST 只提供一組明文與金鑰的加解密流程,建立一套 AES 驗 證軟體系統,提供開發使用者做驗證 AES 各函式的運算流程之用。. -1-.

(13) 1.2 研究動機 鑒於本實驗室學長建立 AES 驗證軟體系統,使用由論文[3]和[4]與[17]內的電 路,為求更方便的讓使用者了解 AES,本人修改學長原本驗證軟體,在功能上做 延伸和實用性美化,當中除了原本的 AES 各步驟、文字、基本圖片外,還多增 加了各模式圖片應用平台、壓縮圖片、並且結合嵌入式 FPGA 硬體連結、以及網 路遠端通訊等應用,最後希望將此系統設計成結合網路的研究平台,方便進行 AES 之推廣與教學研究之用。. -2-.

(14) 1.3 研究目的 本研究主要目的在開發整合AES軟硬體嵌入式系統與網路功能的平台,研究可分 為三大部分來達成。. 1. 新增 AES 圖片應用模擬平台,程式可以觀察不同亂度圖片在各種 AES 模式下的加密結果,使用從論文[3]和[4]與[17]的電路。 2.. 透過 EDK 開發環境,將 32 位元的 AES 數位電路與 C 語言的 AES 軟體, 同時實現在 FPGA 中,接著將嵌入式系統與教學平台做系統整合,使系統 可以觀察 AES 處理在個人電腦與嵌入式系統中的執行速度差別。. 3. 開發本地端電腦使用網路控制遠端電腦掛載 FPGA 的系統,解決受限於 本地端環境 FPGA 資源不足,而無法進行加解密實驗的問題。程式並且 可以詳細顯示各階段通訊的花費時間,提供使用者了解遠端電腦掛載 FPGA 在執行 AES 所花費的運算時間為多少。. -3-.

(15) 1.4 研究步驟 本研究步驟可分為五個部分。. 1.. 擬定研究方向,進行文獻初步探討與學習,使用從論文[3]和[4]與[17]的 電路。. 2.. 修改並且美化實驗室學長留下所創的 AES 驗證軟體。. 3.. 增加圖片平台、CTR 圖片平台、壓縮圖片等 AES 應用於軟體。. 4.. 在實驗室學長所創的 AES 32-bit 嵌入式系統中,在 FPGA 內部增加 AES 軟體處理功能,並讓使用者可選擇使用 FPGA 內部軟體或硬體,進行加 解密。. 5.. 發展遠端系統,使本地端電腦成為可以對遠端電腦的 FPGA 進行加解密 的控制平台。. -4-.

(16) 第二章. AES以及嵌入式系統介紹. 2.1 高等加密標準演算法 本章全部資料來源完全引用文獻[1] 內容以及實驗室學長論文[4]和[17] 內 容修改,高等加密演算法Advanced Encryption Standard(以下簡稱 AES)是美國聯 邦政府採用的一種區塊的加密標準。AES的區塊為128 位元長度固定,密鑰是長 度則可以128位元,192位元或256位元。. 根據我們需要的金鑰長度來決定加解密進行的回合數長度(Nr)如表2-1所 示;Nr、Nb、Nk之定義如下:. Nr:加解密所需回的合數長度。 Nb:明文之資料的長度。 Nk:金鑰之資料的長度。. 表 2-1. 加解密回合數. -5-.

(17) 如 圖 2-1 完 全 引 用 文 獻 [1] 所 示 , AES 加 解 密 過 程 中 , 128 位 元 的 明 文 (plaintext,簡稱Pj) ,使用過加密可得一段128位元的密文(ciphertext,簡稱Cj), 用解密可得原始128位元的明文,此加密解密皆使用一把一樣的128位元長度的金 鑰。. 圖 2-1 AES 高等加密演算法. 圖2-2完全引用文獻[1]所示,大概述了AES演算法的加解密過程,很需專注再 最後一回合並沒有執行MixColumns。. -6-.

(18) 圖 2-2 加解密方塊流程圖. 2.2 位元組取代轉換與反位元組轉換(SubBytes / InvSubBytes) SubByte 計算在乘法過程反運素過程,如圖 2-3 完全引用文獻[1]。InvSubByte 運算過程相反,如圖 2-4 完全引用文獻[1]。. -7-.

(19) 圖 2-3 位元組取代轉換. 圖 2-4 反位元組轉換. SubBytes 使用查表法圖 2-5。. 圖 2-5. SubBytes 查表法示意圖. 2.3 移列轉換與反移列轉換(ShiftRows / InvShiftRows) ShiftRows 是矩陣的每列做旋轉資料的旋轉動作,如圖 2-6 所示完全引用文獻 -8-.

(20) [1]。. 圖 2-6. ShiftRows/InvShiftRows 示意圖. 2.4 混行轉換與反混行運算(MixColumns / InvMixColumns) MixColumns 與 InvMixColumns 運算中,將狀態矩陣行內資料的每行乘以一 個固定的數,所得到的新矩陣,如圖 2-7 完全引用文獻[1]所示。. -9-.

(21) 圖 2-7. MixColumns /InvMixColumns 示意圖. 2.5 金鑰加法運算(AddRoundkey) AddRoundKey 是將合併回合金鑰與原矩陣,即是每回合合併狀態的 128 位元 會和該回合金鑰做 XOR 運算。如圖 2-8 完全引用文獻[1]所示。. 圖 2-8. AddRoundKey 示意圖. 2.6 金鑰擴展(KeyExpansion) 金鑰擴展(KeyExpansion)是將我們所要輸入的 16 位元組做為初始金鑰為輸 入,並產生 176 位元組的輸出。這新增回合金鑰 16 位元組即是起始,所需要的 16 位元組回合金鑰以及加解密 10 個回合金鑰,流程如圖 2-9 所示,我們將金鑰 - 10 -.

(22) 分成大概四個部份 W0 ,W1,W2,W3 推發擴展成 10 把金鑰。. 圖 2-9. 2.7. KeyExpansion 流程示意圖. 嵌入式系統(Embedded System) 本節全部資料來源完全從引用文獻[3]內容,現在嵌入式系統被大大的應用,. 軟體和硬體架構。嵌入式系統架構可以大分為三部分:應用程式、韌體、硬體, 如圖 2-10 完全引用文獻[1]所示。. - 11 -.

(23) 圖 2-10. 嵌入式系統架構. - 12 -.

(24) 第三章. 相關文獻探討. 在此章節中,全部資料來源完全是引用為前人和由本實驗室團隊的研究結 果,並將探討近年在相關研究文獻上之研究結果,以及名詞解釋。. 3.1 32-bit AES 此節完全引用從文獻[2] 內容,此 32 位元嵌入式系統架構,由本實驗室團隊 開發而成,並將其發表,硬體設計是經由本實驗室團隊由移位暫存器的 ShiftRow,將 SubByte/MixColumn 與 AddRoundKey 複雜計算預先產生並存放於 BRAM,以達到小面積目的優點,下圖 3-1 完全參考從文獻[2]:。. 圖 3-1. 影像嵌入式系統架構. - 13 -.

(25) 3.2. MicroBlaze 架構 此節完全引用從文獻[3] 內容,MicroBlaze 是 Xilinx 公司開發的 32 位元軟. 體處理器,針對 FPGA 架構做最佳化 Optimize 的處理微系統器,下圖 3-2 完全 引用從文獻[3]:. 圖 3-2. MicroBlaze 架構. - 14 -.

(26) 3.3 C#軟體模擬實現 AES 應用 此節全部資料來源完全引用從參考文獻[4] 內容,由本實驗室團隊開發而 成,本實驗室團隊利用支援物件導向(Object Oriented Programming)的程式語言 C#,圖 3-4 完全引用從參考文獻[4]。. 圖 3-3. AES 學習應用介面. 此平台於圖片實現應用,並且將加密方塊、解密方塊與金鑰採用不同組合方 式,主要是模擬在硬體實現所產生的結果比對,改善圖片加密結果不好情況;圖 3-4 完全引用從參考文獻[4]。. - 15 -.

(27) 圖 3-4. 圖片應用 ECB 模式. 圖 3-5. 圖片應用 CTR 模式. 圖 3-6 圖片應用CBC 模式. - 16 -.

(28) 圖 3-7 圖片應用CFB 模式. 圖 3-8 圖片應用OFB 模式. - 17 -.

(29) Socket 架構. 3.4. 此節全部資料來源完全引用從文獻[5]資料。 表 3-1. 伺服器與用戶端應用程式之 API 的函式. 伺服器. 用戶端. Socket. 建立 socket。. Bind. 設定 socket 所使用本地端的 IP 位置和通訊。. Listen. 設定 socket 等候用戶端連線請求。. Accept. 接收來自用戶端連線請求,建立 socket 連線。. Read. 接收來自用戶端傳送資料。. Write. 傳送資料到用戶端。. closesocket Socket. 關閉 socket 的接收與傳送功能。 建立 socket。. connect. 建立與伺服器的 socket 連線。. Read. 接收來自伺服器傳送資料。. Write. 傳送資料到伺服器。. closesocket. 關閉 socket 的接收與傳送功能。. - 18 -.

(30) 圖 3-9. API 的函數. 在資料傳遞上,可透伺服器與用戶端之間的 read 及 write 來進行傳送,當連 線結束時,程式會利用 closesocket 關閉且釋放,所有 socket 應用程式資源。. - 19 -.

(31) 線上學習(e-learning). 3.5. 此節全部資料來源完全引用從文獻[6] 內容, e-Learning 的 e 大概指的意思 是 electronic,即是「電子化」,可是一般人都把 e-Learning 翻譯為「數位學習」, 因美國教育訓練發展協會將 e-Learning 定為「學習者透過數位媒介來進行學習的 過程」。 。. - 20 -.

(32) 3.6 維基百科 此 節 全 部 資 料 來 源 完 全 引 用 由 維 基 百 科 ( Wikipedia ) 的 網 址 : http://www.wikipedia.org/得知,是一個內容完全開放的網路百科書。 維基百科可查詢到詳細 AES 介紹、AES 即時新資訊和相關參考的資料連結, 如下圖 3-10 所示。. 圖 3-10. 維基百科瀏覽內容. - 21 -.

(33) 3.6 五種模式比較分析 此節全部資料來源完全引用從文獻[7] 論文內容,改善 ECB 模式的缺點用來 五種模式,下為到其針對文內提五種模式的介紹與分析。 (Electronic codebook,ECB)模式即原始之 AES 各區塊獨立之最單純 AES 操作,圖 3-11 完全引用從文獻[7] 論文之上方 CIPHk( )定義為加密函數,圖 3-11 完全引用從文獻[7] 內容之下方 DECIk( )定義為解密函數。. 圖 3-11. ECB 模式. 如圖 3-12 完全引用從文獻[7] 論文內容為(Counter mode,CTR)模式。. - 22 -.

(34) 圖 3-12. CTR 模式. 如圖 3-13 完全引用從文獻[7] 論文內容為(Cipher-block chaining,CBC)模 式所示。. - 23 -.

(35) 圖 3-13. CBC 模式. 圖3-14完全引用從文獻[7] 論文內容為( Cipher feedback,CFB)模式所示。 圖3-15完全引用從文獻[7] 論文內容為( Output feedback, OFB)模式所示。. - 24 -.

(36) 圖 3-14. CFB 模式. 圖 3-15. OFB 模式 - 25 -.

(37) 3.7 文獻分析 第一篇文獻中可以看到一個僅需 44 clock 就能夠完成一回合加解密的 32 位 元 AES 硬體電路在 FPGA 裡面實現。第二篇文獻為介紹 MicroBlaze 中央處理器 的基本架構介紹。第三篇文獻為使用 C#語言撰寫的 AES 驗證軟體,來驗證硬體 加解密處理後的結果正確性。第四篇文獻為客戶端-伺服器的網路通訊基本架構說 明。第五篇文獻為 e-Learning 的名詞解釋。第六篇文獻介紹維基百科的來源。第 七篇文獻為提供 AES 的五種模式應用的架構介紹。 本研究根據上面所提到參考資料深入探討後,先將第一篇和第二篇所提結合 成 AES 嵌入式系統,並且嘗試將第三篇所提 AES 教學介面增加功能後與嵌入式 系統結合起來,當中融合第四篇網際網路架構與第五篇 e-Learning 概念,最後成 功開發出整合軟硬體並且可供 AES 教學研究的系統。. - 26 -.

(38) 第四章. AES軟體架構. 本章內全部資料來源完全引用從文獻[1]的演算法流程圖和文獻[4] 內容的實 驗室學長的軟體做修改,本研究所創的學習應用介面最外層,當中我們將所有功 能先分成兩個不同區塊,其一PC為包括針對各個AES 不同區塊介紹所設計的基 本功能介紹和分別針對文字和圖片軟體應用的各類應用,另一個Embeded system 則是包括連結FPGA硬體與遠端應用。. 4.1. AES軟體架構設計. 使用軟體來做各步驟結果驗證,可以快速讓設計者確認電路的正確性。本文研 究中選用C#這套軟體來實現AES加解密演算法,這是因為C#物件導向特性,較易 程式開發者快速開發應用程式,並且擁有強大的數學運算資料庫及美觀的介面設 計優勢,所以對本研究在開發一個結合軟硬體且可供AES教學研究的平台介面, 是方常快速便利的撰寫程式語言,圖4-1 為AES軟體整體介面。. 圖 4-1 AES 軟體整體介面 - 27 -.

(39) 4.2 AES 加密方塊 圖 4-2 所示為 AES 加密方塊,進入這個介面後,每個動作都在介面左方有圖 片說明其原理說明,按下右上方的 SubBytes 按鍵,會使中間區域輸入的 16 個位 元組,將其值做非線性式轉換,並將結果顯示於右方陣列,接著按下右方中間藍 色的 ShiftRows 按鍵,會使中間區域輸入的 16 個位元組,每一列將做資料旋轉的 動作,並將果顯示在右方陣列,最後按下右方的 MixColumns 按鍵,會使中間區 域輸入的 16 個位元組,每一行乘以一個固定的係數得到新矩陣。. 圖 4-2 加密方塊. 4.3 AES 解密方塊 圖 4-3 所示為 AES 解密方塊,進入這個介面後,每個動作都在介面左方有圖 片說明其原理說明,按下右上方的 InvSubBytes 按鍵,會使中間區域輸入的 16 個 位元組,將其值做反非線性式轉換,並將結果顯示於右方陣列,接著按下右方中 間橘色的 InvShiftRows 按鍵,會使中間區域輸入的 16 個位元組,每一列將做資 料旋轉的動作,並將果顯示在右方陣列,最後按下右方的 InvMixColumns 按鍵, 會使中間區域輸入的 16 個位元組,每一行乘以一個固定的係數得到新矩陣。. - 28 -.

(40) 圖 4-3 解密方塊. 4.4 金鑰產生 如圖 4-7,進入這個介面後,介面左方有圖片說明其原理說明,當按下右下 方藍色的執行架構按鍵時,使用者所輸入 16 個位元組金鑰,會做金鑰擴展,產 生出依序第一到第十把金鑰,鑰顯現出來總共十一回合金鑰。. 圖 4-4 金鑰產生. - 29 -.

(41) 4.5 加解密流程 如圖 4-5 所示,進入這個介面後,介面左方有圖片說明其原理說明,當按下 藍色的加密按鍵時,使用者所輸入 16 個位元組加密資料和金鑰,會做完整加密 流程,使用者可在選定回合中,顯示資料經過選定回合的各加密函數變化,當按 下橘色的解密按鍵時,則會做完整解密流程,使用者可在選定回合中,顯示資料 經過選定回合的各解密函數變化。. 圖 4-5 加解密流程. 4.6 文字應用 如圖 4-6 所示,此為文字應用加解密的簡單流程圖,而本實驗將其實作成軟 體平台。進入這個介面後,當按下藍色編碼按鍵時,使用者所輸入文字經過 ASCII 編碼,而當按下橘色解碼按鍵時,則會將解密後明文進行 ASCII 解碼,而流程中 間則是的正常加解密,此功能可以讓使用者看出文字經過轉換後,再加解密的結 果和應用。 - 30 -.

(42) 圖 4-6. 文字應用. 4.7 基本圖片加解密 如圖4-7所示是完全引用從文獻[8] 內容所創,進入這個介面後,當按下加密按 鍵時,使用者所輸入圖片會與輸入加密金鑰進行加密,而當按下解密按鍵時,使 用者所輸入圖片會與輸入解密金鑰進行解密。在本研究在圖片應用中,圖片像素 是由三原色光模型(RGB color model),使用三種原色、紅色、綠色和藍色三種色 光的主要頻譜成分所組成,並且以不同比例相加,來產生不同顏色。一個位元組 是用來表示一種顏色,其有256灰階值。. - 31 -.

(43) 圖 4-7 基本圖片加解密. 如圖 4-8 所示,本介面也提供經過加密解密後圖片,與原始圖片進行所有子 像素比較功能,可讓使用者快速知道上下兩張圖片是否為完全相同的圖片。. - 32 -.

(44) 圖 4-8 詳細比較資料. 4.8 手寫圖片應用 如圖 4-9 所示,進入這個介面後,使用者可在原始圖檔輸入及時手寫資訊, 然後可以觀察圖片的加解密結果,由於介面是使用 ECB 模式進行圖片加解密, 故加密後的圖片會隱約保留原本輸入圖片的資訊。. 圖 4-9 手寫圖片應用. - 33 -.

(45) 4.9 壓縮圖片應用 此節完全引用從文獻[9]內容,所得資訊,本實驗將壓縮應用加解密的簡單流 程圖實作成軟體平台。進入壓縮圖片應用介面後,介面用有壓縮加解密模式和正 常加解密模式可供選擇,分別會對輸入圖片進行壓縮或正常處理。 將一張256x256圖片輸入到壓縮圖片平台中,再分別使用壓縮加解密模式和正 常加解密模式,對圖片進行加解密處理。圖4-10所示,一張大小為256x256的彩色 圖片,在壓縮圖片平台的加解密結果。. 圖 4-10 圖片壓縮平台 可以由實驗結果了解,同一張像素為256*256的圖片,在先進行壓縮後,再做 加密後,花費秒數約為0.104秒,而在正常加密後,約為花費秒數約為2.546秒,兩者. 運算速度相差大約25倍,而在解密結果也相似。 由於亂度比較大的圖片經過壓縮後,佔用空間也較大。若選用亂度約為7.999 的256*256圖片,在經過壓縮加密後,花費秒數約為0.530秒,而亂度約為1.190的 256*256圖片,經過壓縮加密後,花費秒數約為0.131秒,兩者運算速度相差大約4 倍,在壓縮圖片加密處理中,亂度越低的圖片,可得到越快的處理速度。 - 34 -.

(46) 4.10 各模式圖片加解密 此節完全引用從文獻[17] 內容,由於AES加密的演算法實際應用於圖片加密 上面,根據在圖片加密上所遇到問題,實際的運用到圖片上,另用其它加密方法, 進而改善及達到我們所想要的加密結果。 圖4-11完全引用從文獻[17] 內容是將一張風景圖化為直方圖,分別表示紅、 綠、藍三種顏色的直方圖,表示圖片在該顏色強度所佔的比例較高,則代表此圖 的加密不理想,若是在加密後有一個顏色強度高,可以利用這個特性來判別加密 過後的圖片,加密的結果越好,代表顏色越混亂。. 圖 4-11 風景圖及其三色直方圖(Histogram). - 35 -.

(47) 在本研究圖片應用中,使用Entropy表示雜訊程度,為了能較精確的感覺和測 量雜訊隨機的程度,其定義如下圖:. 圖 4-12 亂度定義. 下圖 4-13 完全引用從文獻[17] 內容為本研究設計一個模擬平台,使用軟體來 實現此五種模式的圖片加解密,將五種模式利用開關去控制選擇,架構包含了金 鑰擴充、加密方塊和解密方塊三大方塊。此平台可顯示圖片亂度以及三色直方圖 和圖片執行各模式的運算時間。. - 36 -.

(48) 圖 4-13 各模式圖片加解密. 4.12 各種模式加密結果比較 我們設計一個軟體模擬平台,將一張圖片經過五種模式所產生的結果,可同時 在平台表現出來,提供使用者觀察各模式對於不同圖形的加密結果。下圖4-14為 各種模式加密結果比較平台,進行加解密的結果,我們以加密一張大小為256x256 的彩色圖片為例。. - 37 -.

(49) 圖 4-14. 各種模式加密效果比較. 4.13 CTR 模式加密結果比較 本研究在 CTR 模式下,設計可讓使用者所輸入的圖片,進行五種不同大小計 數器的圖片加密,並且同時輸出五張加密後圖片。此平台可以同時看出 CTR 模 式在不同位元計數器的圖片加密結果、亂度以及執行時間,提供使用者觀察不同 位元計數器的 CTR 模式圖片加密結果。 圖 4-15 可以看出當中明顯看出 4bit 加密模式所加密出來的結果最差,會有明 顯的線條產生,而在有 16bit、32bit、128bit 模式的加密結果都很佳,幾乎不會有 任何規律性的區塊產生,所產生的圖片,亂度都達 7.999 以上。 - 38 -.

(50) 圖 4-15. CTR 模式加密結果比較. - 39 -.

(51) 第五章. 5.1. AES嵌入式架構. FPGA 內部硬體設計流程 本章內全部資料來源從文獻[2] 內容的實驗室學長的硬體做修改,本研究使. 用 Xilinx 公司所開發的 Embedded Development Kit (EDK)整合系統,提供的快速 完成嵌入式系統設計。另外,EDK 系統也提供軟體編譯,幫助本研究可以短時間 完 成 軟 體 部 分 結 合 32-bit AES 架 構 實 現 嵌 入 式 系 統 , EDK 還 提 供 了 MICROBLAZE 處理器,結合可程式化晶片 Field Programmable Gate Arrays (FPGA) ,可避免設計錯誤 IC,以及記憶體。FPGA 可重複程式化的優點相當適 合當作測試平台使用。架構如圖 5-1 所示。. 圖 5-1. 5.2. 嵌入式系統架構. FPGA 內部軟體設計流程 AES 硬體電路實作時,欲了解在相同環境下,硬體比起軟體的花費時間減少 - 40 -.

(52) 多少。先前所創使用 32-bit AES 電路的嵌入式系統架構上,將 FPGA 內部的記憶 體(Block RAM, BRAM) 擴大至 16K-Byte,將 AES 演算法使用 C 語言設計,經由 編譯後所產生的資料暫存於記憶體並等待執行。在運算過程上,嵌入式系統可以 增加 AES 的軟體加解密功能,也增加可在 FPGA 內部進行金鑰展開的功能。 圖 5-2 所示。. 圖 5-2. FPGA 內部 C 語言控制流程圖. 5.3 嵌入式系統 - 41 -.

(53) 開始進行軟硬體結合的動作,利用系統提供的程式庫、發展軟體…等,將軟 硬體合成、實現、模擬,再將撰寫 C 語言控制程式可執行檔下載到硬體控制電路 所對應的 BRAM,並將來源程式碼編譯、組譯,而後連結成機器所能執行的語言, 並產生 download.bit 檔案,最後在將此檔案下載制 FPGA 做完成驗證操作,整體 設計電路完成,如圖 5-4 所示,為由 EDK 視窗所顯示,下載程式的偵錯報告。. 圖 5-3. 下載程式偵錯報告. 接著開始設計將PC資料傳送給FPGA的使用者介面,本研究將所分成兩個介 面,一為圖5-4所示,將明文與圖片輸入到FPGA內部的AES硬體執行加解密,另 一個為圖5-5所示,將明文與圖片輸入到FPGA內部的AES軟體執行加解密,由於 傳至FPGA內部軟體介面,是透過FPGA內部軟體進行加解密,其擁有可做即時金 鑰擴展的功能,故使用者可在FPGA軟體介面,輸入在即時金鑰,而硬體則否, 由於其已透過VHDL寫死在RAM中。. - 42 -.

(54) 圖 5-4. 傳至 FPGA 內部硬體介面. 圖 5-5 傳至 FPGA 內部軟體介面. - 43 -.

(55) 5.4 遠端應用 由於 FPGA 實驗板並不是每位使用者都會擁有的設備,所以本系統增加可以 透過遠端控制 FPGA 功能,讓每一個使用者都可以在任何地點,透過電腦進行網 際網路連線,將資料傳送至遠端伺服器電腦所掛載 FPGA 進行加解密,圖 5-6 為 此遠端系統整體規劃的簡單架構。. 圖 5-6 遠端系統整體規劃. 在本研究設計上使用 C#內部的 Socket 函式庫,設計一個遠端控制程式。圖 5-7 所示為這個程式的客戶端介面,其內部軟體主要是 Client 程式架構,此介面 提供使用者輸入明文與圖片進行加解密,程式會透過網路傳送資料至遠端電腦所 掛載的 FPGA,執行 FPGA 內部軟體的加解密處理,並在將其結果傳回本地端電 腦,最後程式會詳細顯示各階段的執行時間。. - 44 -.

(56) 圖 5-7 客戶端 在開發伺服器端時,由於其需連結 FPGA 與網路,在驗證上較為複雜,所以 本研究先從基本架構開發起,首先使用 RS232 連接兩台電腦做連線加密測試,在 伺服器端使用軟體進行加解密,用來驗證客戶端-伺服器端基本架構正確,當確認 客戶端-伺服器端架構正確無誤後,接著再使用開放原始碼的免費 FTP 檔案傳輸 軟體 FileZilla,來當做網路連線的伺服器基本架構,並且伺服器連結 FPGA 做處 理,當確認網路連線至連結 FPGA 全都處理正確無誤後,最後在完整開發遠端連 線 FPGA 處理加解密的架構,圖 5-8 所示,可由左至右看出本研究在開發整個架 構的過程。. - 45 -.

(57) 圖 5-8 開發伺服器的過程. 圖 5-9 所示,為本研究用 C#所設計的 Socket 伺服器介面。此介面可以讓使 用者自訂用戶端所連線進入的名稱和密碼,並且提供開啟與關閉伺服器的功能, 主要功能為處理資料的傳送和接收,並且傳送即時 FPGA 處理訊息給用戶端,其 整體網路架構流程圖,在圖 5-10 所示。. 圖 5-9 伺服器. - 46 -.

(58) 圖 5-10 整體網路架構流程圖. - 47 -.

(59) 第六章. 實驗結果. 6.1 本研究環境 本研究的實驗室開發嵌入式系統環境裡,軟體採用 Xilinx 所提供的 ISE 10.1 和 EDK 10.1 整合軟體,包含軟體與硬體設備。本研究的實驗室硬體則選用 Spartan-3E 系列,詳細規格如圖 6-1 所示。. 圖 6-1 FPGA 開發環境規格 圖6-2所示,為本研究實驗室開發環境裡,使用的個人電腦PC軟體與硬體的基 本介紹。. 圖 6-2 個人電腦 PC 軟體與硬體的基本介紹. - 48 -.

(60) 6.2 本研究開發介面增加部分 下圖為本研究相對於本實驗室學長原創軟體介面外,所增加的部分,圖左方 的紅色圓圈內為原本學長驗證介面軟體,其功能相對於右方,本研究平台的紅色 框起區域,本研究將其繼承並美化與修改,其它新增部分:壓縮圖片應用、手寫圖 片應用、各模式圖片加解密、各種模式加密結果比較、CTR 模式加密結果比較、 以及結合嵌入式系統與網際網路,則是本研究所創於此平台部分。. 圖 6-3. 開發介面增加部分. - 49 -.

(61) 6.3 執行速度比較 此程式使用在個人電腦上進行圖片各模式加密實驗,將亂度為 0 與亂度約為 3.938 和亂度約為 7.999 的三張不同亂度 256*256 圖片(大小 1572864-bit) ,系統 進行加密結果比較,並將詳細結果紀錄如下表。 表 6-1. 各種模式加密結果比較. 輸入圖片. ECB 模式. CTR 模式. CBC 模式. CFB 模式. OFB 模式. 亂度. 處理後圖. 處理後圖. 處理後圖. 處理後圖. 處理後圖. 片亂度. 片亂度. 片亂度. 片亂度. 片亂度. 0. 約 3.875. 約 7.999. 約 7.999. 約 7.999. 約 7.999. 約 3.938. 約 6.782. 約 7.999. 約 7.999. 約 7.999. 約 7.999. 約 7.999. 約 7.999. 約 7.999. 約 7.999. 約 7.999. 約 7.999. 此程式上表觀察可以發現,在亂度為 0 的單色圖片經過實驗後,ECB 結果最 差,另外四種模式產生結果都很好,而在亂度約為 3.939 圖片經過實驗後,ECB 結果也較差於另四種模式的結果,最後將亂度約為 7.999 圖片經過實驗後,五種 模式結果都近似相同,完全看不出之前圖形資訊,這可說明 CTR 模式、CBC 模 式、CFB 模式、OFB 模式對於大量重複性的圖片資料加密,有較於 ECB 模式更 好的結果。 接著實驗此程式進行 AES 在個人電腦與 FPGA 內部軟硬體的執行速度比 較,分別將 128-bit 明文和 256*256 圖片(大小 1572864-bit)輸入到個人電腦與 FPGA 內部軟硬體,進行加密實驗並比較,詳細硬體環境與實驗結果如下表。. - 50 -.

(62) 表 6-2 處理器. 個人電腦與 FPGA 內部軟硬體執行速度比較 處理器. 處理器. 使用. 作業系. 占用體. 128-bit. 256*256. 的頻率. 的位元. RAM 的. 統. 積. 的明文. 的彩色圖. 數. 大小. PC 內部 8*2.67G 64 位元 i7 CPU. HZ. 嵌入式. 50MHZ. 3GB. 片 Window. 高. 16KB. 沒有. 約 2.5 秒. 秒. XP SP3. 32 位元. 約 0.005. 低. AES 軟. 約 0.009. 約 65 秒. 秒. 體. 嵌入式. 50MHZ. 32 位元. 16KB. 沒有. AES 硬. 低. 約 0.007. 約 45 秒. 秒. 體. 雖然使用個人 PC 在做 AES 加解密的執行速度,比起嵌入式系統要快速許 多,但是嵌入式系統在佔用體積方面,遠遠小於個人電腦,雙方各有其在不同層 面的應用,而本研究資料可提供未來智慧手機與平板電腦在實作 AES 加解密時, 做為執行速度上的參考。. - 51 -.

(63) 6.4 遠端應用速度比較 在本地端電腦的用戶端介面輸入128-bit明文和256*256圖片(大小1572864-bit) 以及金鑰 ,此程式透過網路傳送至遠端伺服器所掛載的FPGA內部軟體,進行加 解密實驗並比較其通訊在各階段的花費時間結果在下表所示。. 表 6-3. 遠端應用速度比較結果. 動作. 上傳花費時間. 下載花費時間. 將 128-bit 明文傳送至遠端電. 約 0.05 秒. 約 0.03 秒. 約 0.05 秒. 約 0.03 秒. 腦所掛載嵌入式 AES 軟體進 行加解密 將(256*256)彩色圖片傳送至 遠端電腦所掛載嵌入式 AES 硬體進行加解密 從上表中此程式執行明文和圖片的上傳與下載在網路上所花費的時間做比 較,可以看出此程式可能由於物件導向撰寫原因,造成明文和圖片的傳送網路上 軟體測時間上,時間很接近而有誤差。. - 52 -.

(64) 第七章. 結論與未來展望. 本研究使用 32-bit AES 的電路和 MicroBlaze 架構設計成嵌入式系統,在與 C#程式開發的客戶端-伺服器(Client/Server)網路通訊以及學長先前研究結合, 開發一個結合 AES 遠端嵌入式系統和教學系統,其特殊在於整合 AES 教學界面 與嵌入式硬體和網路應用。 此系統最大用途是提供 AES 初學者研究的軟硬體平台,透過此系統進行多種 實驗模式,幫助未來 AES 軟硬體開發者,增加研發上的便利性。 未來工作方面,希望後續研究者可以將本平台增加金鑰擴展的硬體電路,而 且直接移植到雲端伺服器上執行,由於此介面在結合雲端運算的優勢後,可讓使 用者電腦只需連線網際網路,不必擁有此平台軟體,也可以進行 AES 教學與實 驗,讓此平台在推廣方面更加多元。. - 53 -.

(65) 參考文獻 [1]NIST. Announcing the advanced encryption standard (AES), FIPS 197. Technical report, National Institute of Standards and Technology, November 2001. [2]Kuo-Huang Chang, “A 32-bit Low Area Embedded AES FPGA Design for Image Application,” Institute of Applied Electronics Technology National Taiwan Normal University, July 2009 [3]劉紹漢,《SOC 系統晶片設計-使用 Xilinx EDK》,全華圖書股份有限公司,民國 97 年 8 月。 [4]涂英豪,“基於 FPGA 嵌入式 Linux 系統於 32-bit AES 應用之研究與實現”,國立臺 灣師範大學,碩士,2011 年 6 月。 [5]黃嘉輝,《Visual C# 2008 網路程式設計之道》,碁峰資訊股份有限公司,民國 97 年 11 月。 [6]陳年興,“數位學習---理論與實務”,台北縣,碩博文化,2006。 [7]Chi-Wu Huang, Shih-Hao Liu, Ying-Hao Tu, Chi-Jeng Chang, "Understanding AES and the Operation Modes in Image Encryption," etcs, 2011 Third International Workshop on Education Technology and Computer Science, pp.51-54, May 2011. [8]Chi-Wu Huang, Ying-Hao Tu, Hsing-Chang Yeh, Shih-Hao Liu, Chi-Jeng Chang, "Image observation. on. the. modified. ECB. operations. in. Advanced. Encryption. Standard,"Information Society (i-Society), 2011 International Conference on, June 2011, London, UK, pp. 264 – 269. [9]Chi-Wu Huang, “Image Observation on the Modified ECB Operations in Advanced Encryption Standard,” Information Society (i-Society), 2011 International Conference on, June 2011. [10] Chi-Wu Huang, Hong-You Chen, Hsing-Chang Yeh, Chi-Jeng Chang , "Block RAM Based Design of 8-bit AES Operation Modes," , IWIEE, China Harbin,January 2012, pp. 2848-2852 . [11] X.Zhang and K.K.Pari, “High Speed VLSI Architectures for the AES Algorithm,”IEEE Trans. VLSI Systems, vol. 12, no. 9, September 2004. [12] Chi-Wu Huang, Shih-Hao Liu, Ying-Hao TU, Chi-Jeng Chang,“Understanding AES and - 54 -.

(66) the Operation Modes in Image Encryption”,ETCS2011,March 2011. [13] Chi-Jeng Chang, Chi-Wu Huang, “8-bit AES Implementation in FPGA by Multiplexing 32-bit AES Operation,” in the Data, Privacy, and E-Commerce, 2007., Chengdu, Nov. 2007 ,pp.505-507. [14] Chi-Jeng Chang, Chi-Wu Huang, “8-bit AES FPGA Implementation using Block RAM,” Industrial Electronics Society, 2007. IECON 2007., Taipei, Nov. 2007, pp.2654-2659. [15] Chi-Wu Huang, Chi-Jeng Chang, Mao-Yuan Lin, and Hung-Yun Tai, “The FPGA Implementation of 128-bits AES Algorithm Based on Four 32-bits Parallel Operation,” ISDPE 2007, Chengdu, Nov. 2007, pp.462–464. [16] 洪國勝,《Visual C# 2008》,旗標出版股份有限公司,民國 98 年 9 月。 [17] 劉適豪,“嵌入式 8-bit. AES 系統之無線傳輸應用與影像加密分析”,國立臺灣. 師範大學,碩士,2011 年 6 月。. - 55 -.

(67) 自. 傳. 作者陳泓佑,民國七十六年出生於桃園縣,家中有 4 位成員,除了爸媽之 外,還有弟弟,從小在爸媽的身教及言教下讓我對任何事情皆以積極負責態 度面對,對生活週遭的事務加以關心,在求學的過程中有家人一路的支持陪 伴,讓我在遇到挫折時,總是能很快地再站起來,不畏艱難的重新開始。. 今年將畢業於畢業於師範大學應用電子科技所,畢業論文方向是使用 VHDL 來設計小面積的影像加解密處理數位晶片,並結合 C#達到遠端網際 網路的操控功能,希望未來可以應用結合到雲端技術來提供個人影像或資料 的存取隱私保障。. - 56 -.

(68) 學 術 成 就. [1]Chi-Wu Huang, Hong-You Chen, Hsing-Chang Yeh, Chi-Jeng Chang , "Block RAM Based Design of 8-bit AES Operation Modes," , IWIEE, China Harbin,January 2012, pp. 2848-2852 .. - 57 -.

(69)

參考文獻

相關文件

課程利用雲端學習平台 OpenEdu 從最基礎開始說明 Python 的語 法與應用,配合 Quiz in Video

最後特別提出說明,本研究用戶端作業系統為 Win 2000 Professional,伺服 器端作業系統為 Windows 2000 Server 並啟動 Active Directory

並存入百事可樂企業內部網站的 伺服 並存入百事可樂企業內部網站的 IBM RS/6000 伺服 器資料庫。然後,主管與分析師可以使用上型電腦

為了讓行動客戶端可以順利地取得所需的資料項,index bucket 必須能夠引 導行動客戶端一步一步的拿到所需的資料項,因此在廣播結構中的

本研究以河川生態工法為案例探討對象,應用自行開發設計之網

本研究以河川生態工法為案例探討對象,應用自行開發設計之網

成功的完成本研究之自動化鋼筋混凝土結構設計前置處理程 式 AutoRC 的開發,讓使用者透過 AutoRC

本系統結合德州儀器 ( Texas Instruments ) 之 CC2530 所開發之模組,以及 Analog Devices 之 Energy Metering IC – ADE7763,並使用 Switching Power