BTD 項目鑄就全球分布式邊緣云存儲第一鏈,打造一個分布于全球、貼近網絡終端用戶進行部署和快速響應、永不停機、永不斷電、天然異地容災、容量無限擴展、具備自我修復能力、數據私密安全的超級云存儲和擁有海量數據的超級媒體。
BTD 項目的海量存儲和計算資源面向技術合作伙伴開放。技術合作伙伴可基于 BTD 項目開發面向個人用戶的云盤服務、面向企業用戶的數據備份服務、面向其他應用領域的各種存儲和計算服務應用,利用閑置存儲和計算資源創造出巨大價值,領跑于分布式存儲、邊緣云存儲的數據存儲時代,開創區塊鏈應用真實落地的新時代。
BTD 項目向全球存儲硬件開放,用戶可通過貢獻其存儲空間成為 BTD 節點。全網節點協同工作,形成容量無限擴展、天然異地容災、具備自我修復能力的分布式存儲鏈;而節點則按照其存儲容量、在線率、網絡性能、實際服務質量等綜合貢獻獲得相應的 HDT 存儲積分。根據節點對全網穩定運行所做的當日貢獻比例、歷史貢獻比例、未來發展貢獻比例的綜合貢獻,節點獲得相應的 BTD激勵積分。HDT 根據 PoCR(可信賴存儲證明)算法產生,是價值穩定和成本低廉的存儲積分,便于鏈上各類 dApp 應用為 BTD 項目獲取裂變式海量用戶;BTD 根據 PoS(權益證明)算法產生,代表了全網的存儲價值,其總量有限,且一部分 BTD 在運行過程中會被銷毀,具備天然內在的價值增長動力。
HDT+BTD 立體激勵體系是全球分布式存儲領域第一個立體激勵體系,是存儲鏈上的云盤應用率先落地之后的必然需求,代表了分布式存儲領域的必然趨勢,意義深遠。BTD 項目預言所有的分布式存儲項目在其打造的應用真正落地后都必將主動或被動調整其激勵體系,從單一激勵體系調整為與 BTD 項目類似的“穩定積分+激勵積分”立體激勵體系。HDT+BTD 所代表的優秀激勵機制也將極大激發節點激情,為 BTD 存儲鏈持續快速發展奠定長期和堅實基礎。
BTD 項目幫助用戶將閑置的存儲空間和計算資源通過共享實現商品化,未來還可幫助用戶將所存儲的原創數字內容(照片、視頻、文章、直播等)通過分享實現價值化,以區塊鏈技術實現價值流通,以分布式技術重構云存儲產業生態。BTD 項目是面向物聯網和 5G 時代數據存儲需要的邊緣云存儲基礎設施,將創造出巨大的經濟價值和社會價值。
BTD節點
BTD 項目面向全球存儲硬件開放,用戶可通過貢獻其閑置存儲成為節點。BTD 項目支持非專用和專用的2種類型存儲節點:
1. 非專用存儲節點
當前市場上廣泛存在各類有存儲能力的智能硬件和PC電腦等私人硬件。一般來說,私人硬件的存儲能力主要用于自用存儲,但有時也會有不少存儲空間長期處于閑置狀態,如果用戶愿意將閑置存儲長期穩定貢獻出來,則用戶的私人硬件也成為了一個非專用的存儲節點。
2. 專用的 BTD 存儲節點
專用的 BTD 存儲節點,其核心功能就是為 BTD 項目提供存儲空間、帶寬資源和計算資源,不承載其他業務。根據專用節點所部署位置的不同,BTD 項目專用節點可以分為家用型和專業型2大類。
家用型體積相對較小,噪音相對較低、適用于普通家庭用戶參與 BTD 網絡的建設。
專業型則一般采取標準機架式服務器設計,更適合放置在小型機房,尤其是具備較好帶寬資源的區域,為 BTD 網絡提供更優良的網絡資源,更適用于專業用戶參與 BTD 網絡的建設。
在 BTD 網絡的測試網運行期間,已有多個合作伙伴不同品牌不同型號的非專用的 BTD 存儲節點和專業的 BTD 節點加入了 BTD 項目,各類 BTD 存儲節點也已歷經多次軟硬件版本迭代,BTD 網絡已具備了良好的網絡基礎。
BTD項目的區塊鏈基本框架
1. 什么是區塊鏈
區塊鏈技術是在多方無需互信的環境下,通過共識技術實現系統中參與方的協作以達到對信息的認可與驗證。這種協作是通過去中心化的方式達成多節點共同記錄、維護、確認一個不可篡改、可靠的數據日志。區塊鏈技術能夠實現無需單節點中心服務器環境下,用戶對數據的完整控制權和信任,從而讓數字時代的生產關系更合理、更安全、對用戶提供更有效的激勵。
由于每個區塊數據(Block)都是通過密碼學技術來生成,并且數據塊之間通過數據指紋鏈接(Chain)在一起,所以我們稱這種結構為“區塊鏈(BlockChain)”;又由于每個全節點都擁有所有的交易記錄或數據日志總賬,所以我們也稱它為“分布式總賬技術(Dributed Ledger Technology)”。
區塊鏈技術的代表性項目和第一個成功應用就是比特幣(BITCOIN)網絡。
2. 項目開源平臺
BTD 項目基于開源項目平臺 ChainSQL 進行開發。ChainSQL 是將區塊鏈與傳統數據庫相結合的開源區塊鏈平臺,其核心思想是:把對數據庫的操作看作一次交易,在底層構建一種基于區塊鏈網絡的日志式數據庫平臺,從而使得對數據的操作歷史可追溯、不可篡改,從而實現一個分布式去中心化的數據庫。
ChainSQL 基于區塊鏈的四個主要特性:去中心化(Decentralized)、去信任(Trustless)、集體維護(Collectively maintain)、可靠數據庫(Reliable Database),建立賬務系統。系統采用模塊化設計,對共識算法、P2P 通訊協議、區塊寫入等功能進行封裝,各模塊可無縫對接。在區塊鏈中保存共享憑證,執行激勵發放,通過區塊鏈的可回溯、不可篡改的機制,確保 BTD項目運行數據的公開、透明、公正。
基于 ChianSQL 平臺,BTD 項目在構建時采用以下區塊鏈底層技術:
2.1 共識算法
共識算法采用 RPCA(Ripple Protocol Consensus Algorithm)。
針對拜占庭將軍問題,目前常見的有比特幣與以太坊采用的 POW 算法,HyperLedger 采用的 PBFT 算法。然而,在些這種分布式支付系統中,由于海量節點間需要同步溝通,導致共識效率比較低。在 RPCA 算法中,為了降低這種同步溝通的成本,使用了一種子網絡內部互相信任,由這些內部信任的子網絡構成大的網絡的方案。這里子網絡的信任成本非常低,可以被進一步降低為網絡節點對于子網絡內部其它節點的原子性選擇。另外,為了維護全網節點數據的一致性,子網絡之間需要的連接度不能小于一個閾值。通過以上解決方案,RPCA 實現了一種高性能,同時擁有較高拜占庭容錯的算法。RPCA 算法已經應用在Ripple 共識協議中,并得到了大量實際應用驗證。
該共識算法支持高網絡吞吐量,平均期望超過 1000TPS。該網絡下,每個節點均為非匿名節點;每個參與共識的服務器均維護 UNL(Unique Node LBTD)列表,列表上的服務器集合代表整個網絡受信任的代表,即記賬節點,由列表上的記賬節點決定最終共識。
2.2 共識算法所解決的問題
近些年,針對分布式共識系統的研究越來越多,研究的目標是實現一種高性能,低花費,同時去中心化的交易系統。在這類系統的研究過程中主要問題可歸為三類:正確性、一致性、可用性。
正確性指的是分布式系統要能識別正常交易與欺詐交易。在中心化系統中,這個問題是通過機構之間的信任以及數字簽名來保證交易確實是由某個機構發出來解決的。而在去中心化系統中,大家甚至都不認識對方,自然無法建立類似的信任關系,因此,必須找到一種替代方案來保證交易的正確性。
一致性指的是要在去中心化系統中保證能達成全局唯一的共識。與正確性不同的是,一個惡意用戶也許不會發起欺詐交易,但是他可以通過同時發起多筆正確的交易來謀利。在區塊鏈中,典型的例子是“雙花”問題。因此一致性問題可被歸結為如何保證系統中只能有一個全局唯一識別的交易集的問題。
可用性在去中心化支付系統中一般指的是性能問題。假設一個系統既能保證正確性又能保證一致性,但是需要一年時間才能確認一筆交易 ,那很顯然這個系統的可用性很低。另外,可用性的其它方面包括達成正確性與一致性需要的算力水平、為避免一個用戶被欺詐所應用的算法復雜度等。
RPCA 算法的實現,可以很好的解決以上三個問題。
2.3 共識算法的基本概念
服務節點,就是可以接收交易的區塊鏈節點,包括驗證節點與非驗證節點兩種,驗證節點是指被其它節點加入到信任列表中的節點,可參與共識過程,非驗證節點不參與共識過程。
區塊和區塊記錄交易,在 RPCA 中有兩種區塊比較關鍵,一個是最新關閉的區塊,也就是最新被共識過的區塊,另一個是開放區塊,開放區塊是指當前正被共識的區塊,當開放區塊被共識過,也就成了新的最新關閉的區塊。
UNL(Unique Node LBTD)信任節點列表,每個服務節點都會維護一個信任節點列表,這里的信任是指這個列表中的節點不會聯合起來作弊。在共識過程中,系統功能只接受來自信任節點列表中節點的投票。在底層鏈中,信任節點通過配置文件中加入其它驗證節點的公鑰的方式來指定 UNL。
2.4 共識過程
底層鏈網絡每隔幾秒就會產生一個新的區塊,這個區塊的產生過程就是所有網絡節點 RPCA 共識的過程。假設共識過程是成功的,并且網絡中沒有分叉產生,那么新生成的區塊就是全網唯一的。
RPCA 對交易分兩個階段完成,第一階段是達成交易集的共識,第二階段是對新生成的區塊進行提議,最終形成被共識過的區塊。
達成交易集的共識分輪進行,在每一輪中進行下面的操作:
每個節點在共識開始時盡可能多的收集所能收集到的需要共識的交易 并放到“候選集”里面;
每個節點對它信任節點列表中的 “候選集”做一個并集,并對每一個交易進行投票;
UNL 中的服務節點交流交易的投票結果,達到一定投票比例的交易會進入到下一輪,達不到比例的交易要么被丟棄,要么進入到下一次共識過程的候選集中;
在最終輪中,所有投票超過 80%的交易會被放到共識過的交易集中,這里的交易集與比特幣類似,也是 Merkle 樹的數據結構。
形成交易集后,每個節點開始打包新的區塊,打包區塊的過程如下:
把新的區塊號、共識交易集的 Merkle 樹根 Hash、父區塊 Hash、當前時間戳等內容放到一起,計算一個區塊哈希;
每個節點廣播自己得出的區塊哈希到它可見的節點,這里的可見節點不僅僅指可信列表中的節點,而是通過節點發現過程能發現的節點;
節點收集到它所有可信列表中節點廣播過來的區塊哈希后,結合自己生成的區塊哈希,對每個區塊哈希計算一個比例,如果某一哈希的比例超過一個閾值(一般是 80%),則認為這個哈希是共識通過的區塊哈希。如果自己的哈希與之相同,則說明自己打包的區塊得到了確認,是新的被共識過的區塊,直接存到本地,并且更新狀態。如果自己的哈希與共識通過的哈希不同,那就需要去某個區塊哈希正確的節點索要新的區塊信息,要到之后存儲到本地并且更新當前狀態;
如果上面沒有對某一區塊哈希超過設定的閾值,那么重新開始共識過程,直到滿足條件。
至此,一個區塊的共識過程結束,開啟下一輪共識過程。
2.5 驗證
更為快速有效的區塊認證技術:由全網所有的信任節點負責記賬,超過半數的記賬節點維護的區塊鏈為有效鏈。區塊生成后,廣播到全網由記賬節點進行投票,記賬節點按收到的對某一區塊的投票多少來決定選取哪個區塊為有效區塊,大約 3S 可以生成一個區塊。
正確性:RPCA 中正確性的驗證方式很簡單,因為共識需要 80%的閾值,那么只要 UNL 中有 80%的誠實節點,就能達成共識,另外即使有超過 20%的欺詐節點,也不能破壞正確性,因為欺詐節點也必須達到 80%以上才能達成共識。無論欺詐節點還是誠實節點,達不到 80%,都無法通過共識。
一致性:一致性是通過子網絡與其它子網絡的連通性來保證的,要保證區塊鏈不分叉,必須確保每個子網絡必須至少與整個網絡節點中的 20%保持連通性。
可用性:在每一輪投票過程中,節點會搜集它 UNL 中每個節點的響應時間,一直響應時間慢的節點將會被剔除出去,這樣 UNL 就能保持一個較高的溝通效率。在高效溝通的前提下,RPCA 算法能保證每 3-10 秒產生一個區塊,TPS》1000。
2.6 多點數據同步
節點數據不全時,向相鄰節點索取數據,通過數據離散、多節點同時索取、本地再組合的方式,使系統具備了數據快速傳輸,斷點續傳等優秀特性。
2.7 Radix-Merkle 存儲算法
區塊中的狀態與交易,根據哈希后的結果以 Merkel 樹的形式進行組裝。以基數樹的結構來設計多個葉子節點,通過 key 值可以快速索引到具體的某一個交易或者狀態。
2.8 改進的 lz4 壓縮算法
交易內容中的每個字段,按名稱進行排序,得到固定順序的數據內容,通過改進后的 LZ4 算法,得到較高的壓縮比及壓縮速度。
2.9 智能合約
項目的存儲積分和激勵積分的發放基于智能合約執行,對提供存儲服務的節點用戶進行激勵。
3. 分層框架
BTD 項目的技術分層框架包括:應用層、網絡節點層、存儲節點層、文件系統層、區塊鏈共識層等多個不同層級。
分布式存儲節點:為 BTD 項目提供存儲、帶寬、計算資源的存儲節點;
分布式網絡節點:為 BTD 項目提供 P2P 穿透和域路由功能的網絡節點;
分布式文件系統:BTD 項目分布式文件系統 BDFS。
區塊鏈共識層:基于 ChainSQL 平臺,共識機制基于 RPCA。
應用層:BTD 錢包 APP(IOS、Android、Windows 等)。
4. BTD錢包
BTD 錢包分為用戶層、應用層、服務層、交易層和技術平臺層,提供去中心化賬號管理和結算接口,內置安全交易功能,主體是一個輕量級區塊鏈客戶端(light-weight client)。
基本功能
地址注冊、賬號導入與導出和交易密碼管理等功能。用戶的錢包文件和私鑰由用戶自行保管,將用戶的權利完全歸還用戶,系統更私密安全。用戶私鑰一旦丟失,錢包將永遠不可找回。交易密碼只用于保護用戶日常操作安全性,可通過私鑰進行重置。
資產功能
HDT/BTD 的相互轉賬、兌換等各種功能。
查詢功能
HDT/BTD 交易查詢,讓一切數據盡在掌握。
BTD項目的技術方案
1. 存儲資源池的形成
BTD 項目的存儲資源池來源于所有愿意貢獻其閑置存儲空間的用戶。用戶通過貢獻其閑置存儲空間來參與建設 BTD 項目,并獲得相應的數字資產 HDT+BTD 回報。
加入 BTD 項目后,節點所貢獻的存儲空間將會成為 BTD 項目分布式存儲池的一部分,海量的存儲節點共同構建一個海量、彈性、可持續增長的存儲池。
2. 存儲節點與和存儲鏈建設
每一個運行 BTD 項目存儲服務的節點,既作為存儲服務的提供者,同時也是存儲服務的校驗者和存儲鏈信息的傳遞者。
所有存儲節點共同實時協調工作,保障 BTD 項目的穩定運行。
3. 存儲節點的HDT存儲積分
BTD 項目根據經典的工作量證明共識機制和分布式存儲的技術特點,結合分布式硬件節點的工作特性,提出基于可信賴存儲證明 PoCR(Proof of Capacity Reliability)算法,根據節點所共享的存儲空間大小、在線率、網絡上下行帶寬、實際存儲、檢索、讀取服務質量等對節點的服務進行校驗和激勵,節點獲得其HDT 存儲積分。
每天每個存儲節點所獲得的存儲積分 HDT 的數量 A,按照如下算法進行計算:
A=節點貢獻存儲容量*在線率評分系數*網絡帶寬評分系數*節點硬件評分系數*節點信任度評分系數。
定義1HDT=1G*1 月,代表存儲節點不間斷地提供1個月1個G存儲空間的服務工作量。
一臺貢獻1T 存儲容量,標準化環境(在線率評分系數=1,網絡帶寬評分系數=1, 節點硬件評分系數=1,節點信任度評分系數=1)下的 BTD 存儲節點,每天可產出 HDT 數量為:
A=(1024G*12 月/365 天)*1*1*1*1=33.7 HDT。
節點每天的實際產出數量會因為上述各項系數不同而產生差異。
在線率評分系數:根據存儲節點在線率進行評估。當在線率低于70%時,評分系數為0。在線率70%-90%時,評分系數為50%;在線率90%以上不足100%時,評分系數80%;在線率100%時評分系數100%。
網絡帶寬評分系數:參考上行帶寬5MB/s,下行帶寬20MB/s。如果一條寬帶下面運行了過多存儲節點設備,則存儲節點設備的收益比將降低。
節點硬件評分系數:參考處理器等硬件處理能力指標,以及實際評估節點硬件運行 BTD 客戶端軟件的效率,取值范圍 0.8-1 之間。
節點信任度系數:當節點信任度機制被啟動時,所有節點信任度初始值為5%。如果次日在線率 100%,則信任度增加 5%,連續保持 20 天后節點信任度系數達到 1,節點信任度達到 1 后不再增加。運行期間任何一天在線率低于 90%,節點信任度將重新從 5%開始計起。信任度機制啟動后,節點也可通過質押 BTD 來增加該節點地址的信任度并承諾在失信時接受懲罰扣除其質押的 BTD,被扣除的BTD 將會被銷毀。節點信任度機制將于每天 HDT 數量產出達到一定高度時被激活。
結算周期: 每 24 小時結算一次。
4. 存儲節點的BTD激勵積分
HDT 積分體現的是節點為 BTD 項目運行所貢獻的工作量。而 BTD 則體現的是節點對全網的價值貢獻比例。BTD 基于 PoS 算法進行計算。
每天某個節點獲得的 BTD 激勵積分的數量 B,按照如下算法進行計算:
B=該節點對全網的價值貢獻比例 C*當日全網新增 BTD 總量。
【備注:當日全網新增 BTD 總量根據當天全網新增 HDT 的數量而定,具體方案見白皮書中“BTD 的分配與產出”章節】
每天某個節點對全網的價值貢獻比例 C,按照如下算法進行計算:
C=(該節點當日新增 HDT/全網節點當日新增 HDT)*當日存力占比+(該節點 HDT 余額/全網節點 HDT 總產出)*歷史存力占比+(該節點當日BTD 余額/全網節點 BTD 總額)*未來發展占比;
當日存力占比:取值范圍 0%-100%。
歷史存力占比:取值范圍 0%-30%。
未來發展占比:取值范圍 0%-100%。
BTD 的產出,綜合考慮了節點對全網的當日貢獻(類比現實世界中企業為員工發放的每日工資),歷史貢獻(類比現實世界中企業為老員工發放的長期貢獻獎),以及未來發展貢獻(類比現實世界中企業為核心骨干發放的期權),代表了分布式存儲領域最為合理的貢獻機制。
BTD 項目通過每日 HDT 產出量的變化趨勢、系統 HDT 池余額和消耗比例、BTD 持幣賬戶集中度等運行指標來判斷當前存力是否滿足存儲市場的需要以及市場是否過熱或過冷,綜合指標超過閾值會觸發智能合約,對當日存力占比、歷史存力占比、未來發展占比等參數進行調節,在全網存力不足時鼓勵更多節點加入存儲網絡提升存力,在 BTD 持幣賬戶過度集中時鼓勵新增用戶分散 BTD 持幣比例,從而促進和保障 BTD 項目的持續健康穩定運行。
5. 智能合約和系統HDT池
如果將 BTD 項目看作一個虛擬經濟體,則隨著存儲網絡規模的持續運行以及執行存儲任務, 其產出的 HDT 積分總和代表了虛擬經濟體的總經濟規模。
另一方面,作為整個 BTD 項目價值承載體系的 BTD 而言,其產出的 BTD 代表了虛擬經濟體的總交換價值。
因此可以認為在任意時刻,當前已流通 BTD 總價值 = 所有已流通的 HDT總價值+ BTD 流通性溢價。
如果 BTD 流通性溢價》0,在任意時刻,可以認為:
1 BTD 》= ( 系統當前流通 HDT 總量/系統當前流通 BTD 總量) * 1 HDT 。
因此,BTD 項目通過鏈上智能合約賦予用戶使用 BTD 兌換 HDT 的權利,但兌換用戶只能將所兌換的 HDT 用于驅動存儲服務。
智能合約:1 BTD= ( 系統當前流通 HDT 總量/系統當前流通 BTD 總量) * 1HDT 。
智能合約通過合約形式進一步確定了 BTD 的內在價值和行權權利。
BTD 持有者可自行評估是否使用,以及何時使用該項權利。
為保障該智能合約的執行, BTD 項目設立系統 HDT 池。
每日系統新增 HDT 總量=全網節點新增 HDT+系統池新增 HDT。
系統池新增 HDT = 全網節點新增 HDT* 系統池占比。系統池占比取值 5%-20%。
智能合約的執行:用戶地址向智能合約地址打入 BTD,智能合約按照對應比例向用戶地址打入 HDT。
智能合約被執行后,相當于對應的 BTD 已完成了行權,這一部分 BTD 將永久鎖定在系統池智能合約地址被銷毀,不再參與流通。
除用于保障 BTD 智能合約執行,HDT 池還用于支持基于 BTD 存儲鏈的dApp 業務。
在計算節點 HDT 對全網的貢獻比例時,系統 HDT 池余額不參與計算。
當系統 HDT 池出現不足時,智能合約會延期執行,并會調整 BTD 產出算法中的當日存力占比、歷史存力占比、未來發展占比等參數,并在滿足智能合約執行條件后繼續執行智能合約。
6. BTD的價值
由于 HDT 總量會隨時間和網絡規模的快速增加而持續增長,其增長速度比BTD 增長速度要快;而 BTD 總量有限且會因節點信用度質押違約銷毀、智能合約執行銷毀、回購銷毀等各種場景使得 BTD 因銷毀而數量減少;根據 BTD 的兌換智能合約,這意味著單位 BTD 所能對應的 HDT 數量會持續增加。
因此,當 BTD 項目存儲網絡持續穩定運行和發展時,單位 BTD 所能對應的存儲服務能力會持續增多,BTD 具有天然的內在價值增長屬性。
7. BTD項目的具體實現
BTD 項目的每個用戶賬戶實際上是一個 BTD 錢包地址。每個用戶保存自己的私鑰,并將公鑰對應的算法保存至 BTD 項目。
BTD 項目的用戶使用 HDT 對存儲服務進行驅動。一方面,BTD 項目用戶對文件的存儲、讀取、和分享等行為驅動整個 BTD 項目實現相關功能;另一方面,用戶在存儲和讀取文件時需支付 HDT,從而來激勵 BTD 項目上的存儲服務節點和輔助驗證節點的有序運行。
BTD 項目的具體技術實現,由文件存儲、文件檢索和讀取等環節構成。
8. 文件存儲
BTD 項目用戶進行文件存儲時,需要使用 HDT 對 BTD 項目進行驅動。
BTD 項目文件系統使用 BDFS 分布式文件系統作為底層文件系統。
9. 文件檢索和讀取
用戶對已存儲的文件進行檢索和內容讀取時,根據文件 HASH 標識在 BTD存儲鏈中進行廣播檢索,有該 HASH 資源的存儲節點收到廣播后通知用戶,用戶驗證確認后,根據存儲節點的的網絡情況,選擇網絡信道最優的多個節點,同步讀取該文件的不同數據分片實現并行下載,取得足夠的文件片數后解密從而恢復文件。
10. 小結
BTD 項目是由分布于全球的存儲節點共同組成的分布式存儲網絡,每個存儲節點都對外提供一定的存儲容量資源和網絡帶寬保證從而形成海量和彈性的存儲資源池,共同對外提供私密安全的共享存儲服務。
除了用戶自身,包括存儲節點以及比特米基金會技術團隊在內的任何其他方都無法獲得文件內容,保證了 BTD 項目具有非常高等級的私密性;
而全球海量節點的冗余備份,也避免了單節點失效對文件存儲服務的影響,從而保證了 BTD 項目具備天然的異地容災備份能力和數據安全保障能力。
同時 BTD 項目不依賴任何中心服務器,這也意味著任何惡意的單節點攻擊都將失效。
評論
查看更多