• 沒有找到結果。

金鑰管理的安全性分析

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

5.2.7 用戶變更密碼成功畫面

如圖 5.7 用戶變更密碼成功畫面。

圖 5.7 用戶變更密碼成功畫面

5.3 金鑰管理的安全性分析

加密貨幣錢包帳戶遺失私鑰就像丟失了唯一的一把保險箱鑰匙,保險箱或許還能破壞式 的將其打開,但錢包裡的加密貨幣卻是沒辦法再找回;而提供交易的加密貨幣帄台,亦 可能為了易於操作、節省成本等因素,未能妥善保管用戶的私鑰,導致用戶的私鑰被竊 而造成損失。

本研究在蒐集加密貨幣交易帄台相關資訊後發現,LocalEthereum 提供之帄台服務 是較具安全性的方式,讓用戶能自行掌握密鑰的使用,使帄台管理者完全無法自行取得 用戶密鑰,並且所有交易都寫上區塊鏈,但仍然未能解決用戶密鑰遺失的問題,故提出 運用 FIDO 標準之身分驗證機制,結合秘密分享(Share Sharing)之方式,除了解決此 問題亦可維持其安全性,提出的做法及論點如下述:

1. 使用 Shamir 所提出的秘密分享方法[27],將錢包帳戶密鑰作(2, 3)秘密分享拆分成三

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

份秘密並加密保管,其中 2 份解密可以還原:為使用戶在遺失密碼時仍可使用密鑰,

故除了使用用戶密碼加密第一份秘密之外,增加以身分辨識驗證之方式加密第二份 秘密,確保仍維持用戶可自行保管使用,此外,使用加密貨幣管理帄台之管理公鑰 加密第三份,確保僅能透過帄台提供的服務使用其中一種用戶身分驗證方式解密,

防止用戶因行動裝置失竊或遺失密碼無法解密之風險。

2. 使用 FIDO 標準[21]作為身分驗證機制:透過 FIDO UAF 之認證機制進行用戶行動 裝置與 FIDO Server 註冊與驗證,完成裝置與伺服端之公私鑰密碼認證,確保用戶 交易與註冊裝置之一致性。

3. 使用 PBKDF2 將用戶密碼 Passphrase 做 PBKDF2 密碼延伸:此亦為 LocalEthereum 帄台之運作機制,本研究維持之原因,主要因為此做法可在不儲存用戶密碼的情況 下,使用 Salt 及 Iterations 隨機參數與將密碼進行轉換,伺服端只需儲存參數值及 運算次數,透過 DApp 相同函式即可還原密碼,並且因運算次數設有 50,000 次的最 低門檻,能夠削弱暴力破解的能力,提高密碼保護之安全性。

本研究透過上述之論點,設計註冊、登入及密碼變更之流程,經實作驗證可達成目 標,透過帄台使用密碼或 FIDO 身分驗證達成可還原的私鑰管理機制。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

第 6 章 結論與未來研究

現行加密貨幣交易帄台用戶私鑰保管的方式,其一是設計由用戶端自行保管及備份私鑰,

但極可能因遺失、被盜等因素,導致丟失了價值不斐的加密貨幣;另一種方式是由信任 的中心化交易所代為保管,更大的風險是可能因駭客的攻擊,或交易所員工監守自盜,

致使許多用戶的加密貨幣都遭竊走,損失往往都是非常驚人,交易所亦可能因此倒閉,

故提出秘密分享(Secret Sharing)以幫助私鑰保管改善,增加管理之安全性。

本研究改良 LocalEthereum 之密鑰保管之方式,以秘密分享(Secret Sharing)之方 法加強用戶自行保管並結合 FIDO 機制,使用戶能有兩種登入模式選用,經研究驗證此 流程可依設計之方法實驗完成,成功以其中一種登入方式還原私鑰,並可再變更密碼重 新將密鑰加密儲存,改善用戶私鑰保管問題與遺失之風險。

最後,在本研究設計結合了 FIDO UAF 認證框架於流程中,而在 FIDO2 的標準能 使 Web Authentication 設計更為流暢並同包含 UAF,但因目前 FIDO2 的支援性尚未完全,

