TWI639968B - 區塊鏈智能合約的交易系統及其方法 - Google Patents
區塊鏈智能合約的交易系統及其方法 Download PDFInfo
- Publication number
- TWI639968B TWI639968B TW106135369A TW106135369A TWI639968B TW I639968 B TWI639968 B TW I639968B TW 106135369 A TW106135369 A TW 106135369A TW 106135369 A TW106135369 A TW 106135369A TW I639968 B TWI639968 B TW I639968B
- Authority
- TW
- Taiwan
- Prior art keywords
- contract
- license
- authorization
- user
- public key
- Prior art date
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一種區塊鏈智能合約的交易系統及其方法,透過發行者端接收來自使用者端的訂單、訂單金額及使用者公鑰,並且根據訂單產生相應的授權合約且在其中設定合約條件,以及將使用者公鑰儲存至授權合約作為擁有者訊息,接著,將授權合約的合約地址傳送至使用者端,以便在使用者端執行應用程式時,根據合約地址執行相應的授權合約,並呼叫其中的驗證函式進行合約條件及擁有者的確認,以及在使用者端接收到轉讓金額及受讓者公鑰時,呼叫其中的轉讓函式以轉讓授權合約,用以達到提高授權的控管便利性之技術功效。
Description
本發明涉及一種交易系統及其方法,特別是區塊鏈智能合約的交易系統及其方法。
近年來,隨著電腦的普及與蓬勃發展,各種應用程式便如雨後春筍般出現。然而,如何避免使用者使用未授權的應用程式一直是各家廠商亟欲解決的問題之一。
一般而言,執行應用程式需要使用廠商預先提供的序號來進行授權,當使用者執行應用程式時,會先提示使用者輸入序號,接著,應用程式比對使用者輸入的序號與預設在應用程式的序號是否相符,倘若相符則允許使用應用程式,反之則不允許使用應用程式。然而,在實際實施上,由於序號容易被公開,導致非合法授權的使用者輸入相同的序號同樣能夠使用應用程式,故具有授權管控不易的問題。
有鑑於此,便有廠商提出線上啟動的技術,其同樣需要輸入序號,但更透過連線至遠端的伺服器對此序號進行註冊以使應用程式成為合法授權的啟動狀態,如此一來,廠商可透過伺服器得知序號的使用狀態,避免同一序號被多次使用,或是超過允許的使用次數。然而,此一方式無法讓使用者轉移授權,而且無法避免序號遭到冒用的情況,舉例來說,當非法使用者先使用序號註冊後,將造成之後的合法使用者無法使用同一序號進行註冊,導致合法使用者的權益受損,而且合法使用者必須透過繁雜的手續(例如:上傳購買證明)才能夠證明自己是序號的合法擁有者,故仍然無法有效解決授權管控不易的問題。
綜上所述,可知先前技術中長期以來一直存在授權管控不易之問題,因此實有必要提出改進的技術手段,來解決此一問題。
本發明揭露一種區塊鏈智能合約的交易系統及其方法。
首先,本發明揭露一種區塊鏈智能合約的交易系統,此系統包含:發行者端及使用者端。所述發行者端為區塊鏈網路的節點,此發行者端包含:接收模組、發布模組及傳送模組。其中,接收模組用以接收訂單及相應此訂單的使用者公鑰,其中訂單包含訂單金額;發布模組用以在獲得訂單的訂單金額後,根據接收到的訂單發布相應的授權合約,並且在授權合約中設定合約條件,以及將接收到的使用者公鑰儲存至授權合約中作為擁有者訊息;傳送模組用以在授權合約發布完成後,獲得授權合約的合約地址並進行傳送。
在使用者端的部分,每一使用者端皆為區塊鏈網路的節點,每一使用者端包含:生成模組、驗證模組及轉讓模組。其中,生成模組用以產生訂單,並且將訂單及使用者端的使用者公鑰傳送至發行者端;驗證模組用以在執行應用程式時,根據合約地址執行相應的授權合約以呼叫其中的驗證函式,此驗證函式確認合約條件無誤且使用者端的使用者公鑰與授權合約中的擁有者訊息相符時,允許使用者端持續執行應用程式,並且將使用者端的識別資料儲存至授權合約作為認證訊息,反之,禁能應用程式;轉讓模組用以在使用者端接收到轉讓金額及受讓者公鑰後,根據合約地址執行授權合約並呼叫其中的轉讓函式,此轉讓函式執行轉讓確認,並且在確認無誤後,將受讓者公鑰儲存至授權合約中作為擁有者訊息。
另外,本發明揭露一種區塊鏈智能合約的交易方法,其步驟包括:提供發行者端及使用者端作為區塊鏈網路的節點;使用者端產生訂單,並且將訂單及使用者端的使用者公鑰傳送至發行者端,其中訂單包含訂單金額;發行者端在獲得訂單的訂單金額後,根據接收到的訂單發布相應的授權合約,並且在授權合約中設定合約條件,以及將接收到的使用者公鑰儲存至相應的授權合約中作為擁有者訊息;發行者端在授權合約發布完成後,獲得授權合約的合約地址,並且將此合約地址傳送至使用者端;當使用者端執行應用程式時,根據合約地址執行相應的授權合約以呼叫其中的驗證函式,此驗證函式確認合約條件無誤且使用者端的使用者公鑰與授權合約中的擁有者訊息相符時,允許使用者端持續執行應用程式,並且將使用者端的識別資料儲存至授權合約作為認證訊息,反之,禁能應用程式;在使用者端接收到轉讓金額及受讓者公鑰後,根據合約地址執行授權合約並呼叫其中的轉讓函式,此轉讓函式執行轉讓確認,並且在確認無誤後,將受讓者公鑰儲存至授權合約中作為擁有者訊息。
本發明所揭露之系統與方法如上,與先前技術的差異在於本發明是透過發行者端接收來自使用者端的訂單、訂單金額及使用者公鑰,並且根據訂單產生相應的授權合約且在其中設定合約條件,以及將使用者公鑰儲存至授權合約作為擁有者訊息,接著,將授權合約的合約地址傳送至使用者端,以便在使用者端執行應用程式時,根據合約地址執行相應的授權合約,並呼叫其中的驗證函式進行合約條件及擁有者的確認,以及在使用者端接收到轉讓金額及受讓者公鑰時,呼叫其中的轉讓函式以轉讓授權合約。
透過上述的技術手段,本發明可以達成提高授權的控管便利性之技術功效。
以下將配合圖式及實施例來詳細說明本發明之實施方式,藉此對本發明如何應用技術手段來解決技術問題並達成技術功效的實現過程能充分理解並據以實施。
在說明本發明所揭露之區塊鏈智能合約的交易系統及其方法之前,先對本發明所應用的環境作說明,本發明是應用在執行智能合約的區塊鏈網路中,在區塊鏈網路中的計算機設備皆可視為區塊鏈節點(或簡稱為節點),所述區塊鏈節點透過點對點(Peer to Peer, P2P)方式連接,並且用以處理區塊鏈交易(Blockchain Transactions)。在實際實施上,計算機設備可為伺服器、電腦主機、筆記型電腦、平板電腦、智慧型手機等等,用以執行電腦程式指令,例如:區塊鏈程式「Ethereum」。另外,文中所述的「授權合約」及「註冊合約」皆是指智能合約,所述智能合約是指依據既定的條件及傳輸的資訊來驅動執行指令的電腦程式,在實際實施上,所述智能合約係透過程式語言,例如:Solidity、Serpent、LLL、EtherScript、Sidechain等等來撰寫,其可包含各種不同的函式(Function)、事件(Event)、參數狀態等等,以區塊鏈程式「Ethereum」為例,其智能合約是經編譯後得到二進位編碼及應用二進位介面(Application Binary Interface, ABI),以便將智能合約廣播至區塊鏈網路,等候礦工(Miner)將智能合約放上區塊鏈並得到相應的地址,至此即透過區塊鏈交易完成智能合約的發布。之後,各節點便可根據此地址執行相應的智能合約,並且藉由不同的指令來改變智能合約在區塊鏈上的狀態以及偵測事件是否被觸發。特別要說明的是,執行智能合約的函式將另一個智能合約的地址儲存在智能合約中,如:儲存在陣列,此一方式可稱為「註冊(Registry)」,亦即將智能合約註冊在另一個智能合約中,使兩個智能合約產生關聯。
以下配合圖式對本發明區塊鏈智能合約的交易系統及其方法做進一步說明,請先參閱「第1圖」,「第1圖」為本發明區塊鏈智能合約的交易系統的系統方塊圖,此系統包含:發行者端110及使用者端120。其中,發行者端110為區塊鏈網路100的節點,其包含 :接收模組111、發布模組112及傳送模組113。所述接收模組111用以接收訂單及相應此訂單的使用者公鑰,其中,訂單包含訂單金額。舉例來說,假設訂單來自第一個使用者端,則使用者公鑰為第一個使用者端的使用者公鑰;假設訂單來自第二個使用者端,則使用者公鑰為第二個使用者端的使用者公鑰,並以此類推。在實際實施上,使用者公鑰可為區塊鏈網路的節點地址,如:「1GwV7fPX……」。
發布模組112用以在獲得訂單的訂單金額後,根據接收到的訂單發布相應的授權合約,並且在授權合約中設定合約條件,以及將接收到的使用者公鑰儲存至授權合約中作為擁有者訊息。在實際實施上,所述合約條件包含授權期限、授權數量及授權轉移次數,當超過授權期限、授權數量及授權轉移次數至少其中之一時,使授權合約成為非法合約。舉例來說,當使用者端120向發行者端110支付訂單金額後,發行者端110便會透過區塊鏈交易發布與訂單相應的授權合約,並且根據訂單中的內容設定授權合約的合約條件,假設訂單中的內容記錄授權數量為數值5,那麼設定的合約條件中,代表授權數量的參數值將同樣被設定為數值5。另外,當接收到的使用者公鑰儲存至授權合約中作為擁有者訊息時,即代表此授權合約的擁有者為具有使用者公鑰的區塊鏈節點,能夠對授權合約進行存取,並且具有更改擁有者訊息的權限,用以轉移授權合約的擁有者。另外,在實際實施上,發布模組112可在授權合約發布完成後,將合約地址儲存至資料庫,用以在驗證授權合約時,自資料庫中查詢相應授權合約的合約地址是否存在於資料庫中,當存在時,授權合約為合法合約,若不存在,則授權合約為非法合約。除此之外,發布模組112亦可在發布授權合約之前,透過區塊鏈交易發布註冊合約,並且在授權合約發布完成後,將授權合約的合約地址儲存在註冊合約中,提供使用者端120自註冊合約查詢及驗證相應的授權合約,例如:驗證授權合約是否為發行者端110所發布,倘若合約地址存在於註冊合約中,代表授權合約為發行者端110所發布,其為合法合約,反之,則代表並非發行者端110所發布,其為非法合約。
傳送模組113用以在授權合約發布完成後,獲得授權合約的合約地址(例如:「0xdCbd2a……」)並進行傳送。在實際實施上,所述合約地址將傳送至產生訂單且支付訂單金額的使用者端120,其傳送方式除了透過區塊鏈網路100之外,還可透過網際網路以電子郵件、短訊息服務等方式實現。
接著,在使用者端120的部分,所述使用者端120同樣為區塊鏈網路100的節點,每一使用者端120皆包含:生成模組121、驗證模組122及轉讓模組123。其中,生成模組121用以產生訂單,並且將此訂單及使用者端120的使用者公鑰傳送至發行者端110。
驗證模組122用以在執行應用程式時,根據合約地址執行相應的授權合約以呼叫其中的驗證函式,所述驗證函式確認合約條件無誤且使用者端的使用者公鑰與授權合約中的擁有者訊息相符時,允許使用者端120持續執行此應用程式,並且將使用者端的識別資料儲存至授權合約作為認證訊息,反之,則禁能應用程式。在實際實施上,可在初次執行應用程式時,提示使用者輸入接收到的合約地址並進行記錄,以便驗證模組122根據輸入的合約地址執行相應的授權合約,以及當再次執行應用程式時,直接根據已記錄的合約地址執行相應的授權合約。
轉讓模組123用以在使用者端120接收到轉讓金額及受讓者公鑰後,根據合約地址執行授權合約並呼叫其中的轉讓函式,所述轉讓函式執行轉讓確認,並且在確認無誤後,將受讓者公鑰儲存至授權合約中作為擁有者訊息。在實際實施上,所述轉讓確認包含確認授權合約是否為合法合約(例如:非發行者端發布的授權合約、超過授權期限、授權數量及授權轉移次數至少其中之一等等均代表非法合約)、確認使用者端的使用者公鑰是否與擁有者訊息相同(例如:不相同代表是非法合約)、確認授權合約是否為可轉讓合約(若合約條件中的授權轉移次數為「0/0」代表不可轉讓)、以及確認所述認證訊息是否可清除等等。
請參閱「第2A圖」及「第2B圖」,「第2A圖」及「第2B圖」為本發明區塊鏈智能合約的交易方法的方法流程圖,其步驟包括:提供發行者端110及使用者端120作為區塊鏈網路100的節點(步驟210);使用者端120產生訂單,並且將訂單及使用者端120的使用者公鑰傳送至發行者端110,其中,此訂單包含訂單金額(步驟220);發行者端110在獲得訂單的訂單金額後,根據接收到的訂單發布相應的授權合約,並且在授權合約中設定合約條件,以及將接收到的使用者公鑰儲存至相應的授權合約中作為擁有者訊息(步驟230);發行者端110在授權合約發布完成後,獲得授權合約的合約地址,並且將此合約地址傳送至使用者端120(步驟240);當使用者端120執行應用程式時,根據合約地址執行相應的授權合約以呼叫其中的驗證函式,此驗證函式確認合約條件無誤且使用者端120的使用者公鑰與授權合約中的擁有者訊息相符時,允許使用者端120持續執行應用程式,並且將使用者端120的識別資料儲存至授權合約作為認證訊息,反之,禁能此應用程式(步驟250);在使用者端120接收到轉讓金額及受讓者公鑰後,根據合約地址執行授權合約並呼叫其中的轉讓函式,此轉讓函式執行轉讓確認,並且在確認無誤後,將所述受讓者公鑰儲存至授權合約中作為擁有者訊息(步驟260)。透過上述步驟,即可透過發行者端110接收來自使用者端120的訂單、訂單金額及使用者公鑰,並且根據訂單產生相應的授權合約且在其中設定合約條件,以及將使用者公鑰儲存至授權合約作為擁有者訊息,接著,將授權合約的合約地址傳送至使用者端120,以便在使用者端120執行應用程式時,根據合約地址執行相應的授權合約,並呼叫其中的驗證函式進行合約條件及擁有者的確認,以及在使用者端120接收到轉讓金額及受讓者公鑰時,呼叫其中的轉讓函式以轉移授權合約的擁有者。
特別要說明的是,如「第2B圖」所示意,在步驟240之後,發行者端110可將獲得的合約地址儲存至資料庫,用以在驗證授權合約時,自資料庫中查詢相應授權合約的合約地址是否存在資料庫,當存在時,授權合約為合法合約,當不存在時,授權合約為非法合約(步驟241)。另外,在步驟210之後,發行者端110可透過區塊鏈交易發布註冊合約(步驟251),以便在獲得合約地址後,發行者端110將授權合約的合約地址儲存在註冊合約中,提供使用者端120自註冊合約查詢及驗證相應的授權合約(步驟242)。換句話說,倘若能夠從資料庫,或是註冊合約中查詢到合約地址,代表授權合約是發行者端110所發布,同時也代表授權合約為合法合約。
以下配合「第3圖」及「第4圖」以實施例的方式進行如下說明,請先參閱「第3圖」,「第3圖」為應用本發明進行應用程式授權之示意圖。當使用者欲購買應用程式的授權時,可透過區塊鏈交易由使用者端120向應用程式的發行者端110下訂單,並且支付訂單金額以及將使用者端120的使用者公鑰傳送給發行者端110,其中,訂單包含授權期限、授權數量及授權轉移次數等等。此時,發行者端110在收到訂單金額後,將根據接收到的訂單透過區塊鏈交易發布授權合約,並且將訂單中的授權期限、授權數量及授權轉移次數等等設定為授權合約的合約條件,以及將接收到的使用者公鑰儲存至此授權合約中作為擁有者訊息。當授權合約發布完成後,即可獲得相應此授權合約的合約地址,並且將此合約地址傳送至支付訂單金額的使用者端120,例如:當授權合約發布完成即觸發一個事件並帶入合約地址,而使用者端120偵測到事件被觸發後,能夠同時獲得前述帶入的合約地址,以便使用者端120能夠執行相應的授權合約。在實際實施上,當授權合約發布完成後,區塊鏈網路100中的所有節點上的區塊鏈都會有此授權合約。
接下來,當使用者端120在初次執行前述購買的應用程式時,應用程式或在背景執行的授權程式可如「第3圖」所示意產生提示視窗300,提示使用者在輸入框310中輸入合約地址後,點選確定元件320用以驗證授權,其驗證授權的方式是根據合約地址執行相應的授權合約以呼叫其中的驗證函式,所述驗證函式在確認合約條件無誤且使用者端120的使用者公鑰與此授權合約的擁有者訊息相符時,允許此使用者端120持續執行應用程式,並且將使用者端120的識別資料儲存至授權合約作為認證訊息,舉例來說,可將使用者端120的MAC(Media Access Control)位址、CPU序號、主機板序號等等具有識別性的資料分別以雜湊(Hash)函式進行雜湊產生相應的認證訊息。反之,倘若合約條件有誤(例如:已超過授權期限、授權數量、授權轉移次數等三者至少其中之一),或是使用者端120的使用者公鑰與此授權合約的擁有者訊息不符時,禁能應用程式,所述禁能應用程式可以禁能應用程式的全部或部分的功能,例如:禁能應用程式的編輯或儲存等功能,或是直接關閉應用程式。特別要說明的是,當使用者在輸入框310中輸入合約地址,並且點選確定元件320後,還可在顯示區塊330中顯示相應的合約條件,提供使用者端120的使用者了解及確認授權相關資訊。
如「第4圖」所示意,「第4圖」為應用本發明轉移授權合約的擁有者之示意圖。當使用者欲將應用程式的授權轉移給其它使用者端120時,使用者可先透過數位資產交易平台或點對點交易,當使用者端120接收到轉讓金額及受讓者公鑰後,可在應用程式或在背景執行的轉讓程式所產生的轉讓視窗400中,於合約地址輸入區塊410中輸入欲轉讓的授權合約之合約地址,並且點選瀏覽元件420以載入相應合約地址的授權合約之合約條件,用以顯示在合約條件顯示區塊430中,提供使用者進行確認。當使用者確認無誤後,即可在受讓者公鑰輸入區塊440中輸入接收到的受讓者公鑰,並且點選轉讓元件450。接下來,使用者端120會根據合約地址執行相應的授權合約並呼叫其中的轉讓函式,此轉讓函式執行轉讓確認,例如:確認授權合約是否為合法合約、確認使用者端120的使用者公鑰是否與擁有者訊息相同、確認授權合約是否為可轉讓合約、以及確認所述認證訊息是否可清除,並且在確認無誤後,將所述受讓者公鑰儲存至授權合約中作為擁有者訊息。此時,舊的擁有者訊息便被新的擁有者訊息取代,也代表授權合約的擁有者轉移。特別要說明的是,假設合約條件的授權數量設定為數值3,使用者端120可在授權合約中額外設定另外二個使用者端的使用者公鑰作為擁有者訊息,也就是說,在授權數量為數值3的例子中,授權合約中的擁有者訊息將最多包含三個不同的使用者公鑰,但是只有擁有第一個使用者公鑰的使用者端120(即:實際支付訂單金額的使用者端120)具有執行授權合約的轉移函式以及修改擁有者訊息的權限,而且在轉移後,新的擁有者訊息將只存在支付轉讓金額的使用者端120之受讓者公鑰,至於前一個使用者端120在擁有者訊息中額外增加的二個使用者公鑰都將被清空。另外,每次轉移授權時,呼叫轉讓函式的使用者端120重新計算授權轉移次數。舉例來說,授權轉移次數可如「第4圖」所示意顯示為「0/5」,其中,前者所示意的數值0代表已經轉移的次數;後者所示意的數值5代表總共允許轉移的次數限制,每次轉移時,前者累加數值1,而後者則不變。
綜上所述,可知本發明與先前技術之間的差異在於透過發行者端110接收來自使用者端120的訂單、訂單金額及使用者公鑰,並且根據訂單產生相應的授權合約且在其中設定合約條件,以及將使用者公鑰儲存至授權合約作為擁有者訊息,接著,將授權合約的合約地址傳送至使用者端120,以便在使用者端120執行應用程式時,根據合約地址執行相應的授權合約,並呼叫其中的驗證函式進行合約條件及擁有者的確認,以及在使用者端120接收到轉讓金額及受讓者公鑰時,呼叫其中的轉讓函式以轉讓授權合約,藉由此一技術手段可以解決先前技術所存在的問題,進而達成提高授權的控管便利性之技術功效。
雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明,任何熟習相像技藝者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之專利保護範圍須視本說明書所附之申請專利範圍所界定者為準。
100‧‧‧區塊鏈網路
110‧‧‧發行者端
111‧‧‧接收模組
112‧‧‧發布模組
113‧‧‧傳送模組
120‧‧‧使用者端
121‧‧‧生成模組
122‧‧‧驗證模組
123‧‧‧轉讓模組
300‧‧‧提示視窗
310‧‧‧輸入框
320‧‧‧確定元件
330‧‧‧顯示區塊
400‧‧‧轉讓視窗
410‧‧‧合約地址輸入區塊
420‧‧‧瀏覽元件
430‧‧‧合約條件顯示區塊
440‧‧‧受讓者公鑰輸入區塊
450‧‧‧轉讓元件
步驟210‧‧‧提供一發行者端及至少一使用者端作為一區塊鏈網路的節點
步驟211‧‧‧該發行者端透過區塊鏈交易發布一註冊合約
步驟220‧‧‧所述使用者端產生一訂單,並且將該訂單及所述使用者端的一使用者公鑰傳送至該發行者端,其中該訂單包含一訂單金額
步驟230‧‧‧該發行者端在獲得該訂單的該訂單金額後,根據接收到的該訂單發布相應的一授權合約,並且在該授權合約中設定至少一合約條件,以及將接收到的該使用者公鑰儲存至相應的該授權合約中作為一擁有者訊息
步驟240‧‧‧該發行者端在該授權合約發布完成後,獲得該授權合約的一合約地址,並且將該合約地址傳送至該使用者端
步驟241‧‧‧該發行者端將獲得的該合約地址儲存至一資料庫,用以在驗證該授權合約時,自該資料庫中查詢相應該授權合約的該合約地址是否存在該資料庫,當存在時,該授權合約為合法合約,當不存在時,該授權合約為非法合約
步驟242‧‧‧該發行者端將該授權合約的該合約地址儲存在該註冊合約中,提供所述使用者端自該註冊合約查詢及驗證相應的該授權合約
步驟250‧‧‧當該使用者端執行一應用程式時,根據該合約地址執行相應的該授權合約以呼叫其中的一驗證函式,該驗證函式確認所述合約條件無誤且所述使用者端的該使用者公鑰與該授權合約中的該擁有者訊息相符時,允許所述使用者端持續執行該應用程式,並且將所述使用者端的識別資料儲存至該授權合約作為至少一認證訊息,反之,禁能該應用程式
步驟260‧‧‧在所述使用者端接收到一轉讓金額及一受讓者公鑰後,根據該合約地址執行該授權合約並呼叫其中的一轉讓函式,該轉讓函式執行一轉讓確認,並且在確認無誤後,將該受讓者公鑰儲存至該授權合約中作為該擁有者訊息
第1圖為本發明區塊鏈智能合約的交易系統之系統方塊圖。 第2A圖及第2B圖為本發明區塊鏈智能合約的交易方法之方法流程圖。 第3圖為應用本發明進行應用程式授權之示意圖。 第4圖為應用本發明轉移授權合約的擁有者之示意圖。
Claims (10)
- 一種區塊鏈智能合約的交易系統,該系統包含: 一發行者端,該發行者端為一區塊鏈網路的節點,該發行者端包含: 一接收模組,用以接收一訂單及相應該訂單的一使用者公鑰,其中該訂單包含一訂單金額; 一發布模組,用以在獲得該訂單的該訂單金額後,根據接收到的該訂單發布相應的一授權合約,並且在該授權合約中設定至少一合約條件,以及將接收到的該使用者公鑰儲存至該授權合約中作為一擁有者訊息;以及 一傳送模組,用以在該授權合約發布完成後,獲得該授權合約的一合約地址並進行傳送;以及 至少一使用者端,每一使用者端皆為該區塊鏈網路的節點,每一使用者端包含: 一生成模組,用以產生該訂單,並且將該訂單及所述使用者端的該使用者公鑰傳送至該發行者端; 一驗證模組,用以在執行一應用程式時,根據該合約地址執行相應的該授權合約以呼叫其中的一驗證函式,該驗證函式確認所述合約條件無誤且所述使用者端的該使用者公鑰與該授權合約中的該擁有者訊息相符時,允許所述使用者端持續執行該應用程式,並且將所述使用者端的識別資料儲存至該授權合約作為至少一認證訊息,反之,禁能該應用程式;以及 一轉讓模組,用以在所述使用者端接收到一轉讓金額及一受讓者公鑰後,根據該合約地址執行該授權合約並呼叫其中的一轉讓函式,該轉讓函式執行一轉讓確認,並且在確認無誤後,將該受讓者公鑰儲存至該授權合約中作為該擁有者訊息。
- 根據申請專利範圍第1項之區塊鏈智能合約的交易系統,其中該發行者端在該授權合約發布完成後,將該合約地址儲存至一資料庫,用以在驗證該授權合約時,自該資料庫中查詢相應該授權合約的該合約地址是否存在該資料庫,當存在時,該授權合約為合法合約,當不存在時,該授權合約為非法合約。
- 根據申請專利範圍第1項之區塊鏈智能合約的交易系統,其中該發行者端在該授權合約發布完成之前,透過區塊鏈交易發布一註冊合約,並且在該授權合約發布完成後,將該授權合約的該合約地址儲存在該註冊合約中,提供所述使用者端自該註冊合約查詢及驗證相應的該授權合約。
- 根據申請專利範圍第1項之區塊鏈智能合約的交易系統,其中該授權合約的所述合約條件包含一授權期限、一授權數量及一授權轉移次數,當超過該授權期限、該授權數量及該授權轉移次數至少其中之一時,使該授權合約成為非法合約。
- 根據申請專利範圍第1項之區塊鏈智能合約的交易系統,其中該轉讓確認包含確認該授權合約是否為合法合約、確認所述使用者端的該使用者公鑰是否與該擁有者訊息相同、確認該授權合約是否為可轉讓合約、以及確認所述認證訊息是否可清除。
- 一種區塊鏈智能合約的交易方法,其步驟包括: 提供一發行者端及至少一使用者端作為一區塊鏈網路的節點; 所述使用者端產生一訂單,並且將該訂單及所述使用者端的一使用者公鑰傳送至該發行者端,其中該訂單包含一訂單金額; 該發行者端在獲得該訂單的該訂單金額後,根據接收到的該訂單發布相應的一授權合約,並且在該授權合約中設定至少一合約條件,以及將接收到的該使用者公鑰儲存至相應的該授權合約中作為一擁有者訊息; 該發行者端在該授權合約發布完成後,獲得該授權合約的一合約地址,並且將該合約地址傳送至該使用者端; 當該使用者端執行一應用程式時,根據該合約地址執行相應的該授權合約以呼叫其中的一驗證函式,該驗證函式確認所述合約條件無誤且所述使用者端的該使用者公鑰與該授權合約中的該擁有者訊息相符時,允許所述使用者端持續執行該應用程式,並且將所述使用者端的識別資料儲存至該授權合約作為至少一認證訊息,反之,禁能該應用程式;以及 在所述使用者端接收到一轉讓金額及一受讓者公鑰後,根據該合約地址執行該授權合約並呼叫其中的一轉讓函式,該轉讓函式執行一轉讓確認,並且在確認無誤後,將該受讓者公鑰儲存至該授權合約中作為該擁有者訊息。
- 根據申請專利範圍第6項之區塊鏈智能合約的交易方法,其中該方法更包含該發行者端在該授權合約發布完成後,將該合約地址儲存至一資料庫,用以在驗證該授權合約時,自該資料庫中查詢相應該授權合約的該合約地址是否存在該資料庫,當存在時,該授權合約為合法合約,當不存在時,該授權合約為非法合約的步驟。
- 根據申請專利範圍第6項之區塊鏈智能合約的交易方法,其中該方法更包含該發行者端在該授權合約發布完成之前,透過區塊鏈交易發布一註冊合約,以及在該授權合約發布完成後,將該授權合約的該合約地址儲存在該註冊合約中,提供所述使用者端自該註冊合約查詢及驗證相應的該授權合約的步驟。
- 根據申請專利範圍第6項之區塊鏈智能合約的交易方法,其中該授權合約的所述合約條件包含一授權期限、一授權數量及一授權轉移次數,當超過該授權期限、該授權數量及該授權轉移次數至少其中之一時,使該授權合約成為非法合約。
- 根據申請專利範圍第6項之區塊鏈智能合約的交易方法,其中該轉讓確認包含確認該授權合約是否為合法合約、確認所述使用者端的該使用者公鑰是否與該擁有者訊息相同、確認該授權合約是否為可轉讓合約、以及確認所述認證訊息是否可清除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106135369A TWI639968B (zh) | 2017-10-16 | 2017-10-16 | 區塊鏈智能合約的交易系統及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106135369A TWI639968B (zh) | 2017-10-16 | 2017-10-16 | 區塊鏈智能合約的交易系統及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI639968B true TWI639968B (zh) | 2018-11-01 |
TW201917658A TW201917658A (zh) | 2019-05-01 |
Family
ID=65034428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106135369A TWI639968B (zh) | 2017-10-16 | 2017-10-16 | 區塊鏈智能合約的交易系統及其方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI639968B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI716116B (zh) * | 2018-12-12 | 2021-01-11 | 開曼群島商創新先進技術有限公司 | 基於區塊鏈智慧合約的交易雜湊獲取方法及系統 |
CN112818027A (zh) * | 2020-12-31 | 2021-05-18 | 杭州趣链科技有限公司 | 用户信用查询方法、装置、服务器和机器可读存储介质 |
CN113538004A (zh) * | 2020-04-16 | 2021-10-22 | 天宿智能科技股份有限公司 | 基于区块链的资产管理履历存证汇整系统及其方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282887A (zh) * | 2020-02-19 | 2021-08-20 | 北京沃东天骏信息技术有限公司 | 用户信息授权的方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150170112A1 (en) * | 2013-10-04 | 2015-06-18 | Erly Dalvo DeCastro | Systems and methods for providing multi-currency platforms comprising means for exchanging and interconverting tangible and virtual currencies in various transactions, banking operations, and wealth management scenarios |
US20150379510A1 (en) * | 2012-07-10 | 2015-12-31 | Stanley Benjamin Smith | Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain. |
WO2016120826A2 (fr) * | 2015-01-30 | 2016-08-04 | Enrico Maim | Systèmes et procédés pour la gestion d'engagements en réseau d'entités sécurisées |
CN106790431A (zh) * | 2016-12-05 | 2017-05-31 | 同济大学 | 基于区块链的云制造服务交易信息记录系统与方法 |
CN107038638A (zh) * | 2017-02-24 | 2017-08-11 | 杭州象链网络技术有限公司 | 一种基于联盟链的股权登记交易系统构建方法 |
TW201732705A (zh) * | 2016-02-23 | 2017-09-16 | 恩鏈控股有限公司 | 基於區塊鏈加密貨幣之通用令牌系統 |
-
2017
- 2017-10-16 TW TW106135369A patent/TWI639968B/zh active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150379510A1 (en) * | 2012-07-10 | 2015-12-31 | Stanley Benjamin Smith | Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain. |
US20150170112A1 (en) * | 2013-10-04 | 2015-06-18 | Erly Dalvo DeCastro | Systems and methods for providing multi-currency platforms comprising means for exchanging and interconverting tangible and virtual currencies in various transactions, banking operations, and wealth management scenarios |
WO2016120826A2 (fr) * | 2015-01-30 | 2016-08-04 | Enrico Maim | Systèmes et procédés pour la gestion d'engagements en réseau d'entités sécurisées |
TW201732705A (zh) * | 2016-02-23 | 2017-09-16 | 恩鏈控股有限公司 | 基於區塊鏈加密貨幣之通用令牌系統 |
CN106790431A (zh) * | 2016-12-05 | 2017-05-31 | 同济大学 | 基于区块链的云制造服务交易信息记录系统与方法 |
CN107038638A (zh) * | 2017-02-24 | 2017-08-11 | 杭州象链网络技术有限公司 | 一种基于联盟链的股权登记交易系统构建方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI716116B (zh) * | 2018-12-12 | 2021-01-11 | 開曼群島商創新先進技術有限公司 | 基於區塊鏈智慧合約的交易雜湊獲取方法及系統 |
US11258586B2 (en) | 2018-12-12 | 2022-02-22 | Advanced New Technologies Co., Ltd. | Blockchain smart contract-based transaction hash acquisition methods and systems |
CN113538004A (zh) * | 2020-04-16 | 2021-10-22 | 天宿智能科技股份有限公司 | 基于区块链的资产管理履历存证汇整系统及其方法 |
CN113538004B (zh) * | 2020-04-16 | 2024-02-13 | 天宿智能科技股份有限公司 | 基于区块链的资产管理履历存证汇整系统及其方法 |
CN112818027A (zh) * | 2020-12-31 | 2021-05-18 | 杭州趣链科技有限公司 | 用户信用查询方法、装置、服务器和机器可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
TW201917658A (zh) | 2019-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109376504B (zh) | 一种基于区块链技术的图片隐私保护方法 | |
TWI761357B (zh) | 塊鏈實施之方法及系統 | |
US11995625B1 (en) | System and method for federated rights management | |
CN108573381B (zh) | 数据处理方法以及装置 | |
US10540484B2 (en) | Networked services licensing system and method | |
US7496540B2 (en) | System and method for securing digital content | |
RU2392659C2 (ru) | Гибкая архитектура лицензирования в системе управления авторским правом | |
US7386513B2 (en) | Networked services licensing system and method | |
US9875312B2 (en) | System and devices for digital media distribution | |
US7310821B2 (en) | Host certification method and system | |
US8839005B2 (en) | Apparatus for transferring licensed digital content between users | |
TWI639968B (zh) | 區塊鏈智能合約的交易系統及其方法 | |
US7672903B2 (en) | Revocation method and apparatus for secure content | |
US20030188183A1 (en) | Unlocking method and system for data on media | |
JP2008539503A (ja) | ソフトウェアのライセンス供与/商用デジタル配信ポリシーのための補足的な信頼モデル | |
JP2006216041A (ja) | デジタルアプリケーションのライセンスを供与するための柔軟なライセンシングアーキテクチャ | |
JP2009534739A (ja) | モバイルモジュールを使用する商取引のための認証 | |
JP2008541206A (ja) | ネットワーク商取引 | |
US20190294759A1 (en) | Digital Media Distribution Computer System | |
KR100821086B1 (ko) | 네트워크연계 서비스 라이센싱 시스템 및 방법 | |
CN1759363A (zh) | 数字内容的分发和权利管理 | |
JP7262328B2 (ja) | 資産のバックアップ処理方法およびプログラム | |
JP6047076B2 (ja) | Drmシステムを備える装置及びライセンスリポジトリ | |
US20170132596A1 (en) | Digital Media Distribution Computer System | |
US20230281603A1 (en) | Systems and methods for generating and distributing digital contract tokens |