以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads

NOTE:硬核科普:隱私交易使用手冊

Author:

Time:1900/1/1 0:00:00

編者按:本文來自PlatON,Odaily星球日報經授權轉載。前言

目前的主流公鏈項目不管是基于賬戶模型還是UTXO模型,交易轉賬地址與金額都是公開信息,易于追蹤。Zcash,Monero等實現了隱私Token,在主鏈實現隱私Token有幾個痛點:算法升級:密碼學算法發展較為迅速,新的算法應用到主鏈并且與現有系統適配需要很漫長的過程漏洞修復:主鏈的漏洞升級需要協調礦工或驗證人來配合升級,影響范圍較廣,周期較長基于智能合約的隱私Token則能做到靈活的算法方案,快速的漏洞修復,影響面較小,只影響到該隱私Token的用戶,是實現隱私Token的良好的平臺。簡介

隱私交易基于Alaya的WASM智能合約平臺PIP-13提案構建的隱私Token項目。該項目意在解決日益劇增的交易匿名化需求。通過零知識證明算法達到隱匿身份,算法插件化來滿足多種隱私的需求;支持隱私Token的獨立發行以及ARC20資產的隱私化;利用插件機制,做到算法的在線升級,做到對用戶的無感升級。合約架構

合約架構的主要滿足以下幾個目標:可擴展,整個框架能夠適配更多的算法,擴展隱私交易的生態。可升級,對于合約漏洞,如算法漏洞等,能夠進行快速升級,及時避免漏洞導致經濟損失。易于發行,Token的發行方不需要具備對算法原理的了解,僅需要判斷算法是否滿足需求,就能發行隱私Token。架構圖

上述架構圖中由如下模塊組成ConfidentialToken隱私Token合約,由Token發行方進行部署。Registry注冊表合約,ACL合約地址會注冊在Registry,ConfidentialToken每次交易都是通過Registry獲取ACL最新地址,這樣ACL可以進行動態升級。ACL訪問控制合約,負責管理隱私Token的注冊信息,驗證算法合約與存儲合約版本。TokenManagerToken管理合約,ACL關于ARC20合約存取操作都是通過TokenManager與ARC20合約進行交互。Validator驗證合約,實現對各種算法的驗證功能,每種驗證合約可以根據算法自定義賬戶地址。Storage存儲合約負責存儲每筆轉賬的必要信息,用于驗證是否存在雙花操作。ARC20標準Token合約從可擴展角度,開發者可以實現多種驗證算法,注冊到ACL合約中,就能供隱私Token發行方使用。從可升級的角度,ACL,Validator,Storage都可以進行動態升級,滿足了功能擴展、漏洞修復等不同升級的需求。從易于發行角度,項目方僅需要部署ConfidentialToken,即可實現隱私Token。算法原理

Ripple政策主管:應將CBDC視為從法定貨幣自然發展而來的產物:7月8日消息,Ripple政策主管Susan Friedman最近接受英國CBDC倡導組織數字英鎊基金會采訪時,討論了倫敦成為加密中心的潛力。Friedman表示,Ripple正致力于鼓勵為加密資產開發負責任的生態系統。Friedman強調,倫敦監管機構對金融科技和CBDC的前瞻性態度給Ripple留下了深刻印象。Friedman主張將CBDC視為從法定貨幣自然發展而來的產物,非常適應日益互聯的現代時代的需求。

她強調了CBDC的能力,能夠提供與傳統法定貨幣相當的安全性和保護措施,同時有效地應對獨特的國內挑戰。CBDC具有改變金融交易、促進透明度和增強經濟效率的潛力。為了充分發揮這一潛力,Friedman強調了制定全面戰略的重要性,促進這些數字貨幣順利融入全球市場,并使其適應未來的需求。Friedman將倫敦描述為加密貨幣的動態環境。[2023/7/8 22:24:53]

算法概念和定義