故在未來的研究中,可考量使用 FIDO2 之架構,在設計 Web 介面與流程時,透過瀏覽 器與行動裝置連結進行身分驗證,使用者體驗會更好。

[1] 北美智權報 213 期,ICO 監管,關鍵得靠業者自律,Retrieved February 16 2019, from:

http://www.naipo.com/Portals/1/web_tw/Knowledge_Center/Industry_Economy/IPNC_18061 [7] Satoshi Nakamoto, (2008), Bitcoin-A Peer-to-Peer Electronic Cash System, Retrieved February 16 2019, from: https://bitcoin.org/bitcoin.pdf

[8] 商業周刊 1600 期,2018.07,區塊鏈活用指南,page 80-81.

[9] 科學人雜誌 No.192,2018.02,鑄造全新貨幣秩序特別報導,page 32-35.

[10] Scott Vanstone, (July 1992), Responses to NIST’s Proposal, Communications of the ACM, Retrieved February 16 2019, from: https://dl.acm.org/citation.cfm?id=129905

[11] 國家發展委員會重大政策,智慧政府推動策略計畫,Retrieved February 16 2019, from:

https://www.ndc.gov.tw/Content_List.aspx?n=589F7971894A9B51&upn=4ACC9949162C68 56

[12] Trade Tech–A New Age for Trade and Supply Chain Finance, Retrieved February 16

2019, from: http://www3.weforum.org/docs/WEF_White_Paper_Trade_Tech_.pdf

[13] Building Block(chain)s for a Better Planet, Retrieved February 16 2019, from:

http://www3.weforum.org/docs/WEF_Building-Blockchains.pdf

[14] iThome News, Retrieved March 9 2019, from: https://www.ithome.com.tw/news/115341 [15] Business Insider News, Retrieved March 9 2019, from:

Decentralized Application Platform, Retrieved February 16 2019, from:

http://blockchainlab.com/pdf/Ethereum_white_paper-a_next_generation_smart_contract_and_

decentralized_application_platform-vitalik-buterin.pdf

[18] 經 濟 日 報 , Retrieved March 9 2019 , from:

https://money.udn.com/money/story/5613/3675743

[19] LocalEthereum Witepaper, Retrieved April 14 2019, From:

https://whitepaper.localethereum.com/

[20] 橢 圓 曲 線 Diffie-Hellman, Retrieved April 14 2019, From:

https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange

[21] Alliance Overview, Retrieved February 16 2019, from: https://fidoalliance.org/overview/

[22] FIDO UAF Architectural Overview(Draft 02), Retrieved February 16 2019, from:

https://fidoalliance.org/specs/fido-uaf-v1.1-id-20170202/fido-uaf-overview-v1.1-id-20170202 .html

[23] FIDO2 Project, Retrieved February 16 2019, from: https://fidoalliance.org/fido2/

[24] Web Authentication: An API for accessing Public Key Credentials Level 1, Retrieved February 16 2019, from: https://www.w3.org/TR/webauthn/

[25] Client to Authenticator Protocol (CTAP), Retrieved February 16 2019, from:

https://fidoalliance.org/specs/fido-v2.0-id-20180227/fido-client-to-authenticator-protocol-v2.0 -id-20180227.html

[26] W3C and FIDO Alliance Finalize Web Standard for Secure, Retrieved April 20 2019,

From: https://www.w3.org/2019/03/pressrelease-webauthn-rec.html

[27] G. R. Blakley, (1979), Safeguarding Cryptographic Keys, in Proc. AFIPS 1979 NCC, vol.

48, pp. 313-317.

[28] A. Shamir, (1979), How to Share a Secret, Communications of the ACM, vol. 22, pp.

612-613.

[29] RONG Hui-gui, MO Jin-xia, CHANG Bing-guo, SUN Guang, LONG Fei, (2015), Key distribution and recovery algorithm based on Shamir's secret sharing, Journal on Communications, vol. 36, page 1-6.

[30] F. Yao, Frances & Lisa Yin, Yiqun. (2005). Design and Analysis of Password-Based Key Derivation Functions. IEEE Transactions on Information Theory - TIT. 51. 245-261.