2014年,全球規(guī)模最大的比特幣交易所價值5億美元的比特幣被盜,此外大約有6,000萬美元的以太幣通過基于以太坊的分散式自治組織(DAO)重定向至匿名帳戶。2017年,全球第二大比特幣攻擊事件發(fā)生在比特幣在線交易平臺Bitfinex,造成將近7200萬美元的損失。
區(qū)塊鏈技術正在改變人們的工作和生活方式。也為數字業(yè)務生態(tài)系統(tǒng)帶來了新的安全性,并提高了效率。
了解區(qū)塊鏈
在過去的幾年,區(qū)塊鏈為數字生態(tài)系統(tǒng)帶來了翻天覆地的變化。人們需要了解的是,它實際上不僅與加密貨幣有關,而且還是一個不可變記錄的時間戳鏈,也就是采用加密方式鏈接的區(qū)塊。
區(qū)塊鏈是一個記錄任何數字資產事務的開放式分類賬。這些數字資產可以通過智能合約(例如ERC令牌)或區(qū)塊鏈網絡的核心加密貨幣(例如比特幣或以太坊)進行管理。
區(qū)塊鏈網絡始于“創(chuàng)世紀”(genesis)區(qū)塊的配置。顧名思義,“創(chuàng)世紀”是區(qū)塊鏈的第一個區(qū)塊,其先前的區(qū)塊哈希值為0x000。然后根據一致性和配置(例如區(qū)塊時間、區(qū)塊大小等),將更多區(qū)塊添加到鏈中。
區(qū)塊(包括其中的事務)將得到驗證并添加到鏈中,以后無法進行修改。區(qū)塊鏈中的任何修改都會導致創(chuàng)建新事務,從而使其具有可追溯性。這是區(qū)塊鏈網絡的基本功能。
什么是區(qū)塊鏈滲透測試?
滲透測試就是測試人員以潛在黑客的心態(tài)工作,有效地利用編碼錯誤進行測試。簡單地說,測試人員自己充當黑客,試圖闖入網絡檢測和報告安全漏洞。滲透測試人員所花費的總時間取決于網絡大小及其體系結構的復雜性。規(guī)模較小的測試很快就能處理,而較大的測試可能需要長達數周的時間。需要區(qū)塊鏈滲透測試作為解決方案的一些挑戰(zhàn)包括:
•缺乏測試工具
•知識不足
•不適當的策略
•不可撤銷的事務
•性能和負載測試
有效的區(qū)塊鏈測試可幫助組織通過網絡基礎設施安全地構建和利用該技術。其測試過程包括核心測試策略和服務,例如云計算測試服務、功能測試、API測試、集成測試、安全測試和性能測試。它還包括特定于區(qū)塊鏈的測試策略,例如塊測試、智能合約測試和對等/節(jié)點測試。
•功能測試–這個測試評估案例方案和業(yè)務方案。測試人員考慮的組件包括:
區(qū)塊鏈的規(guī)模–最基本的事務由包含事務信息本身的數據構成,這些數據占用空間。盡管具有爭議,但目前每個塊包含1MB數據。這種規(guī)模需要定期檢查和測試。而且,鏈的規(guī)模沒有限制,并且隨著時間的推移不斷增加。測試人員需要測試區(qū)塊鏈的功能和性能,以便對其進行檢查。
塊的添加–在對每個事物進行身份驗證之后,測試人員將驗證這些塊并將其添加到區(qū)塊鏈中。如上所述,區(qū)塊鏈無法更改,因此在添加之前對塊進行驗證使其成為一個極為關鍵的過程。
數據傳輸–區(qū)塊鏈涉及點對點體系結構,這使得測試人員必須驗證數據的加密和解密,并使其完美無缺。其目的是確保數據丟失最小化或不丟失。
•API測試– API測試就是要檢查應用程序與區(qū)塊鏈生態(tài)系統(tǒng)之間的交互。這樣做是為了驗證API發(fā)送的請求和響應,并確保它們的格式和執(zhí)行正確。
•集成測試–由于區(qū)塊鏈測試在不同環(huán)境和并行系統(tǒng)中的部署,集成測試的需求上升。測試是為了確保不同的組件能夠無縫地相互通信。測試團隊測試API以確保這些API可以在驗證階段使用。
•性能測試–區(qū)塊鏈中的性能測試可確定潛在的瓶頸,并檢查應用程序是否已準備好投入生產。確定性能的測試自動化是檢查區(qū)塊鏈整體可擴展性的關鍵。
•安全測試–目的是確保完全保護區(qū)塊鏈應用程序免受病毒和惡意程序等攻擊。區(qū)塊鏈的安全測試需要非常徹底和響應迅速。正在進行的事務無法停止,因此測試過程應足夠有效以發(fā)現所有潛在威脅。有效的安全測試還有助于改善公司在消費者面臨風險之前撤銷有缺陷的商品的流程,這有助于實現數字質量保證。
以下是數字生態(tài)系統(tǒng)中不同行業(yè)利用的一些功能:
•醫(yī)療保健–醫(yī)療驗證和記錄維護、索賠處理
•零售–減輕欺詐行為,保護消費者數據的隱私
•通信–網絡訪問和控制,保護移動錢包
•媒體-反盜版、支付方式、數字傳輸
•金融–跨渠道付款,商業(yè)交易的安全性
•確保智能合約
•強大的數字保證解決方案
這是一個自動執(zhí)行的合同,其中包含有關各方之間的協(xié)議條款,以代碼行的形式編寫。然后將包含代碼和協(xié)議條款的這些合同分發(fā)到分散的區(qū)塊鏈網絡上。智能合約允許匿名方之間進行信任交易,而無需使用中央系統(tǒng)。
區(qū)塊鏈滲透測試工具
同樣重要的是,測試人員要選擇合適的區(qū)塊鏈滲透測試工具,以減少漏洞,并提供最佳質量的結果。在此建議使用以下工具測試基于區(qū)塊鏈的應用程序:
Truffle框架–Truffle是最受歡迎的開發(fā)環(huán)境之一,也是區(qū)塊鏈測試的測試框架。
Truffle為智能合約提供簡單的生命周期管理,包括支持庫鏈接、自定義部署和復雜的基于區(qū)塊鏈的應用程序。Truffle還提供了自動契約測試,開發(fā)者可以使用JS和Solidity編寫自己的自動測試代碼。它的一些顯著特點是:
•在開發(fā)過程中立即重建資產;
•可配置的構建管道,完全支持自定義構建過程;
•可編寫腳本的部署和遷移框架;
•與交互式控制臺的直接合同通信。
Embark–Embark提供了一種簡單的聲明性方法來定義要部署的智能合約及其相關性。
以太坊測試儀–為各種區(qū)塊鏈測試需求提供可管理的API支持。它旨在改善用戶和開發(fā)人員的體驗,并幫助他們輕松管理和執(zhí)行所選工具。
Populus –這里的測試由python測試框架提供支持,并為測試智能合約提供了有用的實用工具。
結論
區(qū)塊鏈是所有現代安全交易的領先技術。由于區(qū)塊鏈測試的不斷發(fā)展,目前還沒有相應的標準指南。這一領域知識的缺乏往往導致工程師按照個人的選擇進行設計,最終無法滿足組織的要求。與其相反,外包的安全和區(qū)塊鏈測試專家憑借其全面的知識庫幫助客戶在其連接的基礎設施上構建和使用區(qū)塊鏈技術。
這些服務包括對智能合約、安全控制、流程和訪問控制以及區(qū)塊鏈分類賬網絡內的橫向移動進行徹底的人工審查。還需要提供詳細的環(huán)境測試,包括移動應用程序和Web應用程序、API、網絡等。
版權聲明:本文為企業(yè)網D1Net編譯,轉載需注明出處為:企業(yè)網D1Net,如果不注明出處,企業(yè)網D1Net將保留追究其法律責任的權利。