国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于區(qū)塊鏈的食品供應鏈數據雙鏈存儲優(yōu)化模型

2020-12-07 08:41:54高圣喬劉新亮高彥平
食品與機械 2020年11期
關鍵詞:主鏈哈希共識

高圣喬 劉新亮,3 高彥平

(1. 北京工商大學電商與物流學院,北京 100048;2. 農產品質量安全追溯技術及應用國家工程實驗室,北京 100048;3. 中國農業(yè)大學信息與電氣工程學院,北京 100083)

食品供應鏈通常由監(jiān)管機構監(jiān)管,上下游企業(yè)串聯(lián)而成,鏈上企業(yè)的數據都由企業(yè)自己維護,容易造成供應鏈上的信息孤島[1-2]。由于商業(yè)競爭,上下游企業(yè)篡改、偽造信息十分常見,導致不同企業(yè)與消費者之間的信息不對稱[3]。盡管中國很早就著手構建追溯平臺,通過加大監(jiān)管力度,讓食品供應鏈各個環(huán)節(jié)的數據透明,從而解決不對稱問題[4],但企業(yè)中心化的管理方式存在著極大的信息自主權,無法保證信息的完整性和準確性,同時還存在供應鏈不同環(huán)節(jié)數據結構難以統(tǒng)一,難以整合的問題,因此,信息不對稱問題一直未得到有效解決[5]。

隨著比特幣的持續(xù)升溫,區(qū)塊鏈因其去中心化和不可篡改的特性進入人們視野[6],區(qū)塊鏈的特性不僅可以有效解決當前供應鏈數據中心化存儲帶來的諸多問題,同時也為跨機構溯源提供技術支持[7-8]。但是,區(qū)塊鏈技術帶來諸多優(yōu)勢的同時也存在一些問題,最明顯的就是存儲膨脹:截至2020年1月,比特幣區(qū)塊鏈賬本總容量約為220 GB,這一數字還在持續(xù)高速增加。比特幣全節(jié)點約有10 000個,這些節(jié)點提供的總容量高達2 PB,卻只存儲了220 GB的數據。高昂的空間需求也造成了入網的巨大門檻,隨著數據的持續(xù)膨脹,能負擔得起的節(jié)點越來越少[9-10]。此外,由于共識算法的制約,一些交易確認時間延長,導致性能也存在瓶頸[11]。為解決區(qū)塊鏈自身存儲膨脹以及性能低的問題,文章擬提出基于區(qū)塊鏈的食品供應鏈數據雙鏈存儲優(yōu)化模型。利用區(qū)塊鏈的不可篡改和去中心化的特點,來解決食品供應鏈存在的信息篡改和不對稱的頑疾;采取主鏈—摘要鏈模式緩解存儲膨脹;通過改進的委托權益證明(Delegated Proof of Stake,DPoS)+拜占庭容錯(Byzantine Fault Tolerance,BFT)共識機制,配合候選節(jié)點信譽積分機制,提高交易吞吐量和性能,同時增強系統(tǒng)的穩(wěn)定性和安全性。

1 區(qū)塊鏈

區(qū)塊鏈的本質是去中心化的分布式賬本[12],運用非對稱加密[13]、哈希函數、時間戳[14]、點對點網絡、共識機制等技術。區(qū)塊是存儲交易信息的數據結構,將其蓋上時間戳,首尾相連,形成有時間順序的鏈式結構就是區(qū)塊鏈。共識機制維護分布式一致性,使區(qū)塊數據不可篡改;哈希和非對稱加密等技術保證交易的安全可驗證。

圖1是比特幣區(qū)塊鏈的鏈式結構:其本質是一個單向鏈表,包含一個指向前驅區(qū)塊的指針;區(qū)塊頭中包含時間戳、版本號等信息,其中默克爾根連接了一棵記錄著所有交易的完全二叉樹,逐層哈希得到默克爾根[15]。

1.1 區(qū)塊鏈的技術特點

(1) 去中心化:區(qū)塊鏈網絡中不存在中心化節(jié)點,所有節(jié)點是平等的。這是因為其底層采用了P2P網絡(圖2),節(jié)點間可以任意通信、交易,無需第三方審核[16]。

