❶ 區塊鏈論文精讀——Pixel: Multi-signatures for Consensus
論文主要提出了一種針對共識機制PoS的多重簽名演算法Pixel。
所有基於PoS的區塊鏈以及允許的區塊鏈均具有通用結構,其中節點運行共識子協議,以就要添加到分類賬的下一個區塊達成共識。這樣的共識協議通常要求節點檢查阻止提議並通過對可接受提議進行數字簽名來表達其同意。當一個節點從特定塊上的其他節點看到足夠多的簽名時,會將其附加到其分類帳視圖中。
由於共識協議通常涉及成千上萬的節點,為了達成共識而共同努力,因此簽名方案的效率至關重要。此外,為了使局外人能夠有效地驗證鏈的有效性,簽名應緊湊以進行傳輸,並應快速進行驗證。已發現多重簽名對於此任務特別有用,因為它們使許多簽名者可以在公共消息上創建緊湊而有效的可驗證簽名。
補充知識: 多重簽名
是一種數字簽名。在數字簽名應用中,有時需要多個用戶對同一個文件進行簽名和認證。比如,一個公司發布的聲明中涉及財務部、開發部、銷售部、售後服務部等部門,需要得到這些部門簽名認可,那麼,就需要這些部門對這個聲明文件進行簽名。能夠實現多個用戶對同一文件進行簽名的數字簽名方案稱作多重數字簽名方案。
多重簽名是數字簽名的升級,它讓區塊鏈相關技術應用到各行各業成為可能。 在實際的操作過程中,一個多重簽名地址可以關聯n個私鑰,在需要轉賬等操作時,只要其中的m個私鑰簽名就可以把資金轉移了,其中m要小於等於n,也就是說m/n小於1,可以是2/3, 3/5等等,是要在建立這個多重簽名地址的時候確定好的。
本文提出了Pixel簽名方案,這是一種基於配對的前向安全多簽名方案,可用於基於PoS的區塊鏈,可大幅節省帶寬和存儲要求。為了支持總共T個時間段和一個大小為N的委員會,多重簽名僅包含兩個組元素,並且驗證僅需要三對配對,一個乘冪和N -1個乘法。像素簽名幾乎與BLS多重簽名一樣有效,而且還滿足前向安全性。此外,就像在BLS多簽名中一樣,任何人都可以非交互地將單個簽名聚合到一個多簽名中。
有益效果:
為了驗證Pixel的設計,將Pixel的Rust實施的性能與以前的基於樹的前向安全解決方案進行了比較。展示了如何將Pixel集成到任何PoS區塊鏈中。接下來,在Algorand區塊鏈上評估Pixel,表明它在存儲,帶寬和塊驗證時間方面產生了顯著的節省。我們的實驗結果表明,Pixel作為獨立的原語並在區塊鏈中使用是有效的。例如,與一組128位安全級別的N = 1500個基於樹的前向安全簽名(對於T = 232)相比,可以認證整個集合的單個Pixel簽名要小2667倍,並且可以被驗證快40倍。像素簽名將1500次事務的Algorand塊的大小減少了約35%,並將塊驗證時間減少了約38%。
對比傳統BLS多重簽名方案最大的區別是BLS並不具備前向安全性。
對比基於樹的前向安全簽名,基於樹的前向安全簽名可滿足安全性,但是其構造的簽名太大,驗證速度有待提升。 本文設計減小了簽名大小、降低了驗證時間。
補充知識: 前向安全性
是密碼學中通訊協議的安全屬性,指的是長期使用的主密鑰泄漏不會導致過去的會話密鑰泄漏。前向安全能夠保護過去進行的通訊不受密碼或密鑰在未來暴露的威脅。如果系統具有前向安全性,就可以保證在主密鑰泄露時歷史通訊的安全,即使系統遭到主動攻擊也是如此。
構建基於分層身份的加密(HIBE)的前向安全簽名,並增加了在同一消息上安全地聚合簽名以及生成沒有可信集的公共參數的能力。以實現:
1、生成與更新密鑰
2、防止惡意密鑰攻擊的安全性
3、無效的信任設置
對於常見的後攻擊有兩種變體:
1、短程變體:對手試圖在共識協議達成之前破壞委員會成員。解決:通過假設攻擊延遲長於共識子協議的運行時間來應對短距離攻擊。
2、遠程變體:通過分叉選擇規則解決。
前向安全簽名為這兩種攻擊提供了一種干凈的解決方案,而無需分叉選擇規則或有關對手和客戶的其他假設。(說明前向安全簽名的優勢)。
應用於許可的區塊鏈共識協議(例如PBFT)也是許多許可鏈(例如Hyperledger)的核心,在這些區塊鏈中,只有經過批準的方可以加入網路。我們的簽名方案可以類似地應用於此設置, 以實現前向保密性,減少通信帶寬並生成緊湊的塊證書。
傳統Bellare-Miner 模型,消息空間M的前向安全簽名方案FS由以下演算法組成:
1、Setup
pp ←Setup(T), pp為各方都同意的公共參數,Setup(T)表示在T時間段內對於固定參數的分布設置。
2、Key generation
(pk,sk1) ←Kg
簽名者在輸入的最大時間段T上運行密鑰生成演算法,以為第一時間段生成公共驗證密鑰pk和初始秘密簽名密鑰sk1。
3、Key update
skt+1←Upd(skt) 簽名者使用密鑰更新演算法將時間段t的秘密密鑰skt更新為下一個周期的skt + 1。該方案還可以為任何t0> t提供 「快速轉發」更新演算法 skt0←$ Upd0(skt,t0),該演算法比重復應用Upd更有效。
4、Signing
σ ←Sign(skt,M),在輸入當前簽名密鑰skt消息m∈M時,簽名者使用此演算法來計算簽名σ。
5、Verification
b ← Vf(pk,t,M,σ)任何人都可以通過運行驗證演算法來驗證消息M在公共密鑰pk下的時間段t內的簽名M的簽名,該演算法返回1表示簽名有效,否則返回0。
1、依靠非對稱雙線性組來提高效率,我們的簽名位於G2×G1中而不是G2 ^2中。這樣,就足以給出公共參數到G1中(然後我們可以使用散列曲線實例化而無需信任設置),而不必生成「一致的」公共參數(hi,h0 i)=(gxi 1,gxi 2)∈G1× G2。
2、密鑰生成演算法,公鑰pk更小,參數設置提升安全性。
除了第3節中的前向安全簽名方案的演算法外,密鑰驗證模型中的前向安全多重簽名方案FMS還具有密鑰生成,該密鑰生成另外輸出了公鑰的證明π。
新增Key aggregation密鑰匯總、Signature aggregation簽名匯總、Aggregate verification匯總驗證。滿足前向安全的多重簽名功能的前提下也證明了其正確性和安全性。
1、PoS在後繼損壞中得到保護
後繼損壞:後驗證的節點對之前的共識驗證狀態進行攻擊破壞。
在許多用戶在同一條消息上傳播許多簽名(例如交易塊)的情況下,可以將Pixel應用於所有這些區塊鏈中,以防止遭受後繼攻擊並潛在地減少帶寬,存儲和計算成本。
2、Pixel整合
為了對區塊B進行投票,子協議的每個成員使用具有當前區塊編號的Pixel簽署B。當我們看到N個委員會成員在同一塊B上簽名的集合時,就達成了共識,其中N是某個固定閾值。最後,我們將這N個簽名聚合為單個多重簽名Σ,而對(B,Σ)構成所謂的 區塊證書 ,並將區塊B附加到區塊鏈上。
3、注冊公共密鑰
希望參與共識的每個用戶都需要注冊一個參與簽名密鑰。用戶首先採樣Pixel密鑰對並生成相應的PoP。然後,用戶發出特殊交易(在她的消費密鑰下簽名), 注冊新的參與密鑰 。交易包括PoP。選擇在第r輪達成協議的PoS驗證者,檢查(a)特殊交易的有效性和(b)PoP的有效性。如果兩項檢查均通過,則 使用新的參與密鑰更新用戶的帳戶 。從這一點來看,如果選中,則用戶將使用Pixel登錄塊。
即不斷更換自己的參與密鑰,實現前向安全性。
4、傳播和聚集簽名
各個委員會的簽名將通過網路傳播,直到在同一塊B上看到N個委員會成員的簽名為止。請注意,Pixel支持非互動式和增量聚合:前者意味著簽名可以在廣播後由任何一方聚合,而無需與原始簽名者,而後者意味著我們可以將新簽名添加到多重簽名中以獲得新的多重簽名。實際上,這意味著傳播的節點可以對任意數量的委員會簽名執行中間聚合並傳播結果,直到形成塊證書為止。或者,節點可以在將塊寫入磁碟之前聚合所有簽名。也就是說,在收到足夠的區塊證明票後,節點可以將N個委員會成員的簽名聚集到一個多重簽名中,然後將區塊和證書寫入磁碟。
5、密鑰更新
在區塊鏈中使用Pixel時,時間對應於共識協議中的區塊編號或子步驟。將時間與區塊編號相關聯時,意味著所有符合條件的委員會成員都應在每次形成新區塊並更新輪回編號時更新其Pixel密鑰。
在Algorand 項目上進行實驗評估,與Algorand項目自帶的防止後腐敗攻擊的解決方案BM-Ed25519以及BLS多簽名解決方案做對比。
存儲空間上:
節省帶寬:
Algorand使用基於中繼的傳播模型,其中用戶的節點連接到中繼網路(具有更多資源的節點)。如果在傳播過程中沒有聚合,則中繼和常規節點的帶寬像素節省來自較小的簽名大小。每個中繼可以服務數十個或數百個節點,這取決於它提供的資源。
節省驗證時間
❷ 區塊鏈論文結尾可以引用文獻嗎
在論文的結尾引用文獻是一種很常見的做法,無論是區塊鏈論文還是其他類型的論文都可以採用這種方式。在引用文獻時,需要注意以下幾個方面:
引用格式:在論文結尾引用文獻時,需要按照所使用的引用格式規范將所有文獻資料進行排版。常用的引用格式包括APA、MLA、Chicago等,需要根據題目、作者、出版社等元素進行格式化排版。
引用內容:在引用文獻時,應該只引用與論文主題相關的資料,避免引用和主題無關的內容。此外,引用的內容需要與論文中的文字和內容相符,保持論文的邏輯關系和連貫性。
引用數量:在論文的結尾引用文獻時,不應該引用過多的文獻。襲燃引用的文獻數量應該根據實際需要進行適當控制,避免引用過多無關的文獻。
在區塊鏈論文的結尾引用文獻時,可以參考一些典型的區塊鏈論文或書籍,並將其列入參考瞎皮文獻表中。這有助於鉤子性結尾,引出一個新的研拍神虛究方向,也可以為分析論文的主題提供更加充分的理論依據。
以下是一些值得推薦的關於區塊鏈的論文和書籍:
尼克·薩博:《區塊鏈應用:其工作原理及重要的領域》, O'Reilly Media出版社,2017年
安東·安德森和唐·塔普斯科特:《區塊鏈革命:如何改變貿易、金融、公司和我們的未來》,出版社: Portfolio,2016年
喬丹·多卡諾斯基和比塞塔·納拉亞南:《區塊鏈識別和解釋:技術、工具和應用(識別和解決)》,Manning Publications,2018年
A.B. Călin, A. Turcanu, F. Drăgănescu:《Blockchain - A Primer》,出版社: Universe,2019年
蘇黎普銀行集團經濟研究團隊:《區塊鏈:創造價值的多元應用》,2017年。
這些書籍和論文涵蓋了區塊鏈技術在金融、貿易、智能合約等方面的應用,以及區塊鏈技術的本質和未來發展趨勢。閱讀這些資料,可以幫助您深入了解區塊鏈技術及其應用,掌握相關技術和概念,為區塊鏈相關研究和論文寫作提供有價值的參考資料。
❸ POA(Proof of Activity)區塊鏈共識演算法
POA(Proof of Activity)演算法是一個區塊鏈的共識演算法,基本原理是結合POW(Proof of work)和POS(Proof of stake)演算法的特點進行工作,POW演算法和POS演算法的具體內容可以參考:
POW演算法 : https://www.jianshu.com/p/b23cbafbbad2
POS演算法 : https://blog.csdn.net/wgwgnihao/article/details/80635162
POA演算法相比於其他演算法可以改進網路拓撲,維持在線節點比例,需求更少的交易費同時減少共識演算法過程中的能量損耗。
POA演算法需求的網路中同樣包含兩類節點,礦工和普通參與者,其中普通參與者不一定一直保持在線。POA演算法首先由礦工構造區塊頭,由塊頭選出N個幣,這N個幣的所有者參與後續的校驗和生成塊的過程。
從這里可以看到POA演算法不僅與算力有關,後續的N個參與者的選舉則完全由參與者在網路中所擁有的幣的總數量決定。擁有越多幣的參與者越有機會被選為N個後續的參與者。而後續N個參與者參與的必要條件是這N個參與者必須在線,這也是POA命名的由來,POA演算法的維護取決於網路中的活躍節點(Active)。
POA演算法的一個理想的基本流程是,類似於POW協議,礦工構造出一個符合難度要求的塊頭,通過礦工得到的塊頭計算衍生出N個幣的編號,從區塊鏈中追溯可以得到這幾個幣目前所述的參與者。礦工將這個塊頭發送給這N個參與者,其中前N-1個參與者對這個塊進行校驗和簽名,最後第N個參與者校驗並將交易加入到該塊中,將這個區塊發布出去,即完成一個區塊的出塊。
一個理想過程如下圖所示:
在實際運行中,無法保證網路上所有參與者都在線,而不在線的參與者則無法進行校驗和簽名,這個無法被校驗和簽名的塊頭則會被廢棄。
即在實際運行中,應該是一個礦工構造出塊頭後廣播給各個參與者簽名,同時繼續重新構造新的塊頭,以免上一個塊頭衍生的N個參與者存在有某一個沒有在線,而導致塊頭被廢棄。
因此,在這種情況下,一個塊是否被確認不僅與礦工的計算能力有關同時也與網路上的在線比例有關。
與純POW相比,在與比特幣(POW)同樣10分鍾出一個塊的情況下,POA由於會有參與者不在線而產生的損耗,因此,10分鍾內礦工可以構造的塊的數量會更多,即塊頭的難度限制會降低,那麼礦工在挖礦過程中會造成的能量損耗也會降低。
與純POS相比,可以看到POA的出塊流程並不會將構造區塊過程中的相關信息上鏈,可以明顯減少區塊鏈上用於維護協議產生的冗餘信息的量。
本節對上訴協議中一些參數設置進行分析
在礦工構造出塊頭後對塊頭進行校驗和區塊構造的N個參與者的數量選定比較類似於比特幣中每一個塊的出塊時間的選取。比特幣中選擇了10分鍾作為每一個塊的期望出塊時間並通過動態調節難度來適應。
這里N的取值同樣可以選擇選定值或者動態調節。動態調節需要更加復雜的協議內容,同時可能會帶來區塊鏈的數據膨脹,而復雜的協議也增加了攻擊者攻擊的可能性。另外暫時沒有辦法證明動態調節可以帶來什麼好處。靜態調節在後續的分析(4 安全分析)中可以得到N=3的取值是比較合適的。
從上面的描述可以看到,構造新的區塊的除了礦工還有從塊頭中衍生出來的N個幣所有者。在構造出一個新的區塊後,這些參與者同樣應該收到一定的激勵,以維持參與者保持在線狀態。
礦工與參與者之間的非配比例與參與者的在線狀態相關。給予參與者的激勵與參與者保持在線狀態的熱情密切相關,越多參與者保持在線狀態,能更好地維持網路的穩定。因此,可以在網路上在線參與者不夠多的時候,提高參與者得到的激勵分成比例,從而激發更多的參與者上線。
如何確定當前參與者的在線情況呢?可以最後第N個參與者構造區塊時,將構造出來但是被廢棄的塊頭加入到區塊中,如果被丟棄的塊頭數量過多,說明在線人數過低,應當調節分成比例。
同時最後第N個參與者與其他參與者的分成同樣需要考慮,第N個參與者需要將交易加入區塊中,即需要維護UTXO池,同時第N個參與者還需要將被丟棄的塊頭加入新構建的區塊中。
為了激勵其將廢棄區塊頭加入新構建的區塊中,可以按照加入的區塊頭,適當增加一點小的激勵。雖然加入更多的區塊頭,可以在下一輪的時候增加分成的比例,應當足夠激勵參與者往區塊中加入未使用的塊頭了(這里參與者不可能為了增加分成而更多地加入區塊頭,每一個區塊頭都意味著一位礦工的工作量)。
一個參與者如果沒有維護UTXO池則無法構造區塊,但是可以參與前N-1個的簽名,因此為了激勵參與者維護UTXO池,作為最後一個構造區塊的參與者,必須給予更多的激勵,比如是其他參與者的兩倍。
從3.2的描述中可以知道一個用戶必須在線且維護UTXO池才可能盡可能地獲得利益。這種機制勢必會導致一些用戶將自己的賬戶託管給一個中心化的機構。這個機構一直保持在線,並為用戶維護其賬戶,在被選為構造區塊的參與者時參與區塊的構建並獲取利益。最後該機構將收益按照某種形式進行分成。
上面說到參與者必須用自己的密鑰進行簽名,而託管給某個機構後,這個機構在可以用這個密鑰簽名構造區塊的同時,也有可能使用這個密鑰消費用戶的財產。這里可以採用一種有限花銷的密鑰,這個密鑰有兩個功能,一個是將賬戶中的部分財產消費出去,另一個是將所有財產轉移到一個指定賬戶。在託管的時候可以使用這個密鑰,在被通知部分財產被花費後可以立即將所有財產轉移到自己的另一個賬戶下,以保證財產的安全。
從上面的分析可以看到,POA的安全性與攻擊者所擁有的算力和攻擊者所擁有的股權有關。假設攻擊者擁有的在線股權佔比為 ,則攻擊者的算力需要達到其他所有算力的 倍才能達成分叉。假設攻擊者股權總佔比為 ,網路中誠實用戶的在線比例為 ,則攻擊者的算力需要達到其他所有算力的 倍才能達成攻擊。
攻擊的分析表格如下:
從上文的分析可以看到,POA演算法相比於其他演算法可以改進網路拓撲,維持在線節點比例,需求更少的交易費同時減少共識演算法過程中的能量損耗。同時,PoA協議的攻擊成本要高於比特幣的純PoW協議。
參考文獻:Proof of Activity: Extending Bitcoin』s Proof of Work via Proof of Stake
❹ 怎麼在知網資料庫里利用高級檢索查找2000年以來有關國內微信營銷的風險及策略
同學們好!歡迎大家回到信息檢索微課堂,上節課為大家講解了如何利用知識元檢索,解決專業學習及日常生活中遇到的問題。今天為大家帶來中國知網高級檢索利用介紹,大家在利用一框式檢索時,可能會遇到如下問題,我想要檢索某一著名學者在一定時間段內關於某一主題的研究成果,這時僅僅依靠一框式檢索就顯得捉襟見肘了。利用高級檢索即可完美解決上述問題。
一、進入方式
進入中國知網後,點擊一框式檢索右側高級檢索,即可進入高級檢索頁面。
高級檢索分為高級檢索、專業檢索、發文檢索以及句子檢索四個模塊。今天為大家介紹前兩種模塊。
二、使用介紹
(一)高級檢索
在高級檢索頁可利用布爾邏輯詞AND、OR、NOT對各類檢索條件進行串聯,起到組合檢索的作用。其中涉及各類選項含義如下:
1.「 + - 」可以自定義增加和減少檢索欄位;
2.「並且/或者/不含」表示檢索詞之間或檢索欄位之間的邏輯關系;
3.「詞頻」是指該關鍵詞出現的頻率(目前不能修改,默認是至少出現一次);
4.「精確」是輸入的檢索詞在檢索結果字序、字間間隔是完全一樣的;
5.「模糊」是輸入的檢索詞在檢索結果中出現即可,字序、字間間隔可以產生變化。
例如需要檢索與「圖書館」主題相關且作者單位為「山西工商學院」在2010至2020年之間發表的文獻,即可按照以下方式進行檢索。
(二)專業檢索
進入專業檢索界面。界面的左側分別是檢索條件表達式的輸入框,期刊發表時間和期刊來源;右側是基本語法的介紹和示例。
SU=主題、TKA=篇關摘、TI=題名、KY=關鍵詞、AB=摘要、FT=全文、AU=作者、FI=第一作者、RP=通訊作者、AF=作者單位、JN=期刊名稱、RF=被引文獻、RT=更新時間、YE=期刊年、FU=基金、CLC=中圖分類號、SN=ISSN、CN=CN號、CF=被引頻次。
使用示例示例:
1.TI='生態' and KY='生態文明' and (AU % '陳'+'王' ) 可以檢索到篇名包括「生態」並且關鍵詞包括「生態文明」並且作者為「陳」姓和「王」姓的所有文章;
2.SU='北京'*'奧運' and FT='環境保護' 可以檢索到主題包括「北京」及「奧運」並且全文中包括「環境保護」的信息;
3.SU=('經濟發展'+'可持續發展')*'轉變'-'泡沫' 可檢索「經濟發展」或「可持續發展」有關「轉變」的信息,並且可以去除與「泡沫」有關的部分內容。
4.TI='轉基因$ 2'可檢索在篇名中「轉基因」至少出現2次的文獻。
5.KY=xls('區塊鏈') AND KY=xls('金融科技') 可檢索到關鍵詞同時包含「區塊鏈」和「金融科技」的中英文文獻。
這就是本次信息檢索微課堂的所有內容啦,大家學會了嗎?希望可以對大家的專業課程學習有所幫助,在上節課中為大家留下兩個問題,本期公布正確答案,詞典模塊共有七大部分,上節課為大家講解了六種模塊。以下是本次的課後小練習,大家知道答案可以將答案寫在評論區,希望大家積極參與,正確答案將在下期公布。我們下期再見啦!
❺ 比特幣與我們的世界(下)
文接《比特幣與我們的世界(上)》
理想與現實
隨著比特幣的不斷發展,比特幣的技術聯盟也在逐步完善整個體系的構建。輕量化錢包,正是他們的一種改良試驗。輕量化錢包本身並不會保存全部賬本,而是僅僅保留與自己相關的交易,這樣就極大減輕了自己的體量,非洲酋長也就不再需要記錄我去超市買羽絨服這件事了~。
埃森哲發明的一種採用「變色龍散列」(Chameleon Hash)密鑰的可編輯區塊鏈技術也在試圖解決我們少年時留下的放盪不羈的交易記錄。