TWI693573B - 可監管且總量可控的數位貨幣發行系統及其方法 - Google Patents
可監管且總量可控的數位貨幣發行系統及其方法 Download PDFInfo
- Publication number
- TWI693573B TWI693573B TW107113612A TW107113612A TWI693573B TW I693573 B TWI693573 B TW I693573B TW 107113612 A TW107113612 A TW 107113612A TW 107113612 A TW107113612 A TW 107113612A TW I693573 B TWI693573 B TW I693573B
- Authority
- TW
- Taiwan
- Prior art keywords
- account
- digital currency
- client
- contract
- total amount
- Prior art date
Links
Images
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
一種可監管且總量可控的數位貨幣發行系統及其方法,透過監管端發布帳號管理合約,以及在其中預先設置總量參數,用以與不同條件範圍的數位貨幣總量比對,並根據比對結果設定監管狀態,當客戶端向金融端申請帳號時,金融端執行帳號管理合約建立對應客戶端的帳號,並且發布與帳號對應的帳號合約,當金融端偵測到客戶端入金/出金後,分別執行帳號管理合約與帳號合約並呼叫其中的函式,以便在監管狀態為允許時,發行/回收數位貨幣,用以達到監管數位貨幣且提高數位貨幣的價格穩定性之技術功效。
Description
本發明涉及一種數位貨幣發行系統及其方法,特別是可監管且總量可控的數位貨幣發行系統及其方法。
近年來,隨著數位貨幣的普及與蓬勃發展,各種數位貨幣便如雨後春筍般出現。然而,如何有效監管及維持價格穩定性一直是各家廠商亟欲解決的問題之一。
一般而言,常見的數位貨幣,例如:比特幣、以太幣、萊特幣等等,係以點對點(Peer to Peer,P2P)方式運行在去中心化(Decentralization)的區塊鏈網路(Blockchain Network)上,其不依賴中央機構發行及維護,整個交易過程都在匿名的情況下完成,雖然能得知交易的來源地址、目的位址及交易金額,但是來源地址與目的地址難以與使用者的真實身分對應,所以無法有效對數位貨幣進行監管。另外,數位貨幣的價值完全依靠全球投資者的認同程度來進行反應,所以容易因投機炒作暴起暴跌,故具有數位貨幣難以監管且價格穩定性不佳的問題。
有鑑於此,便有廠商提出將數位貨幣與單一法幣(如:美金)掛勾的技術,也就是說將數位貨幣與法幣維持在一比一的兌換率,用以維持數位貨幣的價格穩定性。然而,此方式未受控管且帳務未公開,使用者無法確認數位貨幣是否有被濫發,或者是否有足夠的法幣作為數位貨幣的擔保,造成公信力不足。另外,由於此方式不需驗證使用者的真實身分,也難以追蹤數位貨幣的流向,所以容易使數位貨幣成為洗錢工具,故仍然無法有效解決數位貨幣難以監管且價格穩定性不佳的問題。
綜上所述,可知先前技術中長期以來一直存在數位貨幣難以監管且價格穩定性不佳之問題,因此實有必要提出改進的技術手段,來解決此一問題。
本發明揭露一種可監管且總量可控的數位貨幣發行系統及其方法。
首先,本發明揭露一種可監管且總量可控的數位貨幣發行系統,應用在區塊鏈網路環境中,此系統包含:客戶端、監管端及金融端。所述客戶端用以在申請帳號時,傳送帳號的申請請求,以及接收申請到的帳號之帳號合約地址。
所述監管端包含:初始模組及監管模組。其中,初始模組用以於初始時,透過區塊鏈交易發布帳號管理合約,並且獲得對應此帳號管理合約的帳號管理合約地址,所述帳號管理合約包含多個函式,分別用以建立帳號、發行數位貨幣、回收數位貨幣以及管理帳號發行者名單及數位貨幣發行者名單;
所述監管模組用以在帳號管理合約中,預先設定在條件範圍中的總量參數,並且持續累計數位貨幣在每一條件範圍中的總量以與相應的總量參數進行比對,當大於或等於總量參數時,將所述條件範圍的監管狀態設為禁止,當小於總量參數時,將監管狀態設為允許,其中所述條件範圍包含指定的單位時間及指定的帳號或兩者任一,所述總量參數包含數位貨幣的流通總量、發送總量、接收總量、發行總量及回收總量至少其中之一。
所述金融端存在於帳號發行者名單及數位貨幣發行者名單中,所述金融端包含:執行模組、入金模組及出金模組。其中,執行模組用以在監管端完成初始後,接收來自客戶端的申請請求,並且執行認識客戶程序(Know Your Customer,KYC),當客戶端通過認識客戶程序後,執行模組根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式以建立對應客戶端的帳號,以及透過區塊鏈交易發布對應此帳號的帳號合約,並且獲得對應此帳號合約的帳號合約地址,以及將此帳號合約地址傳送至對應的客戶端;入金模組用以在偵測到客戶端入金後,根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式以在監管狀態為允許時,發行數位貨幣並增加至客戶端的帳號,其中,數位貨幣的發行數量與入金的金額為正相關;出金模組用以在偵測到客戶端出金後,根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式以在監管狀態為允許時,自對應客戶端的帳號扣除與出金的金額等值的數位貨幣。
另外,本發明揭露一種可監管且總量可控的數位貨幣發行方法,應用在具有客戶端、監管端及金融端的區塊鏈網路環境中,其步驟包括:監管端於初始時,透過區塊鏈交易發布帳號管理合約,並且獲得對應此帳號管理合約的帳號管理合約地址,所述帳號管理合約包含多個函式,分別用以建立帳號、
發行數位貨幣、回收數位貨幣以及管理帳號發行者名單及數位貨幣發行者名單,其中,帳號發行者名單及數位貨幣發行者名單中皆包含金融端;監管端在帳號管理合約中,預先設定在條件範圍中的總量參數,並且持續累計數位貨幣在每一條件範圍中的總量以與相應的總量參數進行比對,當大於或等於總量參數時,將所述條件範圍的監管狀態設為禁止,當小於總量參數時,將監管狀態設為允許,其中所述條件範圍包含指定的單位時間及指定的帳號或兩者任一,所述總量參數包含數位貨幣的流通總量、發送總量、接收總量、發行總量及回收總量至少其中之一;當金融端接收到來自客戶端的申請請求時,金融端執行認識客戶程序,並且在客戶端通過認識客戶程序後,根據帳號管理合約地址執行帳號管理合約,用以呼叫函式以建立對應客戶端的帳號,以及透過區塊鏈交易發布對應此帳號的帳號合約,並且獲得對應帳號合約的帳號合約地址,以及將帳號合約地址傳送至對應的客戶端;當金融端偵測到客戶端入金後,金融端根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式以在監管狀態為允許時,發行數位貨幣並增加至客戶端的帳號,其中,數位貨幣的發行數量與入金的金額為正相關;以及當金融端偵測到客戶端出金後,金融端根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式以在監管狀態為允許時,自對應客戶端的帳號扣除與出金的金額等值的數位貨幣。
本發明所揭露之系統與方法如上,與先前技術的差異在於本發明是透過監管端發布帳號管理合約,以及在其中預先設置總量參數,用以與不同條件範圍的數位貨幣總量比對,並根據比對結果設定監管狀態,當客戶端向金融端申請帳號時,金融端執行帳號管理合約建立對應客戶端的帳號,並且發布與帳號對應的帳號合約,當金融端偵測到客戶端入金/出金後,分別執行帳號
管理合約與帳號合約並呼叫其中的函式,以便在監管狀態為允許時,發行/回收數位貨幣。
透過上述的技術手段,本發明可以達成監管數位貨幣且提高數位貨幣的價格穩定性之技術功效。
100:區塊鏈網路
110:客戶端
120:監管端
121:初始模組
122:監管模組
130:金融端
131:執行模組
132:入金模組
133:出金模組
300:申請視窗
310:申請帳號元件
320:顯示區塊
400:交易確認視窗
410:入金金額顯示區塊
420:帳號餘額顯示區塊
430:存款證明雜湊值顯示區塊
500:出金確認視窗
510:帳號餘額顯示區塊
520:出金金額顯示區塊
步驟210:監管端於初始時,透過區塊鏈交易發布一帳號管理合約,並且獲得對應該帳號管理合約的一帳號管理合約地址,該帳號管理合約包含多個函式,分別用以建立一帳號、發行至少一數位貨幣、回收所述數位貨幣以及管理一帳號發行者名單及一數位貨幣發行者名單,其中,該帳號發行者名單及該數位貨幣發行者名單中皆包含該金融端
步驟220:該監管端在該帳號管理合約中,預先設定在至少一條件範圍中的至少一總量參數,並且持續累計所述數位貨幣在每一條件範圍中的總量以與相應的所述總量參數進行比對,當大於或等於所述總量參數時,將所述條件範圍的一監管狀態設為禁止,當小於所述總量參數時,將該監管狀態設為允許
步驟230:當金融端接收到來自客戶端的一申請請求時,該金融端執行一認識客戶程序(Know Your Customer,KYC),並且在所述客戶端通過該認識客戶程序後,根據該帳號管理合約地址執行該帳號管理合約,用以呼叫所述函式以建立對應所述客戶端的該帳號,以及透過區塊鏈交易發布對應該帳號的一帳號合約,並且獲得對應
該帳號合約的一帳號合約地址,以及將該帳號合約地址傳送至對應的所述客戶端
步驟240:當該金融端偵測到所述客戶端入金後,該金融端根據該帳號管理合約地址執行該帳號管理合約,用以呼叫其中的所述函式以在該監管狀態為允許時,發行所述數位貨幣並增加至所述客戶端的該帳號,其中,所述數位貨幣的發行數量與入金的金額為正相關
步驟250:當該金融端偵測到所述客戶端出金後,該金融端根據該帳號管理合約地址執行該帳號管理合約,用以呼叫其中的所述函式以在該監管狀態為允許時,自對應所述客戶端的該帳號扣除與出金的金額等值的所述數位貨幣
步驟260:所述客戶端其中之一作為一發送端,所述客戶端其中另一作為一接收端,當該發送端傳送所述數位貨幣至該接收端時,該發送端執行該發送端的該帳號合約,用以使用一客戶端私鑰呼叫其中的一發送函式,並且將一金額及該接收端的一帳號地址帶入該發送函式,使該發送端的該帳號合約在該監管狀態為允許時,呼叫該接收端的該帳號合約中的一接收函式,用以將該金額增加至該接收端的該帳號,以及在該發送端的該帳號中扣除該金額
第1圖為本發明可監管且總量可控的數位貨幣發行系統之系統方塊圖。
第2A圖及第2B圖為本發明可監管且總量可控的數位貨幣發行方法之方法流程圖。
第3圖為應用本發明申請帳號之示意圖。
第4圖為應用本發明根據入金金額發行數位貨幣之示意圖。
第5圖為應用本發明根據出金金額回收數位貨幣之示意圖。
以下將配合圖式及實施例來詳細說明本發明之實施方式,藉此對本發明如何應用技術手段來解決技術問題並達成技術功效的實現過程能充分理解並據以實施。
在說明本發明所揭露之可監管且總量可控的數位貨幣發行系統及其方法之前,先對本發明所應用的環境作說明,本發明是應用在執行智能合約的區塊鏈網路中,在區塊鏈網路中的計算機設備皆可視為區塊鏈節點(或簡稱為節點),所述區塊鏈節點透過P2P方式連接,並且用以處理區塊鏈交易
(Blockchain Transactions)。在實際實施上,計算機設備可為伺服器、電腦主機、筆記型電腦、平板電腦、智慧型手機等等,用以執行電腦程式指令,例如:區塊鏈程式「Ethereum」。另外,文中所述的「帳號管理合約」及「帳號合約」皆是指智能合約,所述智能合約是指依據既定的條件及傳輸的資訊來驅動執行指令的電腦程式,在實際實施上,所述智能合約係透過程式語言,例如:Solidity、Serpent、LLL、EtherScript、Sidechain等等來撰寫,其可包含各種不同的函式(Function)、事件(Event)、參數狀態等等,以區塊鏈程式「Ethereum」為例,其智能合約是經編譯後得到二進位編碼及應用二進位介面(Application Binary Interface,ABI),以便將智能合約廣播至區塊鏈網路,等候礦工(Miner)將智能合約放上區塊鏈並得到相應的地址,至此即透過區塊鏈交易完成智能合約的發布。之後,各節點便可根據此地址執行相應的智能合約,並且藉由不同的指令來改變智能合約在區塊鏈上的狀態以及偵測事件是否被觸發。特別要說明的是,執行智能合約的函式將另一個智能合約的地址儲存在智能合約中,如:儲存在陣列,此一方式可稱為「註冊(Registry)」,亦即將智能合約註冊在另一個智能合約中,使兩個智能合約產生關聯。另外,本發明所述的數位貨幣可以是透過智能合約實現的數位代幣(Token),其僅存在於智能合約中的記錄,每次轉移數位代幣都是呼叫智能合約中的函式進行變動(如:增加或扣除)。
以下配合圖式對本發明可監管且總量可控的數位貨幣發行系統及其方法做進一步說明,請先參閱「第1圖」,「第1圖」為本發明可監管且總量可控的數位貨幣發行系統的系統方塊圖,應用在區塊鏈網路100環境中,此系統包含:客戶端110、監管端120及金融端130。其中,客戶端110用以在使用者申請帳號時,傳送帳號的申請請求至監管端120,以及接收申請到的帳號之帳號
合約地址,如:「1GwV7fPX......」。在實際實施上,所述區塊鏈網路100可為公有鏈、私有鏈或聯盟鏈,其中,公有鏈不限制可參與的人員,而私有鏈及聯盟鏈則會限制參與的人員(如:私有鏈僅限同一組織的成員參與;聯盟鏈則允許跨組織的成員參與)。所述客戶端110、監管端120及金融端130均為區塊鏈網路100中的節點,所述區塊鏈網路100中可包含多個客戶端110,不同的客戶端110之間可以互相發送及接收數位貨幣,舉例來說,其中一個客戶端作為發送端,另一個客戶端作為接收端,當發送端傳送數位貨幣至接收端時,發送端執行發送端的帳號合約,用以使用其本身的客戶端私鑰來呼叫帳號合約中的發送函式,並且將欲發送的金額及接收端的帳號地址(如:帳號合約地址)帶入發送函式,使發送端的帳號合約在監管狀態為允許時,呼叫接收端的帳號合約中的接收函式,以便由接收端的帳號合約之函式(如:接收函式)將金額增加至接收端的帳號,以及由發送端的帳號合約之函式(如:發送函式)在發送端的帳號中扣除此金額。換句話說,有別於傳統未使用智能合約直接發送及接收數位貨幣的方式,所述客戶端110在每一次交易中,需要同時執行接收方及發送方的智能合約之函式,以便分別對相應的帳號進行增加金額和扣除金額,即:接收方的智能合約之函式對接收方的帳號進行增加金額;發送方的智能合約之函式對發送方的帳號扣除金額。另外,所述發送函式還可允許帶入通用唯一識別碼(Universally Unique Identifier,UUID),用以作為識別使用者的身分。
接著,在監管端120的部分,所述監管端120包含:初始模組121及監管模組122。其中,初始模組121用以於初始時,透過區塊鏈交易發布帳號管理合約,並且獲得對應此帳號管理合約的帳號管理合約地址,所述帳號管理合約包含多個函式,分別用以建立帳號(如:建立函式)、發行數位貨幣(如:
發行函式)、回收數位貨幣(如:回收函式)以及管理帳號發行者名單及數位貨幣發行者名單(如:管理函式)。其中,記錄在帳號發行者名單中的帳號,代表擁有此帳號的裝置具有建立帳號的權限;記錄在數位貨幣發行者名單中的帳號,代表擁有此帳號的裝置具有發行數位貨幣的權限。特別要說明的是,由於帳號管理合約發布完成後,區塊鏈網路100中的所有節點上的區塊鏈都會有此帳號管理合約,所以各節點只要知道帳號管理合約地址就能執行此帳號管理合約,而為了讓區塊鏈網路100中的其它節點能夠得知此帳號管理合約地址,可以在帳號管理合約發布完成時,觸發一個事件並帶入本身的帳號管理合約地址,以便在各節點偵測到事件被觸發後,能夠同時獲得前述帶入的帳號管理合約地址,進而根據帳號管理合約地址來執行帳號管理合約。
監管模組122用以在帳號管理合約中,預先設定在條件範圍中的總量參數,並且持續累計數位貨幣在每一條件範圍中的總量以與相應的總量參數進行比對,當大於或等於總量參數時,將監管狀態設為禁止,當小於總量參數時,將監管狀態設為允許。在實際實施上,所述條件範圍可包含指定的單位時間(如:每日、每週、每月等等)及指定的該帳號(如:個別帳號)或兩者任一,所述總量參數包含數位貨幣的流通總量、發送總量、接收總量、發行總量及回收總量至少其中之一。舉例來說,假設預先設定在條件範圍中的總量參數為「每日數位貨幣發行總量」,當每日持續累計的數位貨幣發行總量大於或等於總量參數「每日數位貨幣發行總量」時,將單位時間的監管狀態設為禁止,反之則設為允許;同樣地,假設預先設定在條件範圍中的總量參數為「個別帳號數位貨幣發行總量」,當個別帳號持續累計的數位貨幣發行總量大於或等於總量參數「個別帳號數位貨幣發行總量」時,將個別帳號的監管狀態設為禁止,
反之則設為允許,並以此類推。另外,所述總量參數可根據認識客戶程序的風險評估訊息進行調整,當風險評估訊息為高風險時,降低總量參數的數值,反之,當風險評估訊息為低風險時,增加總量參數的數值。換句話說,高風險的使用者每次能夠獲得及使用的數位貨幣較少,低風險的使用者每次能夠獲得及使用的數位貨幣較多。
在金融端130的部分,此金融端130存在於帳號發行者名單及數位貨幣發行者名單中,此金融端130包含:執行模組131、入金模組132及出金模組133。其中,所述執行模組131用以在監管端120完成初始後,接收來自客戶端110的申請請求,並且執行KYC,當客戶端110通過認識客戶程序後,執行模組131根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式(如:建立函式)以建立對應客戶端110的帳號,以及透過區塊鏈交易發布對應此帳號的帳號合約,並且獲得對應此帳號合約的帳號合約地址,以及將帳號合約地址傳送至對應的客戶端110。在實際實施上,金融端130可為銀行或其它允許發行數位貨幣的組織機構等等。
入金模組132用以在偵測到客戶端110入金後,根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式(如:帳號管理合約中的發行函式),以便在監管狀態為允許時,發行數位貨幣並增加至客戶端110的帳號,其中,數位貨幣的發行數量與入金的金額為正相關。在實際實施上,帳號管理合約中的此函式會先確認呼叫此函式的金融端130是否具有發行數位貨幣的權限(即:金融端130是否在數位貨幣發行者名單中,倘若存在即代表具有權限,反之則代表沒有權限)、客戶端110的帳號是否可用(如:帳號被凍結代表不可用,反之則代表可用)、數位貨幣發行總量是否小於預設的總量參數,倘若以上皆
是,便根據客戶端110的帳號執行相應的帳號合約,並且將金額(如:與入金的金額相等或其倍數)帶入所述帳號合約中的函式(如:帳號合約中的發行函式),以便由客戶端110的帳號合約中的函式增加客戶端110的帳號的相應金額。至此,完成發行數位貨幣。特別要說明的是,除了將金額帶入所述帳號合約中的函式之外,還可將客戶端110的存款證明訊息進行雜湊(Hash)計算以生成相應的存款證明雜湊值,並且在呼叫函式發行數位貨幣時,將此存款證明雜湊值連同所述金額一併帶入函式。
出金模組133用以在偵測到客戶端110出金後,根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式(如:帳號管理合約中的回收函式),以便在監管狀態為允許時,自對應客戶端110的帳號中扣除與出金的金額等值的數位貨幣。在實際實施上,在帳號管理合約中的此函式會先確認呼叫此函式的金融端130是否具有發行數位貨幣的權限,以及確認客戶端110的帳號是否可用,倘若兩者皆是,便根據客戶端110的帳號執行相應的帳號合約,並且將金額帶入所述帳號合約中的函式(如:帳號合約中的回收函式),由客戶端110的帳號合約中的函式扣除客戶端110的帳號中的相應金額。至此,完成回收數位貨幣。
特別要說明的是,在實際實施上,本發明所述的各模組皆可利用各種方式來實現,包含軟體、硬體或其任意組合,例如,在某些實施方式中,各模組可利用軟體及硬體或其中之一來實現,除此之外,本發明亦可部分地或完全地基於硬體來實現,例如,系統中的一個或多個模組可以透過積體電路晶片、系統單晶片(System on Chip,SoC)、複雜可程式邏輯裝置(Complex Programmable Logic Device,CPLD)、現場可程式邏輯閘陣列(Field Programmable
Gate Array,FPGA)等。本發明可以是系統、方法及/或電腦程式。電腦程式可以包括電腦可讀儲存媒體,其上載有用於使處理器實現本發明的各個方面的電腦可讀程式指令,電腦可讀儲存媒體可以是可以保持和儲存由指令執行設備使用的指令的有形設備。電腦可讀儲存媒體可以是但不限於電儲存設備、磁儲存設備、光儲存設備、電磁儲存設備、半導體儲存設備或上述的任意合適的組合。電腦可讀儲存媒體的更具體的例子(非窮舉的列表)包括:硬碟、隨機存取記憶體、唯讀記憶體、快閃記憶體、光碟、軟碟以及上述的任意合適的組合。此處所使用的電腦可讀儲存媒體不被解釋為瞬時信號本身,諸如無線電波或者其它自由傳播的電磁波、通過波導或其它傳輸媒介傳播的電磁波(例如,通過光纖電纜的光信號)、或者通過電線傳輸的電信號。另外,此處所描述的電腦可讀程式指令可以從電腦可讀儲存媒體下載到各個計算/處理設備,或者通過網路,例如:網際網路、區域網路、廣域網路及/或無線網路下載到外部電腦設備或外部儲存設備。網路可以包括銅傳輸電纜、光纖傳輸、無線傳輸、路由器、防火牆、交換器、集線器及/或閘道器。每一個計算/處理設備中的網路卡或者網路介面從網路接收電腦可讀程式指令,並轉發此電腦可讀程式指令,以供儲存在各個計算/處理設備中的電腦可讀儲存媒體中。執行本發明操作的電腦程式指令可以是組合語言指令、指令集架構指令、機器指令、機器相關指令、微指令、韌體指令、或者以一種或多種程式語言的任意組合編寫的原始碼或目的碼(Object Code),所述程式語言包括物件導向的程式語言,如:Common Lisp、Python、C++、Objective-C、Smalltalk、Delphi、Java、Swift、C#、Perl、Ruby與PHP等,以及常規的程序式(Procedural)程式語言,如:C語言或類似的程式語言。計算機可讀程式指令可以完全地在電腦上執行、部分地在電腦上執行、
作為一個獨立的軟體執行、部分在客戶端電腦上部分在遠端電腦上執行、或者完全在遠端電腦或伺服器上執行。
請參閱「第2A圖」及「第2B圖」,「第2A圖」及「第2B圖」為本發明可監管且總量可控的數位貨幣發行方法的方法流程圖,應用在具有客戶端110、監管端120及金融端130的區塊鏈網路100環境中,其步驟包括:監管端120於初始時,透過區塊鏈交易發布帳號管理合約,並且獲得對應此帳號管理合約的帳號管理合約地址,此帳號管理合約包含多個函式,分別用以建立帳號、發行數位貨幣、回收數位貨幣以及管理帳號發行者名單及數位貨幣發行者名單,其中,帳號發行者名單及數位貨幣發行者名單中皆包含金融端130(步驟210);監管端120在帳號管理合約中,預先設定在條件範圍中的總量參數,並且持續累計數位貨幣在每一條件範圍中的總量以與相應的總量參數進行比對,當大於或等於總量參數時,將條件範圍對應的監管狀態設為禁止,當小於總量參數時,將監管狀態設為允許(步驟220);當金融端130接收到來自客戶端110的申請請求時,金融端130執行認識客戶程序,並且在客戶端110通過認識客戶程序後,根據帳號管理合約地址執行帳號管理合約,用以呼叫函式以建立對應客戶端110的帳號,以及透過區塊鏈交易發布對應此帳號的帳號合約,並且獲得對應帳號合約的帳號合約地址,以及將帳號合約地址傳送至對應的客戶端110(步驟230);當金融端130偵測到客戶端110入金後,金融端130根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式以在監管狀態為允許時,發行數位貨幣並增加至客戶端110的帳號,其中,所述數位貨幣的發行數量與入金的金額為正相關(步驟240);當金融端130偵測到客戶端110出金後,金融端130根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式以在監管狀態
為允許時,自對應客戶端110的帳號扣除與出金的金額等值的數位貨幣(步驟250)。透過上述步驟,即可透過監管端120發布帳號管理合約,以及在其中預先設置總量參數,用以與不同條件範圍的數位貨幣總量比對,並根據比對結果設定監管狀態,當客戶端110向金融端130申請帳號時,金融端130執行帳號管理合約建立對應客戶端110的帳號,並且發布與帳號對應的帳號合約,當金融端130偵測到客戶端110入金/出金後,分別執行帳號管理合約與帳號合約並呼叫其中的函式,以便在監管狀態為允許時,發行/回收數位貨幣。
特別要說明的是,在步驟250之後,其中一個客戶端110可作為發送端,另一個客戶端110可作為接收端,當發送端傳送數位貨幣至接收端時,發送端執行發送端的帳號合約,用以使用客戶端私鑰呼叫其中的發送函式,並且將金額及接收端的帳號地址帶入發送函式,使發送端的帳號合約在監管狀態為允許時,呼叫接收端的帳號合約中的接收函式,用以將金額增加至接收端的帳號,以及在發送端的帳號中扣除此金額(步驟260)。
以下配合「第3圖」至「第5圖」以實施例的方式進行如下說明,請先參閱「第3圖」,「第3圖」為應用本發明申請帳號之示意圖。假設區塊鏈網路100中的所有節點皆已經初始完成,當使用者欲申請帳號時,可在客戶端110開啟申請視窗300且點選申請帳號元件310,用以傳送帳號的申請請求至金融端130。接著,金融端130根據接收到的申請請求執行KYC,用以獲得使用者的基本資料、財務狀況及風險評估等等。當客戶端110通過KYC後,金融端130根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式以建立對應客戶端110的帳號,以及透過區塊鏈交易發布對應此帳號的帳號合約,並且獲得對應此帳號合約的帳號合約地址,如:「1GwV7fPX......」,然後將帳號合約地址傳送
至對應的客戶端110,以便顯示在如「第3圖」所示意的顯示區塊320,提供使用者瀏覽。特別要說明的是,金融端130透過區塊鏈交易發布對應此帳號的帳號合約,其中同樣包含多個函式,如:發行函式、回收函式、發送函式及接收函式等等,並且允許區塊鏈網路100中的所有節點,在得知帳號合約地址的前提下呼叫相應帳號合約中的這些函式。
如「第4圖」所示意,「第4圖」為應用本發明根據入金金額發行數位貨幣之示意圖。當使用者至具有發行數位貨幣的金融端130進行入金時,可透過銀行帳號或是第三方營運商之信託帳號進行匯款,並且提供客戶端110的帳號以供金融端130識別。當入金完成後,金融端130便根據帳號管理合約地址執行帳號管理合約,並且使用金融端130的私鑰呼叫帳號管理合約中用以發行數位貨幣的函式,此函式在確認金融端130具有發行數位貨幣的權限、客戶端110的帳號為可用狀態以及監管狀態為允許之後,即根據客戶端110的帳號執行相應的帳號合約,並且將金額(如:與入金的金額相等或其倍數)帶入所述帳號合約中的函式(如:帳號合約中的發行函式),以便由客戶端110的帳號合約中的函式在確認金融端130具有發行數位貨幣的權限後,將與帶入的金額相等的數位貨幣增加至客戶端110的帳號。如此一來,便完成發行數位貨幣,並且將發行的數位貨幣加值至客戶端110的帳號中。特別要說明的是,在實際實施上,可將客戶端110的存款證明訊息以雜湊函式進行雜湊計算,用以產生相應的存款證明雜湊值,接著,將此存款證明雜湊值連同所述金額一併帶入此函式。以上述為例,金融端130還可將使用者入金的金額、客戶端110的帳號之餘額及存款證明雜湊值等資料一併傳送至客戶端110,並且分別顯示在交易確認視窗400中的入金金
額顯示區塊410、帳號餘額顯示區塊420及存款證明雜湊值顯示區塊430,用以提供使用者進行確認。
如「第5圖」所示意,「第5圖」為應用本發明根據出金金額回收數位貨幣之示意圖。假設使用者在客戶端110的帳號有數量為「1,000」的數位貨幣,當使用者至具有發行數位貨幣權限的金融端130完成出金後,金融端130會根據帳號管理合約地址執行帳號管理合約,用以呼叫其中的函式(如:帳號管理合約中的回收函式),以便在監管狀態為允許時,自使用者在客戶端110的帳號中扣除與出金的金額等值的數位貨幣。在實際實施上,在帳號管理合約中的此函式會先確認呼叫此函式的金融端130是否具有發行數位貨幣的權限,以及確認使用者在客戶端110的帳號是否可用,倘若兩者皆是,便根據此帳號執行相應的帳號合約,並且將出金的金額帶入所述帳號合約中的函式(如:帳號合約中的回收函式),由客戶端110的帳號合約中的函式扣除客戶端110的帳號中的相應金額。至此,完成數位貨幣的回收處理。接下來,使用者可在客戶端110開啟出金確認視窗500,從帳號餘額顯示區塊510中確認當前帳號擁有的數位貨幣之數量,以及在出金金額顯示區塊520中顯示此次出金的金額,例如:數值「1,000」,提供使用者進行確認。
綜上所述,可知本發明與先前技術之間的差異在於透過監管端發布帳號管理合約,以及在其中預先設置總量參數,用以與不同條件範圍的數位貨幣總量比對,並根據比對結果設定監管狀態,當客戶端向金融端申請帳號時,金融端執行帳號管理合約建立對應客戶端的帳號,並且發布與帳號對應的帳號合約,當金融端偵測到客戶端入金/出金後,分別執行帳號管理合約與帳號合約並呼叫其中的函式,以便在監管狀態為允許時,發行/回收數位貨幣,藉由
此一技術手段可以解決先前技術所存在的問題,進而達成監管數位貨幣且提高數位貨幣的價格穩定性之技術功效。
雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明,任何熟習相像技藝者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之專利保護範圍須視本說明書所附之申請專利範圍所界定者為準。
100‧‧‧區塊鏈網路
110‧‧‧客戶端
120‧‧‧監管端
121‧‧‧初始模組
122‧‧‧監管模組
130‧‧‧金融端
131‧‧‧執行模組
132‧‧‧入金模組
133‧‧‧出金模組
Claims (8)
- 一種可監管且總量可控的數位貨幣發行系統,應用在區塊鏈網路環境中,該系統包含:至少一客戶端,用以在申請一帳號時,傳送該帳號的一申請請求,以及接收申請到的該帳號的一帳號合約地址;一監管端,該監管端包含:一初始模組,用以於初始時,透過區塊鏈交易發布一帳號管理合約,並且獲得對應該帳號管理合約的一帳號管理合約地址,該帳號管理合約包含多個函式,分別用以建立該帳號、發行至少一數位貨幣、回收所述數位貨幣以及管理一帳號發行者名單及一數位貨幣發行者名單;以及一監管模組,用以在該帳號管理合約中,預先設定在至少一條件範圍中的至少一總量參數,並且持續累計所述數位貨幣在每一條件範圍中的總量以與相應的所述總量參數進行比對,當大於或等於所述總量參數時,將所述條件範圍的一監管狀態設為禁止,當小於所述總量參數時,將該監管狀態設為允許,其中所述條件範圍包含指定的單位時間及指定的該帳號或兩者任一,所述總量參數包含所述數位貨幣的流通總量、發送總量、接收總量、發行總量及回收總量至少其中之一;以及一金融端,該金融端存在於該帳號發行者名單及該數位貨幣發行者名單中,該金融端包含: 一執行模組,用以在該監管端完成初始後,接收來自所述客戶端的該申請請求,並且執行一認識客戶程序(Know Your Customer,KYC),當所述客戶端通過該認識客戶程序後,該執行模組根據該帳號管理合約地址執行該帳號管理合約,用以呼叫其中的所述函式以建立對應所述客戶端的該帳號,以及透過區塊鏈交易發布對應該帳號的一帳號合約,並且獲得對應該帳號合約的該帳號合約地址,以及將該帳號合約地址傳送至對應的所述客戶端;一入金模組,用以在偵測到所述客戶端入金後,根據該帳號管理合約地址執行該帳號管理合約,用以呼叫其中的所述函式以在該監管狀態為允許時,發行所述數位貨幣並增加至所述客戶端的該帳號,其中,所述數位貨幣的發行數量與入金的金額為正相關;以及一出金模組,用以在偵測到所述客戶端出金後,根據該帳號管理合約地址執行該帳號管理合約,用以呼叫其中的所述函式以在該監管狀態為允許時,自對應所述客戶端的該帳號扣除與出金的金額等值的所述數位貨幣。
- 根據申請專利範圍第1項之可監管且總量可控的數位貨幣發行系統,其中所述客戶端其中之一作為一發送端,所述客戶端其中另一作為一接收端,當該發送端傳送所述數位貨幣至該接收端時,該發送端執行該發送端的該帳號合約,用以使用一客戶端私鑰呼叫其中的一發送函式,並且將一金額及該接收端的一帳號地址帶 入該發送函式,使該發送端的該帳號合約在該監管狀態為允許時,呼叫該接收端的該帳號合約中的一接收函式,用以將該金額增加至該接收端的該帳號,以及在該發送端的該帳號中扣除該金額。
- 根據申請專利範圍第1項之可監管且總量可控的數位貨幣發行系統,其中該入金模組更包含將所述客戶端的一存款證明訊息進行雜湊以生成相應的一存款證明雜湊值,並且在呼叫所述函式發行所述數位貨幣時,將該存款證明雜湊值帶入所述函式。
- 根據申請專利範圍第1項之可監管且總量可控的數位貨幣發行系統,其中所述總量參數根據該認識客戶程序的一風險評估訊息進行調整,當該風險評估訊息為高風險時,降低所述總量參數的數值,當該風險評估訊息為低風險時,增加所述總量參數的數值。
- 一種可監管且總量可控的數位貨幣發行方法,應用在具有至少一客戶端、一監管端及一金融端的區塊鏈網路環境中,其步驟包括:該監管端於初始時,透過區塊鏈交易發布一帳號管理合約,並且獲得對應該帳號管理合約的一帳號管理合約地址,該帳號管理合約包含多個函式,分別用以建立一帳號、發行至少一數位貨幣、回收所述數位貨幣以及管理一帳號發行者名單及一數位貨幣發行者名單,其中,該帳號發行者名單及該數位貨幣發行者名單中皆包含該金融端;該監管端在該帳號管理合約中,預先設定在至少一條件範圍中的至少一總量參數,並且持續累計所述數位貨幣在每一條件範 圍中的總量以與相應的所述總量參數進行比對,當大於或等於所述總量參數時,將所述條件範圍的一監管狀態設為禁止,當小於所述總量參數時,將該監管狀態設為允許,其中所述條件範圍包含指定的單位時間及指定的該帳號或兩者任一,所述總量參數包含所述數位貨幣的流通總量、發送總量、接收總量、發行總量及回收總量至少其中之一;當該金融端接收到來自所述客戶端的一申請請求時,該金融端執行一認識客戶程序(Know Your Customer,KYC),並且在所述客戶端通過該認識客戶程序後,根據該帳號管理合約地址執行該帳號管理合約,用以呼叫所述函式以建立對應所述客戶端的該帳號,以及透過區塊鏈交易發布對應該帳號的一帳號合約,並且獲得對應該帳號合約的一帳號合約地址,以及將該帳號合約地址傳送至對應的所述客戶端;當該金融端偵測到所述客戶端入金後,該金融端根據該帳號管理合約地址執行該帳號管理合約,用以呼叫其中的所述函式以在該監管狀態為允許時,發行所述數位貨幣並增加至所述客戶端的該帳號,其中,所述數位貨幣的發行數量與入金的金額為正相關;以及當該金融端偵測到所述客戶端出金後,該金融端根據該帳號管理合約地址執行該帳號管理合約,用以呼叫其中的所述函式以在該監管狀態為允許時,自對應所述客戶端的該帳號扣除與出金的金額等值的所述數位貨幣。
- 根據申請專利範圍第5項之可監管且總量可控的數位貨幣發行方法,其中該方法更包含所述客戶端其中之一作為一發送端,所述客戶端其中另一作為一接收端,當該發送端傳送所述數位貨幣至該接收端時,該發送端執行該發送端的該帳號合約,用以使用一客戶端私鑰呼叫其中的一發送函式,並且將一金額及該接收端的一帳號地址帶入該發送函式,使該發送端的該帳號合約在該監管狀態為允許時,呼叫該接收端的該帳號合約中的一接收函式,用以將該金額增加至該接收端的該帳號,以及在該發送端的該帳號中扣除該金額的步驟。
- 根據申請專利範圍第5項之可監管且總量可控的數位貨幣發行方法,其中該金融端偵測到所述客戶端入金後,將所述客戶端的一存款證明訊息進行雜湊以生成相應的一存款證明雜湊值,並且在呼叫所述函式發行所述數位貨幣時,將該存款證明雜湊值帶入所述函式。
- 根據申請專利範圍第5項之可監管且總量可控的數位貨幣發行方法,其中所述總量參數根據該認識客戶程序的一風險評估訊息進行調整,當該風險評估訊息為高風險時,降低所述總量參數的數值,當該風險評估訊息為低風險時,增加所述總量參數的數值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107113612A TWI693573B (zh) | 2018-04-20 | 2018-04-20 | 可監管且總量可控的數位貨幣發行系統及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107113612A TWI693573B (zh) | 2018-04-20 | 2018-04-20 | 可監管且總量可控的數位貨幣發行系統及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201944330A TW201944330A (zh) | 2019-11-16 |
TWI693573B true TWI693573B (zh) | 2020-05-11 |
Family
ID=69184771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107113612A TWI693573B (zh) | 2018-04-20 | 2018-04-20 | 可監管且總量可控的數位貨幣發行系統及其方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI693573B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI796566B (zh) * | 2020-05-14 | 2023-03-21 | 重量科技股份有限公司 | 用戶資料查詢系統及其方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150220892A1 (en) * | 2014-01-31 | 2015-08-06 | Robert Allen | Platform for the purchase and sale of digital currency |
US20150363876A1 (en) * | 2014-06-16 | 2015-12-17 | Bank Of America Corporation | Cryptocurrency Transformation System |
US20160260091A1 (en) * | 2015-03-04 | 2016-09-08 | THC Farmaceuticals, Inc. | Universal wallet for digital currency |
US20160342978A1 (en) * | 2015-05-21 | 2016-11-24 | Mastercard International Incorporated | Method and system for integration of market exchange and issuer processing for blockchain-based transactions |
CN107230067A (zh) * | 2016-03-25 | 2017-10-03 | 中国人民银行印制科学技术研究所 | 基于数字货币芯片卡的兑换和支付方法以及数字货币系统 |
US20170300876A1 (en) * | 2016-04-14 | 2017-10-19 | Pricewaterhousecoopers Llp | Cryptoconomy solution for administration and governance in a distributed system |
CN107369018A (zh) * | 2017-06-26 | 2017-11-21 | 中国人民银行数字货币研究所 | 数字货币钱包的绑定方法和绑定系统 |
CN107392604A (zh) * | 2017-06-26 | 2017-11-24 | 中国人民银行数字货币研究所 | 一种使用数字货币兑换存款的方法和系统 |
-
2018
- 2018-04-20 TW TW107113612A patent/TWI693573B/zh active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150220892A1 (en) * | 2014-01-31 | 2015-08-06 | Robert Allen | Platform for the purchase and sale of digital currency |
US20150363876A1 (en) * | 2014-06-16 | 2015-12-17 | Bank Of America Corporation | Cryptocurrency Transformation System |
US20160260091A1 (en) * | 2015-03-04 | 2016-09-08 | THC Farmaceuticals, Inc. | Universal wallet for digital currency |
US20160342978A1 (en) * | 2015-05-21 | 2016-11-24 | Mastercard International Incorporated | Method and system for integration of market exchange and issuer processing for blockchain-based transactions |
CN107230067A (zh) * | 2016-03-25 | 2017-10-03 | 中国人民银行印制科学技术研究所 | 基于数字货币芯片卡的兑换和支付方法以及数字货币系统 |
US20170300876A1 (en) * | 2016-04-14 | 2017-10-19 | Pricewaterhousecoopers Llp | Cryptoconomy solution for administration and governance in a distributed system |
CN107369018A (zh) * | 2017-06-26 | 2017-11-21 | 中国人民银行数字货币研究所 | 数字货币钱包的绑定方法和绑定系统 |
CN107392604A (zh) * | 2017-06-26 | 2017-11-24 | 中国人民银行数字货币研究所 | 一种使用数字货币兑换存款的方法和系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI796566B (zh) * | 2020-05-14 | 2023-03-21 | 重量科技股份有限公司 | 用戶資料查詢系統及其方法 |
Also Published As
Publication number | Publication date |
---|---|
TW201944330A (zh) | 2019-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI729719B (zh) | 基於區塊鏈的資料授權方法及裝置、電子設備及電腦可讀儲存媒介 | |
CA2938756C (en) | Systems and methods for monitoring construction projects | |
US10972448B2 (en) | Technologies for data broker assisted transfer of device ownership | |
WO2019214311A1 (zh) | 一种基于区块链的信息监管方法及装置 | |
CN110046998B (zh) | 跨链用权系统及方法、装置、电子设备、存储介质 | |
CN106919419A (zh) | 区块链上的智能合约程序的更新方法及装置 | |
US11361320B2 (en) | Fraud detection and control in multi-tiered centralized processing | |
TWI772654B (zh) | 跨區塊鏈第三方仲裁履約保證系統及其方法 | |
TWI663865B (zh) | 基於跨鏈架構的身分識別管理系統及其方法 | |
CN109308211B (zh) | 用于在区块链中处理事务数据的方法、装置及存储介质 | |
BR112019016188A2 (pt) | método implementado por computador para o controle do acesso aos contratos inteligentes, meio de armazenamento legível por computador não transitório e sistema | |
CN110597916B (zh) | 基于区块链的数据处理方法、装置、存储介质及终端 | |
CN111291060A (zh) | 一种管理区块链节点的方法、装置及计算机可读介质 | |
CN111932233B (zh) | 资源转移方法、装置和设备 | |
CN112613877B (zh) | 应用于区块链网络的智能合约触发方法、装置及相关设备 | |
JP7304963B2 (ja) | プログラム、データ認証方法、およびコンピュータ装置 | |
CN110599144A (zh) | 一种区块链节点的入网方法以及装置 | |
JP2022525551A (ja) | データレコードのコピーの分散型台帳システムへの誤伝送の防止 | |
TWI646487B (zh) | 具權限分級和避免重複執行的智能合約執行系統及其方法 | |
TWI693573B (zh) | 可監管且總量可控的數位貨幣發行系統及其方法 | |
KR102572834B1 (ko) | 서명 가능 컨트랙트를 이용하여 블록체인에서 생성된 데이터를 인증하는 방법 및 시스템 | |
CN113626850B (zh) | 基于联盟链的请求处理方法、装置、设备和存储介质 | |
CN110276693A (zh) | 保险理赔方法及系统 | |
TW202036439A (zh) | 基於區塊鏈的跨行交易失敗通知系統及其方法 | |
JP7273241B2 (ja) | インテリジェント契約実行方法および装置 |