(2) 不可篡改:區(qū)塊按時間順序生成,通過前驅區(qū)塊的頭哈希連接。一旦交易被篡改,默克爾根和頭哈希都會改變,與后繼區(qū)塊的記錄不符,從而該區(qū)塊后的所有區(qū)塊都要重新共識,這需要全網大部分算力來重新完成工作量證明,因此數據幾乎無法被篡改。

圖1 比特幣中區(qū)塊鏈的鏈式結構

(3) 性能低:網絡中一筆交易和每個新區(qū)塊都要通過全網節(jié)點的驗證,為防止分叉導致的欺詐行為,一筆交易只有上鏈并在其上方累積若干區(qū)塊后,才被認定完成。

(4) 存儲膨脹:用戶的不斷增加導致交易量日趨龐大,因此區(qū)塊數據量快速膨脹。由于不存在第三方可信機構,信任構建于完整的歷史交易,所以區(qū)塊鏈系統(tǒng)普遍面臨存儲瓶頸,準入門檻高的問題。

1.2 共識機制

目前有幾大主流的共識算法:比特幣的工作量證明機制(Proof of Work,PoW)[17];以太坊的權益證明機制(Proof of Stake,PoS)[18];委托權益證明DPoS[19]以及實用拜占庭容錯機制(Practical Byzantine Fault Tolerance,PBFT)[20]。

DPoS通過社區(qū)投票選舉witness(見證人)節(jié)點記賬出塊。通過減小記賬節(jié)點數量,縮短區(qū)塊間隔,增加吞吐量。但其存在投票惰性、惡意賄賂等問題,且過分依賴社區(qū)自治,有中心化的風險。

PBFT主要用于聯(lián)盟鏈,由于主節(jié)點多次廣播,因此需要盡可能少的節(jié)點參與來保證效率。

2 食品供應鏈數據雙鏈存儲優(yōu)化模型

鑒于食品供應鏈現(xiàn)存的問題以及區(qū)塊鏈應用的瓶頸,提出基于區(qū)塊鏈的食品供應鏈數據雙鏈存儲優(yōu)化模型,模型的整體架構見圖3。參與方包括食品供應鏈的主要成員:消費者、核心企業(yè)和監(jiān)管機構;產生的數據分為鏈上和鏈下兩部分存儲;P2P網絡中依據參與方的功能進行節(jié)點類型劃分;最底層是主鏈—摘要鏈的雙鏈存儲模式。

按區(qū)塊鏈的技術架構(如圖4),將模型拆分成數據層、網絡層、共識層和應用層單獨設計。

2.1 數據層

數據層用于存儲食品供應鏈產生的數據。區(qū)塊鏈依賴分布式系統(tǒng),單位存儲成本極高,模型根據數據的敏感程度和重要性,將其分為鏈上和鏈下存儲[21]:鏈上只存放敏感且重要的小型數據,包括產品信息、交易參與方信息、證書和憑證的哈希值等。哈希值是通過哈希函數對目標內容生成的固定長度以十六進制表示,具有輸入敏感的特性,可驗證數據一致性[22]。鏈下即為企業(yè)和監(jiān)管機構各自的數據庫,主要保存企業(yè)信息、產品信息、檢疫數據、證書及合同完整信息、轉賬裝載憑證等交易源數據、物流追溯信息等非敏感內容。這樣可以很好地利用區(qū)塊空間,杠桿化區(qū)塊鏈的性能[23]。

2.1.1 食品供應鏈交易信息結構 區(qū)塊鏈上鏈的數據不可篡改,而要保證源頭可信則需其他技術,例如通過射頻識別(radio frequency identification,RFID)、物聯(lián)網等對加工生產進行數據實時采集,確保源頭可信[24]。

圖4 區(qū)塊鏈食品供應鏈體系分層結構圖

為了更高效地存儲供應鏈數據,設計了如表1的全新交易信息結構,對于某類食品,其在供應鏈上流通所生成的交易信息包括但不限于:食品編號Id,食品名稱Name,操作信息(Operating Information,OI),時間戳TimeStamp,交易參與方P,數字簽名Signp,源數據地址Url(s),源數據哈希值Hash(s),前一步驟地址Url(ls),交易信息哈希值Hash(t)。

食品在供應鏈經過每一步驟都需負責人簽名。若超級節(jié)點驗證發(fā)現(xiàn)問題,根據簽名及時定責,同時阻斷產品流通。源數據即為鏈下數據,提供地址和哈希值,確保未篡改;前一步交易信息地址用來回溯交易過程;提供整條交易哈希值供驗證。每筆交易審核通過且上鏈即交易達成。