票據note:借鑒Bitcoin的UTXO模型,一個票據"note"即是一個UTXO,其是對金額的加密后的表示,邏輯上包括金額"value"、屬主"owner"。金額就是該票據的密文形式;屬主信息是由該票據的spendingkey決定,在后續章節會進一步描述;JoinSplit交易:在本方案中,定義一個交易為多個票據和其他信息的集合。其他信息是指為驗證交易邏輯包含的必要的數據,包括零知識證明等。付款人payer,收款人payee:在一個交易里,指花費了票據的人,和擁有花費新創建的票據的權利的人。這里付款人,需要與發送者sender進行區分,后者是發送了交易給區塊鏈網絡的人;因此,sender可以與payer是同一個實體,也可以是被實際payee授權的一個第三方。方案介紹

密鑰和票據借鑒DKSAP協議,用戶的錢包需要包括兩個密鑰對,spendingkey-pair和viewingkey-pair:aspendingkey-pair:,;用于授權一個交易。用戶公開。aviewingkey-pair:,;用于審計/查看一個或者多個票據。用戶公開。當payer需要創建一個新的票據(outputnote)時,首先生成一個臨時密鑰ephemeralkeypair,,用payee的publicviewingkey一起生成一個sharedsecret。隨后,用sharedsecret和payee的一起生成一個該新票據的spendingkey-pair,記為。注:每個票據都有一個獨立的spendingkey-pair,該spendingkey-pair定義了該票據的ownership,誰知道該spendingkey-pair的私鑰部分,誰就具有花費該票據的權利。DKSAP的具體協議流程假設Bob(payee)的密鑰為:spendingkey-pair:,viewingkey-pair:;為橢圓曲線群的生成元。Alice(payer)先生成一個臨時密鑰對,然后將公鑰部分與放入Note數據中進行公開。Alice計算一個sharedsecret:,是一個滿足密碼安全的哈希函數。這里由于采用了ECDH原理,另一方Bob也可以計算。Alice計算本次交易中Bob的交易地址為:。Bob動態地檢查鏈上交易,試圖找到發送給他的Note。他可以根據每個Note中的,計算出相應的sharedsecret,然后計算對應的Note接收地址,與每個Note的接收地址進行比對,如果比對成功,則用背后的私鑰部分進行花費,這里。Transfer交易流程假設Alice需要轉賬給Bob7XATP,且Alice總共擁有票據包括:5XATP,:3XATP。在一個明文的JoinSplit交易里,,作為inputnotes,Alice會創建:7XATP,:1XATP,且指定、屬主信息分別為Bob和Alice。一、payerAlice創建一個交易臨時密鑰對,JoinSplitkey-pair:{,}。二、Alice計算inputnotecommitments如下:,,其中是指票據的notespendingkey的公鑰部分。Alice計算每個inputnote的簽名,以表示確實有權利花費。,。其中是票據的notespendingkey的私鑰部分。//這里把也扔到單個票據的簽名里,表示每個票據的屬主都認可當前的JoinSplitkey-pair的擁有者。這樣,不會造成攻擊者偽造一個新的JoinSplitkey-pair,在不改變交易數據的情況下,重新簽名交易進行重放攻擊。三、Alice計算outputnotecommitments如下:其中和是Alice通過DKSAP協議以及Bob的公鑰生成的notespendingkey的公鑰部分。Alice會將和的臨時密鑰的公鑰部分也公開,方便payee從鏈上找到屬于自己的票據。即公開,.四、Alice計算publicvalue。該變量是一個公開的數值,表示與外部賬戶系統(ARC20資產)的轉入轉出關系,即該值為正數時,表示有數量的Token轉出到外部賬戶(sender'saddress),如果該值為負數時,表示有數量的Token從外部賬戶(sender'saddress)轉入到隱私Token系統。例如一個典型的充值交易中的金額配平關系可能是形如:inputNotes=,outputNotes=,publicValue=-3ATP,表示sender的ATP賬戶中會凍結3個Token,同時會創建2個outputNotes,其金額總和為3,如果有任一項校驗失敗,則拒絕執行交易:驗簽;驗簽,;檢查,是否存在Noteregistry上;檢查,是否不存在Noteregistry上;驗證,如果驗證失敗,則拒絕執行交易;//這里我們省略了ZKproof相關的publicinputs,取決于具體的算法細節;九、如果上述驗證均通過,則合約更新Noteregistry狀態,即將銷毀,并創建。每個票據要包括:票據承諾,該票據的notespendingkey的公鑰部分,以及該票據的臨時密鑰的公鑰部分。十、如果上述驗證均通過,還需要處理對應數量的Token情況。如果為正數,則合約將向sender的外部地址中解凍數量的ATPToken;否則合約將從sender的外部地址凍結數量的ATPToken。模型定義

