{"id":2344,"date":"2017-11-01T01:33:00","date_gmt":"2017-11-01T01:33:00","guid":{"rendered":"https:\/\/www.inforsec.org\/wp\/?p=2344"},"modified":"2017-11-01T01:33:00","modified_gmt":"2017-11-01T01:33:00","slug":"%e4%bd%bf%e7%94%a8sgx%e6%9e%84%e5%bb%ba%e5%81%a5%e5%a3%ae%e7%9a%84%e5%90%8c%e6%ad%a5p2p%e5%9f%ba%e7%a1%80%e5%8d%8f%e8%ae%ae","status":"publish","type":"post","link":"http:\/\/202.112.238.40\/wp\/?p=2344","title":{"rendered":"\u4f7f\u7528SGX\u6784\u5efa\u5065\u58ee\u7684\u540c\u6b65P2P\u57fa\u7840\u534f\u8bae"},"content":{"rendered":"<p style=\"text-align: center;\"><strong>Robust Synchronous P2P Primitives Using SGX Enclaves<\/strong><\/p>\n<p style=\"text-align: center;\"><strong>\u4f7f\u7528<\/strong><strong>SGX<\/strong><strong>\u6784\u5efa\u5065\u58ee\u7684\u540c\u6b65<\/strong><strong>P2P<\/strong><strong>\u57fa\u7840\u534f\u8bae<\/strong><\/p>\n<p>\u4f5c\u8005\uff1aYaoqi Jia<\/p>\n<p>\u5982\u4eca\uff0c\u5927\u91cf\u7684P2P\u7cfb\u7edf\u4f8b\u5982BitTorrent\uff0cStorj\u548cBitCoin \u8fdb\u5165\u4e86\u5927\u4f17\u89c6\u91ce\u3002\u7531\u4e8e\u4ed6\u4eec\u7684\u6613\u7528\u6027\uff0c\u7528\u6237\u53ef\u4ee5\u8f7b\u677e\u5730\u4f5c\u4e3a\u8282\u70b9\u52a0\u5165\u8fd9\u4e9bP2P\u7cfb\u7edf\u4e2d\u3002\u4e0e\u6b64\u540c\u65f6\uff0c\u8fd9\u6837\u7684\u5f00\u653e\u6027\u4e5f\u4f7f\u5f97\u6076\u610f\uff08\u62dc\u5360\u5ead\uff09\u8282\u70b9\u53ef\u4ee5\u52a0\u5165\u5e76\u8fdb\u884c\u6076\u610f\u64cd\u4f5c\u3002\u8fd9\u4e9b\u6076\u610f\u8282\u70b9\u7684\u51fa\u73b0\u4e00\u76f4\u4ee5\u6765\u90fd\u662fP2P\u7cfb\u7edf\u4e2d\u7684\u5b89\u5168\u9690\u60a3\u3002\u4f8b\u5982\uff0c\u6700\u8fd1\u7814\u7a76\u4eba\u5458\u5c55\u793a\u4e86\u6076\u610f\u8282\u70b9\u53ef\u4ee5\u901a\u8fc7\u63a7\u5236\u7f51\u7edc\u5bf9\u6b63\u5e38\u8282\u70b9\u7684\u7f51\u7edc\u8fde\u63a5\u8fdb\u884c\u5206\u5272\uff0c\u4ece\u800c\u5b9e\u73b0\u91cd\u590d\u82b1\u8d39\u548c\u81ea\u79c1\u6316\u77ff\u653b\u51fb\u3002\u540c\u65f6\uff0c\u62dc\u5360\u5ead\u8282\u70b9\u4e5f\u53ef\u4ee5\u5728\u533f\u540dP2P\u7f51\u7edc\uff08\u5982\u6d0b\u8471\u7f51\u7edcTor\uff09\u4e2d\u901a\u8fc7\u7792\u62a5\u9ad8\u5e26\u5bbd\u548c\u9ad8\u8fd0\u884c\u65f6\u957f\u6765\u63a7\u5236\u6b63\u5e38\u901a\u8baf\u56de\u8def\u7684\u8fdb\u5165\u548c\u9000\u51fa\u8282\u70b9\uff0c\u8fdb\u4e00\u6b65\u6709\u9009\u62e9\u6027\u5730\u62d2\u7edd\u670d\u52a1\u4ece\u800c\u524a\u5f31\u533f\u540d\u7f51\u7edc\u7684\u533f\u540d\u6027\u3002\u53e6\u5916\uff0c\u62dc\u5360\u5ead\u8282\u70b9\u8fd8\u53ef\u4ee5\u9009\u62e9\u6027\u5730\u4f2a\u9020\uff0c\u8f6c\u79fb\uff0c\u5ef6\u8fdf\u6216\u8005\u7ec8\u6b62\u4fe1\u606f\uff0c\u4ece\u800c\u7834\u574f\u534f\u8bae\u7684\u6267\u884c\u3002\u56e0\u6b64\uff0c\u8bbe\u8ba1\u5065\u58ee\u7684P2P\u534f\u8bae\u6765\u62b5\u5fa1\u8fd9\u4e9b\u653b\u51fb\u662f\u4e00\u4e2a\u5f88\u91cd\u8981\u7684\u7814\u7a76\u8bfe\u9898\u3002<\/p>\n<p><!--more--><\/p>\n<p>\u5728\u62dc\u5360\u5ead\u7684\u8fd9\u4e2a\u6a21\u578b\u4e2d\uff0c\u5df2\u7ecf\u6709\u5927\u91cf\u7684\u79d1\u7814\u5de5\u4f5c\u8bbe\u8ba1\u51fa\u4e0d\u540c\u7684P2P\u57fa\u7840\u534f\u8bae\uff0c\u4f8b\u5982\u53ef\u4fe1\u5e7f\u64ad\u548c\u4e00\u81f4\u6027\u534f\u8bae\u3002\u5927\u91cf\u7684\u7814\u7a76\u8868\u660e\u5728\u8d85\u8fc7\u4e09\u5206\u4e4b\u4e00\u8282\u70b9\u662f\u62dc\u5360\u5ead\u8282\u70b9\u7684\u73af\u5883\u4e0b\uff0c\u53ef\u4fe1\u5e7f\u64ad\u548c\u4e00\u81f4\u6027\u662f\u4e0d\u53ef\u80fd\u8fbe\u6210\u7684\u3002\u5728\u5bfb\u6c42\u66f4\u9ad8\u6548\u7387\u548c\u5bb9\u5fcd\u66f4\u591a\u62dc\u5360\u5ead\u8282\u70b9\u7684\u534f\u8bae\u7684\u8fc7\u7a0b\u4e2d\uff0c\u7814\u7a76\u8005\u521b\u5efa\u51fa\u4e00\u4e9b\u65b0\u7684\u9650\u5236\u62dc\u5360\u5ead\u8282\u70b9\u80fd\u529b\u7684 \u6a21\u578b\u3002\u4f5c\u4e3a\u5176\u4e2d\u5e38\u89c1\u7684\u6a21\u578b\uff0c \u5e38\u89c4\u9057\u6f0f\u6a21\u578b(general-omission model)\u9650\u5b9a\u4e86\u6076\u610f\u8282\u70b9\u53ea\u80fd\u9009\u62e9\u9057\u6f0f\u53d1\u9001\u548c\u63a5\u53d7\u7684\u4fe1\u606f\uff0c\u4e0d\u80fd\u968f\u610f\u5730\u7be1\u6539\u4fe1\u606f\u3002\u5728\u8fd9\u4e2a\u5f31\u5316\u7684\u6076\u610f\u6a21\u578b\u4e2d\uff0c\u5df2\u6709\u7684\u53ef\u4fe1\u5e7f\u64ad\u53ef\u4ee5\u5bb9\u5fcd\u4e00\u534a\u7684\u6076\u610f\u8282\u70b9\uff0c\u540c\u65f6\u901a\u4fe1\u7684\u6570\u636e\u91cf\u5927\u5927\u51cf\u5c11\u3002\u7136\u800c\uff0c\u8fd9\u4e9b\u5f31\u5316\u7684\u6a21\u578b\u901a\u5e38\u9700\u8981\u5f88\u5f3a\u7684\u8bbe\u5b9a\uff0c\u5e76\u4e14\u8fd9\u4e9b\u8bbe\u5b9a\u5728\u73b0\u5b9e\u4e2d\u5f88\u591a\u65f6\u5019\u662f\u4e0d\u5207\u5b9e\u9645\u540c\u65f6\u6ca1\u6709\u5177\u4f53\u7684\u5b9e\u73b0\u3002<\/p>\n<p>\u5728\u6211\u4eec\u7684\u8fd9\u4e2a\u5de5\u4f5c\u4e2d\uff0c\u6211\u4eec\u7814\u7a76\u4e86\u4f7f\u7528\u57fa\u4e8e\u786c\u4ef6\u4fe1\u4efb\u6839\u6e90(hardware-root-of-trust)\u7684\u673a\u5236\u4f7f\u5f97\u4e4b\u524d\u5f31\u5316\u7684\u6a21\u578b\u5728\u73b0\u5b9e\u7cfb\u7edf\u4e2d\u53d8\u5f97\u53ef\u5b9e\u73b0\u3002\u6211\u4eec\u53d1\u73b0\u65b0\u5174\u7684\u786c\u4ef6\u4f8b\u5982Intel SGX\uff0c\u4e3a\u7528\u6237\u7ea7\u7684\u5e94\u7528\u63d0\u4f9b\u4e86\u5f88\u5f3a\u7684\u53ef\u4fe1\u8ba1\u7b97\u80fd\u529b\u3002\u5176\u4e2dSGX enclaves\u4e3a\u8fd9\u4e9b\u5e94\u7528\u63d0\u4f9b\u4e86\u786c\u4ef6\u9694\u79bb\u7684\u6267\u884c\u73af\u5883\uff0c\u4f7f\u5f97\u5728enclave\u91cc\u9762\u7684\u7a0b\u5e8f\u9632\u7be1\u6539\u540c\u65f6\u53ef\u4ee5\u88ab\u8fdc\u7a0b\u8bc1\u660e\u3002\u5982\u679cSGX\u7c7b\u4f3c\u7684\u529f\u80fd\u53ef\u4ee5\u88ab\u65e5\u5e38\u7684\u7528\u6237\u7ec8\u7aef\u7cfb\u7edf\u5e7f\u6cdb\u7684\u91c7\u7528\uff0c\u90a3\u6211\u4eec\u662f\u5426\u53ef\u4ee5\u5229\u7528\u8fd9\u4e9b\u65b0\u7684\u529f\u80fd\u53bb\u8bbe\u8ba1\u548c\u5b9e\u73b0\u5065\u58ee\u7684P2P\u534f\u8bae\u5462\uff1f\u901a\u8fc7\u6211\u4eec\u7684\u89c2\u5bdf\u548c\u7814\u7a76\uff0c\u901a\u8fc7\u4f7f\u7528SGX\u7684\u529f\u80fd\uff0c\u6211\u4eec\u53ef\u4ee5\u5728\u540c\u6b65\u7f51\u7edc\u7684\u73af\u5883\u4e2d\u5c06\u62dc\u5360\u5ead(byzantine)\u8282\u70b9\u7684\u884c\u4e3a\u9650\u5236\u5728\u5e38\u89c4\u9057\u6f0f\u6a21\u578b(general-omission)\u4e2d\u3002<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-2360\" src=\"https:\/\/www.inforsec.org\/wp\/wp-content\/uploads\/2017\/11\/11-830x1024.jpg\" alt=\"\" width=\"800\" height=\"987\" srcset=\"http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/11-830x1024.jpg 830w, http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/11-243x300.jpg 243w, http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/11-768x948.jpg 768w, http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/11-122x150.jpg 122w, http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/11.jpg 2006w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/p>\n<p style=\"text-align: center;\">\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-2361\" src=\"https:\/\/www.inforsec.org\/wp\/wp-content\/uploads\/2017\/11\/12-1024x859.jpg\" alt=\"\" width=\"800\" height=\"671\" srcset=\"http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/12-1024x859.jpg 1024w, http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/12-300x252.jpg 300w, http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/12-768x644.jpg 768w, http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/12-179x150.jpg 179w, http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/12-150x126.jpg 150w, http:\/\/202.112.238.40\/wp\/wp-content\/uploads\/2017\/11\/12.jpg 2042w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/p>\n<p style=\"text-align: center;\">\n<p>\u5177\u4f53\u5730\uff0c\u6211\u4eec\u4f7f\u7528\u4e864\u4e2aSGX\u7684\u7279\u6027\uff0c\u5206\u522b\u662f\u9694\u79bb\u6267\u884c(enclave execution)\uff0c\u65e0\u504f\u5dee\u968f\u673a\u6570(unbiased randomness)\uff0c\u8fdc\u7a0b\u8bc1\u660e(remote attestation)\u548c\u53ef\u4fe1\u6d88\u901d\u65f6\u95f4(trusted elapsed time)\u3002\u5728\u8fd9\u4e9b\u7279\u6027\u4e4b\u4e0a\uff0c\u6211\u4eec\u5b9e\u73b0\u4e866\u79cd\u5b89\u5168\u529f\u80fd\u3002\u9996\u5148\uff0c\u6211\u4eec\u901a\u8fc7\u5b9e\u65bd\u6267\u884c\u5b8c\u6574\u6027(execution integrity)\uff0c\u4fe1\u606f\u5b8c\u6574\u6027\u548c\u771f\u5b9e\u6027(message integrity &amp; authenticity)\uff0c\u4ee5\u53ca\u76f2\u76d2\u8ba1\u7b97(blind-box computation)\u6765\u9650\u5236\u653b\u51fb\u8005\u4e0d\u80fd\u4f2a\u9020\u4fe1\u606f\u6216\u8005\u8fdd\u80cc\u539f\u6709\u534f\u8bae\u7684\u6267\u884c\uff0c\u53ea\u80fd\u5ef6\u8fdf\uff0c\u91cd\u653e\u548c\u9057\u6f0f\u4fe1\u606f\u3002\u6211\u4eec\u8fdb\u4e00\u6b65\u4f7f\u7528\u9501\u6b65\u6267\u884c(lockstep execution)\u548c\u4fe1\u606f\u4fdd\u9c9c(message freshness)\u5c06\u653b\u51fb\u8005\u6a21\u578b\u964d\u4f4e\u4e3ageneral-omission\u6a21\u578b\uff0c\u4ece\u800c\u4f7f\u5f97\u62dc\u5360\u5ead\u8282\u70b9\u9664\u4e86\u9009\u62e9\u6027\u53d1\u9001\/\u63a5\u53d7\u4fe1\u606f\u5916\u6ca1\u6709\u5176\u4ed6\u4f18\u52bf\u3002\u5728\u8fd9\u6837\u7684\u6a21\u578b\u4e2d\uff0c\u76f2\u76d2\u8ba1\u7b97\u7279\u6027\u4e0d\u5141\u8bb8\u653b\u51fb\u8005\u6839\u636e\u4fe1\u606f\u7684\u5185\u5bb9\u800c\u9009\u62e9\u6027\u9057\u6f0f\u4fe1\u606f\u3002\u540c\u65f6\uff0c\u5206\u6b67\u6682\u505c\u7279\u6027(halt-on-divergence)\u4f7f\u5f97\u5728enclave\u4e2d\u7684\u7a0b\u5e8f\u53ef\u4ee5\u68c0\u6d4b\u81ea\u5df1\u6240\u5728\u7684\u8282\u70b9\u662f\u5426\u6839\u636e\u6536\u53d1\u8005\u7684\u8eab\u4efd\u9009\u62e9\u6027\u5730\u9057\u6f0f\u4fe1\u606f\uff0c\u4ece\u800c\u81ea\u8eab\u5c06\u8868\u73b0\u6076\u610f\u7684\u8282\u70b9\u5254\u9664\u51fa\u6240\u5728\u7684\u7f51\u7edc\u3002\u5229\u7528\u8fd9\u4e9b\u7279\u6027\uff0c\u6211\u4eec\u8fdb\u4e00\u6b65\u5c06\u53ef\u4fe1\u5e7f\u64ad\u548c\u968f\u673a\u6570\u751f\u6210\u534f\u8bae\u8fdb\u884c\u4e86\u6539\u8fdb\uff0c\u8bbe\u8ba1\u51fa\u65b0\u7684Enclaved Reliable Broadcast (ERB) \u548c Enclaved Random Number Generator (ERNG)\u3002\u8fd9\u4e24\u4e2a\u57fa\u7840\u534f\u8bae\u53ef\u4ee5\u88ab\u5e7f\u6cdb\u5730\u4f7f\u7528\u5728\u4e0d\u540c\u7684\u5206\u5e03\u5f0f\u7cfb\u7edf\u548c\u534f\u8bae\u4e2d\uff0c\u4f8b\u5982\u6295\u7968\u7cfb\u7edf\uff0c\u968f\u673a\u6f2b\u6b65\uff0c\u5171\u4eab\u5bc6\u94a5\u751f\u6210\u548c\u5bc6\u7801\u8d27\u5e01\u534f\u8bae\u3002<\/p>\n<p>\u5728\u6211\u4eec\u7684\u540c\u6b65\u7f51\u7edc\u7cfb\u7edf\u4e2d\uff0c\u6bcf\u4e2a\u8282\u70b9\u90fd\u8fd0\u884c\u5728\u63d0\u4f9bSGX\u7684CPU\u4e4b\u4e0a\u3002\u4e0e\u62dc\u5360\u5ead\u6a21\u578b\u4e2d\u7684\u534f\u8bae\u76f8\u6bd4\uff0c\u6211\u4eec\u7684\u4e24\u4e2a\u57fa\u7840\u534f\u8bae\u90fd\u9002\u91cf\u51cf\u5c11\u4e86\u901a\u4fe1\u5f00\u9500\u548c\u56de\u5408\u5f00\u9500\u3002\u5bf9\u4e8e\u5305\u542bN\u4e2a\u8282\u70b9\u7684\u7f51\u7edc\uff0cERB\u7684\u901a\u4fe1\u5f00\u9500\u662fO(N<sup>2<\/sup>)\uff0c\u540c\u65f6\u5bb9\u5fcd\u5c11\u4e8e\u4e00\u534a\u7684\u6076\u610f\u8282\u70b9\u3002\u672a\u4f18\u5316\u7684ERNG\u7684\u901a\u4fe1\u5f00\u9500\u662fO(N<sup>3<\/sup>)\uff0c\u5982\u679c\u4f7f\u7528\u968f\u673a\u62bd\u6837\uff0c\u4f18\u5316\u7684ERNG\u7684\u5f00\u9500\u5219\u53ef\u4ee5\u964d\u5230O(N log N)\u3002\u901a\u8fc7\u5b9e\u73b0\u548c\u6d4b\u8bd5\u6211\u4eec\u7684\u7cfb\u7edf\uff0c \u6211\u4eec\u7684\u5b9e\u9a8c\u7ed3\u679c\u4e0e\u7406\u8bba\u7ed3\u679c\u662f\u76f8\u7b26\u5408\u7684\u3002\u5982\u679c\u611f\u5174\u8da3\uff0c\u5927\u5bb6\u53ef\u4ee5\u67e5\u770b\u6211\u4eec\u7684\u8bba\u6587(<a href=\"https:\/\/eprint.iacr.org\/2017\/180.pdf)\">https:\/\/eprint.iacr.org\/2017\/180.pdf)<\/a>\u548c\u5f00\u6e90\u4ee3\u7801 (https:\/\/bitbucket.org\/P2PUsingSGX\/p2pusingsgx.)\u3002<\/p>\n<p><strong>\u4f5c\u8005\u7b80\u4ecb<\/strong><\/p>\n<p>Yaoqi Jia is a Research Fellow at the National University of Singapore (NUS). He got his Ph.D. in Computer Science from NUS, under the advisement of Zhenkai Liang and Prateek Saxena. His research interests span web security and privacy, network security, distributed systems and applied cryptography. Presently, he is exploring solutions to secure the web infrastructure from two perspectives \u2014 networking and systems. For example, addressing consensus and privacy issues in P2P systems and identifying new attacks\/vulnerabilities in web browsers. His research work has been published in CCS, USENIX Security, PETS, RAID, ESORICS etc. He has received the Best Paper Award in W2SP (2014) and ICECCS (2014). His work got acknowledged by various vendors including Google and Apple (CVE-2014-7948 for Chrome and CVE-2015-5907 for Safari) and has received attention from the media including Dailydot, Gizmodo and Techspot.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Robust Synchronous P2P Primitives Using SGX Enclav&#8230; <a class=\"continue-reading-link\" href=\"http:\/\/202.112.238.40\/wp\/?p=2344\"> Continue reading <span class=\"meta-nav\">&rarr; <\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":["post-2344","post","type-post","status-publish","format-standard","hentry","category-research"],"_links":{"self":[{"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=\/wp\/v2\/posts\/2344","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2344"}],"version-history":[{"count":2,"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=\/wp\/v2\/posts\/2344\/revisions"}],"predecessor-version":[{"id":2363,"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=\/wp\/v2\/posts\/2344\/revisions\/2363"}],"wp:attachment":[{"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2344"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2344"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/202.112.238.40\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2344"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}