表1 交易信息數據結構

2.1.2 主鏈—摘要鏈區(qū)塊結構 主鏈記錄全網的所有交易信息,為緩解存儲膨脹,在主鏈的基礎上生成摘要鏈,記錄主鏈部分信息以及系統(tǒng)運行產生的關鍵數據。為適配食品供應鏈,配合信譽積分機制,模型對區(qū)塊結構進行改進。如圖5所示,主鏈區(qū)塊頭新增了區(qū)塊生產者簽名。

如圖6所示,摘要鏈區(qū)塊頭除主鏈區(qū)塊頭內容外,還包括對應主鏈區(qū)塊高度、數量。區(qū)塊體包含:主鏈區(qū)塊高度、頭哈希、默克爾根;該輪超級節(jié)點信譽積分變動情況。

2.2 網絡層

網絡層設計了節(jié)點身份認證規(guī)則、不同角色以及競爭記賬權的規(guī)則。

2.2.1 網絡搭建與節(jié)點類型 食品供應鏈包含監(jiān)管機構、核心企業(yè)及消費者等參與者。首先由監(jiān)管機構組建P2P許可區(qū)塊鏈網絡,其他參與者需申請入網。為避免女巫攻擊,申請時需提供相應的營業(yè)許可、檢疫記錄、法人信息等,通過監(jiān)管機構CA認證(Certificate Authority)。通過后會授予數字證書和公私鑰,允許參與交易[25]。

圖5 主鏈區(qū)塊結構圖

圖6 摘要鏈區(qū)塊結構圖

節(jié)點按功能分為3類:超級節(jié)點、候選節(jié)點和普通節(jié)點。

超級節(jié)點是區(qū)塊鏈記賬節(jié)點,負責驗證交易、生成賬本并維護一致性;超級節(jié)點分常任和輪換兩種:組建網絡的監(jiān)管機構為常任超級節(jié)點;其他參與者競爭輪換超級節(jié)點。超級節(jié)點數目固定。

候選節(jié)點從全網節(jié)點選出,作為超級節(jié)點的候選域;候選節(jié)點意味著有意愿參與全網共識過程,履行維護網絡穩(wěn)定的義務,并保存主鏈賬本數據;候選節(jié)點根據信譽積分機制競爭超級節(jié)點。詳見2.2.3。

普通節(jié)點僅參與交易,不參與共識過程。無需保存主鏈數據,只需記錄摘要鏈。供應鏈成員在認證入網后,可以根據自身需求,選擇成為候選節(jié)點或普通節(jié)點。

2.2.2 交易廣播及驗證 參與方對交易簽名并轉發(fā)給臨近的超級節(jié)點,超級節(jié)點先利用公鑰驗證數字簽名,然后利用哈希值驗證交易內容是否被篡改。驗證無誤后加入本地交易池,并轉發(fā)給其他超級節(jié)點。

以s(source)代表源數據,SN(SuperNode)代表超級節(jié)點。偽代碼:

算法1 超級節(jié)點驗證交易

Input:交易數據t(transaction)

Output:void

1) boolean flag1=SN.check(Signp);//驗證交易簽名

2) s=SN.getSource(Url(s));//通過地址獲取源數據

3) boolean flag2=Hs==Hash(s)?true:false;//驗證源數據準確性

4) boolean flag3=Ht==Hash(t)?true:false;//驗證交易數據準確性

5) If(flag1 && flag2 && flag3)

6) SN.SendtoAll(t);//發(fā)送給其他超級節(jié)點

7) SN.addToLocal(t);//加入本地交易池

8) else:

9) SN.SendtoSupVision();//發(fā)送給監(jiān)管部門確權定責

2.2.3 信譽積分機制 節(jié)點入網后,若選擇候選節(jié)點,則會得到初始積分。經過不同的行為,分數會產生變化,詳見表1。根據預設的超級節(jié)點數量,系統(tǒng)會按照積分降序從候選節(jié)點中補齊輪換超級節(jié)點。若候選節(jié)點積分相同,則參考達成的有效交易數量。每輪雙鏈共識完成后,根據積分實時替換超級節(jié)點:積分不足者成為候選節(jié)點,積分高者頂替其位置。