DeFi抵押借貸協議PWN完成200萬美元融資:6月28日消息,由數字資產支持的點對點DeFi抵押借貸協議PWN完成200萬美元融資,該融資得到了Starkware、Nethermind、Safe Ecosystem Foundation等生態系統參與者的支持。此外,專注于加密貨幣的風險基金和包括Digital Finance Group、Jsquare在內的公司參投。PWN 支持用戶將 NFT 或任何代幣作為抵押品,投資于固定利息貸款并產生有吸引力的回報。[2023/6/28 22:06:30]

在UTXO模型的基礎上,隱私Token支持5種主要的操作,鑄幣,銷毀,轉賬,充值,提幣。鑄幣:由Token的發行方發起的增發交易。

銷毀:由Token發行方發起的銷毀一定數量的Token的交易。

轉賬:由普通用戶發起的input總和與output總和相等的交易。

充值:充值,由普通用戶發起的input總和小于output總和的特殊轉賬交易。差值經Token縮放因子處理后為實際從ARC20轉入到隱私賬戶的Token數量,充值交易內部會從交易指定公開賬戶轉賬ARC20token到TokenManager合約賬戶。

提款:由普通用戶發起的input總和大于output總和的特殊轉賬交易。差值經Token縮放因子處理后為實際從隱私賬戶轉出到ARC20Token數量,提款交易內部會從TokenManager合約賬戶轉賬ARC20token到交易指定的公開賬戶。

合約交易交易結構

Kava 12主網計劃推遲一周,定于1月25日上線:1月17日消息,Kava Network發推表示,已向社區用戶建議將Kava 12主網發布時間推遲1周,定于北京時間1月25日23:00上線。

金色財經報道,Kava Network表示計劃提前一天,于1月18日上線Kava12主網。[2023/1/17 11:15:37]

交易分為Proof,ExtraData,Signature三部分,Proof中保護有對UTXO證明與本次授權交易地址,ExtraData為明文數據,Signature為授權地址私鑰進行簽名,保證交易信息的完整性。

合約交易證明構造過程

一、構造證明數據,證明數據交給零知識證明處理。數據結構如下:

根據證明入參,生成如下證明結果作為交易證明入參:

二、不同類型的交易對應不同的附加數據,增加相應的附加數據,附加數據經過RLP編碼后得到附加數據字節流。TransferExtra對應轉賬、充值、提款三種類型交易。著重說下depositSignature,其是防止交易發送者不擁有publicOwner私鑰,就將其ARC20Token轉走。三、構造完整的機密交易信息,RLP編碼,授權地址對RLP編碼后數據簽名,進而得到完整的證明。合約執行流程

用戶發送上述幾種類型交易ConfidentialToken合約從注冊表中找到ACL的地址ConfidentialToken向ACL發送交易信息ACL根據ConfidentialToken注冊的信息找到驗證合約進行證明驗證Validator進行ZK驗證Validator校驗授權簽名如果是Deposit交易,Validator檢查depositsignatureValidator根據具體的算法產生CreateNoteDetailEvent事件ACL根據注冊的存儲合約進行更新數據Storage更新input,將inputnote進行刪除Storage更新output,創建outputnote如果是Deposit/Withdraw交易,調用TokenManager進行存取操作TokenManager調用ARC20進行轉賬操作ConfidentialToken對outputnote創建CreateNoteEvent事件ConfidentialToken對inputnote創建DestroyNoteEvent事件如果是Mint交易,創建MintEvent事件如果是Burn交易,創建BurnEvent事件合約事件

Meta正在收購總部位于荷蘭的智能眼鏡公司Luxexcel:金色財經報道,由于Meta因收購VR健身開發商Within而面臨反壟斷審查,這家科技巨頭正在進行另一筆收購。Meta證實,它正在收購總部位于荷蘭的智能眼鏡公司Luxexcel 。比利時報紙De Tijd首次報道了這筆交易的條款,但尚未披露金額。

