什么是重放攻擊?
重放攻擊是計算機網絡中常見而古老的攻擊手段。在區塊鏈中,重放攻擊特指在硬分叉中,攻擊者將一條鏈上的交易拿到另一條鏈上“重放”,從而獲取不正當利益的攻擊手段。這畢竟是一個技術概念,小白可能不容易理解,為了解釋清楚,我們用一個真實案例來說明重放攻擊具體是如何實施的。這個真實案例出自大名鼎鼎的以太坊TheDAO分叉事件。
TheDAO是以太坊上發起的一個眾籌項目,它運行在智能合約上。由于智能合約存在某種漏洞,黑客轉走了合約內管理的價值數千萬美元的以太幣。為了挽回損失,以Vitalik為首的大部分社區意見支持分叉以實現交易回滾,于是通過硬分叉形式發起了一條新鏈。然而另一部分社區意見則認為不應該回滾,仍舊維護原有的區塊鏈。這導致以太坊分裂成新鏈和原鏈兩條不同的區塊鏈。
BTC出現死亡交叉,需注意市場波動性擴大:據區塊鏈平臺Xangle的研究報告,北京時間4月6日上午8點BTC發生了死亡交叉。死亡交叉通常被認為熊市轉換,反之黃金交叉意味著牛市轉換。但是最近BTC市場并沒有跟著“通常情況”波動,所以投資者們更需要注意。鏈上交易量也處于減少趨勢,前日BTC的24小時鏈上交易量為52萬2,577BTC,這是今年以來第五低的數據。此外,年初BTC市場發生黃金交叉時BTC的收益率并沒有上漲,反而暴跌31.1%,完全違背了投資者的看漲期待。此前2018年和2019年BTC市場發生黃金交叉后(直到發生死亡交叉之前)BTC的收益率分別為+3%,+108%。發生死亡交叉后BTC的收益率分別為-39%,-40%,市場完全進入了熊市。[2020/4/6]
那么重放攻擊又是怎樣實施的呢?我們假設小明在分叉前持有500個ETH。分叉以后,小明的地址下就同時持有500個ETH和500個ETC,因為這個A地址在兩條鏈上都是存在的。由于小明是堅定的分叉支持者,因此小明只看好ETH未來的發展,覺得ETC肯定要歸零。此時小剛找到小明,提議以低價購買小明手中的ETC。小明便將手中的500個ETC全部轉賬到了小剛的地址。
分析 | 金色盤面:ONT/USDT 短線反彈 注意關注1.60阻力:金色盤面綜合分析:ONT/USDT短線繼續反彈,但上方1.60短線阻力需要關注,突破才會繼續打開空間。[2018/8/16]
前面聽起來沒什么不對勁吧,然而小明沒有想到的是,小剛反手就把這筆ETC的轉賬交易發到了ETH的網絡上。由于ETH、ETC是分叉的產物,因此兩者交易結構、密碼學體系都是一致的,ETC鏈上的交易在ETH鏈上也一樣可被識別,因此這筆交易就會被驗證上鏈,最終的結果是ETH鏈上的A地址也轉出了500個ETH到B地址去。小剛假意低價收購ETC,卻成功騙取了小明所有的ETH,小明自然是虧大發了!
如何防范重放攻擊?
我們可以看到,小剛問小明收購ETC這個行為,本身沒有問題;小明將手中的ETC轉賬給小剛這個行為,也沒有任何問題。真正出問題的地方在于,由于ETH和ETC兩條鏈使用了完全一致的交易結構和密碼學體系,導致在ETC上有效的交易在ETH上也同樣有效。這就給了攻擊者可乘之機。攻擊者可以將ETC上的一筆有效的交易“重放”到ETH的鏈上,仍可形成一筆有效的交易,然而這筆被重放的交易并不是交易者本人的真實意愿,因此容易被攻擊者利用而造成資產損失。
分析 | 金色盤面:BTC/USDT跌破6400 注意關注下跌力度:金色盤面綜合分析:BTC/USDT跌破支撐6400并出現加速,注意關注下跌力度,短線不建議參與做多[2018/8/10]
大家可能會有一個疑問:那豈不是在分叉后的鏈之間,比如ETH和ETC之間、BTC和BCH之間,做的所有交易都是有可能被“重放”的?事實上,重放攻擊的實施是需要一系列嚴苛條件的。只有在剛分叉完畢的一段時間內,兩條鏈才能夠保持共享幾乎相同的鏈上數據的狀態,最容易發生重放攻擊;一旦運行一段時間,兩條鏈上分別有了新的數據輸入,將一條鏈的交易重放到另一條鏈的可行性就大大減弱了。
從防范重放攻擊的角度,我們可以總結一些規律。首先,大家要意識到,重放交易本身不是一種Bug,并不能直接竊取您的資產,重放攻擊一定是配合或結合其他惡意行為進行的。就好像我們剛才提到的小明賣ETC案例中,一定是有小剛這樣的角色實施了“假意低價收購ETC、實則圖謀ETH”的欺詐行為。如果您在分叉之后的一段時間內保持警惕,時刻意識到您在新鏈上的交易有可能被重放到原鏈,就可以杜絕絕大多數與之相關的欺詐行為。
金色財經現場報道:云斗龍創始人張璇:開發基于以太坊的游戲有三點需要注意:金色財經6月3日現場報道,在今天的以太坊技術及應用大會上,云斗龍HyperDragons創始人、MixMarvel CEO 張璇做了《區塊鏈通證經濟在游戲娛樂中的實踐》主題演講,張璇說,如果要開發基于以太坊的游戲,有三點需要注意:第一,在一開始時就要選擇一個合理的合約更新策略,因為游戲行業跟金融行業不一樣,頻繁的運營是必須的;第二,在體系結構設計上,因為并不是所有的內容都必須上鏈,我們認為有幾個關鍵的內容必須上鏈,一是共識數據,二是產生共識數據的算法;第三,以太坊社區存在大量可以復用的并且符合最佳實踐的代碼、工具,我們要從社區吸取成功經驗。[2018/6/3]
我們介紹兩種具體的防范手段。第一種是在分叉后購買極少量“新鮮的幣”到您的地址內。所謂“新鮮的幣”是指那些在分叉高度以后挖礦產出的幣,這些幣在另一條鏈上并不存在,因而當交易的input引用到它們時,這筆交易就不可能被另一條鏈所驗證。第二種是在分叉后將您所有地址內的幣歸結到一個新生成的地址。這也就是所謂的“騰籠換鳥”,可以減少攻擊者在另一條鏈重放交易的可行性;如果您按順序結合使用兩種方法,基本可以免除遭受重放攻擊的可能性。
何一:注意BCN投資風險:據了解,何一剛剛在電報群里說:“注意BCN投資風險,問一下其他到賬的人。已經打包的查一下區塊,請耐心等待。”自BCN上線幣安后,BCN在幣安的價格要比在其它交易平臺的價格高出很多。行情顯示,BCN全球均價0.018美元,漲幅169.81%。[2018/5/8]
Lava團隊關于分叉期間的風險提示和相關建議
首先,我們特別提醒,本次PoC2+升級使用硬分叉方式,有可能形成兩條鏈,即一條升級協議后的“新鏈”、一條仍運行舊協議的“原鏈”。這是區塊鏈的特性所致,只要原有的協議有算力維護,那么原鏈也可以保留下來。Lava技術團隊聲明,升級完成后我們不會對運行舊協議的原鏈進行任何維護和開發工作。
因此,我們首先建議社區用戶務必在分叉前更新您手中的所有全節點或錢包軟件版本。您可以前往官網下載最新版本的軟件,并在升級指南頁面檢查您的軟件版本是否為最新。如果您沒有及時更新,仍在使用舊版本的錢包,可能會造成混淆和誤操作。
其次,我們建議您在沒有把握的情況下,分叉后短期內謹慎與第三方進行轉賬活動。分叉后可能有人提出收購您在原鏈的LV資產,您需要特別意識到交易存在被重放的風險。
Lava技術團隊可能計劃在分叉完成后,向所有持有LV余額較大的地址轉賬少量金額的“新鮮LV”,以減少攻擊者實施重放攻擊的可行性。我們建議所有持有大額LV資產的用戶,在接收“新鮮LV”轉賬后,將持有的LV歸集到一個新的地址。
教學:如何做歸集交易
歸集交易就是將您錢包內分散在各個地址下的資金統一發送到一個地址下的交易。該地址應當是一個由您的錢包控制的、最好是沒有使用過的地址。在分叉后進行一次資金歸集,能夠減小被重放攻擊的可能性。
如果您使用帶有界面的錢包,例如輕錢包、GUI錢包:
此處以GUI錢包為例,其他帶有界面的錢包的操作方法類似。在“接收”界面點擊“請求付款”,錢包會自動展示一個收款地址,如下圖所示。
復制該地址,前往“發送”界面,將錢包內所有資金發送至該地址即可。您可以預先瀏覽您的錢包余額并填寫需要發送的資金數額,或者在發送交易時直接勾選“發送全部余額”以保證所有余額都得到歸集。
如果您使用全節點錢包:·使用getbalance查看錢包內的總余額;·使用getnewaddress生成一個新地址;·使用sendtoaddress將錢包內的所有余額轉賬到新地址內。注意:要考慮留出交易手續費,因此可以在轉賬之前先設置settxfee0.001,然后將剩余余額通過sendtoaddress轉入歸集地址。
Lava官網鏈接:www.lavatech.orgGithub:https://www.github.com/lavaio
作者:Joyce 來源:區塊鏈前哨 導語:“目前,十分之一加密貨幣所有者在美國。到2021年,五分之一的美國千禧一代將擁有加密貨幣;到2025年,物聯網設備的迅速崛起將帶來最大的安全風險;到20.
1900/1/1 0:00:00注:原文作者是以太坊聯合創始人VitalikButerin,在這篇文章中,他提出了一種稱為及時性檢測器的構造,以試圖解決51%攻擊的問題.
1900/1/1 0:00:00來源:cointelegraph 編譯:小蔥區塊鏈 在過去的十年中,區塊鏈,比特幣和其他加密貨幣已經顛覆了富豪們所接觸的一切,包括銀行,對沖基金,執法,醫療保健和房地產等.
1900/1/1 0:00:00作者:LiangCHE 來源:比推bitpush.news歐洲央行行長克里斯蒂娜·拉加德表示,希望評估央行數字貨幣能否為公眾服務并支持歐洲央行的目標.
1900/1/1 0:00:00作者:BlockVC 編者注:原標題為《減半、放水與比特幣長牛》 緊急降息與全球放水 Choosethe?LesserofTwoEvils生活在一個不斷在見證歷史的時代.
1900/1/1 0:00:00我們創造了數據洪流,并成為其中的一部分,同時我們也正變得越發透明。1993年《紐約客》曾發布了題為“在互聯網上,沒人知道你是坐在電腦前的一條狗”的經典漫畫;時至今日,這張漫畫或許可以修改為“在互.
1900/1/1 0:00:00