# 如何在Web3世界保护好资产安全？

By [Web3升级打怪](https://paragraph.com/@web3-59) · 2023-03-25

---

今天要讲的是Web3世界最重要的知识之一：如何保护资产安全。

**1.为什么保护资产安全如此重要？**

在传统的中心化服务中，由于身份的所有权都掌握在中心化机构手里，所以当个人碰上某些麻烦事时，中心化机构能动用权力帮助我们解决问题。举个例子，当我们在银行里开设账户并存入存款后，如果不小心忘记了密码，是可以找银行走流程找回密码的。

但在Web3世界，由于身份所有权都在我们自己手上，当我们再忘记密码（助记词和私钥），是没有任何人以及任何机构可以帮助我们寻回身份和资产的，当我们由于操作疏忽而暴露了私钥，或者往错误的地址转入了资产后，也是没有人能帮助我们挽回损失的。

不管我们是想在Web3世界参与长期建设，还是想进行加密资产的投资以获得未来的回报，安全都是最重要的事情——哪怕我们再看好Web3和加密资产的未来，屯了再多的比特币在手里要坐等升值，结果钱包私钥忘记了或者钱包里的资产被盗走了，最后都是一场空。

**Web3带来了权力和自由，但是也带来了责任，当我们因为权力和自由而选择拥抱Web3时，一定不能忽略了责任的重要性，要把安全意识深深刻进脑子里。**

**2.为自己的资产安全全权负责。**

安全保管助记词和私钥的责任在谁身上？完全在我们自己身上。

保证交易、操作安全的责任在谁身上？完全在我们自己身上。

如果因为任何原因导致了资产损失，责任在谁身上？完全在我们自己身上。

把自己该承担的责任都承担起来，不要有“谁谁谁要是坑骗我，就找有关部门维权”的想法，而是主动学习各种安全知识，提高自己的安全意识。

**3.如何从加密钱包方面保护资产安全。**

其一，我们都知道的很重要的一件事，就是要**保管好钱包账户的助记词，不要泄露助记词以及子账户的私钥**——谁拥有助记词和私钥，就拥有了对应身份、账户的所有权。

* * *

其二，是**把交互账户和资金账户分离开来**。比如拿metamask钱包来说，我们可以在一个钱包账户下生成至少两个子账户，一个账户专门用于Web3世界的探索和交互，只放少量资产，另一个账户则用来存储加密资产，基本不参与交互，这样当我们在日常交互中操作失误而连接一些钓鱼网站后，也更难威胁到资金账户的安全。

* * *

其三，**把大额资产存放进没有连过网络、没有交互过任何智能合约的硬件钱包里**，最大程度地保护资产安全。

* * *

其四，**不要在陌生、不可信的网站上登录钱包，尤其是不能随意签名和授权，一定要仔细确认是可信的、官方发布的链接再登录钱包，授权时也要格外注意。**

重点讲一下钱包授权方面的事宜。

什么是钱包授权？我们知道加密身份、**资产的所有权掌握在拥有助记词和私钥的人手里，但当事人可以把一些权力（资产调用权）授予给其他合约地址**，比如我们想要在去中心化交易所上把ETH交换成WETH，交易所先要获得我们的资产授权，才能转移我们地址里的ETH，并交换成WETH转移到我们的地址上。

这里会出现什么问题呢？那就是**被授权的合约可能“盗走”我们钱包地址里的资产，正规可靠的项目合约都会经过安全审计，不会出现盗走用户资产的情况（除非被黑客攻击），但如果进入的是钓鱼网站，授权的是没有经过审计，甚至本来就有恶意的合约，就很可能导致资产被盗。**

所以在“合约授权”这件事上一定要非常之谨慎，在把自己的权力交出去之前要再三验证一下授权对象的可靠性，以及授权内容是什么，避免遭受资产损失。

如图所示，这是我在Uniswap上用APE交换ETH的操作，因为是第一次在该平台调用APE，所以平台向我请求APE资产的授权。

![](https://storage.googleapis.com/papyrus_images/49db66277743ffcc558bb6885cf1d0cd6195a95b1e9366e9f8fc599cc4126f62.png)

授权页面如图，可以看到授权的网址是哪里，授权内容是什么（让我们设定合约能自行调用的APE最大金额），还可以查看授权详情，通过“验证合约详情”去区块链浏览器查看合约细节。

![](https://storage.googleapis.com/papyrus_images/87bbde133b718c874161644047d5d0991b530be6dac7f4ab91fe6391bacd3f58.png)

![](https://storage.googleapis.com/papyrus_images/d55c077e8916b4e06a4ea29173143c59c75d45a0a7e35e963e01e0b36d5d7953.png)

**假如我们在该授权页面给平台授权了100APE的上限，那么平台最多只能调用我们100APE，就算出现小概率事件即平台被黑客攻击，也最多损失100APE，但如果授予的权限是无限APE，那么一旦黑客攻击成功，是可能盗走账户上所有APE的。**

教大家一个查看钱包地址对哪些合约进行了授权，以及如何撤销授权的方法。

打开Metamask钱包，如图所示，选择“在Etherscan上查看账户”，在页面里打开“更多的”，选择“令牌批准”，会跳转到授权查询页面。

![](https://storage.googleapis.com/papyrus_images/e9b6eeb39c4a3bea7707e1a34d21dbc1e55f4662e24d004af00acbbcc3483420.png)

![](https://storage.googleapis.com/papyrus_images/ee6bce4c9057eac85bf056dedbb1e8f63519a6335d247131dced870d270bb0c9.png)

我们可以通过输入特定的钱包地址来查询已经授权的合约列表以及具体情况，在显示出来的查询信息中会看到三种协议标准（针对以太坊主网络），分别是“ERC20”、“ERC721”和“ERC1155”，简单理解就是**ERC20协议下是加密货币的授权情况，ERC721协议下是NFT的授权情况，ERC1155协议下则可能同时包含一些加密货币和NFT的授权情况。**

分别点击三种协议，查看对应的钱包地址里有哪些授权，比如在该钱包里的ERC721协议下，有三个关于NFT的授权，可以看到授权时间，授权的NFT资产，授权的对象以及撤销授权按钮。对于一些有风险的授权，以及预计未来不会再使用的授权对象就可以点击撤销授权。

![](https://storage.googleapis.com/papyrus_images/313b1f7efebe54bac7238ef03f09fde74c764c749fc812d4837004d5c9237dc6.png)

想要撤销的话，就需要先登录钱包，然后在想要撤销授权的合约后面点击“撤销”——**注意，授权与解除授权都是链上操作，都是需要支付GAS-FEE的。**

![](https://storage.googleapis.com/papyrus_images/9c55154767b2d57e42acd4075aeb7c409181ffaae85449655cc9d4d5c999dc0d.png)

**4.如何从日常交互方面保护资产安全。**

其一，钱包交互之前要多验证。

在写这一节的前两天，我就不小心进入了一个钓鱼网站，虽然没有造成资产丢失，但是回想起来还是有些后怕，事情是怎么发生的呢？

我首先进入了某个很有名的Web3项目的官方推特首页，在官方推特下浏览其推文，进入某一个感兴趣的推文里后，想着这里应该还算安全，就有点放松警惕了。没想到的是，评论区里有一个和官方账号头像、昵称一模一样的钓鱼账号发布了一条钓鱼链接，该账号还有“蓝色勾勾”认证，我不疑有他就点击进入并连接上了钱包。

好在连接钱包后意识到不对劲，没有进行钱包方面的签名和授权，而是回到推特点进了钓鱼账号的首页查看，结果对方根本不是官方账号，粉丝量也只有二十几个（注意，有的钓鱼号甚至会买几万到十几万的粉丝量），于是马上退出登录，把钱包里的资产转移到安全地带了。

从中我吸收的教训就是，以后**用钱包进行交互之前一定要多验证，而不能掉以轻心，要知道骗子为了做出“业绩”，其骗术也一直在更新换代。**

* * *

其二，尽量只与头部项目进行合约交互。

在Web3世界不要去尝试一些不知名的小项目，也不要将钱包连接到它们的网站，其风险太大。而是参与那些在圈子内已经很出名，已经是大多数人都在使用的头部项目，与这些项目的合约发生交互面临的风险会相对低上很多——但依旧有风险，只要与任何合约进行交互就存在风险威胁的可能性。

其三，学会用最小资金试错。

之前聊过的转账方面也要注意，确保转账地址是正确的，在提现和充值时确保网络是正确的，在进行没把握的转账操作之前，可以用最小资金先转账一遍，成功到账了再操作后续。

其四，确保设备的运行环境安全。

用于Web3探索的设备不要进入和下载那些具有安全隐患的网站和应用，以免被植入恶意程序，威胁到钱包和资金安全。

**5.写在最后**

在Web3世界已经有很多人出于各种原因而丢失了自己的资产，可以预见的是，未来也还会有很多人不幸中招。为了不让自己成为其中的一员，我们一定要掌握好最基本的安全知识，同时还要不断保持学习，提高自己的安全意识。

---

*Originally published on [Web3升级打怪](https://paragraph.com/@web3-59/web3-2)*