Luxexcel成立于 2009 年,使用 3D 打印制作眼鏡處方鏡片。最近,該公司將精力集中在智能鏡片上,可以使用 LCD 顯示器和全息膠片等集成技術進行打印。[2023/1/3 22:21:52]

上一次mint數據的hash;上一次burn數據的hash;完整的note信息;note的產生;note的銷毀;更改note備注;這些信息都需要通過事件獲取。MintEvent屬性類型索引描述mintHashh256否鑄幣交易的hashvalueu128否鑄幣金額描述:發行方需要記錄每次鑄幣的hash,下一次發行方鑄幣時需要前一次鑄幣的hash。第一次鑄幣時上一次鑄幣的hash為空。BurnEvent屬性類型索引描述burnHashh256否銷毀交易的hashvalueu128否鑄幣金額描述:發行方需要記錄每次銷毀的hash,下一次發行方銷毀時需要前一次銷毀的hash。第一次銷毀時上一次銷毀的hash為空。CreateNoteDetailEvent屬性類型索引描述noteHashh256是notehash值noteOwnerbytes否note屬主noteCipherbytes否note的金額和綁定數據用viewingpk加密之后的數據noteMetabytes否note的備注信息描述:屬主信息是ephemeralPk和signPk組成結構體的RLP值,用戶用私有的viewingSk和spendingSk判斷自己是否為屬主。判斷成功之后,用私有的viewingSk從noteCipher中解密出note的blinding和quantity。CreateNoteEvent屬性類型索引描述noteOwnerbytes是note屬主的hashnoteHashh256是note的hash值ownerbytes否note屬主描述:和CreateNoteDetailEvent是一一對應產生的。DestroyNoteEvent屬性類型索引描述noteOwnerbytes是note屬主的hashnoteHashh256是note的hash值ownerbytes否note屬主描述:每花費一個note就會觸發一個DestroyNoteEvent,用戶需要監聽此事件刪除已經花費的note。MetaDataEvent屬性類型索引描述noteHashh256是note的hash值noteMetabytes否note的備注信息描述:產生新的note備注和更改note備注時會觸發此事件。部署升級

寧波:數字人民幣錢包已開立44.59萬個:金色財經消息,近日,“甬城泊車”平臺上線了數字人民幣支付方式,據悉,寧波市自上月初正式開展數字人民幣試點以來,工行、農行、中行、建行、交行、郵儲銀行、招商銀行等七大試點金融單位在寧波積極打造應用場景,同時策劃豐富的消費促進活動推廣數字人民幣。目前,全市數字人民幣線下商戶已有10183家,數字人民幣錢包開立44.59萬個,其中個人錢包41.61萬個,對公錢包近3萬個。(移動支付網)[2022/5/16 3:19:20]

合約概念和定義

委員會:有權批準多簽交易的地址,在多簽交易規定的時間內,只有收集到不少于閾值的委員會簽名,多簽交易才算被批準,才能被發送到區塊鏈網絡。提案交易:需要委員會批準的多簽交易,規定時間內,委員會批準通過,發送到區塊鏈網絡執行交易,未批準通過,交易超時被刪除。模板合約:由于部署交易內容包括合約代碼,代碼量較大造成交易過大,所以采用模板合約,區塊鏈底層直接復制模板合約代碼。Clone創建合約:Clone創建時復制模板合約代碼,用新的初始化參數初始化合約,創建成功之后獲取新創建的合約的地址。合約升級:復制模板合約代碼,產生新的合約地址,舊合約的數據遷到新合約地址,舊合約銷毀。官方合約部署

一、部署Registry注冊表合約,用來管理ACL地址,每次ACL升級的同時向Registry注冊新地址。注冊表合約采用無私鑰地址部署,保證后續沒有人可以更改此合約。注冊表合約不支持合約升級。

二、部署MultiSign多簽合約,此合約用來管理ACL合約,后續升級都將通過多簽合約進行。確認多簽委員會名單和提案生效人數閾值,部署合約初始化時傳入確定好的值。三、部署ACL控制管理合約,部署過程中會clone出TokenManager合約。TokenManager合約和ARC20合約交互,轉入轉出token到TokenManager合約。

