一個安全的行動通訊區塊鏈 SIM 架構
李佳璇1 陳麒元3
國立宜蘭大學資訊工程學系1, 3
1[email protected]、3[email protected]
摘要
隨著科技的推移與進步,人們對資訊安全日益看重,在這通訊發達與駭客猖獗的時 代,傳統SIM卡與eSIM的集中式儲存方式、資料存放的問題與傳輸的方法,皆帶來了 安全性的隱憂,以及隱私性問題。為此,本研究提出了一種區塊鏈為基礎的SIM架構,
以區塊鏈作為分散式帳本,透過與智能合約的結合,利用去中心化與不可竄改的等特性,
將改變過去集中式儲存所帶來的安全性問題,同時也確保了資料的完整性,其次通過二 次加密的方式,也使得隱私性問題獲得了改善,最後我們也介紹了如何使用我們所提出 的架構來實現SIM的主要功能。
關鍵詞:SIM、區塊鏈、智能合約、隱私性
A Secure Blockchain-SIM Architecture for Mobile Communications
Jia-Xsuan Lee1, Chi-Yuan Chen2
1, 2Dept. Computer Science and Information Engineering, National Ilan University
1[email protected], 2[email protected]
Abstract
With the progress and advancement of technology, people pay more attention to information security. In the age of advanced communications and rampant hackers, the centralized storage of traditional SIM cards and eSIMs, the data storage and transmission all bring security concerns and privacy issues. Therefore, the study proposes a block-chain-based SIM architecture, which uses the block-chain as a distributed ledger through the combination with smart contracts, and the use of decentralized and non-manipulative features will change the security problems caused by centralized storage in the past. In our approach, the problem has also been improved to ensure the integrity of the data as well. Finally, we also introduced how to use our proposed architecture to implement the main functions of SIM.
Keywords: SIM, Blockchain, Smart Contract, Privacy
壹、前言
現今通訊網路幾乎成為每個人必備的需求,第一代行動通訊技術,簡稱1G (the first generation) 到現在的第五代行動通訊技術,簡稱5G (5th generation mobile networks),已 經有了突破性的改變與成長。其中用戶識別模組 (Subscriber Identity Module),通常簡稱 為SIM卡,SIM卡的發展可以追朔至1991年,德國Giesecke & Devrient GmbH開發了 世界上第一張SIM卡,並賣了300張給芬蘭無線網路運營商Radiolinja。隔年,他們售 出了第一隻附有SIM卡的全球行動通訊系統GSM手機。該晶片儲存了行動電話用戶的 信息、加密的密鑰以及用戶的電話簿等內容,可供營運商根據前述資訊對 GSM 用戶進 行身份鑑別,並對用戶通話時的語音信息進行加密。
隨著全球通訊終端市場趨於飽和,傳統SIM卡由於其使用壽命短、操作環境要求苛 刻,且必須有卡槽以及只能綁定單一運營商等特點,使得業務擴張遇到瓶頸;為了解決 前述的問題,人們想出將其SIM卡直接嵌入電路板以解決困境,而這也就成為現今的嵌 入式SIM卡 (Embedded-SIM, eSIM) [19];電訊標準組織 (GSM協會,GSMA),於2016 年發佈 eSIM遠端配置管理架構和規範並持續更新,此規範獲得全球多數營運商、晶片 商的支持,包含蘋果、三星、Google 等手機製造商。eSIM 主要優勢在於用戶可以隨時 更換運營商,可對SIM進行遠程配置,實現運營商配置文件的下載、安裝、啟用、停用 及刪除等功能,遠程管理平台可以對 eSIM進行生命周期管理,有效縮短產業周期,滿 足用戶多樣化選擇。
隨著科技發展網路安全性更顯著重要,現今個人資料保護日益受到重視,SIM卡以 及 eSIM皆為我們的生活帶來了便利性,但集中式管理也帶來了隱私性問題,同時也暴 露了安全性問題。2019年9月,行動網路資安業者AdaptiveMobile Security近日揭露了 存在於手機簡訊與SIM卡上的安全漏洞,名為Simjacker [9],這隻攻擊程式不同於過去 透過簡訊傳送的惡意程式,使用者得進一步開啟連結才能觸發攻擊,而是直接透過簡訊 發送惡意程式,以入侵目標對象手機的SIM卡,進而執行惡意命令;同年同月,另一家 安全公司Ginno Security Labs亦發現類似的攻擊手法,名為WIBattack [10],主要是電信 公司為提供用戶更多進階的簡訊服務,於 SIM 卡上運行採用 Wireless Internet Browser
(WIB)技術,並透過電信公司採用OTA形式進行相關服務選單的更新,駭客可傳送惡意
簡訊開採WIB SIM瀏覽器的漏洞,取得受害手機的遠端控制權,執行各種惡意行為。
除了安全性與隱私性,表1我們也整理出我們所觀察到的相關問題,為了解決這些 困境,因此我們提出了區塊鏈為基礎的SIM架構,利用區塊鏈去中心化特性,來解決集 中式管理所帶來的問題,同時由於每筆交易都須經過驗證,因此我們也可以辨識發訊者 的真實性,以避免收到惡意訊息等相關問題,但是區塊鏈所有交易都是公開透明,所以 我們將所需隱匿的資料進行加密,藉由智能合約 (Smart Contract) 來執行應用程式以及 處理交易。
表1:傳統SIM卡與eSIM之比較
傳統SIM eSIM
實體
空間 實體卡,有卡槽 無實體卡,無卡槽 儲存
問題
發生遺失或損壞時,SIM 卡所儲存內
容無法復得 無須擔心卡片損壞導致儲存內容遺失 驗證性 一般用戶無法辨識來電或來訊號碼的
真實性
一般用戶無法辨識來電或來訊號碼的 真實性
保密性 SIM Cloning 可複製SIM卡資料 容易被攔截OTA來竊取資訊
便利性 新舊客戶皆需至實體門市辦理 新舊客戶皆需至實體門市或網路辦理
在本文的第一小節,我們介紹目前SIM卡與eSIM的現況,也描述了研究動機與解 決方案。第二小節將介紹有關通訊的發展與應用。第三小節則介紹我們提出來的SIM架 構與功能應用。最後,第四小節針對本研究進行總結。
貳、背景及相關研究 2.1 傳統SIM卡
傳統SIM卡是由CPU、ROM、RAM、EEPROM和I/O電路組成的微處理器的晶片
卡[16],不宜在高於80℃或低於-20℃的環境下工作,且卡片受到折損也可能會導致資 料錯亂或喪失。該卡是以GSM 作為行動電話通訊的基礎,一卡一營運商的模式,根據 規範來執行或者拒絕指令;隨著手機越輕薄,SIM卡面積也隨之縮減,從最初的1FF原 卡到現在最盛行的4FF標準的Nano-SIM卡,為手機擁擠的內部讓出不少空間。SIM卡 儲存的資料主要分為以下四類:
固定存放的資料
暫時存放的有關網路的資料
相關的業務代碼
用戶自己存入的資料
第一類-固定存放的資料,由 SIM 卡製造商寫入,主要包括國際行動用戶辨識碼
(IMSI)、IMSI 認證演算法、鑒權密鑰 (Ki) 與Ki 加密演算法等等;第二類-暫時存放的
有關網路的數據,如位置區域識別碼 (LAI)、臨時行動簽約用戶標識 (TMSI) 等;第三 類-相關的業務代碼,如個人識別碼 (PIN)、解鎖碼 (PUK)、計費費率等;第四類-電話 簿、簡訊等,是手機用戶自行輸入的電話號碼,或是收發的簡訊等用戶相關資料。
在文獻[14]提到,對 GSM 用戶進行身份鑒權,透過使用質詢-響應機制的用戶身份
進行認證,會產生一個128bit的隨機數RAND,發送至SIM卡接收端,根據SIM卡中 的密鑰Ki和個人用戶的認證密鑰的認證演算法(A3),對接收到的RAND計算出32bit有 簽名的響應(SRES),並將結果發回網路端;而網路端在鑒權中心查明該用戶的密鑰Ki,
用同樣的 RAND 和演算法 A3 計算出 SRES,並與收到的 SRES 進行比較,如果兩者
SRES一致,則鑒權通過,判斷該用戶為合法使用者,若兩者相異,反之。每張SIM卡 都會設置一個PIN碼,只有當用戶輸入正確的密碼後,手機才能進入正常使用狀態,若 連續三次PIN碼都輸入錯誤,手機便會將SIM卡鎖住,要解鎖,就必須使用PUK碼來 解鎖。
2.2 eSIM
eSIM嚴格來說並不是真正的虛擬SIM卡,而是將SIM卡直接嵌入到行動設備上而 無需卡槽,進而大幅縮減手機的使用空間,加上嵌入至電路板以後,將不再受限於環境,
可達到耐氧化、耐高溫等相關需求,eSIM是基於OTA (Over-the-Air Technology) 即空中 下載技術[19],透過電信網路 (GSM 或 CDMA) 的空中接口對 SIM 卡數據及應用進行 遠程管理的技術,下載的方式分3種:簡訊/瀏覽器/PUSH方式,空中接口可以採用WAP、
GPRS、CDMA1X以及廣為普及的短訊 (SMS) 技術,因此用戶便可以靈活切換運營商,
做到換號不換卡的多重運用。
eSIM的基本結構如圖1所示[3][4],其中eUICC為嵌入式通用積體電路卡 (UICC), 即E-SIM,Mobile Network Operator (MNO) 是行動網路營運商,而Subscription Manager - Data Preparation (SM-DP) 則是負責儲存、管理電信設定檔,最後Subscription Manager Data – Preparation (SM-SR) 配置、管理eSIM晶片的資訊,SM-DP可與其他SM-SR實 現資料切換。其運作流程如下:
1. SM-DP從EUM獲取eUICC所需的工具以及服務
2. MNO也會提供相關資料給SM-DP,例如OTA傳輸方式
3. 隨後SM-SR再透過OTA(Over The Air)技術與eUICC通訊
圖1:eSIM的基本結構
2.3 區塊鏈
區塊鏈的架構與想法最早可以追溯回1991年,由Haber、Stuart和W. Scott Stornetta 所發表的論文[5],他們提出一個利用電腦運算為數位文件切實地標記時間,來達到資料 不能被追溯或篡改的解決方案;而真正讓此技術受到注目的契機,是一個名為中本聰 (Satoshi Nakamoto) 於2008年在網路上發布了一份名為”Bitcoin: A peer-to-peer electronic cash system”的文章[12],透過文章,可以知道區塊鏈具有以下幾點特性:
去中心化
安全性
每筆交易皆為公開
不可被竄改
每個節點的帳本內容都一樣
簡單來說,區塊鏈就是個建立在P2P (Peer to Peer) 網路架構的分散式帳本系統,每 一個區塊包含了前一個區塊的加密雜湊函數值、相應時間戳記以及交易資料,其中雜湊 函數擁有不容易找到相同函數值,這樣的設計使得區塊內容具有難以篡改的特性;為了 強調區塊鏈的共享性,所以每個節點都擁有一本帳本,記載了大家的交易紀錄,由於每 個人帳本內容都要一致,因此可以不必依賴中間的信賴機構來替雙方對帳,進而達到去 中心化;又因為前述所說幾個特性,若攻擊者偽裝自己是區塊鏈上的某一個節點,企圖 利用此散播惡意程式或是攻擊,在區塊鏈上,每個節點都需要經過驗證,不管是要竄改 資料或是成為惡意節點,至少要得到超過51%節點的認可,所以攻擊者想藉此破壞區塊 鏈,是很難達到的,因此區塊鏈對資料的儲存相對安全。
2.4 智能合約
智能合約 Smart Contract這個概念第一次出現是在 1994年,由Nick Szabo 提出來 的[13],所謂的合約就是雙方皆同意的一套規則,為了闡釋智能合約的概念,他舉了自 動販賣機當例子,當我們把硬幣投入自動販賣機後,當我們給足夠金額,自動販賣機便 會給我們所選的商品,廠商將規則(買賣合約)制定好並放入自動販賣機中,而負責實現 這份合約的就是自動販賣機,但自動販賣機也有可能遭受駭客入侵,或是廠商惡意竄改 合約規則,只收錢而不給商品,因此智能合約主要設計的目的在於確保合約的執行,且 避免惡意行為以及有不可預見的情況,最大程度地減少對受信任第三方的依賴,從而降 低交易成本。
隨著區塊鏈的出現[1][2][7][19][8],將可避免諸如此類的事情發生,當智能合約部署 在區塊鏈後,就無法被修改,這避免了合約被竄改的風險,且每筆交易在區塊鏈上都是 公開的,所以合約參與者都可以審查合約代碼是否有問題,且佈署於區塊鏈上的智能合 約,便無人可以阻止,可以有效執行。
參、區塊鏈 SIM架構概述
在本小節中,我們將介紹區塊鏈 SIM 架構,解釋如何讓SIM 的相關功能在區塊鏈 中實現,並利用此架構解決前述所說之困境,使得通訊更具安全性。依據文獻[4] [16][17], 不管是傳統SIM卡還是eSIM都具有三個主要功能:
SIM卡中存有自己的保密演算法及密鑰
用戶身份鑒權
儲存用戶相關資料
而後我們也會敘述如何將我們所設計的架構,利用區塊鏈特性,與此三個主要功能 對應。本文第一及第二小節,提及SIM卡與eSIM所面臨的問題,傳統SIM卡必須具有 卡槽,且一卡代表一電信業者,雖說這部分在eSIM得到了解決方案,且比傳統SIM卡 更具安全性,但是 eSIM的傳輸方式也帶來另一安全性隱憂,因此我們提出區塊鏈式的 SIM來解決相關問題,我們將沿用eSIM無卡槽的概念,透過區塊鏈註冊方式來配置我 們的區塊鏈SIM,考量到隱私性問題,針對行動用戶,我們將讓使用者自行選擇資料是 否加密或者公開,由於區塊鏈不可竄改特性,最後再把資料存放於區塊鏈之中,確保安 全性,如圖2。
圖2:區塊鏈SIM區塊圖
3.1 區塊鏈SIM架構
在我們所提議的區塊鏈架構中,如圖 3,電信業者或是營運商 (Telecom) 會佈署一 份智能合約,將其註冊流程、驗證方法與通訊方案等相關規則撰寫於其中,使用者將根 據其功能需求,對智能合約發起交易,當交易被判定為合法時才會被廣播於區塊鏈網路 中。而圖4我們展示了幾個主要子組件:
User Client:使用者節點
Smart Contract:智能合約,將依使用者其需求進行處裡
Worker Client:驗證其發出的交易 (Tran.) 的節點
Blockchain Network:區塊鏈網路
圖3:區塊鏈SIM概觀
圖4:區塊鏈SIM基本架構
3.2 功能
首先我們將介紹加密的方法,作為SIM卡中保有自己的保密演算法及密鑰的對應,
其次解釋用戶身份鑒權的功能如何在此架構中實現,最後再敘述我們如何儲存用戶的相 關數據。
3.2.1 加密算法及密鑰
使用者申請或是註冊區塊鏈 SIM的程式 Program,以下簡稱 P,用來取代eSIM 透 過 OTA傳輸的配置文件,在P 中我們把產生區塊鏈SIM的所需配置的資料放在其中,
例如電信業者資料、IMSI、公開金鑰密碼系統、雜湊加密法等相關演算法與數據。
公開金鑰密碼系統又稱為非對稱式RSA加密演算法,於1978年美國麻省理工學院 三位教授 Rivest、Shamir 及Adleman (RSA) 所提出,會產生一對金鑰,在區塊鏈中,
所有節點都保有一對金鑰,其中公開金鑰 (Public Key,PK) 可被廣為流傳,而私密金鑰 (Private key) 必須妥善保存,RSA加密演算法,使用對方的公開金鑰 (Public Key) 將明 文加密,而RSA解密演算法,則是必須使用自己的私密金鑰 (Private Key) 才能將密文 解出。為使資料更具安全性,我們採用了SHA (Security Hash Algorithm) 雜湊函式,利 用雜湊函數特性,將信息加以雜湊成為一串固定的字串,最後再把其自字串以私密金鑰 加密,所得內容即為該信息的數位簽章,可作為自己證明是信息的來源,若原始內容相 同則結果相同,反之,加上此函數無法透過結果反推原始資料,因此透過公私鑰與雜湊 函數的方法,可用於信息加密解密以及驗證身分[5]。
3.2.2 用戶身份鑒權
我們取代了傳統SIM卡與eSIM的用戶身分鑒權方式,利用區塊鏈特性,當使用者 發起交易時,皆需要對身分做驗證才可使得交易完成,我們以用戶申請區塊鏈SIM的流 程作為範例介紹,如圖5,步驟如下:
1. 使用者註冊時,將會輸入一組專屬自己的密碼,然後對Smart Contract發出請 求交易。
2. Smart Contract接收到以後,根據請求信息會回傳程式P參數。
3. 程式 P 執行以後會為使用者產生一區塊鏈 SIM 與一組唯一密鑰對,然後對 Smart Contract發起註冊交易。
4. 運用區塊鏈特性,Worker驗證交易。
5. 驗證成功後,便將資料佈署於區塊鏈,並廣播出去。
其中步驟 2 的程式 P 參數,裡面包含了電信業者資料、IMSI 生成法與公私鑰等產 生區塊鏈 SIM 的相關資料,而步驟 3 程式 P 則必需透過使用者解密才可以啟動,隨後
便將產生的資訊,其 < IDU , AddressU , PkU , SIMU , OtherU>傳送給Smart Contract做後續 處理。
圖5:區塊鏈SIM申請/註冊流程
3.2.3 儲存用戶的相關資料
在用戶儲存資料方面,我們一樣保有傳統SIM卡與eSIM功能,將可以儲存電話簿、
訊息等相關用戶自己的資料。下面我們以用戶儲存資料作為範例介紹,如圖 6,步驟如 下:
1. 使用者將把欲隱匿的信息先行加密,並對此密文作數位簽名。
2. 對Smart Contract發起交易
3. 運用區塊鏈特性,Worker驗證交易。
4. 驗證成功後,便將資料佈署於區塊鏈,並廣播出去。
其中步驟 1,使用者可以依據自己的需求,對欲隱匿的信息加密,是利用原有的密
鑰操作,隨後再與其他數據一起傳送給Smart Contract,經過Hash,每筆交易都會有使 用者的數位簽章,而步驟3再做驗證的時候,會根據使用者的公鑰來檢驗此信息的來源
區塊都含有上一個區塊的 Hash 值,使其竄改成本提高,當有一個區塊無法被驗證,交 易的不真實性就會曝光,因此可以確保資料的完整性與一致性。
圖6:區塊鏈SIM儲存流程
肆、結論
本研究提出了一種以區塊鏈技術為基礎的 SIM 架構,這個架構利用區塊鏈去中心 化特性,解決了傳統SIM卡與eSIM集中式儲存的問題。透過線上區塊鏈註冊系統,每 個節點都必須是合法的,因此可以過濾偽號碼,進而發起交易,然而每筆交易都需要經 過驗證,當驗證通過後才可以將其資料佈署於區塊鏈中,且每筆交易內容,用戶可以根 據自己的需求,加密欲隱匿的數據,唯有透過自己的私鑰解密才可看到其真正的資料,
這將使得用戶在操作區塊鏈SIM上更具有安全性以及隱匿性。在區塊鏈中,所記載的交 易紀錄是不可以隨意竄改的,不管是要竄改資料或是成為惡意節點,至少要得到超過 51%節點的認可,由於每個節點都擁有一本帳本,因此可以防止惡意攻擊的破壞,確保 資料儲存的完整性。未來,我們將進一步透過實作的方式來驗證區塊鏈SIM架構的可行 性。
[誌謝]
本研究由科計部計畫MOST 110-2221-E-197-002補助支持,特此誌謝。
參考文獻
[1] Ali Dorri, Marco Steger, Salil S. Kanhere and Raja Jurdak, "BlockChain: A Distributed Solution to Automotive Security and Privacy", IEEE Commun. Mag., vol. 55, no. 12, pp. 119-25, Dec. 2017.
[2] Byzantium Version, "Ethereum: a secure decentralised generalised transaction ledger", 2020, [online] Available: https://ethereum.github.- io /yellowpaper/paper.pdf.
[3] GSMA Embedded SIM Specification, [online] Available:
https://www.gsma.com/esim/esim/esim -specification/.
[4] GSMA Embedded SIM Specification Remote SIM Provisioning for M2M, 2014, [online] Available: https://www.gsma.com/iot/wp-content- /uploads/2014/10/Embedded-SIM-Toolkit-Oct-14-updated.pdf.
[5] S. Haber and W. S. Stornetta, "How to time-stamp a digital document", J. Cryptol., vol.
3, pp. 99-111, 1991.
[6] [online] Available: https://github.com/ethereum-/wiki/wiki/Design-Rationale.
[7] [online] Available: https://ethereum.org/en/white- paper/.
[8] [online] Available: https://ithelp.ithome.com.tw/articles/10201781.
[9] [online] Available: https://ithome.com.tw/news/- 133042.
[10] [online] Available: https://www. ithome.com.tw -/news/ 133327.
[11] Mumin Cebe, Enes Erdin, Kemal Akkaya, Hidayet Aksu and Selcuk Uluagac, "Block4- Forensic: An Integrated Lightweight Blockchain Framework for Forensics Applications of Connected Vehicles", IEEE Commun. Mag., vol. 56, no. 10, pp. 50-57, Oct. 2018.
[12] Satoshi Nakamoto, Bitcoin: A peer-to-peer electronic cash system, 2008, [online]
Available: https://bit- coin.org/bitcoin.pdf.
[13] Nick Szabo, "Smart contracts: Building blocks for digital markets", EX-TROPY: The Journal of Transhumanist Thought, no. 16, 1996.
[14] Ozer Aydemir and Ali Aydin Selcuk, "A Strong User Authentication Protocol for GSM", 14th IEEE International Workshop on Enabling Technologies Infrastructure for Collaborative Enterprise (WETICE'05) Linkopings University Sweden, 2005.
[15] Rui Yuan, Yu-Bin Xia, Hai-Bo Chen, Bin-Yu Zang and Jan Xie, "ShadowEth: Private
vol. 33, no. 3, pp. 542-556, 2018.
[16] Sheng He, "SIM Card Security" in Seminar Work, Temmuz:Ruhr-University of Bochum, 2007.
[17] Vesselkov A, H?mm?inen H, Ik?l?inen P, "Value networks of embedded SIM-based remote subscription management", Conf. of Telecommunication, Media and Internet Techno-Economics (CTTE), 2015.
[18] Yongle Chen, Xiaojian Wang, Yuli Yang and Hong Li, "Location-Aware Wi-Fi Authentication Scheme Using Smart Contract", Sensors (Basel), vol. 20, no. 4, Feb.
2020.
[19] Yuanyu Zhang, Shoji Kasahara, Yulong Shen, Xiaohong Jiang and Jianxiong Wan,
"Smart Contract-Based Access Control for the Internet of Things", IEEE Internet of Things Journal, vol. 6, no. 2, pp. 1594-1605, Apr. 2019.
[20] [online] Available: http://www.twcloud.org.tw/-
files/file_pool/1/0j123554536798487144/台灣雲協-物聯網 eSIM 技術與應用白皮 書.pdf.