整合線上軟體開發工具、線上廣播與加密技術之軟體工程線上考試系統
摘 要 大部份的線上考試系統只提供單選題、複選題、問答題等文字模式的考試方式。 為了改善上述問題,本研究以軟體工程線上考試系統為例,在系統中整合多種線上編輯元件,實作了線上編輯UML、數學方程式、程式碼、資料圖表等不同型態的考試方式,讓線上考試系統不再局限於文字模式的考試方式。
背景相關研究 在本研究實作過程中,不論是整合線上編輯工具、在網頁上顯示圖檔、儲存加解密金鑰或是經由網路傳遞資料,都經常使用到Base64 編碼方式對二進位資料進行處理。 在網路服務的身份驗證機制上,目前最廣使用的方法是帳號密碼驗證機制,如圖示
Base64 編碼 Base64 編碼是一種可以把二進位資料轉換為64 個字元來表示的一種編碼方式,這種編碼不易被人識別。Base64 編碼適合用來儲存、傳輸或顯示二進位資料,其編碼字元對應表如表所示。 Value Encoding A 17 R 34 I 51 Z 1 B 18 S 35 J 52
對稱式密鑰加密法 對稱式密鑰加密法(Symmetric Key Encryption)是一種加密與解密使用同一把金鑰的加密方式,提供了機密性(Confidentiality)的安全能力。 非對稱式密鑰加密法 非對稱式密鑰加密法(Asymmetric Key Encryption) 採用的是金鑰對,以兩把不同的金鑰來進行加密與解密的動作,公開金鑰與私密金鑰均可以用來加密與解密,使用公開金鑰加密後的密文只能以對應的私密金鑰解密,反之使用私密金鑰加密後的密文只能以對應的公開金鑰進行解密。此方法提供了機密性及鑑別性(Authentication)的安全能力。
雜湊函數 雜湊函數(Hash Function)是一種對任意長度資料進行運算後會得到一個固定長度雜湊值(Hash value)的計算方法,這種運算結果提供了資料完整性(Integrity)的安全能力。 數位簽章 數位簽章(Digital Signature)是一種基於雜湊函數及非對稱式密鑰加密法的應用方式,持有私密金鑰的一端進行簽章,持有公開金鑰的一端進行驗章,以私密金鑰簽發的數位簽章,只有相對應的公開金鑰才能成功驗章,此方式提供了不可否認性(Non-repudiation)的安全能力。
數位簽章運作示意圖 任何持有公開金鑰的接收端都能驗證收到的數位簽章,但無法偽造發送端簽發數位簽章。簽章者任何時候都無法否認自己曾簽發的數位簽章,常見的簽章演算法(Signature Algorithm)有:MD5 with RSA、SHA1 withRSA。
軟體工程線上考試系統架構