币安官网注册链接: 币安(Binance)
介绍
ETH最近下跌。 昨晚睡觉前我检查了我的 ETH 钱包,看到了一条转账[1]的通知。 钱包中的0.76 ETH已全部转出,转出时间为前天晚上。
本文主要记录我自己的经历以及如何避免钱包被盗。
过程
周五我在研究智能合约,写了一篇文章《使用 HardHat 创建 NFT 智能合约》[2]。 然后我按照教程将代码上传到GitHub并开源。 没有刻意检查代码的环境变量。
然后周六晚上我发现我钱包里的 ETH 被盗了。 我立即想到我将钱包授权给了不安全的网站,导致被盗。 不过,经过仔细检查,我发现MetaMask的交易记录并没有被盗。 那个记录。
然后我查看了Github代码[3],发现被盗的时间是在上次提交代码之前。 然后我又看了一下代码,发现我傻了。 我把我的私钥放在代码中并提交到Github。
仓库中有一个.env.example文件。 当hardhat初始化时,它会生成一个.gitignore文件,其中包含.env。 这一步是没有问题的,但是当我创建.env.example时,我使用了cp .env .env .example,所以私钥被复制到了.env.example文件中。 没有删除私钥,也没有确认,就提交到了Github。
当时我正赶着下班,提交了代码就走了。
如何避免意识到钱包私钥的重要性
显然我之前对钱包私钥的重要性认识不够,才导致了这次损失。 Web3钱包的私钥非常重要。 在区块链技术中,私钥就像您的密码,具有以下重要性:
因此,保管好您的Web3钱包私钥并妥善保管非常重要。 私钥丢失或泄露可能会导致您的资产被盗。
差异化钱包
使用Web3钱包时,一定要区分钱包。 您可以根据不同的场景创建多个钱包,比如一个专门用于存储资产,一个专门用于开发和测试,一个专门用于交易等。
存储资产的钱包必须保证私钥的安全,不要随意授权。 建议使用硬件钱包[4]以保证您的私钥安全。
环境变量
开发时一定要注意环境变量的安全。 不要将私钥等重要信息放入代码中,也不要提交到Github。 尤其是开源项目,一定要注意。 我能想到的解决方案:
总结
这次事件让我对Web3钱包的私钥有了更深入的了解,也让我认识到环境变量的重要性,以后一定要注意。 周五的文章价值0.76 ETH,我的心在滴血。
希望大家以此为鉴,不要再犯我所犯的错误。 如果我的文章对您有帮助,您可以考虑打赏安慰我。 非常感谢。
参考
[1]
转移:
[2]
《使用 HardHat 创建 NFT 智能合约》:
[3]
GitHub代码:
[4]
硬件钱包:
[5]
git 秘密:
[6]
推荐计划:
This Post Has One Comment