四、部署Validator驗證合約或者Storage存儲合約,這兩個合約的部署流程是一樣的,部署后都需要在ACL進行版本注冊。

官方合約升級

ACL合約升級

委員會通過MultiSign合約進行升級的部署,部署通過先部署模板合約以Clone方式進行合約的升級,升級的ACL合約數據也一并遷移過去。升級后ACL會更新在Registry的注冊信息,升級的過程是一筆交易,所以升級過程不會影響交易到調用方的使用。

Validator/Storage合約升級ACL合約對Validator和Storage合約進行版本控制,針對新特性、漏洞升級都會向ACL注冊新版本,使用方可以根據自行需要,進行升級。一個新版本注冊過程如圖:

委員會確定新版本,通過MultiSign對Validator/Storage合約進行注冊,注冊信息存儲ACL,供使用方查找。后面章節會講用戶如何升級。注冊版本信息注冊信息包括Verion,Address,Description三部分Verion由3個字段表示類型+主版本+子版本組成Address模板合約地址Description版本信息描述隱私Token合約部署

隱私Token合約是由用戶或項目發行方來發起部署的。

發布者向注冊合約請求獲取ACL最新地址發布者從ACL獲取驗證合約與存儲合約版本,選擇相應版本發布者將驗證合約與存儲合約版本及其它信息作為初始化信息部署隱私Token合約隱私Token合約向ACL合約進行注冊ACL根據隱私Token合約指定的版本號進行驗證合約部署ACL根據隱私Token合約指定的版本號進行存儲合約部署隱私Token合約升級

升級方向注冊合約請求獲取ACL最新地址升級方向ACL獲取升級合約版本升級方調用隱私Token合約的升級接口隱私Token合約會調用ACL的升級接口ACL找到隱私Token合約對應的驗證合約,調用驗證合約的遷移接口驗證合約根據升級模板合約進行合約升級ACL將升級后的驗證合約地址更新注冊信息底層:https://github.com/PlatONnetwork/PlatON-Go/tree/alaya-dev/feature-confidential-token隱私合約開源倉庫:https://github.com/PlatONnetwork/confidential-transaction

Tags:NOTETOKTOKENKENDigitalNoteXi Tokennbtoken老版本imtoken

SHIB最新價格
BAS:解讀算法穩定幣本質和分類

2020年12月31日下午4點,BlockArk首席分析師墨客,在Uniswap中文社區進行了“算法穩定幣解讀”的年末分享直播.

1900/1/1 0:00:00
比特幣:2020,加密貨幣十宗“最”

編者按:本文來自DCNews,Odaily星球日報經授權轉載。2020年的結束近在眼前。用一位在互聯網上火過但又消失了的馬先生的話來說:很快啊。這一年,來不及躲閃,太多的事情鋪天蓋地而來.

1900/1/1 0:00:00
COI:2021,比特幣邁向儲備貨幣的道路已經確定

編者按:本文來自萌眼財經,Odaily星球日報經授權轉載。短短12年的比特幣歷史,充滿了激動人心的時刻.

1900/1/1 0:00:00
SEC:面臨審查、交易所集中下架,瑞波幣的未來在哪里??烤仔星選

12月23日,美國證券交易委員會以發行未注冊證券為由,對瑞波公司,以及公司首席執行官BradGarlinghouse和聯合創始人ChrisLarsen提起訴訟.

1900/1/1 0:00:00
以太坊:Deribit期權市場播報:0104—波動驚人

今天上午延續史詩級大暴漲,下午就來了次史詩級大回調。比特幣當日波動6000美元,以太坊波動280美元。現在一天的波動價格超過幾個月前的幣價,驚人的波動.

1900/1/1 0:00:00
比特幣:威廉:比特幣歷史上第一次萬刀暴跌,老美背鍋不用慌

編者按:本文來自威廉閑談,作者:陳威廉,Odaily星球日報經授權轉載。昨天,我們見證了比特幣有史以來,第一次超過一萬美金的暴跌.

1900/1/1 0:00:00
ads