TWI694709B - 基於區塊鏈的電子簽名方法及裝置、電子設備 - Google Patents
基於區塊鏈的電子簽名方法及裝置、電子設備 Download PDFInfo
- Publication number
- TWI694709B TWI694709B TW108107759A TW108107759A TWI694709B TW I694709 B TWI694709 B TW I694709B TW 108107759 A TW108107759 A TW 108107759A TW 108107759 A TW108107759 A TW 108107759A TW I694709 B TWI694709 B TW I694709B
- Authority
- TW
- Taiwan
- Prior art keywords
- blockchain
- certificate
- target
- electronic
- electronic document
- Prior art date
Links
Images
Classifications
-
- 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/3821—Electronic credentials
- G06Q20/38215—Use of certificates or encrypted proofs of transaction rights
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本說明書一個或多個實施例提供一種基於區塊鏈的電子簽名方法及裝置、電子設備,該方法可以包括:接收簽約用戶透過客戶端發起的目標交易;其中,所述目標交易用於觸發對目標電子文書進行電子簽名操作;與所述簽約用戶對應的CA(Certificate Authority)證書被預先儲存至所述區塊鏈;回應於所述目標交易,調用與電子簽名對應的智慧型合約,執行所述智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與所述簽約用戶對應的CA證書;以及,基於所述CA證書對所述目標電子文書進行電子簽名操作。
Description
本說明書一個或多個實施例有關區塊鏈技術領域,尤其有關一種基於區塊鏈的電子簽名方法及裝置、電子設備。
區塊鏈技術,也被稱之為分散式帳本技術,是一種由若干台運算設備共同參與「記帳」,共同維護一份完整的分散式資料庫的新興技術。由於區塊鏈技術具有去中心化、公開透明、每台運算設備可以參與資料庫記錄、並且各運算設備之間可以快速的進行資料同步的特性,使得區塊鏈技術已在眾多的領域中廣泛的進行應用。
本說明書提出一種基於區塊鏈的電子簽名方法,所述方法包括:接收簽約用戶透過客戶端發起的目標交易;其中,所述目標交易用於觸發對目標電子文書進行電子簽名操作;與所述簽約用戶對應的CA(Certificate Authority)證書被預先儲存至所述區塊鏈;
回應於所述目標交易,調用與電子簽名對應的智慧型合約,執行所述智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與所述簽約用戶對應的CA證書;以及,基於所述CA證書對所述目標電子文書進行電子簽名操作。
可選地,所述區塊鏈中儲存的所述CA證書,被預設了限制所述簽約用戶以外的用戶帳戶進行存取的存取權限;所述調用與電子簽名對應的智慧型合約,包括:確定所述目標交易中是否包括所述簽約用戶對所述目標文字進行電子簽名的授權資訊;其中,所述授權資訊用於指示將所述CA證書的存取權限授權給所述智慧型合約;如果所述目標交易中包括所述授權資訊,則觸發調用與電子簽名對應的智慧型合約。
可選地,所述如果所述目標交易中包括所述授權資訊,則觸發調用與電子簽名對應的智慧型合約,包括:如果所述目標交易中包括所述授權資訊,進一步確定所述目標交易是否被成功儲存至所述區塊鏈;如果是,則觸發調用與電子簽名對應的智慧型合約。
可選地,所述目標電子文書被預先儲存至區塊鏈;其中,所述區塊鏈中儲存的所述目標電子文書,被預設了限制所述智慧型合約以外的用戶帳戶進行存取的存取權限;所述基於所述CA證書對所述目標電子文書進行電子簽名操作,包括:
從所述區塊鏈中讀取所述目標電子文書;
基於所述CA證書對讀取到的所述目標電子文書進行電子簽名操作。
可選地,所述CA證書包括所述簽約用戶的私鑰;
所述基於所述CA證書對讀取到的所述目標電子文書進行電子簽名操作,包括:基於所述CA證書中的所述簽約用戶的私鑰,對讀取到的所述目標電子文書進行電子簽名操作。
可選地,所述區塊鏈包括主鏈以及若干子鏈;所述若干子鏈包括用於儲存所述目標電子文書的存取位址的第一子鏈,以及用於儲存所述目標電子文書的原始內容的第二子鏈;
所述從所述區塊鏈中讀取所述目標電子文書,包括:
從所述第一子鏈中讀取所述目標電子文書的存取位址;
基於所述目標電子文書的存取位址從所述第二子鏈中讀取所述目標電子文書的原始內容。
可選地,所述若干子鏈還包括用於於儲存所述CA證書的第三子鏈;
所述從區塊鏈中讀取與所述簽約用戶對應的CA證書,包括:
從所述第三子鏈中讀取與所述簽約用戶對應的CA證書。
可選地,所述目標電子文書為電子合約。
本說明書還提出一種基於區塊鏈的電子簽名裝置,所述裝置包括:
接收模組,接收簽約用戶透過客戶端發起的目標交易;其中,所述目標交易用於觸發對目標電子文書進行電子簽名操作;與所述簽約用戶對應的CA證書被預先儲存至所述區塊鏈;
簽名模組,回應於所述目標交易,調用與電子簽名對應的智慧型合約,執行所述智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與所述簽約用戶對應的CA證書;以及,基於所述CA證書對所述目標電子文書進行電子簽名操作。
可選地,所述區塊鏈中儲存的所述CA證書,被預設了限制所述簽約用戶以外的用戶帳戶進行存取的存取權限;
所述簽名模組:
確定所述目標交易中是否包括所述簽約用戶對所述目標文字進行電子簽名的授權資訊;其中,所述授權資訊用於指示將所述CA證書的存取權限授權給所述智慧型合約;
如果所述目標交易中包括所述授權資訊,則觸發調用與電子簽名對應的智慧型合約。
可選地,所述簽名模組進一步:
如果所述目標交易中包括所述授權資訊,進一步確定所述目標交易是否被成功儲存至所述區塊鏈;如果是,則觸發調用與電子簽名對應的智慧型合約。
可選地,所述目標電子文書被預先儲存至區塊鏈;其中,所述區塊鏈中儲存的所述目標電子文書,被預設了限制所述智慧型合約以外的用戶帳戶進行存取的存取權限;
所述簽名模組:
從所述區塊鏈中讀取所述目標電子文書;
基於所述CA證書對讀取到的所述目標電子文書進行電子簽名操作。
可選地,所述CA證書包括所述簽約用戶的私鑰;
所述簽名模組:
基於所述CA證書中的所述簽約用戶的私鑰,對讀取到的所述目標電子文書進行電子簽名操作。
可選地,所述區塊鏈包括主鏈以及若干子鏈;所述若干子鏈包括用於儲存所述目標電子文書的存取位址的第一子鏈,以及用於儲存所述目標電子文書的原始內容的第二子鏈;
所述簽名模組進一步:
從所述第一子鏈中讀取所述目標電子文書的存取位址;
基於所述目標電子文書的存取位址從所述第二子鏈中讀取所述目標電子文書的原始內容。
可選地,所述若干子鏈還包括用於於儲存所述CA證書的第三子鏈;
所述簽名模組進一步:
從所述第三子鏈中讀取與所述簽約用戶對應的CA證書。
可選地,所述目標電子文書為電子合約。
本說明書還提出一種電子設備,包括:
處理器;
用於儲存機器可執行指令的記憶體;
其中,透過讀取並執行所述記憶體儲存的與基於區塊鏈的基於區塊鏈的電子簽名的控制邏輯對應的機器可執行指令,所述處理器被促使:
接收簽約用戶透過客戶端發起的目標交易;其中,所述目標交易用於觸發對目標電子文書進行電子簽名操作;與所述簽約用戶對應的CA證書被預先儲存至所述區塊鏈;
回應於所述目標交易,調用與電子簽名對應的智慧型合約,執行所述智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與所述簽約用戶對應的CA證書;以及,
基於所述CA證書對所述目標電子文書進行電子簽名操作。
透過以上技術方案,一方面,由於用戶可以透過調用智慧型合約的方式,來觸發智慧型合約從區塊鏈中讀取與簽約用戶對應的CA證書,並基於讀取到的CA證書對電子文書進行電子簽名操作;因此,可以避免由用戶手動對電子文書進行簽名,簡化電子簽名操作的複雜度;
另一方面,由於簽約用戶的CA證書被預先儲存至區塊鏈,並且區塊鏈上的CA證書,只能由智慧型合約來統一使用,因此可以避免非法的第三方用戶透過冒用簽約用戶的CA證書的方式,在違背簽約用戶的意願的情況下,使用簽約用戶的CA證書對電子文書進行電子簽名操作,可以提升對電子文書進行電子簽名操作時的安全等級。
本說明書旨在提出一種,透過調用部署在區塊鏈上的智慧型合約,利用發布在區塊鏈上的簽約者的CA證書,來代替簽約者利用簽約者自動對待簽約的電子文書進行電子簽名的技術方案。
在實現時,一方面,可以在區塊鏈上提前部署用於對電子文書進行電子簽名操作的智慧型合約;另一方面,CA機構在為簽約者頒發CA證書後,也可以將為簽約者頒發的CA證書發布至區塊鏈,在區塊鏈的分散式資料庫(即分散式帳本)中進行儲存。
而簽約者在需要對電子文書進行電子簽名時,可以透過客戶端發起一筆用於觸發對電子文書進行電子簽名操作的交易。而區塊鏈中的節點設備在收到該交易後,可以發起對上述智慧型合約的調用,執行該智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與上述簽約用戶的CA證書,然後基於讀取到的CA證書對自動對上述電子文書進行電子簽名操作。
透過以上技術方案,一方面,由於用戶可以透過調用智慧型合約的方式,來觸發智慧型合約從區塊鏈中讀取與簽約用戶對應的CA證書,並基於讀取到的CA證書對電子文書進行電子簽名操作;因此,可以避免由用戶手動對電子文書進行簽名,簡化電子簽名操作的複雜度;
另一方面,由於簽約用戶的CA證書被預先儲存至區塊鏈,並且區塊鏈上的CA證書,只能由智慧型合約來統一使用,因此可以避免非法的第三方用戶透過冒用簽約用戶的CA證書的方式,在違背簽約用戶的意願的情況下,使用簽約用戶的CA證書對電子文書進行電子簽名操作,可以提升對電子文書進行電子簽名操作時的安全等級。
下面透過具體實施例並結合具體的應用場景對本說明書進行描述。
請參考圖1,圖1是本說明書一實施例提供的一種基於區塊鏈的電子簽名方法,應用於區塊鏈中的節點設備,執行以下步驟:
步驟102,接收簽約用戶透過客戶端發起的目標交易;其中,所述目標交易用於觸發對目標電子文書進行電子簽名操作;與所述簽約用戶對應的CA證書被預先儲存至所述區塊鏈;
步驟104,回應於所述目標交易,調用與電子簽名對應的智慧型合約,執行所述智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與所述簽約用戶對應的CA證書;以及,基於所述CA證書對所述目標電子文書進行電子簽名操作。
在本說明書描述的區塊鏈,具體可以包括任意類型的區塊鏈網路;例如,在實際應用中,可以採用共有鏈、私有鏈、或者聯盟鏈中的任意一種。
例如,在示出的是一種實施方式中,上述區塊鏈網路具體可以是一個由主鏈,以及若干子鏈構成的聯盟鏈。
在本說明書中所描述的交易,是指用戶透過區塊鏈的客戶端創建,並需要最終發布至區塊鏈中的一筆資料。
其中,區塊鏈中的交易,存在狹義的交易以及廣義的交易之分。狹義的交易是指用戶向區塊鏈發布的一筆價值轉移;例如,在傳統的比特幣區塊鏈網路中,交易可以是用戶在區塊鏈中發起的一筆轉帳。而廣義的交易是指用戶向區塊鏈發布的一筆具有業務意圖的業務資料;例如,運營方可以基於實際的業務需求搭建一個聯盟鏈,依託於聯盟鏈部署一些與價值轉移無關的其它類型的線上業務(比如,租房業務、車輛調度業務、保險理賠業務、信用服務、醫療服務等),而在這類聯盟鏈中,交易可以是用戶在聯盟鏈中發布的一筆具有業務意圖的業務訊息或者業務請求。
而上述目標交易,則是指由用戶透過客戶端創建的,用於觸發對區塊鏈上部署的智慧型合約進行調用的調用訊息或者調用請求。
上述電子文書,可以包括任意形式的以數字形式存在的待簽約文字;例如,在一個例子中,上述電子文書具體可以是電子合約。
在本說明書中,簽約用戶可以基於個人的身分資訊,向CA機構申請CA證書。而CA機構收到簽約用戶的CA證書申請後,可以基於簽約用戶提交的身分資訊,對簽約用戶進行身分認證,並在身分認證透過後,可以為上述簽約用戶頒發CA證書。
其中,簽約用戶向CA機構申請CA證書的具體過程,在本說明書中不再進行詳細描述;
例如,在實際應用中,簽約用戶用向CA機構提交身分資訊申請CA證書,而CA機構在對簽約用戶的身分資訊驗證透過後,可以為簽約用戶分配公鑰私鑰對,並將分配的公鑰私鑰對與該簽約用戶的身分資訊進行綁定後,使用CA機構持有的私鑰進行電子簽名,形成CA證書頒發給簽約用戶。
在本說明書中,對於頒發給簽約用戶的CA證書,可以發布至區塊鏈,在區塊鏈的分散式資料庫中進行儲存;
例如,在一個例子中,CA證書在將CA證書頒發給簽約用戶後,簽約用戶可以透過客戶端以交易的形式在區塊鏈中發布上述CA證書(CA證書以密文的形式攜帶在交易中),而區塊鏈中的節點設備,在收到上述CA證書後,可以發起對上述CA證書進行共識處理,並在共識通過後,將上述CA證書收錄儲存至上述區塊鏈的分散式資料庫。
在示出的一種實施方式中,為了提升簽約用戶的CA證書的使用安全,當CA機構為簽約用戶頒發的CA證書經過共識處理,被成功收錄儲存至區塊鏈的分散式資料庫之後,可以為鏈上儲存的CA證書設置存取權限,來限制該簽約用戶以外的用戶帳戶進行存取。
也即,透過為鏈上儲存的CA證書設置存取權限,來確保只有該簽約用戶本人,能夠具有存取鏈上儲存的CA證書的權限,對該CA證書進行查看、操作。
例如,在實現時,可以為鏈上儲存的CA證書預配置存取權限列表,並將上述簽約用戶的身分資訊寫入上述存取權限列表,用於指示只有該簽約用戶能夠具有該CA證書的存取權限;比如,在區塊鏈中,透過利用簽約用戶的公鑰,或者公鑰衍生資料(如對公鑰進行運算得到的帳戶位址)來指示用戶的身分,因此可以將上述簽約用戶的公鑰或者公鑰衍生資料,配置為唯一能夠存取上述CA證書的合法身分。
在本說明書中,區塊鏈的運營方,可以依託於上述區塊鏈,在區塊鏈上部署對儲存在區塊鏈上的電子文書進行電子簽名的線上業務,使得簽約用戶在簽署電子文書時,可以不再需要基於持有的私鑰,手動的對電子文書進行電子簽名操作,而是在鏈上線上完成針對電子文書的電子簽名操作。
在實現時,區塊鏈的運營方,可以開發用於對區塊鏈上的電子文書進行線上電子簽名的智慧型合約,在該智慧型合約中聲明用於對電子文書進行電子簽名操作的電子簽名程序。
其中,上述電子簽名程序具體可以是聲明在智慧型合約中的,與對電子文書進行電子簽名操作的執行邏輯相關的程式碼(比如一些可供調用的程序方法或者函數)。
而對於開發完成的上述智慧型合約,區塊鏈的運營方可以透過區塊鏈中的任一節點設備,將該智慧型合約發布至區塊鏈。而區塊鏈中的節點設備,在收到上述智慧型合約後,可以發起對上述智慧型合約進行共識處理,並在共識透過後,將上述智慧型合約收錄儲存至上述區塊鏈的分散式資料庫。
後續,簽約用戶可以透過客戶端存取區塊鏈中的任一節點設備,向區塊鏈中發布用於觸發對目標電子文書進行電子簽名操作的目標交易,來發起對已經部署完成的智慧型合約的調用,觸發執行上述智慧型合約中聲明的電子簽名程序,來線上的對上述目標電子文書進行電子簽名操作。
在本說明書中,區塊鏈的運營方,除了可以依託於上述區塊鏈,在區塊鏈上部署對儲存在區塊鏈上的電子文書進行電子簽名的線上業務以外,還可以依託於上述區塊鏈,在區塊鏈上部署用於觸發對儲存在區塊鏈上的電子文書進行線上顯示的線上業務。
在實現時,區塊鏈的運營方,可以開發用於對區塊鏈上的電子文書進行線上顯示的智慧型合約,在該智慧型合約中聲明用於對電子文書進行內容驗證的驗證程序。
其中,上述驗證程序具體可以是聲明在智慧型合約中的,與對電子文書的原始內容進行驗證操作的執行邏輯相關的程序代碼。
而對於開發完成的上述智慧型合約,區塊鏈的運營方仍然可以透過區塊鏈中的任一節點設備,將該智慧型合約發布至區塊鏈。而區塊鏈中的節點設備,在收到上述智慧型合約後,可以發起對上述智慧型合約進行共識處理,並在共識通過後,將上述智慧型合約收錄儲存至上述區塊鏈的分散式資料庫。
後續,簽約用戶可以透過客戶端存取區塊鏈中的任一節點設備,向區塊鏈中發布用於觸發對目標電子文書進行線上顯示的目標交易,來發起對已經部署完成的該智慧型合約的調用,觸發執行上述智慧型合約中聲明的驗證程序,對上述目標電子文書的內容進行驗證,並在內容驗證通過後,向上述客戶端返回上述目標電子文書以及上述目標電子文書的內容驗證結果(比如電子文書內容是否被篡改)。
其中,需要說明的是,以上描述的用於對區塊鏈上的電子文書進行線上電子簽名的智慧型合約、和用於對區塊鏈上的電子文書進行線上顯示的智慧型合約,在實際應用中,可以整合為一個智慧型合約在區塊鏈上進行部署(圖3中示出的為將上述兩種智慧型合約整合成為一個智慧型合約),也可以作為兩個不同的智慧型合約在區塊鏈上進行部署,在本說明書中不進行特別限定。
以下以上述目標電子文書為簽約用戶需要簽署的電子合約為例進行說明。
在示出的一種實施方式中,上述區塊鏈具體可以採用的主鏈-子鏈的架構,可以包括一主鏈(Main Chain)和若干子鏈(Child Chain)。其中,上述區塊鏈網路中的子鏈的數量,可以基於實際的業務需求進行規劃,在本說明書中不進行特別限定。
請參見圖2,圖2為本說明書示出的一種區塊鏈的架構圖。
如圖2所示,在示出的一種實施方式中,上述區塊鏈可以按照收錄儲存的資料類型,劃分為「存證鏈」、「合約摘要子鏈」(第一子鏈)、“合約子鏈」(第二子鏈)、「CA證書子鏈」(第三子鏈)。
上述存證鏈,可以是上述區塊鏈的主鏈;也即,可以將上述區塊鏈的主鏈作為存證鏈,用於對簽約用戶在區塊鏈上完成的一系列操作相關的交易資料進行儲存存證,以便於未來對簽約用戶的操作行為進行追溯;其中,區塊鏈的運營方部署的上述智慧型合約,可以在共識通過後,收錄儲存至主鏈。
上述合約摘要子鏈,用於儲存電子合約的摘要資料(對合約內容進行雜湊運算得到的hash值)和電子合約的原始內容的存取位址。
上述合約子鏈,用於儲存電子合約的原始內容。
其中,在示出的一種實施方式中,為了提升電子合約的原始內容的資料安全,可以為鏈上儲存的電子合約的原始內容設置存取權限,來限制上述智慧型合約以外的用戶帳戶進行存取。也即,透過為鏈上儲存的電子合約的原始內容設定存取權限,來確保只有上述智慧型合約,能夠具有存取鏈上儲存的電子合約的原始內容的權限,對該電子合約的原始內容進行查看、操作。
上述CA證書子鏈,用於儲存由CA機構頒發給簽約用戶的CA證書。
其中,需要說明的是,以上描述的子鏈劃分方式,僅為示例性的,在實際應用中,可以基於實際的需求,對以上示出的各個子鏈進行進一步的細分,也可以對以上示出的多個子鏈進行合併處理;
例如,可以將上述合約摘要子鏈,進一步劃分為「合約摘要子鏈」和「合約位址子鏈」,在合約摘要子鏈中儲存電子合約的摘要資訊,在合約位址子鏈中儲存電子合約的存取位址;又如,也可以將上述合約摘要子鏈和合約子鏈,合併為同一個子鏈,將電子合約的摘要資訊、存取位址、原始內容均儲存在該子鏈中。
以下以採用圖2中示出的區塊鏈的架構,來詳細描述簽約用戶對電子文書進行簽約的流程。
請參見圖3,圖3為本說明書示出的一種簽約用戶對電子文書進行簽約的流程圖。
如圖3所示,在本說明書示出的電子文書的簽約流程中,可以劃分為電子合約上傳、簽約用戶身分認證、簽約用戶合約確認、簽約用戶電子簽名等四個階段。
1)電子合約上傳
如圖3所示,電子合約的起草方,在完成電子合約的起草後:
一方面,可以透過客戶端將電子合約的原始內容上傳給電子合約系統,而電子合約系統可以進一步以交易的形式在上述合約子鏈中發布電子合約的原始內容(電子合約的原始內容以密文的形式攜帶在交易中);而上述合約子鏈中的節點設備,在收到上述電子合約的原始內容後,可以發起對上述電子合約的原始內容進行共識處理,並在共識通過後,將上述電子合約的原始內容收錄儲存至上述合約子鏈的分散式資料庫。
當上述電子合約的原始內容被成功收錄至上述合約子鏈的分散式資料庫後,上述合約子鏈可以向上述電子合約系統返回一個保存成功的通知訊息,將上述電子合約的原始內容在上述合約子鏈上的存取位址,返回給上述電子合約系統;而上述電子合約系統在收到上述合約子鏈的反饋後,可以向上述客戶端返回一個上傳成功的通知訊息,將上述電子合約的原始內容在上述合約子鏈上的存取位址,進一步返回給上述客戶端。
例如,上述電子合約的原始內容的存取位址,具體可以包括收錄該電子合約的原始內容的交易的hash值,以及收錄該交易的區塊的區塊編號等資訊。
在示出的一種實施方式中,為了提升電子文書的使用安全,當電子文書的原始內容經過共識處理,被成功收錄儲存至上述存證鏈的分散式資料庫之後,可以為鏈上儲存的電子文書的原始內容設定存取權限,來限制除了以上描述的智慧型合約以外的用戶帳戶進行存取。
也即,透過為鏈上儲存的電子文書設置存取權限,來確保只有鏈上部署的智慧型合約,能夠具有存取鏈上儲存的電子文書的原始內容的權限,對電子文書的原始內容進行查看、操作。
其中,為鏈上儲存的電子文書的原始內容設置存取權限的具體過程,不再進行贅述。
另一方面,電子合約的起草方在透過客戶端收到上述合約子鏈返回的電子合約的原始內容在上述合約子鏈上的存取位址後,還可以透過客戶端運算該電子合約的摘要資訊,並將該電子合約的摘要資訊上傳給電子合約系統。而上述電子合約系統,可以進一步以交易的形式在上述合約摘要子鏈中發布該電子合約的摘要資訊和該電子合約的存取位址(均以密文的形式攜帶在交易中)。上述合約摘要子鏈中的節點設備,在收到上述電子合約的摘要資訊和該電子合約的存取位址後,可以發起對上述電子合約的摘要資訊和該電子合約的存取位址進行共識處理,並在共識通過後,將上述電子合約的摘要資訊和該電子合約的存取位址收錄儲存至上述合約摘要子鏈的分散式資料庫。
當上述電子合約的摘要資訊和該電子合約的存取位址被成功收錄至上述合約摘要子鏈的分散式資料庫後,上述合約摘要子鏈也可以向上述電子合約系統返回一個保存成功的通知訊息,將上述電子合約的摘要資訊和該電子合約的存取位址在上述合約摘要子鏈中的存取位址,返回給上述電子合約系統。而上述電子合約系統在收到上述合約摘要子鏈的反饋後,也可以進一步向上述客戶端返回一個上傳成功的通知訊息,將上述電子合約的摘要資訊和該電子合約的存取位址在上述合約摘要子鏈中的存取位址,進一步返回給上述客戶端。
此時,電子合約起草方,成功將電子合約的原始內容、電子合約的摘要資訊和該電子合約的存取位址,分別收錄儲存至不同的子鏈。
2)簽約用戶身分認證
如圖3所示,簽約用戶可以透過客戶端向上述電子合約系統發送簽約請求,發起對上述電子合約的線上簽約;而上述電子合約系統在收到該簽約請求後,可以回應該簽約請求,對該簽約用戶進行身分認證。
其中,對簽約用戶進行身分認證的具體方式,在本說明書中將不進行特別限定;
例如,在一個例子中,上述簽約請求可以基於簽約用戶持有的私鑰進行電子簽名操作,而電子合約系統可以透過與簽約用戶持有的私鑰對應的公鑰對上述簽約請求的電子簽名進行驗證,以確定該簽約請求是否由持有該私鑰的簽約用戶本人發起的簽約請求。當然,在實際應用中,也可以借助人臉識別等其它形式的認證技術,來完成對上述簽約用戶的身分認證,在本說明書中不再進行一一列舉。
當電子合約系統完成對上述簽約用戶的身分認證後,可以產生一條該簽約用戶已經透過身分認證的認證記錄,並根據產生的認證記錄建構一筆交易,然後將該交易在上述存證鏈(即主鏈)上進行發布,以發起對已經部署完成的,用於對區塊鏈上的電子合約進行線上顯示的智慧型合約進行調用,來觸發線上顯示需要簽署的電子合約。
而上述存證鏈中的節點設備,在收到上述交易後,可以發起對上述交易進行共識處理,並在共識通過後,將上述交易收錄儲存至上述存證鏈的分散式資料庫進行存證,然後向上述電子合約系統返回上述交易在存證鏈上的存取位址。後續,電子合約系統可以基於該交易在存證鏈上的存取位址,對該簽約用戶的身分認證結果進行追溯查詢。
3)簽約用戶合約確認
請繼續參見圖3,上述電子合約系統根據產生的上述認證記錄建構的交易共識通過,在上述存證鏈上完成存證後,此時上述存證鏈上的節點設備,可以立即觸發調用已經部署完成的,用於對區塊鏈上的電子合約進行線上顯示的智慧型合約,執行該智慧型合約中聲明的驗證程序,對該電子合約的原始內容進行驗證,以確定該電子合約的原始內容是否發生篡改。
在示出的一種實施方式中,在觸發調用上述智慧型合約之前,首先確定該筆交易是否被成功儲存至上述存證鏈;如果該筆交易被成功儲存至上述存證鏈,此時再發起對上述智慧型合約的調用;也即,只有由用戶發起的用於觸發對上述電子合約進行線上顯示的交易在上述存證鏈上完成存證後,才會觸發調用上述智慧型合約。
在本說明書中,上述智慧型合約在執行上述驗證程序時,首先可以從上述合約摘要子鏈中讀取上述電子文書的摘要資訊和上述電子文書的存取位址;
例如,在上述交易中,可以攜帶上述電子合約的摘要資訊和上述電子合約的存取位址,在上述合約摘要子鏈中的存取位址,而上述智慧型合約可以基於該存取位址,從上述合約摘要子鏈讀取上述電子合約的摘要資訊和存取位址。然後,可以基於上述電子合約的存取位址,從上述合約子鏈中讀取上述電子合約的原始內容;
例如,上述智慧型合約可以建構一筆用於查詢電子合約的原始內容的交易,並基於持有的私鑰對該交易進行電子簽名;而在上述合約子鏈中,可以將該智慧型合約的公鑰配置為具有存取權限的授權公鑰。當該合約子鏈中的節點設備收到該交易後,可以基於上述授權公鑰對該交易的電子簽名進行驗證;如果驗證通過,表明該智慧型合約具有存取該合約子鏈中儲存的電子合約的原始內容的存取權限,可以正常回應該筆交易,向該智慧型合約返回被查詢的電子合約的原始內容。
進一步的,在從上述合約子鏈讀取到電子合約的原始內容後,可以進一步運算出讀取到的電子合約的原始內容的摘要資訊;例如,以上述摘要資訊為hash值為例,可以基於雜湊演算法對讀取到的電子合約的原始內容重新進行雜湊運算得到對應的hash值;然後,可以將重新運算得到的電子合約的原始內容的摘要資訊,與從上述合約摘要子鏈讀取上述電子合約的摘要資訊進行匹配;如果重新運算得到的摘要資訊,與從上述合約摘要子鏈讀取上述電子合約的摘要資訊匹配,表明從上述合約子鏈中讀取到的電子合約的原始內容,與合約起草方最初上傳至上述合約子鏈的電子合約的原始內容完全一致,並沒有發生篡改;此時,該電子合約的原始內容通過了內容驗證;反之。如果重新運算得到的摘要資訊,與從上述合約摘要子鏈讀取上述電子合約的摘要資訊匹配,表明從上述合約子鏈中讀取到的電子合約的原始內容,與合約起草方最初上傳至上述合約子鏈的電子合約的原始內容不一致,可能發生了篡改;此時,該電子合約的原始內容未通過內容驗證。
當完成針對上述電子合約的原始內容的內容驗證後,上述智慧型合約可以將讀取到的電子合約的原始內容,以及針對該電子合約的原始內容的內容驗證結果,返回給上述電子合約系統,再透過上述電子合約系統返回給上述簽約用戶的客戶端向簽約用戶進行線上顯示,由簽約用戶對顯示的電子合約的原始內容進行簽約確認。
在本說明書中,當簽約用戶對顯示的電子合約的原始內容進行確認後,可以透過客戶端向上述電子合約系統發送一筆內容確認訊息;而上述電子合約系統在收到該內容確認訊息後,可以回應該內容確認訊息,根據該內容確認訊息建構一筆交易,然後將該交易在上述存證鏈(即主鏈)上進行發布。
而上述存證鏈中的節點設備,在收到上述交易後,可以發起對上述交易進行共識處理,並在共識通過後,將上述交易收錄儲存至上述存證鏈的分散式資料庫進行存證,然後向上述電子合約系統返回上述交易在存證鏈上的存取位址。後續,電子合約系統可以基於該交易在存證鏈上的存取位址,對該簽約用戶對上述電子合約進行的內容確認操作進行追溯查詢。
4)簽約用戶電子簽名
請繼續參見圖3,當簽約用戶對需要簽署的電子合約的原始內容進行內容確認,並且該筆內容確認成功在存證鏈上完成存證後,簽約用戶可以透過客戶端向上述電子合約系統發送電子簽名請求,發起對上述電子合約的線上電子簽名。
上述電子合約系統在收到該電子簽名請求後,可以基於該電子簽名請求來建構一筆用於觸發對上述電子合約進行電子簽名操作的交易,然後將該交易在上述存證鏈(即主鏈)上進行發布,以發起對已經部署完成的,用於對區塊鏈上的電子合約進行線上電子簽名操作的智慧型合約進行調用,來觸發對需要簽署的電子合約進行線上電子簽名操作。
而上述存證鏈中的節點設備,在收到上述交易後,可以發起對上述交易進行共識處理,並在共識通過後,將上述交易收錄儲存至上述存證鏈的分散式資料庫進行存證,然後向上述電子合約系統返回上述交易在存證鏈上的存取位址。後續,電子合約系統可以基於該交易在存證鏈上的存取位址,對該簽約用戶對上述電子合約發起的本次對上述電子合約的電子簽名操作進行追溯查詢。
在示出的一種實施方式中,在上述電子簽名請求中,可以攜帶簽約用戶對上述電子合約進行電子簽名的授權資訊。相應地,電子合約系統根據該電子簽名請求建構的交易中,也會攜帶該授權資訊,
其中,上述授權資訊,具體用於指示將已經儲存至上述CA證書子鏈上的該簽約用戶的CA證書的存取權限,授權給上述區塊鏈上已經部署的用於對上述電子合約進行電子簽名操作的智慧型合約。
需要說明的是,上述授權資訊的內容形式,在本說明書中不進行特別限定;例如,在實際應用中,上述授權資訊具體可以是一個任意形式的用於取得上述CA證書的存取權限的一個電子憑證;比如,字串、密碼或者其它形式的可供驗證的電子憑證。
請繼續參見圖3,上述電子合約系統根據上述電子簽名請求建構的交易共識通過,在上述存證鏈上完成存證後,此時上述存證鏈上的節點設備,可以立即觸發調用已經部署完成的,用於對區塊鏈上的電子合約進行電子簽名操作的智慧型合約,執行該智慧型合約中聲明的電子簽名程序,對該電子合約進行線上電子簽名。
在示出的一種實施方式中,在觸發調用上述智慧型合約之前,首先可以確定上述交易中是否攜帶上述授權資訊;如果上述交易中攜帶上述授權資訊,表明上述簽約用戶已經將儲存在上述CA證書子鏈上的個人的CA證書的存取權限,授權給上述智慧型合約(即簽約用戶同意了由智慧型合約代替自己完成電子簽名操作),此時再發起對上述智慧型合約的調用。也即,只有簽約用戶將個人的CA證書的存取權限授權給了上述智慧型合約後,才會觸發調用上述智慧型合約。
其中,在示出的另一種實施方式中,如果上述交易中攜帶上述授權資訊,還可以進一步確認該筆交易是否被成功儲存至上述存證鏈;如果該筆交易被成功儲存至上述存證鏈,此時再發起對上述智慧型合約的調用;也即,只有簽約用戶將個人的CA證書的存取權限授權給了上述智慧型合約,並且由用戶發起的用於觸發對上述電子合約進行電子簽名操作的交易在上述存證鏈上完成存證後,才會觸發調用上述智慧型合約。
在本說明書中,上述智慧型合約在執行上述電子簽名程序時,一方面,可以從上述合約子鏈上來讀取電子合約的原始內容;例如,由於上述合約子鏈上儲存的電子合約的原始內容,只有區塊鏈上部署的上述智慧型合約具有存取權限,因此上述智慧型合約可以從上述合約子鏈正常讀取電子合約的原始內容;
另一方面,還可以從上述CA證書子鏈中來讀取上述簽約用戶的CA證書;
例如,上述智慧型合約可以建構一筆用於查詢CA證書的交易,在該交易中攜帶作為上述授權資訊的電子憑證,然後將該交易在上述CA證書子鏈中進行發布;而上述CA證書子鏈上的節點設備收到該筆交易後們可以對該交易中的電子憑證進行驗證,以確認該智慧型合約是否具有存取上述簽約用戶的CA證書的存取權限;如果驗證通過,可以將上述簽約用戶的CA證書返回給上述智慧型合約;也即,上述智慧型合約可以透過向上述CA證書子鏈中的節點設備提交作為上述授權資訊的電子憑證,從CA證書子鏈中以上述簽約用戶的存取權限來讀取CA證書。
當然,在實際應用中,如果上述CA證書子鏈中未儲存上述簽約用戶的CA證書,也可以以簽約用戶的授權身分,向CA機構重新申請CA證書,具體的實施不再贅述。
進一步,當從上述合約子鏈上讀取到了待簽署的電子合約的原始內容,並且從上述CA證書子鏈中讀取到上述簽約用戶的個人CA證書後,可以基於讀取到的CA證書,對該電子合約的原始內容進行電子簽名操作。
在示出的一種實施方式中,如果簽約用戶的公鑰私鑰由CA機構統一分配,在簽約用戶的CA證書中,通常會攜帶該簽約用戶的公鑰私鑰對;在這種情況下,可以基於該CA證書中攜帶的私鑰,對待簽署的電子合約的原始內容進行電子簽名操作即可。
在示出的另一種實施方式中,如果簽約用戶的公鑰私鑰並不是由CA機構統一分配,而是由簽約用戶自主產生;例如,在用戶客戶端的安全環境中搭載密鑰產生演算法,或者在用戶持有的安全硬體(比如USB key)中搭載密鑰產生演算法,簽約用戶可以透過觸發運行上述密鑰產生演算法,為自己創建私鑰公鑰對;在這種情況下,上述CA證書中通常只會攜帶簽約用戶的公鑰。簽約用戶可以對個人私鑰進行加密後,將個人私鑰單獨提交給上述智慧型合約,進而上述智慧型合約可以對簽約用戶的私鑰進行解密後,基於該私鑰對待簽署的電子合約的原始內容進行電子簽名操作即可。
其中,需要強調的是,在基於CA證書對上述電子合約的原始內容進行電子簽名操作時,也可以將上述CA證書也作為載荷攜帶在電子簽名中;在這種情況下,在需要對簽約用戶的電子簽名進行驗證時,可以基於CA機構的公鑰對上述電子簽名中攜帶的CA證書進行解密,獲得上述簽約用戶的公鑰,然後基於上述簽約用戶的公鑰對電子簽名進行驗證即可,而不再需要單獨查詢上述簽約用戶的公鑰。
請繼續參見圖3,當完成針對上述電子簽名的原始內容的電子簽名操作後,上述智慧型合約可以產生一筆用於指示上述簽約用戶已完成對上述電子合約進行電子簽名操作的簽名記錄,並基於該簽名記錄建構一筆交易,在上述存證鏈上進行發布,由上述存證鏈上的節點設備對該交易共識處理後,在上述存證鏈上進行儲存,以便於電子合約系統後續可以對簽約用戶本次對該電子合約的電子簽名操作進行追溯查詢。
透過以上技術方案,一方面,由於用戶可以透過調用智慧型合約的方式,來觸發智慧型合約從區塊鏈中讀取與簽約用戶對應的CA證書,並基於讀取到的CA證書對電子文書進行電子簽名操作;因此,可以避免由用戶手動對電子文書進行簽名,簡化電子簽名操作的複雜度;
另一方面,由於簽約用戶的CA證書被預先儲存至區塊鏈,並且區塊鏈上的CA證書,只能由智慧型合約來統一使用,因此可以避免非法的第三方用戶透過冒用簽約用戶的CA證書的方式,在違背簽約用戶的意願的情況下,使用簽約用戶的CA證書對電子文書進行電子簽名操作,可以提升對電子文書進行電子簽名操作時的安全等級。
與上述方法實施例相對應,本說明書還提供了一種基於區塊鏈的電子簽名裝置的實施例。本說明書的基於區塊鏈的電子簽名裝置的實施例可以應用在電子設備上。裝置實施例可以透過軟體實現,也可以透過硬體或者軟硬體結合的方式實現。以軟體實現為例,作為一個邏輯意義上的裝置,是透過其所在電子設備的處理器將非易失性記憶體中對應的電腦程式指令讀取到內部記憶體中運行形成的。從硬體層面而言,如圖4所示,為本說明書的基於區塊鏈的電子簽名裝置所在電子設備的一種硬體結構圖,除了圖4所示的處理器、內部記憶體、網路介面、以及非易失性記憶體之外,實施例中裝置所在的電子設備通常根據該電子設備的實際功能,還可以包括其他硬體,對此不再贅述。
圖5是本說明書一示例性實施例示出的一種基於區塊鏈的電子簽名裝置的方塊圖。
請參考圖5,所述基於區塊鏈的電子簽名裝置50可以應用在前述圖3所示的電子設備中,包括有:接收模組501和簽名模組502。
接收模組501,接收簽約用戶透過客戶端發起的目標交易;其中,所述目標交易用於觸發對目標電子文書進行電子簽名操作;與所述簽約用戶對應的CA證書被預先儲存至所述區塊鏈;
簽名模組502,回應於所述目標交易,調用與電子簽名對應的智慧型合約,執行所述智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與所述簽約用戶對應的CA證書;以及,基於所述CA證書對所述目標電子文書進行電子簽名操作。
在本實施例中,所述區塊鏈中儲存的所述CA證書,被預設了限制所述簽約用戶以外的用戶帳戶進行存取的存取權限;
所述簽名模組502:
確定所述目標交易中是否包括所述簽約用戶對所述目標文字進行電子簽名的授權資訊;其中,所述授權資訊用於指示將所述CA證書的存取權限授權給所述智慧型合約;
如果所述目標交易中包括所述授權資訊,則觸發調用與電子簽名對應的智慧型合約。
在本實施例中,所述簽名模組502進一步:
如果所述目標交易中包括所述授權資訊,進一步確定所述目標交易是否被成功儲存至所述區塊鏈;如果是,則觸發調用與電子簽名對應的智慧型合約。
在本實施例中,所述目標電子文書被預先儲存至區塊鏈;其中,所述區塊鏈中儲存的所述目標電子文書,被預設了限制所述智慧型合約以外的用戶帳戶進行存取的存取權限;
所述簽名模組502:
從所述區塊鏈中讀取所述目標電子文書;
基於所述CA證書對讀取到的所述目標電子文書進行電子簽名操作。
在本實施例中,所述CA證書包括所述簽約用戶的私鑰;
所述簽名模組502:
基於所述CA證書中的所述簽約用戶的私鑰,對讀取到的所述目標電子文書進行電子簽名操作。
在本實施例中,所述區塊鏈包括主鏈以及若干子鏈;所述若干子鏈包括用於儲存所述目標電子文書的存取位址的第一子鏈,以及用於儲存所述目標電子文書的原始內容的第二子鏈;
所述簽名模組502進一步:
從所述第一子鏈中讀取所述目標電子文書的存取位址;
基於所述目標電子文書的存取位址從所述第二子鏈中讀取所述目標電子文書的原始內容。
在本實施例中,所述若干子鏈還包括用於於儲存所述CA證書的第三子鏈;
所述簽名模組502進一步:
從所述第三子鏈中讀取與所述簽約用戶對應的CA證書。
在本實施例中,所述目標電子文書為電子合約。
上述裝置中各個模組的功能和作用的實現過程具體詳見上述方法中對應步驟的實現過程,在此不再贅述。
對於裝置實施例而言,由於其基本對應於方法實施例,所以相關之處參見方法實施例的部分說明即可。以上所描述的裝置實施例僅僅是示意性的,其中,所述作為分離部件說明的模組可以是或者也可以不是實體上分開的,作為模組顯示的部件可以是或者也可以不是實體模組,即可以位於一個地方,或者也可以分佈到多個網路模組上。可以根據實際的需要選擇其中的部分或者全部模組來實現本說明書方案的目的。本發明所屬技術領域中具有通常知識者在不付出創造性勞動的情況下,即可以理解並實施。
上述實施例闡明的系統、裝置、模組或模組,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦,電腦的具體形式可以是個人電腦、膝上型電腦、蜂巢式電話、相機電話、智慧型電話、個人數位助理、媒體播放器、導航設備、電子郵件收發設備、遊戲控制台、平板電腦、可穿戴設備或者這些設備中的任意幾種設備的組合。
與上述方法實施例相對應,本說明書還提供了一種電子設備的實施例。該電子設備包括:處理器以及用於儲存機器可執行指令的記憶體;其中,處理器和記憶體通常透過內部匯流排相互連接。在其他可能的實現方式中,所述設備還可能包括外部介面,以能夠與其他設備或者部件進行通訊。
在本實施例中,透過讀取並執行所述記憶體儲存的與基於區塊鏈的電子簽名的控制邏輯對應的機器可執行指令,所述處理器被促使:
接收簽約用戶透過客戶端發起的目標交易;其中,所述目標交易用於觸發對目標電子文書進行電子簽名操作;與所述簽約用戶對應的CA證書被預先儲存至所述區塊鏈;
回應於所述目標交易,調用與電子簽名對應的智慧型合約,執行所述智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與所述簽約用戶對應的CA證書;以及,
基於所述CA證書對所述目標電子文書進行電子簽名操作。
在本實施例中,所述區塊鏈中儲存的所述CA證書,被預設了限制所述簽約用戶以外的用戶帳戶進行存取的存取權限;
透過讀取並執行所述記憶體儲存的與基於區塊鏈的電子簽名的控制邏輯對應的機器可執行指令,所述處理器被促使:
確定所述目標交易中是否包括所述簽約用戶對所述目標文字進行電子簽名的授權資訊;其中,所述授權資訊用於指示將所述CA證書的存取權限授權給所述智慧型合約;
如果所述目標交易中包括所述授權資訊,則觸發調用與電子簽名對應的智慧型合約。
在本實施例中,透過讀取並執行所述記憶體儲存的與基於區塊鏈的電子簽名的控制邏輯對應的機器可執行指令,所述處理器被促使:
如果所述目標交易中包括所述授權資訊,進一步確定所述目標交易是否被成功儲存至所述區塊鏈;如果是,則觸發調用與電子簽名對應的智慧型合約。
在本實施例中,所述目標電子文書被預先儲存至區塊鏈;其中,所述區塊鏈中儲存的所述目標電子文書,被預設了限制所述智慧型合約以外的用戶帳戶進行存取的存取權限;
透過讀取並執行所述記憶體儲存的與基於區塊鏈的電子簽名的控制邏輯對應的機器可執行指令,所述處理器被促使:
從所述區塊鏈中讀取所述目標電子文書;
基於所述CA證書對讀取到的所述目標電子文書進行電子簽名操作。
在本實施例中,所述CA證書包括所述簽約用戶的私鑰;
透過讀取並執行所述記憶體儲存的與基於區塊鏈的電子簽名的控制邏輯對應的機器可執行指令,所述處理器被促使:
基於所述CA證書中的所述簽約用戶的私鑰,對讀取到的所述目標電子文書進行電子簽名操作。
在本實施例中,所述區塊鏈包括主鏈以及若干子鏈;所述若干子鏈包括用於儲存所述目標電子文書的存取位址的第一子鏈,以及用於儲存所述目標電子文書的原始內容的第二子鏈;
透過讀取並執行所述記憶體儲存的與基於區塊鏈的電子簽名的控制邏輯對應的機器可執行指令,所述處理器被促使:
從所述第一子鏈中讀取所述目標電子文書的存取位址;
基於所述目標電子文書的存取位址從所述第二子鏈中讀取所述目標電子文書的原始內容。
在本實施例中,所述若干子鏈還包括用於於儲存所述CA證書的第三子鏈;
透過讀取並執行所述記憶體儲存的與基於區塊鏈的電子簽名的控制邏輯對應的機器可執行指令,所述處理器被促使:
從所述第三子鏈中讀取與所述簽約用戶對應的CA證書。
本領域技術人員在考慮說明書及實踐這裡揭示的發明後,將容易想到本說明書的其它實施方案。本說明書旨在涵蓋本說明書的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本說明書的一般性原理並包括本說明書未揭示的本技術領域中的公知常識或慣用技術手段。說明書和實施例僅被視為示例性的,本說明書的真正範圍和精神由下面的申請專利範圍指出。
應當理解的是,本說明書並不局限於上面已經描述並在圖式中顯示的精確結構,並且可以在不脫離其範圍進行各種修改和改變。本說明書的範圍僅由所附的申請專利範圍來限制。
以上所述僅為本說明書的較佳實施例而已,並不用以限制本說明書,凡在本說明書的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本說明書保護的範圍之內。
102:方法步驟
104:方法步驟
50:基於區塊鏈的電子簽名裝置
501:接收模組
502:簽名模組
圖1是一示例性實施例提供的一種基於區塊鏈的電子簽名方法的流程圖;
圖2是一示例性實施例提供的一種區塊鏈的架構圖;
圖3是一示例性實施例提供的一種簽約用戶對電子文書進行簽約的流程圖;
圖4是一示例性實施例提供的一種電子設備的結構示意圖;
圖5是一示例性實施例提供的一種基於區塊鏈的電子簽名裝置的邏輯方塊圖。
Claims (13)
- 一種基於區塊鏈的電子簽名方法,包括:接收簽約用戶透過客戶端發起的目標交易,其中,該目標交易用於觸發對目標電子文書進行電子簽名操作,與該簽約用戶對應的CA(Certificate Authority)證書被預先儲存至該區塊鏈;回應於該目標交易,調用與電子簽名對應的智慧型合約,執行該智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與該簽約用戶對應的CA證書;以及基於該CA證書對該目標電子文書進行電子簽名操作,其中,該目標電子文書被預先儲存至區塊鏈,該區塊鏈中儲存的該目標電子文書,被預設了限制該智慧型合約以外的用戶帳戶進行存取的存取權限,該區塊鏈包括主鏈以及若干子鏈,該若干子鏈包括用於儲存該目標電子文書的存取位址的第一子鏈,以及用於儲存該目標電子文書的原始內容的第二子鏈,該基於該CA證書對該目標電子文書進行電子簽名操作,包括:從該區塊鏈中讀取該目標電子文書;以及基於該CA證書對讀取到的該目標電子文書進行電子簽名操作,其中,該從該區塊鏈中讀取該目標電子文書,包括: 從該第一子鏈中讀取該目標電子文書的存取位址;以及基於該目標電子文書的存取位址從該第二子鏈中讀取該目標電子文書的原始內容。
- 根據申請專利範圍第1項所述的方法,其中,該區塊鏈中儲存的該CA證書,被預設了限制該簽約用戶以外的用戶帳戶進行存取的存取權限;以及該調用與電子簽名對應的智慧型合約,包括:確定該目標交易中是否包括該簽約用戶對該目標文字進行電子簽名的授權資訊,其中,該授權資訊用於指示將該CA證書的存取權限授權給該智慧型合約;以及如果該目標交易中包括該授權資訊,則觸發調用與電子簽名對應的智慧型合約。
- 根據申請專利範圍第2項所述的方法,該如果該目標交易中包括該授權資訊,則觸發調用與電子簽名對應的智慧型合約,包括:如果該目標交易中包括該授權資訊,進一步確定該目標交易是否被成功儲存至該區塊鏈,如果是,則觸發調用與電子簽名對應的智慧型合約。
- 根據申請專利範圍第1項所述的方法,該CA證書包括該簽約用戶的私鑰;以及 該基於該CA證書對讀取到的該目標電子文書進行電子簽名操作,包括:基於該CA證書中的該簽約用戶的私鑰,對讀取到的該目標電子文書進行電子簽名操作。
- 根據申請專利範圍第4項所述的方法,該若干子鏈還包括用於於儲存該CA證書的第三子鏈;以及該從區塊鏈中讀取與該簽約用戶對應的CA證書,包括:從該第三子鏈中讀取與該簽約用戶對應的CA證書。
- 根據申請專利範圍第1項所述的方法,該目標電子文書為電子合約。
- 一種基於區塊鏈的電子簽名裝置,包括:接收模組,接收簽約用戶透過客戶端發起的目標交易,其中,該目標交易用於觸發對目標電子文書進行電子簽名操作,與該簽約用戶對應的CA(Certificate Authority)證書被預先儲存至該區塊鏈;以及簽名模組,回應於該目標交易,調用與電子簽名對應的智慧型合約,執行該智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與該簽約用戶對應的CA證書,以及,基於該CA證書對該目標電子文書進行電子簽名操作,其中,該目標電子文書被預先儲存至區塊鏈,該區塊鏈中儲 存的該目標電子文書,被預設了限制該智慧型合約以外的用戶帳戶進行存取的存取權限,該區塊鏈包括主鏈以及若干子鏈,該若干子鏈包括用於儲存該目標電子文書的存取位址的第一子鏈,以及用於儲存該目標電子文書的原始內容的第二子鏈,其中,該簽名模組:從該區塊鏈中讀取該目標電子文書,以及基於該CA證書對讀取到的該目標電子文書進行電子簽名操作,其中,該簽名模組進一步:從該第一子鏈中讀取該目標電子文書的存取位址;以及基於該目標電子文書的存取位址從該第二子鏈中讀取該目標電子文書的原始內容。
- 根據申請專利範圍第7項所述的裝置,該區塊鏈中儲存的該CA證書,被預設了限制該簽約用戶以外的用戶帳戶進行存取的存取權限;以及該簽名模組:確定該目標交易中是否包括該簽約用戶對該目標文字進行電子簽名的授權資訊,其中,該授權資訊用於指示將該CA證書的存取權限授權給該智慧型合約;以及如果該目標交易中包括該授權資訊,則觸發調用與電子簽名對應的智慧型合約。
- 根據申請專利範圍第8項所述的裝置,該簽名模組進一步:如果該目標交易中包括該授權資訊,進一步確定該目標交易是否被成功儲存至該區塊鏈,如果是,則觸發調用與電子簽名對應的智慧型合約。
- 根據申請專利範圍第7項所述的裝置,該CA證書包括該簽約用戶的私鑰;以及該簽名模組:基於該CA證書中的該簽約用戶的私鑰,對讀取到的該目標電子文書進行電子簽名操作。
- 根據申請專利範圍第10項所述的裝置,該若干子鏈還包括用於儲存該CA證書的第三子鏈;以及該簽名模組進一步:從該第三子鏈中讀取與該簽約用戶對應的CA證書。
- 根據申請專利範圍第7項所述的裝置,該目標電子文書為電子合約。
- 一種電子設備,包括:處理器;以及用於儲存機器可執行指令的記憶體, 其中,透過讀取並執行該記憶體儲存的與基於區塊鏈的基於區塊鏈的電子簽名的控制邏輯對應的儲存機器可執行指令,該處理器被促使:接收簽約用戶透過客戶端發起的目標交易,其中,該目標交易用於觸發對目標電子文書進行電子簽名操作;與該簽約用戶對應的CA(Certificate Authority)證書被預先儲存至該區塊鏈;回應於該目標交易,調用與電子簽名對應的智慧型合約,執行該智慧型合約中聲明的電子簽名程序,從區塊鏈中讀取與該簽約用戶對應的CA證書;以及基於該CA證書對該目標電子文書進行電子簽名操作,其中,該目標電子文書被預先儲存至區塊鏈,該區塊鏈中儲存的該目標電子文書,被預設了限制該智慧型合約以外的用戶帳戶進行存取的存取權限,該區塊鏈包括主鏈以及若干子鏈,該若干子鏈包括用於儲存該目標電子文書的存取位址的第一子鏈,以及用於儲存該目標電子文書的原始內容的第二子鏈,該基於該CA證書對該目標電子文書進行電子簽名操作,包括:從該區塊鏈中讀取該目標電子文書;以及基於該CA證書對讀取到的該目標電子文書進行電子簽名操作,其中,該從該區塊鏈中讀取該目標電子文書,包括: 從該第一子鏈中讀取該目標電子文書的存取位址;以及基於該目標電子文書的存取位址從該第二子鏈中讀取該目標電子文書的原始內容。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810672943.7A CN108960825A (zh) | 2018-06-26 | 2018-06-26 | 基于区块链的电子签名方法及装置、电子设备 |
CN201810672943.7 | 2018-06-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202002570A TW202002570A (zh) | 2020-01-01 |
TWI694709B true TWI694709B (zh) | 2020-05-21 |
Family
ID=64487103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108107759A TWI694709B (zh) | 2018-06-26 | 2019-03-08 | 基於區塊鏈的電子簽名方法及裝置、電子設備 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN108960825A (zh) |
TW (1) | TWI694709B (zh) |
WO (1) | WO2020001103A1 (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108960825A (zh) * | 2018-06-26 | 2018-12-07 | 阿里巴巴集团控股有限公司 | 基于区块链的电子签名方法及装置、电子设备 |
CN109818957B (zh) * | 2019-01-25 | 2020-12-22 | 上海淳麒金融信息服务有限公司 | 基于可视化界面的智能合约调用方法、装置及系统 |
CN109936626B (zh) * | 2019-02-19 | 2020-05-29 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法、节点和存储介质 |
CN111612614A (zh) * | 2019-02-26 | 2020-09-01 | 傲为信息技术(江苏)有限公司 | 一种基于公链的子链业务系统 |
CN109948351B (zh) * | 2019-02-28 | 2023-12-05 | 深圳市元征科技股份有限公司 | 一种信息处理方法及装置 |
EP3598879B1 (en) | 2019-03-04 | 2021-01-20 | Advanced New Technologies Co., Ltd. | Methods and devices for processing certificates in blockchain system |
CN110086608B (zh) * | 2019-03-21 | 2022-03-25 | 深圳壹账通智能科技有限公司 | 用户认证方法、装置、计算机设备及计算机可读存储介质 |
CN109978543B (zh) * | 2019-04-03 | 2022-03-22 | 恒生电子股份有限公司 | 一种合同签署的方法、装置、电子设备及存储介质 |
CN110059136A (zh) * | 2019-04-17 | 2019-07-26 | 江苏全链通信息科技有限公司 | 基于域名区块链的信息存储方法、设备及存储介质 |
CN110287739B (zh) * | 2019-06-17 | 2020-12-29 | 西安纸贵互联网科技有限公司 | 基于硬件私钥存储技术的数据安全管理方法及系统 |
CN110598460B (zh) * | 2019-09-27 | 2022-08-05 | 腾讯科技(深圳)有限公司 | 基于区块链的电子签字方法、装置及存储介质 |
CN110601858B (zh) * | 2019-09-27 | 2021-05-28 | 腾讯科技(深圳)有限公司 | 证书管理方法及装置 |
CN111010367B (zh) * | 2019-11-07 | 2022-11-29 | 深圳市电子商务安全证书管理有限公司 | 数据存证方法、装置、计算机设备和存储介质 |
CN111626731A (zh) * | 2020-04-10 | 2020-09-04 | 南京优物链科技有限公司 | 一种基于区块链技术的合同签约身份认证和签名系统 |
CN111460509B (zh) * | 2020-04-16 | 2024-02-02 | 福建首众信息科技有限公司 | 一种基于区块链的电子签名应用方法 |
CN112258189A (zh) * | 2020-12-03 | 2021-01-22 | 支付宝(杭州)信息技术有限公司 | 基于区块链的签约管理方法及装置和电子设备 |
CN112597545B (zh) * | 2020-12-28 | 2024-04-12 | 山西云时代研发创新中心有限公司 | 一种基于区块链技术的医疗电子合同存证方法 |
CN113609527A (zh) * | 2021-07-06 | 2021-11-05 | 微易签(杭州)科技有限公司 | 一种基于区块链创建数字签名的方法、系统及设备 |
CN114897527B (zh) * | 2022-05-20 | 2023-03-14 | 西南交通大学 | 一种基于工作量证明实现商业保理债权价值的认证方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104506552A (zh) * | 2015-01-05 | 2015-04-08 | 四川中时代科技有限公司 | 一种信息系统安全监控及访问控制方法 |
US20160275461A1 (en) * | 2015-03-20 | 2016-09-22 | Rivetz Corp. | Automated attestation of device integrity using the block chain |
CN106372941A (zh) * | 2016-08-31 | 2017-02-01 | 江苏通付盾科技有限公司 | 基于区块链的ca认证管理方法、装置及系统 |
CN107203368A (zh) * | 2016-03-16 | 2017-09-26 | 蓝树荣 | 一种建立智能合约模型的方法 |
CN107347008A (zh) * | 2017-06-30 | 2017-11-14 | 上海策赢网络科技有限公司 | 电子文书验证方法、设备及系统 |
WO2018087836A1 (ja) * | 2016-11-09 | 2018-05-17 | 株式会社日立製作所 | ブロックチェーン取引システムおよびブロックチェーン取引方法 |
CN108197913A (zh) * | 2017-12-18 | 2018-06-22 | 深圳前海微众银行股份有限公司 | 基于区块链的支付方法、系统以及计算机可读存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105893042A (zh) * | 2016-03-31 | 2016-08-24 | 北京航空航天大学 | 一种基于区块链的智能合约的实现方法 |
CN107122673A (zh) * | 2017-03-09 | 2017-09-01 | 深圳市金立通信设备有限公司 | 一种信息加密方法及终端 |
CN106960165B (zh) * | 2017-03-13 | 2020-12-22 | 广东网金控股股份有限公司 | 一种基于区块链智能合约实现电子合同多方会签的方法 |
CN107171794B (zh) * | 2017-06-27 | 2019-10-22 | 葛峰 | 一种基于区块链和智能合约的电子文书签署方法 |
CN107592293A (zh) * | 2017-07-26 | 2018-01-16 | 阿里巴巴集团控股有限公司 | 区块链节点间通讯方法、数字证书管理方法、装置和电子设备 |
CN107508680B (zh) * | 2017-07-26 | 2021-02-05 | 创新先进技术有限公司 | 数字证书管理方法、装置及电子设备 |
CN108960825A (zh) * | 2018-06-26 | 2018-12-07 | 阿里巴巴集团控股有限公司 | 基于区块链的电子签名方法及装置、电子设备 |
-
2018
- 2018-06-26 CN CN201810672943.7A patent/CN108960825A/zh active Pending
-
2019
- 2019-03-08 TW TW108107759A patent/TWI694709B/zh active
- 2019-03-27 WO PCT/CN2019/079885 patent/WO2020001103A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104506552A (zh) * | 2015-01-05 | 2015-04-08 | 四川中时代科技有限公司 | 一种信息系统安全监控及访问控制方法 |
US20160275461A1 (en) * | 2015-03-20 | 2016-09-22 | Rivetz Corp. | Automated attestation of device integrity using the block chain |
CN107203368A (zh) * | 2016-03-16 | 2017-09-26 | 蓝树荣 | 一种建立智能合约模型的方法 |
CN106372941A (zh) * | 2016-08-31 | 2017-02-01 | 江苏通付盾科技有限公司 | 基于区块链的ca认证管理方法、装置及系统 |
WO2018087836A1 (ja) * | 2016-11-09 | 2018-05-17 | 株式会社日立製作所 | ブロックチェーン取引システムおよびブロックチェーン取引方法 |
CN107347008A (zh) * | 2017-06-30 | 2017-11-14 | 上海策赢网络科技有限公司 | 电子文书验证方法、设备及系统 |
CN108197913A (zh) * | 2017-12-18 | 2018-06-22 | 深圳前海微众银行股份有限公司 | 基于区块链的支付方法、系统以及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020001103A1 (zh) | 2020-01-02 |
TW202002570A (zh) | 2020-01-01 |
CN108960825A (zh) | 2018-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI694709B (zh) | 基於區塊鏈的電子簽名方法及裝置、電子設備 | |
TW202001654A (zh) | 基於區塊鏈的內容驗證方法及裝置、電子設備 | |
TWI701573B (zh) | 基於區塊鏈的資料存證方法及裝置、電子設備 | |
TWI741314B (zh) | 基於區塊鏈的資料存證方法及裝置、電子設備 | |
TWI717028B (zh) | 基於區塊鏈的發票取用方法和裝置、電子設備 | |
US20220029810A1 (en) | Identity and electronic signature verification in blockchain | |
TWI736809B (zh) | 資產管理方法及裝置、電子設備 | |
US11170092B1 (en) | Document authentication certification with blockchain and distributed ledger techniques | |
EP3312756B1 (en) | Establishing cryptographic identity for an electronic device | |
US20200119904A1 (en) | Tamper-proof privileged user access system logs | |
TW202018571A (zh) | 基於區塊鏈的資料存證方法及裝置、電子設備 | |
WO2020108114A1 (zh) | 基于区块链的数据存证方法及装置、电子设备 | |
CN109241726B (zh) | 一种用户权限控制方法及装置 | |
US12033142B2 (en) | Authenticator app for consent architecture | |
WO2020108130A1 (zh) | 基于区块链的业务处理方法及装置、电子设备 | |
CN109428722A (zh) | 一种内容发布方法及装置 | |
TW201913529A (zh) | 基於區塊鏈智能合約的函證系統及其方法 | |
CN109388923B (zh) | 一种程序执行方法及装置 | |
CN111178896B (zh) | 乘车支付方法、装置及存储介质 | |
JP7262328B2 (ja) | 資産のバックアップ処理方法およびプログラム | |
US20230281585A1 (en) | Systems and Methods for Managing Network-Agnostic Smart Contracts |