數位資料是以 0 與 1 數位形式的電磁紀錄進行流通與儲存,
由於數位資料具有易於變造、修改的特性,加上網路環境的開放 性,致使數位資料有安全上的疑慮,一旦遭到盜用、竄改或是發 生錯誤,其結果將使得遊戲參與者或業者得到錯誤的資訊,並造 成個人或業者的損失。因此,如何藉由有效的保護機制維護數位 資料的真確性(Integrity),將對於數位資料的保護有顯著的影響。
以下針對真確性的定義與現有的實行機制進行說明,以作為虛擬 資產真確性檢核機制的理論基礎。
真確性一詞來自於英文的 Integrity,原意是指人格的正直與 誠實,應用於資訊領域中泛指資料具有真品性(authenticity)與 正確性(correctness),但中文多翻譯成完整性,為了精確表達其 真正的意涵,本論文以真確性作為 Integrity 的中文譯詞。
真確性定義於 ISO/IEC 7498-2 國際標準文件中,意思為「資 料未經授權的更改或毁損的性質」。黃景彰教授於「資訊安全-電
子商務的基礎」書中指出資料的真確性應具有以下三種意涵(黃 景彰,2001):
(1) 資料的正確性(correctness of data):係指資料必須是正確而 且 沒 有 錯 誤 , 資 料 必 須 防 止 不 正 當 或 未 授 權 的 修 改
(modification)、新增(insertion)、部分刪除(partial deletion)
及整體刪除(complete deletion)等情況。
(2) 資料的真品性(authenticity of data):係指資料的產正必須是 正當的、經過授權的、不是造假的;所以,傳輸的資料必須 有合法的來源,資料的創造與使用都是經過授權的。
(3) 相關屬性的一致性(consistency of relevant attributes):係指資 料的呈現法則(rules of presentation)須具一致性,例如資料 結構或資料的前後順序,呈現法則包括了資料的編碼法則,
如中文使用 Big5 碼、英文使用 ASCII 碼等法則,也更進一步 包括了加解密金鑰的真實性、資料順序關係的一致性等,因 此,順序也視為資訊的呈現方式。這個部分正與 ISO/IEC 10181-6 所定義的「真確性服務」的目的:「保護資料的真確 性,以及相關屬性(relevant attribute)的真確性」意義相同。
另一國際標準文件 ISO/IEC 10181-6(ISO/IEC JTC 1, 1966e)
則指出破壞真確性的五種未經授權的操作:
(1) 未授權的資料修改(unauthorized data modification)。 (2) 未授權的資料刪除(unauthorized data deletion)。 (3) 未授權的資料創造(unauthorized data creation)。 (4) 未授權的資料增加(unauthorized data insertion)。 (5) 未授權的資料重複使用(unauthorized data replay)。
在現實生活中,我們通常都會利用簽名或蓋章來證明所簽署 文件的真確性,即便如此,社會上假冒簽名或是盜刻印章的消息 還是時有耳聞,由此得知如何確保資料的真確性,在現今的社會
上仍是個重要的問題。而在虛擬的網路環境中,由於數位型式的 資料可以輕易的被複製、新增、修改或重複使用,加上網路傳輸 也可能面臨遺失、破壞或是竄改,使得真確性檢核機制一直都是 資訊安全的核心議題。
線上遊戲虛擬資產內容、交易、及其電子履歷的表達式均為 數位資料所構成,其所提供之運用與服務皆透過網路作為通訊管 道,而其後端平台所運用的資料庫亦為數位型態的資料。在這樣 的運作環境下,虛擬資產的內容將面臨真確性的問題,有可能是 攻擊者的惡意變更,也有可能是網路封包傳輸的遺漏,或是軟、
硬體所產生的錯誤,這些都會破壞資料的真確性。因此,線上遊 戲虛擬資產內容、交易、及其電子履歷的表達式內容的資料真確 性檢核機制非常重要。
為了避免破壞資料真確性的操作,一般都會使用密碼學方法 來保護之,常見的保護方法分成下列三種(黃景彰,2001):
(1) 以單向赫序函數(one-way hash function)運算產生的具代表 性的訊息摘要(message digest),並附加於原資料後,作為驗 證資料真確性的資訊。單向赫序函數的主要功能是將任意長 度的訊息轉換成固定且較短的數值,一般稱其輸出值為數位 指紋(fingerprint)或是訊息摘要(message digest),意指一 個輸入值會產生一個對應的輸出結果,而此輸出結果能完全 表示輸入值的特性。而名稱中『單向』的意義在於要從給定 的輸出值反推得到其輸入值是很困難的,除此之外,該函數 還必須具有碰撞阻抗(collision-resistant)的特性,也就是兩 個不同的輸入值經單向赫序函數計算後得到產生同一個輸出 值是很困難的。常見的單向赫序函數包括 MD5、SHA-1、
SHA-256、SHA-384 及 SHA-512,輸出值的長度為介於 128bit 至 512bit 間。
(2) 以非對稱式密碼學方法(asymmetric cryptography)之私密金 鑰(private key)進行運算得到數位簽章(digital signature),
同樣附加於原資料後,作為驗證資料真確性的資訊。非對稱 式密碼學方法包含一組金鑰對,分別為公開金鑰與私密金 鑰。公開金鑰可公開給大眾取用,而私密金鑰則必須由持有 者予以保密,在簽署簽章與驗證簽章的過程中,無須交換機 密資訊。由於私密金鑰須被保密,且所簽署的數位簽章只有 其對應的公開金鑰才能驗證,因此,可被當作驗證真確性之 用,但一旦私密金鑰遭到洩露,則數位簽章即失去其意涵。
非對稱式密碼學方法為一個效率較差的演算法,一般都會配 合單向赫序函數共同使用,常見方法有 RSA。
(3) 對稱式密碼學方法(symmetric cryptography)之秘密金鑰
(secret key)進行運算得到真確性封條(seal),同樣附加於 原資料後,作為驗證資料真確性的資訊。對稱式密碼學方法 只使用一把秘密金鑰,由保護封條的簽署者與驗證者共同持 有,因此兩造雙方在進行保護封條以達成真確性檢核之前,
需先約定金鑰資訊才能進行後續的作業程序。約定的方法可 以透過個體管道或是金鑰交換協定。業界用於訊息鑑別用的
『訊息確認碼』(message authentication code)也是應用對稱 式密碼學達成訊息來源的確認。
上述三種方法都有其優缺點,會因不同情境而有不同使用方 法。單向赫序函數的運算效率最高,但由於不使用秘密資訊進行 運算,容易遭到他人誤用,所以一般都不會單獨使用。(2)與(3)
的金鑰密碼方法較為繁複,多半會配合單向赫序函數一起使用,
以簡化運算上的負擔,不過由於使用到秘密的金鑰資訊,因此金 鑰資訊的使用與配送是另一個重要的安全議題。
黃景彰(2008)於「一種用於保護數位文件之資料完整性及 正確性的方法」專利中進一步提出之複合式文件的真確性檢核的 方法。複合式文件有別於一般常見的文件格式,其能夠在一份文 件中儲存其它應用程式所產的物件,而此物件係指在軟體設計的 概念中,仍可被原始的應用程式處理與更新。複合式文件可組成
不同的文件架構,如 XML 文件的階層式架構或是超連結文件的 索引式架構,因此具有可擴展性,並可儲存多個不同格式的物件 等特性。由於虛擬資產的電子履歷具有虛擬資產的物件內容資 訊、所有權內容資訊、及交易合同等資訊,每一部分均具有關聯 性,所有權內容及交易合同內容亦會隨著虛擬資產的移轉或交 易,而產生新的文件或資訊,其本質上與複合式文件相同,因此 可利用複合式文件的概念,設計及管理虛擬資產的電子履歷資訊。
在黃景彰所提出的複合式文件的真確性檢核方法中,係將單 一訊息來源所設計的檢查碼運算方法加以改良,使其能適用於不 斷增加內容的複合式文件中。此方法的原理是將複合式文件中同 層文件的檢查碼連結為一暫存紀錄,再計算此暫存紀錄的檢查碼 作為其上層文件的檢查碼,依此類推,循序完成該複合式文件內 每一層文件的檢查碼計算,即可獲得整份文件的檢查碼。根據這 種方法,可將一份具有二層架構的複合式文件所包含的每一成員 文件之真確性檢查碼,連結為一份暫存紀錄,再對此一紀錄進行 產生檢查碼的運算,獲得足以代表整份複合式文件的檢查碼,即 可使整份文件獲得真確性的檢核。這種真確性保護方法的好處是 每一層文件的檢查碼是以固定順序連結產生暫存紀錄,因此當同 層文件間之次序受到改變,或者其中的部分文件遭受未經授權的 刪除,則連結產生的暫存紀錄就會改變,由暫存紀錄計算獲得的 檢查碼亦將改變,而能迅速檢驗出更動文件次序或是部分刪除的 破壞行動。前述說明可參閱圖 10-2 中的第一個敘述式,且可表示 如下:
CCD=CCF( CCF(M1) CCF(M2) CCF(M3)‧‧‧ CCF(Mn));
其中 CCD表示整份複合式文件的檢查碼(Checking Code of a Compound Doucument);CCF 表示檢查碼函式(Checking Code Function); Mn表示第 n 份成員文件(nth Member Document),n 是 由 1 開始循序遞增的正整數;而“ "符號則代表數學運算中的
連結。
圖 6-1:一份複合式文件及其檢查碼運算方法示意圖
第 7 章 交易流程與新的需求分析
為瞭解時下線上遊戲虛擬資產交易系統之發展現況,實有需 先針對市場上之虛擬資產交易系統及其交易流程與安全機制進行 討論,並探究虛擬資產交易系統之新的需求及應改進之處。