本發明涉及一種基于時間間隔簽名的限時nft權限保護方法,屬于區塊鏈。
背景技術:
1、定時密碼學是密碼學研究中一個非常重要和有前途的領域,為各種實際應用提供了創新的解決方案。通過集成時間約束,定時密碼擴展了傳統密碼方案的功能,并為密碼原語引入了新的時間安全屬性,提高了密碼原語的安全性和應用靈活性。大量的定時加密方案已經出現,包括時間鎖謎題(tlps),可驗證延遲函數(vdf),定時釋放加密(tre)和定時承諾(tc)。這些方案不僅豐富了密碼學的研究領域,而且為密碼學的應用開辟了新的可能性。
2、可延遲驗證函數(vdf)。1996年,rivest等人引入了第一個定時密碼原語,稱為rsw時間鎖謎題,用于構造tre方案。該方案確保加密的數據只能在預定的時間后才能解密,即使是具有顯著并行計算能力的敵手。2018年,boneh等人引入了vdf的概念和正式定義,它需要規定的時間來計算一個可以快速驗證的唯一輸出。de?feo等人提出了一種基于橢圓曲線和雙線性配對的vdf構造,但這種構造只允許在初始化時設置固定的時間難度。隨后,pietrzak和wesolowski分別提出了基于重復平方假設和fia-shamir(fs)啟發式的dvdf結構。attias等人分析了這兩種vdf結構,表明雖然pietrzak的方案提供了更好的性能,但結果是更大的證明。相比之下,wesolowski的方案生成更小的證明,但驗證時間更長。ephraim等人提出了一種基于重復平方假設的連續vdf方案和一種用于常整數證明的fs啟發式的變體。
3、定時簽名(ts)。thyagarajan等人引入了可驗證定時簽名(verifiable?timedsignatures,vts)的概念,并給出了bls、schnorr和ecdsa簽名的具體構造。在這些方案中,簽名者在一段時間內提交簽名,在此期間任何人都可以驗證該簽名是否包含有效簽名。他們還利用vts在區塊鏈上實現了不可鏈接的支付通道網絡。然而,簽名大小和計算成本與簽名份額的數量呈線性增長。zhou等人提出了可驗證的定時適配器簽名,這是一種新的加密原語,可以將vts的計算復雜度從線性降低到常數水平。thyagarajan等人開發了可驗證的定時可鏈接環簽名(verifiable?timed?linkable?ring?signatures,vtlrs),它可以在預定時間內隱藏可鏈接環簽名。然后利用vtlrs為加密貨幣門羅幣構建保護隱私的支付通道協議。bao等人提出了一種基于陷門vdf和rsa簽名的可驗證定時rsa簽名方案,該方案保持了一個恒定大小的簽名。arun等人開發了一種基于vdf的短時效簽名方案,該方案引入了時間約束,確保簽名在預定時間后自然過期。它降低了因誤用過時信息和數據庫而帶來的風險。
4、nft數字資產交易的權限保護一直是區塊鏈上面臨的重要問題,目前主要開發了兩種類型的定時簽名。第一種被稱為可驗證定時簽名(vts),在簽名生效之前實現延遲;第二種類型是短時效簽名(sls),它允許在創建簽名時設置簽名的過期時間。以上兩種簽名方案都能在一定程度上保障nft交易過程中使用權的順利轉移和回收。然而,某些需要時間敏感授權的應用場景要求設置激活時間和過期時間,現有的定時簽名方案無法滿足這一要求。因此,本發明提出了一種基于時間間隔簽名的限時nft權限保護方法,其采用的時間間隔簽名(time?interval?signature,tis)方案,能夠靈活地設置該簽名的生效時間和過期時間,使得nft數字資產權限劃分更加靈活和安全。
技術實現思路
1、本發明的目的是為了解決現有定時簽名方案導致的nft使用權無法靈活且安全地按照創建者和買方的意愿完成權限劃分,即nft的權限轉移和自動還原缺乏合適的定時簽名方案保障的問題,而提出了一種基于時間間隔簽名的限時nft權限保護方法。
2、本發明的目的是通過以下技術方案實現的。
3、首先,本發明提出了一種時間間隔簽名(time?interval?signature,tis)方案,能夠靈活地設置該簽名的生效時間和過期時間,該簽名使用了一種產品零知識證明(zero-knowledge?proof?of?product,zkpop)協議來作為簽名結構的組成部分。在tis的基礎上,提出了一種限時nft權限保護方法,將其命名為timeguardian,通過定時控制靈活地管理nft使用權,促進nft使用權的定時轉移和自動還原。
4、1.產品零知識證明(zkpop)協議主要包括以下3個算法:
5、(1)zk.setup(1λ)→pp:在輸入一個安全參數λ時,該算法輸出一個公共參數pp作為其他算法的公共輸入。
6、(2)zk.prove(α,ω)→π:在輸入一個聲明α和一個見證ω時,該算法輸出一個證明π。
7、(3)zk.verify(α,π)→{1,0}:在輸入一個聲明α和一個證明π時,該算法在π有效時輸出1,否則輸出0。
8、2.時間間隔簽名(tis)方案主要包含以下6個算法:
9、(1)tis.kgen(1λ)→(pk,sk):在輸入一個安全參數λ時,該密鑰生成算法輸出一個公鑰pk和一個私鑰sk。
10、(2)tis.sign(pk,sk,t1,t2,m,b)→(c,π1):在輸入一個公鑰pk,一個私鑰sk,一個激活時間t1,一個過期時間t2,一個消息m和一個信標b時,該簽名算法輸出一個該簽名對于(m,b)的承諾c和一個證明π1。
11、(3)tis.verify(pk,c,π1,m,b)→{0,1}:在輸入一個公鑰pk,一個承諾c,一個證明π1,一個消息m和一個信標b時,該驗證算法在(m,b)的簽名嵌入在c中有效時輸出1,否則輸出0。
12、(4)tis.open(pk,sk,c,m,b)→(σ,y):在輸入一個公鑰pk,一個私鑰sk,一個承諾c,一個消息m和一個信標b時,該開放算法輸出一個承諾的短時有效簽名元組σ和一個結果y。
13、(5)tis.openver(pk,c,σ,y,m,b)→{0,1}:在輸入一個公鑰pk,一個承諾c,一個短時有效簽名元組σ,一個結果y,一個消息m和一個信標b時,該驗證算法在(σ,y)的簽名嵌入在c中有效時輸出1,否則輸出0。
14、(6)tis.forceop(pk,c,m,b)→(σ,y):在輸入一個公鑰pk,一個承諾c,一個消息m和一個信標b時,該偽造開放算法輸出一個承諾的短時有效簽名元組σ和一個結果y。
15、3.限時nft權限保護方法(timeguardian)
16、該權限的系統模型包含5個實體:創建者,買家,nft市場、
17、ipfs和區塊鏈。
18、·創建者:創建者是擁有數字資產的個人。這些創建者負責初始創建、上傳和鑄造數字資產nft。通過為nft使用權的轉讓生成基于tis的交易,資產創建者授予買家使用資產的權利。
19、·買家:買家是指在一定期限內購買虛擬貨幣使用權的個人。
20、·nft市場:nft市場是一個專門用于展示和銷售nft的數字交易平臺。買家可以方便地在市場上瀏覽和購買nft。
21、·ipfs:ipfs是一個分布式的、點對點的、無權限的文件系統,用于存儲數字資產及其元數據。
22、·區塊鏈:區塊鏈是一個去中心化的賬本,記錄所有交易和智能合約的執行。在區塊鏈中,區塊鏈的參與者負責驗證交易,區塊作為tis的信標。
23、該權限的威脅模型包含2種惡意行為:非法轉讓和交易拒絕。
24、·非法轉讓:敵手(即惡意創建者)企圖通過偽造交易的tis非法轉讓nft的使用權。
25、·交易拒絕:敵手未能披露tis中的短時效簽名,從而阻礙了nft使用權轉讓交易的執行。這種行為阻止了買方獲得nft的使用權,盡管買方已經付款。該權限的設計目標包含3種成果:時間可控性,可執行性和自動失效。
26、·時間可控性:為了解決非法轉讓問題,創建者可以精確定義買家的nft使用期限,從t1到t2,有效防止交易偽造。
27、·可執行性:為了解決交易拒絕問題,允許買家強制披露tis,從而保證nft使用權的轉讓。
28、·自動失效:nft的使用權在設定的時間后自動到期,保證了nft使用權的及時回收。
29、本發明提出的一種基于時間間隔簽名的限時nft權限保護方法,主要執行步驟如下:1.系統初始化。2.資產存儲。3.nft生成。4.nft使用權轉讓。5.交易激活。6.nft使用權到期。本發明使用tis簽名方案來簽署nft使用權交易,明確定義這些權利的激活和到期時間,并且每個nft都與唯一的全局標識符tokenid相關聯,具體如下:
30、1.系統初始化:每個用戶使用tis.kgen(1λ)生成一個公私鑰對(pk,sk)。然后,為每個用戶都添加區塊鏈地址。
31、2.資產存儲:該步驟包括兩個子階段。
32、·上傳資產:上傳數字資產(da),如藝術品圖像、視頻文件、ens域名或cryptokitties等,ipfs返回一個唯一的不可變地址daurl=h(da)。
33、·元數據上傳:創建一個json文件,用于存儲數字資產的元數據,包括名稱、描述、數字資產文件地址daurl、作者和版權信息。此外,它規定購買的nft使用權只有一段時間間隔,之后版權和使用權自動恢復給創作者。這個json文件然后被上傳到ipfs,它返回一個唯一的不可變地址metadataurl=h(metadata)
34、3.nft生成:該步驟包括兩個子階段。
35、·nft鑄造:創建者通過在智能合約中調用mint(addc,tokenid,metadataurl)來鑄造nft。此過程將nft?tokenid的所有權分配給創建者的地址addc,并記錄相關的元數據鏈接metadataurl。
36、·nft列表:一旦區塊鏈網絡接受了該nft交易,它就會被永久記錄在區塊鏈上,并分配一個唯一標識符tokenid以及相關的元數據。隨后,創建者在opensea或rariable等市場上列出他們的nft,并設定價格。
37、4.nft使用權轉讓:該步驟包括兩個子階段。
38、·nft銷售:買家瀏覽市場,選擇他們想要的nft,并購買一段時間內的使用權。
39、·交易創建:在買家完成支付后,創建者在vtsls服務器上利用智能合約的transferfrom(addc,addb,tokenid)將nft的使用權轉讓給買方地址addb,從而生成nft使用權轉讓交易txfrfrom。交易txfrfrom用tis.sign(pk,sk,t1,t2,txfrfrom,b)→(c,π1)簽名。這里的信標b=h(header),其中header表示最新的區塊報頭。具體來說,交易txfrfrom通過tis(c,π1)指定了有效時間t1和過期時間t2。如果txfrfrom需要立即生效,則t1設置為0。
40、5.交易激活:該步驟包括兩個子階段。
41、·交易驗證:區塊鏈參與者可以在vtsls上使用tis.verify(pk,c,π1,txfrfrom,h(header))驗證交易txfrfrom的tis(c,π1)。此外,如果接收到的事務時間超過t2+t,則事務txfrfrom無效,其中t是與隨機信標b=h(header)對應的時間戳。
42、·簽名披露:如果創建者在時間t1之后沒有主動披露c中嵌入的短時效簽名元組σ,買家可以執行tis.forceop(pk,c,txfrfrom,h(header))強制披露,從而激活交易txfrfrom。然后,向區塊鏈網絡廣播txfr?from。買方可以使用智能合約的tokenuri(tokenid)獲得元數據鏈接,該鏈接允許訪問購買的數字資產。
43、6.nft使用權到期:該步驟包括兩個子階段。
44、·事務驗證:參與者使用短時效簽名的驗證算法,驗證事務txfrfrom的短時效簽名元組σ。
45、·簽名過期:在時間t2之后,任何人都可以使用短時效簽名的偽造算法,偽造短時效簽名元組σ。即說明簽名元組σ對于txfrfrom已經過期,因此允許賣家從買家收回nft使用權。
46、有益效果
47、1.本發明提出了一個名為timeguardian的限時nft權利保護方法。該方法以一種靈活的定時簽名方案——時間間隔簽名(tis)為基礎,支持預先設置nft使用權的授權和撤銷時間,通過定時控制靈活地管理nft使用權,促進nft使用權的定時轉移和自動還原。
48、2.本發明提出的tis簽名方案能夠靈活地設置生效時間和過期時間,將簽名的有效時間設置在滿足需求的最小時間段內,可以有效防止簽名非生效時間的泄露和破解,增強了簽名的保護能力。與此同時,tis簽名方案與現有可驗證定時簽名方案vt-bls、vt-schnorr、vt-ecdsa、vt-rsa相比,簽名尺寸分別減小了98.68%、98.67%、98.67%和57.14%,降低了區塊鏈上通信的帶寬壓力,具有更高的簽名效率。