成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用 VS Code、Hardhat 和 Slither 進行智能合約審計

開發 前端
一個Python腳本可能會檢查你的智能合約的弱點,進行任何已知的攻擊,并通過將你的虛擬KNOX堡壘中的NFT或貨幣保護轉移到一個匿名的錢包中,在一分鐘內將其價值完全耗盡到零。

介紹

直到一兩個星期前,我還了解智能合約安全和審計,但沒有接觸到當前真實和正確的流程,即在自動化部署和測試過程中使用威脅分析器從組裝層面進行合約審計。。

可以在此處[1]找到所發生事件的概要。

我深刻地認識到,我們必須使用一些工具,在發布到外面之前充分測試我們的合約,否則它們會被機器人利用,這些機器人的行動速度比你開始思考的速度快得多。

一個Python腳本可能會檢查你的智能合約的弱點,進行任何已知的攻擊,并通過將你的虛擬KNOX堡壘中的NFT或貨幣保護轉移到一個匿名的錢包中,在一分鐘內將其價值完全耗盡到零。

當這種情況發生時,你無力阻止,而你肚子里的坑會擴大成一個深不可測的黑洞。

我學會了如何在我用來部署合約的環境中審計合約,我希望這個教程對人們有幫助,這樣他們就不會成為我所遭受的同樣攻擊的受害者,廢話不多說,我向你介紹一種從VSCode中創建、審計和部署合約的方法

前提條件

Node

Node 對于運行Hardhat和本地鏈是必不可少的,因此它是本教程的要求,它可以從這里[2]安裝。。

Python

static solidity analyzer需要Python和pip來執行,在Windows、Mac和Linux上完成這個任務的最好方法是通過GUI安裝程序,因為它將為你修改PATH環境變量,使你在CLI執行過程中避免任何全局關鍵字的問題。它可以在這里找到。

Hardhat

Hardhat 是一個出色的本地鏈開發環境,可讓您在將合約發布到主網之前徹底測試、部署和驗證合約。

它是任何智能合約開發人員的武器庫不可或缺的環境,可以從這里[3]安裝。

Slither

一旦你有了合約、部署腳本和hardhat環境,你現在就可以為靜態分析器安裝Slither程序集庫了。。

以管理員或根用戶身份打開一個新的命令提示符或終端窗口,輸入以下內容

pip install slither-analyzer

Visual Studio Code

一旦slither和hardhat都設置好了,你現在就可以準備安裝Visual Studio代碼了,可以在這里[4]找到。

安裝后,單擊左側菜單中的擴展圖標并搜索slither。

圖片

安裝擴展程序后,重新啟動 Visual Studio 代碼并重新打開您的hardhat項目,您現在應該會在左側任務欄中看到slither圖標。

圖片

如果擴展未加載,請檢查輸出控制臺,這很可能是您的環境變量的路徑問題,您可以通過鍵入 slither 來測試它。在任何合約目錄的終端窗口中,如果它拋出命令未找到錯誤,您將需要設置環境變量。

編譯你的合約

合約目錄

如果將所有合約保存在一個文件夾中,維護起來會更容易,并記住在刪除、創建或更改任何合約后,您需要使用這些命令清理本地類型鏈工件。

npx hardhat clean
npx hardhat compile

分析/審計

要運行審計,只需導航到slither圖標并單擊“播放”按鈕,這將掃描您當前目錄中所有已編譯的合約以查找任何漏洞。

圖片

研究修復

通過使用 google 查找被slither標記的問題并研究和測試可能的修復,優先修復最嚴重的錯誤。

請記住,每次更改solidity 文件時,您都必須在掃描之前再次清理和重新編譯。

這個階段可能非常復雜,為了充分理解、測試和建模控制流,您需要具備良好的開發知識水平,以便真正測試邏輯并確保其按預期工作。

實現這一點的最佳方法是通過自動化測試腳本,可以在此處[5]找到一篇關于此的精彩文章。

部署和驗證

下面概述的是帶有構造函數參數的721A[6]合約的示例部署腳本,將此文件放入hardhat項目的腳本目錄中,可以對其進行修改以啟動或部署任何類型的合約,而不僅僅是721A。

https://gist.github.com/Arkay92/f0ec3ed3b866607802c3f2b69c83c135.js

在我的示例中,testnet 鏈接到以太坊的 Goerli 網絡,但它可以被命名并定向到您喜歡的任何網絡。最后一個標志對應于您的網絡名稱,該名稱在hardhat項目的 config.ts 文件中設置。

圖片

為了驗證,請務必在此配置文件中設置您的 etherscan / polygonscan api 密鑰。

配置完成后,確保將部署腳本放入腳本目錄并運行以下命令。

npx hardhat run scripts/myDeployScript.ts — 網絡測試網

就是這樣,您現在已經學會了如何在一個地方部署、測試、審計和驗證合約!

責任編輯:武曉燕 來源: 李留白
相關推薦

2023-05-05 08:00:00

2018-09-08 09:25:05

編程語言PythonVS Code

2018-10-10 14:21:06

Python 工具程序員

2021-05-06 09:42:24

Truffle部署智能

2021-03-18 23:04:41

Solidity開發智能

2022-05-11 23:39:21

加密貨幣區塊鏈智能合約

2023-06-20 08:00:00

2021-08-22 17:22:31

VS Code容器開發人員

2023-07-04 20:15:00

2023-04-21 15:29:30

區塊鏈去中心化自動化合約

2022-09-13 15:44:52

VSLook插件

2021-03-25 16:34:10

區塊鏈加密資產技術

2023-02-24 08:00:00

2019-01-18 05:22:39

區塊鏈智能合約網絡安全

2020-11-16 08:05:26

API調用VS Code

2020-04-22 13:23:46

智能合約區塊鏈比特幣

2021-11-02 10:25:19

區塊鏈智能合約

2023-04-17 07:49:34

2022-03-03 20:57:53

代碼編輯器VS code

2019-05-24 09:59:10

VSLinux遠程
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本亚洲一区二区 | 亚洲国产精品99久久久久久久久 | 九一国产精品 | 亚洲人人 | 国产中文原创 | 国产福利91精品 | 精品久久久久一区 | 男人天堂av网站 | 精品久久久久久中文字幕 | 91超碰在线 | 日本黄色免费大片 | 国产污视频在线 | 国产日韩欧美一区二区在线播放 | 超碰97免费 | 久久久久久久久久久福利观看 | www.黄色在线观看 | 成人一区二区在线 | 日本中文字幕一区 | 91在线视频播放 | 夜夜艹 | 亚洲第一女人av | 久热久 | 亚洲国产欧美在线 | 天堂av在线影院 | 久久国产美女视频 | 久久99精品久久 | 亚洲精品高清视频在线观看 | 一区二区三区播放 | 一区二区三区四区在线视频 | 欧美日韩精品一区 | 在线观看h视频 | 久久91精品久久久久久9鸭 | 欧美日一区二区 | 精品一区二区三区中文字幕 | 91影院| 欧美小视频在线观看 | 自拍视频一区二区三区 | 美女网站视频免费黄 | 一区二区高清 | 欧美中文字幕一区二区 | 黄色视频a级毛片 |