TW202011312A - 區塊鏈交易的認證伺服器及認證方法 - Google Patents
區塊鏈交易的認證伺服器及認證方法 Download PDFInfo
- Publication number
- TW202011312A TW202011312A TW107131375A TW107131375A TW202011312A TW 202011312 A TW202011312 A TW 202011312A TW 107131375 A TW107131375 A TW 107131375A TW 107131375 A TW107131375 A TW 107131375A TW 202011312 A TW202011312 A TW 202011312A
- Authority
- TW
- Taiwan
- Prior art keywords
- transaction
- data
- wallet
- signature
- authentication server
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
- G06Q20/3678—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes e-cash details, e.g. blinded, divisible or detecting double spending
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
- G06Q20/3674—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本發明揭露一種區塊鏈交易的認證伺服器及認證方法。認證伺服器耦接於區塊鏈網路,並包含有記憶單元以及一或多數個處理單元,前述記憶單元儲存多數個指令,而前述一或多數個處理單元則與記憶單元耦接。前述一或多數個處理單元係執行該些指令而有以下作動:(1)接收使用者所傳送的交易申請資料,該交易申請資料包括錢包資料,而錢包資料包含錢包位址資料以及使用者簽名資料;(2)至區塊鏈網路上檢視錢包位址資料所對應的加密貨幣的餘額是否足以進行交易;以及(3)當該加密貨幣的餘額足以進行交易時,發送多簽錢包交易資料至區塊鏈網路,以進行區塊鏈運算,並且發送交易申請資料所對應之的交易確認資料至交易的相對人。前述多簽錢包交易資料包括錢包位址資料、使用者簽名資料以及認證伺服器簽名資料。
Description
本發明係關於一種交易認證方法及伺服器,特別關於一種用於區塊鏈交易的認證方法及伺服器。
區塊鏈是採取共識化演算法的分散式數位帳本,而目前應用區塊鏈技術中最廣泛為人所知的即是加密貨幣。基於區塊鏈技術的加密貨幣,其具有去中心化的特性,不受各國政府央行監管。同時,加密貨幣交易的紀錄原則上是永久存在且不可回溯修改,並且可被驗證和可被追溯。舉例來說,傳統的去中心化交易流程是交易的一方發起,以其用戶私鑰進行簽名,並將該交易內容及其數位簽名提交至區塊鏈上,由各節點進行驗證及記錄。為了確保安全性,交易的相對人通常不會只等待一次確認(confirmation)就認為該筆交易已完成。一般來說,交易的相對人會等待至少出現6次確認後才會認為該筆交易已完成。然而,這往往需要耗費十數分鐘至數小時的時間。但是,目前即便採用現金的交易也只需約3分鐘的時間即可完成,更不用說使用信用卡或其他非為去中心化的虛擬貨幣只需約0.5分鐘至1分鐘的時間就可完成。因此,傳統技術的區塊鏈加密貨幣交易的等待時間太長,有違一般人的交易習慣。
然而,基於區塊鏈技術的加密貨幣仍有其他的安全性缺陷。惡意使用者若具有較高的算力(hash rate,例如51%),則可以發動雙重支付攻擊(double spend attack),破壞原本交易紀錄的不可修改性,使得存在於不可刪除區塊中的交易紀錄被抹除,讓原本已經被「花費」掉的加密貨幣可再度被使用。即便例如是在採用圖靈完備語言Solidity的以太坊區塊鏈(Ethereum)平台,惡意使用者仍可以給付較高的「燃料/Gas」來進行雙重支付攻擊,使其較晚進行的交易先被記錄,而其時間較早的交易,反而會因節點於確認對應的錢包位址時發現已無足夠的加密貨幣餘額進行支付而導致認證失敗,使得該在先交易的相對人無法取得該筆交易的對價。
因此,對於區塊鏈技術的加密貨幣交易來說,目前亟需一種可避免惡意使用者進行雙重支付攻擊,並同時讓交易相對人無須長時間地等待認證完成的交易認證方法。
本發明的目的為提供一種區塊鏈交易的認證伺服器(authenticating server)及認證方法(authenticating method)。其係使認證伺服器確認使用者的加密貨幣餘額是否足以支應該次交易後,再將該筆交易提交至區塊鏈網路上進行運算,可避免惡意使用者進行雙重支付攻擊(double spend attack);同時,交易相對人也可在短時間內即可得知該筆交易是否被確認,免去較長的等待時間。
本發明提出一種區塊鏈交易的認證伺服器。該認證伺服器耦接於區塊鏈網路,並包含有記憶單元以及一或多數個處理單元,前述記憶單元儲存多數個指令,而前述一或多數個處理單元則與記憶單元耦接。前述一或多數個處理單元係執行該些指令而有以下作動:(1)接收使用者所傳送的交易申請資料,該交易申請資料包括錢包資料,而錢包資料包含錢包位址資料以及使用者簽名資料;(2)至區塊鏈網路上檢視(check)錢包位址資料所對應的加密貨幣的餘額是否足以進行交易;以及(3)當該加密貨幣的餘額足以進行交易時,發送多簽錢包交易資料至區塊鏈網路,以進行區塊鏈運算,並且發送交易申請資料所對應之的交易確認(confirmation of Tx)資料至交易的相對人。前述多簽錢包交易資料包括錢包位址資料、使用者簽名資料以及認證伺服器簽名資料。
此外,本發明亦提出一種區塊鏈交易的認證方法,該方法包含有下列步驟:(1)由認證伺服器接收使用者所傳送的交易申請資料,前述交易申請資料包括錢包資料,而錢包資料包含錢包位址資料以及使用者簽名資料;(2)認證伺服器至區塊鏈網路上檢視錢包位址資料所對應的加密貨幣的餘額是否足以進行交易;以及(3)當加密貨幣的餘額足以進行交易時,認證伺服器會發送多簽錢包交易資料至區塊鏈網路,以進行區塊鏈運算,並發送交易申請資料所對應之交易確認資料至交易的相對人。前述多簽錢包交易資料包括錢包位址資料、使用者簽名資料以及認證伺服器簽名資料。
在一實施例中使用者簽名資料係使用者對應於錢包位置的一數位簽名。
在一實施例中,交易申請資料進一步包括交易內容以及相對人資料。
在一實施例中,多簽錢包交易資料進一步包括前述交易內容以及前述相對人資料。
在一實施例中,當加密貨幣的餘額不足以進行交易時,認證伺服器會發送一交易失敗資訊給使用者,且不將前述多簽錢包交易資料發送至區塊鏈網路。
在一實施例中,加密貨幣可以是比特幣(Bitcoin、BTC)、比特幣現金(Bitcoin cash、BCC)、乙太幣(Ethereum、ETH)、萊特幣(Litecoin、LTC),或門羅幣(Monero、XMR)。
在一實施例中,當加密貨幣的餘額足以進行交易時,認證伺服器會進一步將交易確認資訊回傳給使用者。
承上所述,在本發明的區塊鏈交易的認證伺服器(authenticating server)及認證方法(authenticating method)中,係使認證伺服器確認使用者的加密貨幣餘額是否足以支應該次交易後,再將該筆交易提交至區塊鏈網路上進行運算,可避免惡意使用者進行雙重支付攻擊(double spend attack);同時,認證伺服器確於認使用者的加密貨幣餘額足以支應該次交易後,即會將交易確認訊息發送給交易相對人,如此一來,交易相對人在短時間內即可得知該筆交易是否被確認,免去較長的等待時間。
以下將參照相關圖式,說明依本發明所提供的各種實施例的微開關陣列模組。其中,相同的元件將以相同的參照符號加以說明。
除非另外定義,否則本文使用的中所有技術和科學術語的涵義,均等同於具有與本發明所屬技術領域的具有通常知識之人所者理解的一般意義相同的含義。應該理解的是,本文所使用的術語僅是為了描述特定實施例,而非不是限制性的。
需要說明的是,本發明各實施例中所有方向性指示(諸如上、下、左、右、前、後……)僅用於解釋在某一特定姿態(如所附的各圖式所示)下各部件之間的相對位置關係、運動情況等,如果該特定姿態發生改變時,則該方向性指示也會相應的隨之改變。
術語「區塊鏈」在本文中是指架構於點對點(peer-to-peer,P2P)網路系統上,並利用密碼學所加密及串聯的交易記錄(各記錄又稱為「區塊(block)」)。各區塊包含了前一個區塊的加密雜湊字串、時間戳記以及交易資料。區塊鏈技術除了利用上述P2P網路架構之外,還利用了非對稱式加密技術(公鑰-私鑰對)、分散式帳本(distributed ledger)、基於共識化演算法的認證機制等,使得區塊內容很難被竄改,且具有可驗證性和可追溯性。因此要進行貨幣或貨品所有權移轉交易時,可由一方直接發起,中間不需要再通過任何金融機構或第三方機構即可完成,故其具有去中心化的特性。目前常見應用於數位貨幣或加密貨幣的交易。而在基於P2P網路架構的區塊鏈網路中,網路中的每台電腦(也稱為「節點」),具有同等的網路計算權力。
術語「加密貨幣」,於本文中係代表利用區塊鏈技術之非對稱加密、分散式帳本、共識化演算認證機制等技術來確保交易安全及控制交易單位的一種交易媒介。加密貨幣是一種數位貨幣,其可以是比特幣(Bitcoin、BTC)、比特幣現金(Bitcoin cash、BCC)、乙太幣(Ethereum、ETH)、萊特幣(Litecoin、LTC),或門羅幣(Monero、XMR)等。
術語「錢包」及「錢包地址」,於本文中係代表在區塊鏈上交易所使用的加密貨幣所對應的地址,其中記載有對應該地址的貨幣的結算(及貨幣餘額)。其係利用使用者或擁有者的私鑰進行橢圓曲線演算(例如secp256k1)、雜湊函數運算(例如是SHA-256)與編碼(例如是BASE58)所得出的包含英文字母與數字的字串序列(例如0x80a956Ab640Ee8A6E336C9a954bB55f422e3Ac6e)。區塊鏈上交易所使用的錢包可使用諸如非對稱式加密法來形成,其中每一個錢包都有自己獨特的一組成對的公鑰及私鑰。各錢包的公鑰可公開地讓各節點對該錢包進行識別(例如,將加密貨幣轉入該錢包地址),但是私鑰是由該錢包的擁有者所獨有,並用來對該交易進行簽章(例如,藉此用來讓各節點驗證該筆交易是否為真)。
術語「智慧合約」或「智能合約」係指以數位形式定義的契約,其是以程式語言所撰寫的計算機協議,當用於區塊鏈—例如以太坊(Ethereum)區塊鏈—上時其係代表以網路方式所傳遞、且可由區塊鏈上的電腦所驗證及自動執行的電腦協議。智慧合約無須交易第三方或是中間人存在,也能夠進行可被驗證、可被追蹤而不可逆轉的交易。舉例來說,當交易雙方基於ERC20代幣標準(ERC20 Token Standard)以Solidity語言撰寫一份智慧合約,並將其佈署在以太坊區塊鏈(以下簡稱以太鏈)上而利用以太坊虛擬機(Ethereum virtual machine,EVM)運作,以太鏈上的電腦即會在出現有與該合約相關訊號(或稱「事件/event」,其可例如是該合約所規定的轉帳時間,或是一方已將貨物交付給另一方)時根據該合約內容執行對應動作(例如自某一錢包地址中提款轉帳)。在以太鏈上佈署及執行智慧合約均需要額外的計算能力,稱為「燃料/Gas」,「燃料/Gas」可以利用以太幣購買。同樣的,在以太鏈上因應特定事件來執行智慧合約中的對應動作,也是採取共識型加解密演算。在以太鏈上佈署成功的智慧合約也會有專屬的地址,例如是「0x03f8a79ccf94611a512b63d42f5fc3eacf59d3」這種包含英文字母與數字的字串序列。
術語「多簽錢包」或「多簽名錢包」,於指涉加密貨幣的區塊鏈交易時,係代表一個交易需要得到一個以上的獨立簽名才能進行,其較佳是以智慧合約的方式進行設定。也就是說,若某一錢包地址係以智慧合約的形式設定為多簽錢包時,且該多簽錢包為成員A及B所共同擁有,任何會從該錢包地址進行提款的交易都要有成員A的簽名及成員B的簽名才能執行。此外,當一個多簽錢包的擁有成員數量大於或等於3人時,也可以以智慧合約的方式來設定交易所需的最小簽名數量。亦即,當一個多簽錢包的擁有成員數量為M(M ≥ 3),可以以智慧合約的方式來將該多簽錢包設定為只需要N個成員的簽名即可進行交易(2 ≤ N ≤ M)。此時,該錢包地址不一定需要有所有成員的簽名才能進行交易。
以下將就本文的數個示例性的實施例進行描述。
第一實施例
本發明的第一實施例係為一種區塊鏈交易的認證伺服器。請參考圖1及圖2,圖1為本實施例的認證伺服器用於區塊鏈交易的示意圖。圖2為本實施例認證伺服器的架構示意圖。認證伺服器1耦接於區塊鏈網路4,並包含有記憶單元11、一或多數個處理單元12,以及一或多個輸出/輸入單元13。本實施例中處理單元12及輸出/輸入單元13係各以一個為例進行說明。記憶單元11儲存多數個指令(例如程式碼)。而處理單元12則與輸出/輸入單元13和記憶單元11耦接。記憶單元11包括隨機記憶體或非揮發式計算機可讀取的儲存媒體等,非揮發式計算機可讀取的儲存媒體例如是硬碟、固態硬碟(SSD)、快閃記憶體等,其儲存處理單元可執行的指令(例如程式碼)。處理單元12可以將指令(例如程式碼)從非揮發式計算機可讀取的儲存媒體載入至隨機記憶體並加以執行。輸出/輸入單元13例如是網路卡、網路晶片、數據機等能提供網路連線的裝置。
認證伺服器1亦與使用者端計算機裝置2及店家端計算機裝置3耦接,其耦接方式包括但不限於以無線網路連接或以有線網路連接。使用者端計算機裝置2及店家端計算機裝置3可以例如是行動裝置、筆記型電腦、桌上型電腦、可網路連線之裝置(例如智慧家電、智慧手錶)或其他計算機裝置。
區塊鏈網路4如圖所示,其係包含有複數個電腦(或是節點/nodes),其數量並無限制。圖1中雖僅繪示由電腦41~47等7台電腦/節點所組成的區塊鏈網路4,其目的僅在於進行示例性說明,而非對本文進行任何限制。而使用者端計算機裝置2也可以連接至區塊鏈網路4;例如圖1中所示的,其是與區塊鏈網路4中的電腦41以無線或有線方式連接,進而連接至連接整個區塊鏈網路4。或者,使用者端計算機裝置2也可以成為區塊鏈網路4之中的一個節點,進而變成區塊鏈網路4中的一部分。同樣地,店家端計算機裝置3也可以連接至區塊鏈網路4;例如圖1中所示的,其是與區塊鏈網路4中的電腦47以無線或有線方式連接,進而連接至連接整個區塊鏈網路4。或者,店家端計算機裝置3也可以成為區塊鏈網路4之中的一個節點,進而變成區塊鏈網路4中的一部分。
上述處理單元12係讀取並執行記憶單元11中所儲存的該些指令而控制認證伺服器1進行下述作動:(1)接收使用者端計算機裝置2所傳送過來的交易申請資料。交易申請資料包括錢包資料,而錢包資料包含錢包位址資料以及使用者簽名資料。(2)至區塊鏈網路4上檢視(check)錢包位址資料所對應的加密貨幣的餘額是否足以進行交易;以及(3)當該加密貨幣的餘額足以進行交易時,發送多簽錢包交易資料至區塊鏈網路,以進行認證、紀錄等區塊鏈運算,並且發送交易申請資料所對應之的交易確認(confirmation of Tx)資料至交易的相對人。前述多簽錢包交易資料包括錢包位址資料、使用者簽名資料以及認證伺服器簽名資料。
舉例來說,當一使用者至一店家購買一價格為0.5個ETH的貨物,並欲進行支付。此時該店家即為該交易的相對人,而本實施例中該店家是利用店家端計算機裝置3來進行此一交易。該使用者可利用其所有之使用者端計算機裝置2向認證伺服器1發出一交易申請,並傳送對應於該交易的交易申請資料。此時,此一交易申請資料即包括有該使用者要用來進行支付的錢包資料、該交易的內容(即要交付0.5個ETH),以及該交易的相對人資料(可以是該店家名稱及/或該店家用來接收上述0.5個ETH的錢包位址)。值得一提的是,本實施例所使用的加密貨幣除了乙太幣(Ethereum、ETH)以外,還可以是比特幣(Bitcoin、BTC)、比特幣現金(Bitcoin cash、BCC)、萊特幣(Litecoin、LTC),或門羅幣(Monero、XMR)等,本文並不以此為限。
上述錢包資料會進一步包括有該使用者欲用來進行該交易之加密貨幣所對應的錢包位址資料(即該使用者要用來支付那0.5個ETH的錢包位址),以及使用者簽名資料(即該使用者對該筆交易的數位簽名)。其中,前述錢包位址資料是由使用者的私鑰及/或認證伺服器1的私鑰,由電腦(其例如是使用者端計算機裝置2、認證伺服器1,或是其他第三方計算機裝置皆可,本文在此不加以限制)進行如前述之橢圓曲線演算、雜湊函數運算及編碼所產生的。同時,利用智慧合約的方式,可以將該錢包地址所代表的錢包之屬性設定為一多簽錢包,並指定其至少需要有該使用者的數位簽名以及認證伺服器1的數位簽名才能進行付款或提款。此外,前述的使用者簽名資料(即該使用者對該筆交易的數位簽名),也是由使用者端計算機裝置2利用使用者的私鑰進行非對稱式加密等運算後所產生出來的。再者,由於本實施例的多簽錢包是利用智慧合約的方式進行架構,因此由使用者端計算機裝置2所傳送給認證伺服器1的該交易申請資料,也可以進一步包括已佈署在該區塊鏈網路4上用來執行該多簽錢包的智慧合約的地址資料,以便區塊鏈網路4的各節點進行後續驗證。
如果是基於安全性的考量,則使用者私鑰則不會傳送到認證伺服器1,而在產生上述對應該筆交易的錢包位址時,會由使用者端計算機裝置2自己利用使用者的私鑰進行橢圓曲線演算、雜湊函數運算及編碼來進行。
接著,在認證伺服器1收到上述交易申請資料後,會向區塊鏈網路4的節點41~47查詢,在區塊鏈的紀錄中,根據該錢包位址資料所記載的錢包位址,其所對應的加密貨幣結算結果是否足夠支應該筆交易所欲支付的額度。亦即,認證伺服器1會去各節點查詢並確認,該錢包位址中有足夠的額度來支付那0.5個ETH。認證伺服器1對交易申請資料的接收是由輸出/輸入單元13來負責。
當認證伺服器1確認上述錢包位址中有足夠的額度來支付那0.5個ETH的時候,會向該店家的店家端計算機裝置3發送對應該交易的交易確認資料,代表使用者要拿來進行該筆交易的錢包位址中有足夠的額度可以支付那0.5個ETH。此時,該店家即可迅速地得知該筆交易已經經過認證伺服器1的認證,因而得以免去傳統上須由區塊鏈網路4進行數次(例如6次)確認所耗費的等待時間。此外,在一較佳的實施態樣下,此時認證伺服器1也可以進一步將交易確認資訊回傳給使用者端計算機裝置2,以通知使用者該筆交易已被認證伺服器1確認。
同時,認證伺服器1會將對應於該筆交易的多簽錢包資料傳送到區塊鏈網路4上,由各節點41~47進行對應的認證及記錄等區塊鏈運算。由於該錢包地址所代表的錢包之屬性被設定為多簽錢包的形式,需要有使用者的數位簽名以及認證伺服器1的數位簽名才能進行支付,所以前述多簽錢包資料即會包含認證伺服器1的簽名資料,以及前述的由使用者端計算機裝置2所傳來的錢包位址資料、交易內容資料、相對人資料、使用者簽名資料和該智慧合約的地址資料。同樣地,上述認證伺服器1對應該錢包位址的簽名資料,也是由認證伺服器1利用認證伺服器1所獨有的私鑰,進行非對稱式加密等運算後所產生出來的。
此外,在一實施例中,當認證伺服器1確認上述錢包位址中沒有足夠的額度來支付那0.5個ETH的時候,認證伺服器1會發送一交易失敗資訊到使用者端計算機裝置2,以通知使用者其所指定的錢包中未有足夠的以太幣進行此一交易,讓該使用者得以採取其他動作(例如是對該錢包地址補充足夠的加密貨幣,或是指定另一個有足額加密貨幣的錢包地址)以繼續進行本次交易。同時,認證伺服器1不會將前述多簽錢包交易資料發送至區塊鏈網路4上進行認證及記錄。此外,認證伺服器1也可以將此一交易失敗資訊傳送到店家端計算機裝置3,以通知交易相對人該筆交易尚未完成。
如此一來,在區塊鏈網路4的各節點41~47收到認證伺服器1所傳來的多簽錢包資料後,即會根據該多簽錢包資料中所包括的使用者數位簽名、認證伺服器1的數位簽名、該錢包地址,與該智慧合約的地址進行認證。詳細來說,各節點41~47會利用對應該錢包地址的公鑰對使用者數位簽名資料和認證伺服器1的數位簽名資料進行解密來做認證。只有在確認使用者數位簽名資料和認證伺服器1的數位簽名資料為真,才會根據該智慧合約執行該多簽錢包的支付功能,而將該筆交易內容資料及相對人資料進行加密運算及編碼,以將其作為一個新的區塊串接(即紀錄)於已有的區塊鏈上,此時即完成該筆交易:該使用者將那0.5個ETH,自其錢包支付給交易相對人—即該店家。此外,在紀錄該筆交易內容時,各節點41~47也會一併將對應該交易的時間戳章(time stamp)納入新的區塊中,使得新加上的區塊內容很難被竄改,且具有可驗證性和可追溯性。
第二實施例
此外,本發明亦提出一種區塊鏈交易的認證方法,其係利用前述實施例所提供的耦接於區塊鏈網路4的認證伺服器1進行。請參考圖3,為本實施例的認證方法的流程示意圖。本實施例的認證方法包含有下列步驟。步驟S1:由認證伺服器1接收使用者所傳送的交易申請資料,前述交易申請資料包括錢包資料,而錢包資料包含錢包位址資料以及使用者簽名資料。步驟S2:認證伺服器1至區塊鏈網路4上檢視錢包位址資料所對應的加密貨幣的餘額是否足以進行交易;以及,步驟S3:當加密貨幣的餘額足以進行交易時,認證伺服器1會發送多簽錢包交易資料至區塊鏈網路4,以進行區塊鏈運算,並發送交易申請資料所對應之交易確認資料至交易的相對人。而前述多簽錢包交易資料包括錢包位址資料、使用者簽名資料以及認證伺服器簽名資料。
此外,本實施例的認證方法中所使用的認證伺服器1、使用者端計算機裝置2、店家端計算機裝置3和區塊鏈網路4各細部部件之組成、本實施例認證方法的變化態樣,以及其所使用之認證伺服器1、使用者端計算機裝置2、店家端計算機裝置3和區塊鏈網路4彼此間的連接關係,則同於前面實施例中所述,於此不再贅述。
承上所述,藉由上述架構,本文所揭露的認證方法及認證伺服器1會先確認使用者的加密貨幣餘額是否足以支應該次交易,於確認完成後再將該筆交易提交至區塊鏈網路4上進行運算。如此一來,可避免惡意使用者利用時間差進行雙重支付攻擊(double spend attack);同時,認證伺服器1確於認使用者的加密貨幣餘額足以支應該次交易後,即會將交易確認訊息發送給交易相對人;如此一來,交易相對人也能夠在短時間內得知該筆交易是否被確認,因而免去較長的等待時間。
以上所述僅為舉例性,而非為限制性者。任何未脫離本發明之精神與範疇,而對其進行之等效修改或變更,均應包含於後附之申請專利範圍中。
1:認證伺服器11:記憶單元12:處理單元13:輸出/輸入單元2:使用者端計算機裝置3:店家端計算機裝置4:區塊鏈網路41、42、43、44、45、46、47:電腦(節點)S1、S2、S3、S4:步驟
圖1為本發明第一實施例的認證伺服器用於區塊鏈交易的示意圖。 圖2為本發明第一實施例認證伺服器的架構示意圖。 圖3為本發明第二實施例的認證方法的流程示意圖。
1:認證伺服器
2:使用者端計算機裝置
3:店家端計算機裝置
4:區塊鏈網路
41、42、43、44、45、46、47:電腦(節點)
Claims (14)
- 一種區塊鏈交易的認證伺服器,耦接於一區塊鏈網路,其中該認證伺服器包含有一記憶單元以及一或多數個處理單元,該記憶單元儲存多數個指令,且該一或多數個處理單元耦接該記憶單元,該一或多數個處理單元執行該些指令而有以下作動: 接收一使用者所傳送的一交易申請資料,其中該交易申請資料包括一錢包資料,該錢包資料包含一錢包位址資料以及一使用者簽名資料; 至該區塊鏈網路上檢視該錢包位址資料所對應的一加密貨幣的餘額是否足以進行該交易;以及 當該加密貨幣的餘額足以進行該交易時,發送一多簽錢包交易資料至該區塊鏈網路以進行區塊鏈運算,並發送該交易申請資料所對應之一交易確認資料至該交易的相對人,其中該多簽錢包交易資料包括該錢包位址資料、該使用者簽名資料以及一認證伺服器簽名資料。
- 如申請專利範圍第1項所述的認證伺服器,其中該使用者簽名資料係該使用者對應於該錢包位置的一數位簽名。
- 如申請專利範圍第1項所述的認證伺服器,其中該交易申請資料進一步包括一交易內容以及一相對人資料。
- 如申請專利範圍第3項所述的認證伺服器,其中該多簽錢包交易資料進一步包括該交易內容以及該相對人資料。
- 如申請專利範圍第1項所述的認證伺服器,其中當該加密貨幣的餘額不足以進行該交易時,該認證伺服器進一步發送一交易失敗資訊給該使用者且不將該多簽錢包交易資料發送至該區塊鏈網路。
- 如申請專利範圍第1項所述的認證伺服器,其中該加密貨幣係選自由比特幣(Bitcoin、BTC)、比特幣現金(Bitcoin cash、BCC)、乙太幣(Ethereum、ETH)、萊特幣(Litecoin、LTC)以及門羅幣(Monero、XMR)所組成之群組。
- 如申請專利範圍第1至6項中任一項所述的認證伺服器,其中當該加密貨幣的餘額足以進行該交易時,該認證伺服器進一步將該交易確認資訊回傳給該使用者。
- 一種區塊鏈交易的認證方法,該方法包含有: 由一認證伺服器接收一使用者所傳送的一交易申請資料,其中該交易申請資料包括一錢包資料,該錢包資料包含一錢包位址資料以及一使用者簽名資料; 該認證伺服器至該區塊鏈網路上檢視該錢包位址資料所對應的一加密貨幣的餘額是否足以進行該交易;以及 當該加密貨幣的餘額足以進行該交易時,該認證伺服器發送一多簽錢包交易資料至該區塊鏈網路以進行區塊鏈運算,並發送該交易申請資料所對應之一交易確認資訊至該交易的相對人,其中該多簽錢包交易資料包括該錢包位址資料、該使用者簽名資料以及一認證伺服器簽名資料。
- 如申請專利範圍第8項所述的認證方法,其中該使用者簽名資料係該使用者對應於該錢包位置的一數位簽名。
- 如申請專利範圍第8項所述的認證方法,其中該交易申請資料進一步包括一交易內容以及一相對人資料。
- 如申請專利範圍第10項所述的認證方法,其中該多簽錢包交易資料進一步包括該交易內容以及該相對人資料。
- 如申請專利範圍第8項所述的認證方法,其中當該加密貨幣的餘額不足以進行該交易時,該認證伺服器進一步發送一交易失敗資訊給該使用者且不將該多簽錢包交易資料發送至該區塊鏈網路。
- 如申請專利範圍第8項所述的認證方法,其中該加密貨幣係選自由比特幣(Bitcoin、BTC)、比特幣現金(Bitcoin cash、BCC)、乙太幣(Ethereum、ETH)、萊特幣(Litecoin、LTC)以及門羅幣(Monero、XMR)所組成之群組。
- 如申請專利範圍第8至13項中任一項所述的認證方法,其中當該加密貨幣的餘額足以進行該交易時,該認證伺服器進一步將該交易確認資訊回傳給該使用者。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107131375A TW202011312A (zh) | 2018-09-06 | 2018-09-06 | 區塊鏈交易的認證伺服器及認證方法 |
CN201811244747.6A CN110880113A (zh) | 2018-09-06 | 2018-10-24 | 区块链交易的认证服务器及认证方法 |
US16/217,722 US20200082388A1 (en) | 2018-09-06 | 2018-12-12 | Authenticating server and method for transactions on blockchain |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107131375A TW202011312A (zh) | 2018-09-06 | 2018-09-06 | 區塊鏈交易的認證伺服器及認證方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202011312A true TW202011312A (zh) | 2020-03-16 |
Family
ID=69718827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107131375A TW202011312A (zh) | 2018-09-06 | 2018-09-06 | 區塊鏈交易的認證伺服器及認證方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20200082388A1 (zh) |
CN (1) | CN110880113A (zh) |
TW (1) | TW202011312A (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210103938A1 (en) * | 2019-10-03 | 2021-04-08 | collectID AG | Methods and systems for authenticating physical products via near field communication tags and recording authentication transactions on a blockchain |
US20220284447A1 (en) * | 2019-10-03 | 2022-09-08 | collectID AG | Methods and systems for authenticating physical products via near field communication tags and recording authentication transactions on a blockchain |
US12217246B2 (en) | 2020-04-06 | 2025-02-04 | Mastercard Asia/Pacific Pte. Ltd. | Method and system for use of an EMV card in a multi-signature wallet for cryptocurrency transactions |
CN111626848A (zh) * | 2020-06-04 | 2020-09-04 | 中国银行股份有限公司 | 一种数据处理方法及系统 |
CN111817858A (zh) * | 2020-07-27 | 2020-10-23 | 北京金仓幸福科技有限公司 | 一种基于多重签名的区块链数据安全方法 |
CN111738860A (zh) * | 2020-07-30 | 2020-10-02 | 北京共识数信科技有限公司 | 一种基于区块链与数字货币或数字积分的多对象交易方法 |
CN112819629B (zh) * | 2021-02-08 | 2023-06-13 | 天地融科技股份有限公司 | 一种基于智能合约的数字货币交易方法及系统 |
CN113362064B (zh) * | 2021-06-04 | 2022-09-16 | 杭州复杂美科技有限公司 | 多重签名方法、计算机设备和存储介质 |
US11677552B2 (en) * | 2021-09-09 | 2023-06-13 | Coinbase Il Rd Ltd. | Method for preventing misuse of a cryptographic key |
WO2024072915A1 (en) * | 2022-09-29 | 2024-04-04 | Thirdwayv, Inc. | Native cryptocurrency payment system |
-
2018
- 2018-09-06 TW TW107131375A patent/TW202011312A/zh unknown
- 2018-10-24 CN CN201811244747.6A patent/CN110880113A/zh not_active Withdrawn
- 2018-12-12 US US16/217,722 patent/US20200082388A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
CN110880113A (zh) | 2020-03-13 |
US20200082388A1 (en) | 2020-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW202011312A (zh) | 區塊鏈交易的認證伺服器及認證方法 | |
US11477034B2 (en) | Method and apparatus for processing account information in block chain, storage medium, and electronic apparatus | |
JP7351591B2 (ja) | N個のうちm個の鍵を使用して顧客ウォレットを復元するマルチ承認システム | |
US10977632B2 (en) | Electronic bill management method, apparatus, and storage medium | |
US9818092B2 (en) | System and method for executing financial transactions | |
CN113508410A (zh) | 用于通过区块链网络实现转账的计算机实现的系统和方法 | |
US11887107B2 (en) | Method and device for providing transaction service for cryptocurrencies based on different blockchains | |
US20210004791A1 (en) | Guaranteeing server and method for transaction on blockchain | |
JP2020048161A (ja) | 取引装置、取引方法及び取引プログラム | |
CN111311259A (zh) | 票据处理方法、装置、终端及计算机可读存储介质 | |
CN115131018A (zh) | 基于区块链的隐私交易的方法及相关产品 | |
JP2022054439A (ja) | 中央銀行デジタル通貨のための決済方法およびシステム | |
TWM607492U (zh) | 區塊鏈的加密貨幣轉換系統與伺服器 | |
CN114629663B (zh) | 基于区块链的数字商品交易方法及装置 | |
CN117078247A (zh) | 支付媒介开通方法、装置、设备及存储介质 | |
JP7262328B2 (ja) | 資産のバックアップ処理方法およびプログラム | |
TWM607453U (zh) | 區塊鏈交易的擔保伺服器及擔保系統 | |
KR102784894B1 (ko) | 티켓을 나타내는 nft 관련 서비스를 제공하는 방법, 장치 및 기록 매체 | |
US20230109125A1 (en) | Automated Transactions Across Multiple Blockchains with Cryptocurrency Swaps | |
WO2019031487A2 (ja) | 仮想貨幣データ発行システム、ユーザ端末、管理装置、方法、並びにコンピュータプログラム | |
CN118333623A (zh) | 基于可信硬件的数字货币链内及跨链链下支付方法 | |
CN118761770A (zh) | 一种基于可信硬件的数字货币链内及跨链链下互换方法 | |
KR20240014317A (ko) | 개인서명 데이터에 대한 nft 발행을 통한 개인서명의 소유권 증명 시스템 | |
TW202022741A (zh) | 區塊鏈平台、及網路交易之系統和方法 | |
KR20220037171A (ko) | 암호화폐 거래 시스템 |