2.3 共識層

2.3.1 改進的DPoS+BFT共識機制 傳統(tǒng)的DPoS共識機制存在投票惰性,惡意賄賂,過度依賴社區(qū)自治等問題,節(jié)點投票率僅為40%[26]。因懲罰機制不完善,作惡成本低,惡意節(jié)點甚至采取賄賂手段爭取記賬權,損害公平性的同時,對系統(tǒng)的安全穩(wěn)定造成巨大威脅。此外,DPoS中區(qū)塊不可逆的條件是該區(qū)塊上方累積2/3*見證節(jié)點個區(qū)塊,導致交易確認時間非必要延長,造成性能瓶頸;共識過程取消了全網驗證,系統(tǒng)穩(wěn)定性遭到弱化,更易受攻擊或出現(xiàn)分叉。

該模型采用候選節(jié)點信譽積分機制,舍棄DPoS的投票機制,規(guī)避了惡意節(jié)點的行為以及社區(qū)投票惰性。根據候選節(jié)點在系統(tǒng)運行期間的累積信譽積分,選出對系統(tǒng)貢獻最大的n個超級節(jié)點,參與記賬出塊。信譽積分由節(jié)點平時交易等行為積累,因此超級節(jié)點都是系統(tǒng)的

表2 候選節(jié)點積分細則

最大權益節(jié)點,維護系統(tǒng)穩(wěn)定的同時保護自身利益。BFT算法根據當前視圖編號v計算出主節(jié)點,將客戶端請求發(fā)給不同的副本節(jié)點進行驗證,判斷副本節(jié)點返回消息數量,當即決定請求是否通過。這一點彌補了DPoS的缺陷,區(qū)塊驗證更充分,省去了區(qū)塊上鏈到不可逆的過程,從而縮短交易確認時間,性能得到提高。因此該模型形成改進的DPoS+BFT共識機制,雙鏈共識流程圖如圖7。

2.3.2 主鏈及摘要鏈生成 經上述步驟即生成主鏈區(qū)塊,由所有超級節(jié)點參與共識而成。

以bi表示第i個副本節(jié)點,m為區(qū)塊內容,P表示主節(jié)點,v表示視圖編號。偽代碼表示:

算法2 生成主鏈區(qū)塊

Input:N(本輪超級節(jié)點集合);t(交易數據集合)

Output:主鏈區(qū)塊

1) While(!N.isEmpty()) do//存在超級節(jié)點未提議區(qū)塊

2)v=0;//進入初始視圖

3)P=N.getRandom() //隨機選取主節(jié)點

4)m=p.CreateBlock(T)//從本地交易池打包區(qū)塊

5) p.Sign(m)//生產者簽名

6) Dm=p.Hash(m);//計算區(qū)塊摘要

7) req=p.generate(view,Dm,m);//打包消息

8) p.SendtoAll(req);//發(fā)送request消息

9) for biin N: //Backup節(jié)點驗證:

10) If(check(sign)&&(Dm==Hash(m)))

11) return resp;//返回response消息

圖7 雙鏈共識流程圖

12) else:

13) return change;//返回更換視圖消息

14) forbiin N: //超級節(jié)點判斷response:

15) If(!(check(resp)&&(resp>2/3)) || change>2/3) //驗證內容和數量

16) addBlock(m);//上鏈,等待下次共識

17) else:

18) view++;//更換視圖

19) PointChange();//積分變更

20) end while;

摘要鏈生成周期和主鏈一致,主鏈經過一輪共識生成不大于超級節(jié)點個數n個區(qū)塊,摘要鏈生成一個區(qū)塊。摘要鏈同樣采用改進的DPoS+BFT共識機制,據式(1)選出主節(jié)點,打包摘要區(qū)塊,重復一輪共識過程,若成功則本輪摘要鏈出塊結束;否則,發(fā)起更換視圖請求,重新選取主節(jié)點打包區(qū)塊。

DigestP=(v+Tstamp)modn,

(1)

式中:

DigestP——下輪超級節(jié)點編號;

v——視圖編號;

Tstamp——時間戳,ms;

n——主鏈超級節(jié)點編號。

2.4 應用層

應用層主要是監(jiān)管機構、食品企業(yè)以及消費者的前端入口,用戶可以訪問企業(yè)和監(jiān)管部門的網站查詢數據。還包含基于區(qū)塊鏈的供應鏈追溯Web應用,提供用戶交互功能,包括數據查詢、追溯等業(yè)務。消費者的商品到手后,可憑借其產品Id進行溯源信息查詢,過程源數據對消費者可見。

雖然區(qū)塊鏈數據是公開的,但是針對企業(yè)之間惡意競爭問題,為數據設置訪問權限:所有交易信息均通過公鑰加密,需私鑰解鎖查看;在應用層的訪問端口,未經授權的用戶無法查詢交易商品的源數據、企業(yè)信息等敏感數據。

3 仿真試驗與分析

3.1 試驗環(huán)境與參數設置

利用以太坊部署食品供應鏈雙鏈模型,模擬110個節(jié)點,包括監(jiān)管節(jié)點10個,核心企業(yè)95個,消費者組織5個,在本地局域網實現(xiàn)多機互聯(lián)。為便于試驗數據的收集,開始前在企業(yè)節(jié)點部署源數據,模擬生產、加工、屠宰、運輸等不同階段的數據,通過不同的url記錄訪問地址。設網絡內每5 s隨機發(fā)生交易,單個節(jié)點每筆交易量為1。設超級節(jié)點個數為23個。試驗相關環(huán)境和參數如表3。

試驗過程中會生成兩條鏈,表4截取了摘要鏈的部分區(qū)塊數據,反映雙鏈結構以及兩條鏈之間的關聯(lián)。

3.2 模型性能分析

3.2.1 存儲性能分析 試驗選取了兩個指標來衡量存儲性能,分別是存儲增長率(Storage growth rate,SGR),以及存儲利用率(Storage utilization rate,SUR)。存儲增長率指的是單位時間內區(qū)塊鏈數據量的增長,如式(2);存儲利用率指的是單位存儲空間中,包含的有效交易個數,如式(3)。

表3 試驗環(huán)境和參數表

表4 摘要鏈區(qū)塊部分數據表

(2)

式中:

RSG——存儲增長率,MB/s;

Sizet1——t1時間區(qū)塊鏈大小,MB;

Sizet2——t2時間區(qū)塊鏈大小,MB;

Δt——時間增量,s。

(3)

式中:

RSU——存儲利用率,筆/MB;

Δtransaction——交易增量,筆;

Δsize——區(qū)塊鏈大小增量,MB。

選取系統(tǒng)運行20,40,60,80,100,120 min的時間點采集數據,統(tǒng)計主鏈和摘要鏈的大小,得到的對比數據如表5。首先,共識機制決定了兩條鏈存儲增速比較穩(wěn)定,但摘要鏈占用空間同比遠低于主鏈,僅為主鏈的1/20左右。且通過計算,摘要鏈的存儲增長率明顯低于主鏈,增速緩慢。這得益于摘要鏈的生成機制,幾乎沒有冗余。說明普通節(jié)點的存儲壓力較低,證明了模型入網門檻低的優(yōu)勢。

為了驗證模型的SUR,選取文獻[25]中的水產品追溯區(qū)塊鏈作對比試驗,試驗環(huán)境和條件均設為相同,包括節(jié)點數、交易時間間隔和單次交易量等參數。交易達到不同數量時,分別記錄兩個模型區(qū)塊鏈大小,并計算SUR。統(tǒng)計的交易次數為100 000的整數次,共統(tǒng)計6次,對比結果如圖8。通過式(3)計算出模型主鏈SUR為877.96 筆/MB,水產品追溯區(qū)塊鏈SUR為790.51 筆/MB;主鏈要好于水產品追溯鏈,說明相同大小的區(qū)塊數據中,主鏈包含更多有效交易。這得益于全新的交易信息結構以及鏈上鏈下存儲模式,不存在冗余和較大的源數據。

3.2.2 系統(tǒng)性能分析 試驗選取兩種指標來衡量模型的性能,一是吞吐量(Transaction Per Secod,TPS),指模型在單位時間內能夠處理請求的數量,是衡量模型解決短時間高并發(fā)問題能力的重要指標,如式(4)。二是平均交易確認時長,即一筆交易從廣播到上鏈不可逆所需時間。

(4)

式中:

表5 主鏈摘要鏈占用空間對比

圖8 區(qū)塊鏈存儲利用率對比圖

TPS——每秒交易數量,筆/s;

Δtransaction——交易增量,筆;

Δt——時間增量,s。

TPS方面,模型的改進DPoS+BFT共識機制,配合信譽積分機制,通過試驗獲取的交易數量與運行時間,計算出TPS為185.4 筆/s。為證明模型效率方面的優(yōu)勢,選取相對成熟的共識機制對比,結果如圖9。PoW中設置挖礦隨機數解為以5個0開頭的8位十六進制數,由于全網參與廣播和工作量證明,吞吐量僅為6~7 筆/s;PoS難度值與PoW相同,由于幣齡的加權,所需工作量更小。由于出塊間隔和交易確認條件未發(fā)生變化,其TPS表現(xiàn)與PoW接近,前兩者都無法支持短時間高并發(fā)交易。后兩者的表現(xiàn)明顯好于前兩者,PBFT由于每次切換視圖前對請求作出判斷,確認時間短,提升了吞吐量;模型的共識機制在請求確認的處理方面加以改進,能一直保持較低的確認時限,維持較高的吞吐量。

圖10對比了DPoS、PBFT和試驗模型共識機制中,不同節(jié)點數量下的交易確認時長。分別模擬40,60,80,100,120個節(jié)點組網的情況,測試出一筆交易從產生到上鏈的平均時間。由圖10可知,DPoS中隨著節(jié)點的增加,見證節(jié)點隨之增加,而達到不可逆需要大于2/3的見證節(jié)點出塊,因此交易確認時間也在增加。PBFT中,當節(jié)點個數保持在100以內時,表現(xiàn)良好,而一旦超過100,消息傳播會受制于網絡帶寬,無法達到最佳速度。相同網絡環(huán)境下,模型的超級節(jié)點個數會隨全網用戶數量的增加而改變,不過由于改進了區(qū)塊不可逆的確認條件,能夠使交易的確認保持在一個穩(wěn)定的時間,性能隨節(jié)點增加一直保持在較高水準。

圖9 4種共識機制TPS對比圖

圖10 3種共識機制交易確認時長對比

4 結論

文章提出了食品供應鏈雙鏈存儲優(yōu)化模型,在解決供應鏈固有頑疾的同時,還對區(qū)塊鏈落地項目中普遍存在的低吞吐量、低性能、存儲膨脹等問題加以優(yōu)化解決。對于食品供應鏈企業(yè),為其提供極低的門檻,就能夠參與企業(yè)間的點對點交易,且能滿足企業(yè)對于高頻交易、快速確認的需求,同時為企業(yè)數據安全和隱私提供保護;對于消費者而言,模型滿足其購買食品的每一項數據安全可追溯,保證數據完整性、真實性。區(qū)塊鏈技術仍在高速發(fā)展中,下一步研究方向主要是線上交易、網絡傳輸的消息丟失、延遲、重復或亂序問題,以及智能合約技術的引入研究。

猜你喜歡
主鏈哈希共識
“鹵代烴”知識概要
中學化學(2024年1期)2024-05-26 13:20:27
共識 共進 共情 共學:讓“溝通之花”綻放
論思想共識凝聚的文化向度
商量出共識
人大建設(2019年12期)2019-11-18 12:11:06
WDC主鏈正式啟動創(chuàng)世區(qū)塊已誕生
有機化合物命名易錯題直擊
“烷烴”的五字命名方針
中學化學(2016年12期)2017-02-05 17:24:23
基于OpenCV與均值哈希算法的人臉相似識別系統(tǒng)
基于維度分解的哈希多維快速流分類算法
計算機工程(2015年8期)2015-07-03 12:20:04
別讓“PX共識”在爆炸中瓦解
七台河市| 富平县| 门头沟区| 安乡县| 高陵县| 石首市| 崇义县| 克东县| 新野县| 汝南县| 诸暨市| 仁怀市| 永春县| 碌曲县| 迭部县| 克拉玛依市| 游戏| 井陉县| 克什克腾旗| 泰和县| 台安县| 灌南县| 教育| 汶川县| 光山县| 新巴尔虎左旗| 淮滨县| 太康县| 河源市| 湖北省| 长治县| 江北区| 广东省| 武定县| 漳州市| 定日县| 磐石市| 元氏县| 晋州市| 收藏| 靖边县|