#BUIDL #Crypto

安全第一 | 2. 如何识别貔貅 Token
貔貅(pí xiū)——为中国传说的一种瑞兽。以金银珠宝为食,而且嘴大食四方,吃得自己浑身珠光宝气!更奇特的是,它没有屁屁,财宝只进不出。 在吉祥物的排行榜里你可能非常想拥有的就是它,而在加密货币领域,貔貅盘的意思只能买进不能卖出,有的是只有项目方的地址才能卖出,有的是只能卖一次或者只能小额才能卖出等等。 利用投资者 “不想错过新币,想尽快抢先买进获利卖出” 的心理,此时的投资者因为幻想着梭哈暴富,所以防范会降低,一不小心就会点击群里的链接或者复制不经过验证的合约地址进行交易,交易过后才知道被骗。 我们也梳理了验证貔貅 Token 的几个技巧: 一、看合约是否已通过验证开源 合约开源的一个好处就是增加合约的公信力,接受群众的监督。新 Token 的发行,稍微有点实力的项目方都会选择开源。打开 https://etherscan.io/,输入 Token 合约地址,如果 Contract 旁边有绿色的 ✅,说明项目方已验证的合约来源,可以直接查看合约的 Source Code,相反则没有。当然,即使开源了合约代码,也可能存在猫腻,例如通过代理合约调用隐藏合约的方式。 二、Token...

走进科学 | 4. 使用 Etherscan 快速调用合约
通过项目方提供的网页在进行铸造 NFT、参与热门币种打新等操作时,由于网站访问人数较多,或被黑客恶意 DDOS 攻击,经常会导致 502 请求过载错误打不开网页,多次刷新进入网站后,却提示 ”Sold Out“ 显示售罄,错失参与时机后拍断大腿。之前比较热门的 NFT 项目,比如小幽灵 @WeirdoGhostGang 和 Cool Cats @coolcatsnft 的 Pets 发售时,项目方都通过服务器扩容、限制IP等一系列防护措施保障用户体验,而通过 Etherscan 来调用合约则是提供了另一种更为高效的方式,不再受限于项目方提供的网页加载速度。 Etherscan @etherscan 是支持以太坊公链的区块浏览器,提供友好的界面,让用户能够以更容易理解的方式来访问区块链上的数据。通过前面小节的介绍,相信大家已经可以独立获取到项目的合约地址;以 adidas Originals @adidas 的合约地址为例:https://etherscan.io/address/0x28472a58a490c5e09a238847f66a68a47cc76f0f。通过链接查看合约...

走进科学 | 3. 如何通过水龙头领取测试币
在 “走进科学” 系列文章中,我们会在以太坊测试网中搭建靶场供大家练习,所以在这之前,大家还需要学会领取测试网的测试币。领取测试币的网站被称为水龙头(faucet),测试币被称为水,所以领取测试币的过程也被叫做领水。 我们以 Rinkeby 的测试币领取为例讲解过程,其他测试网的测试币领取方式类似,大家可以把几个测试网的水都领一些,后面的试炼场我们会用到不同的测试网。 第一步、在 metamask “设置” → “高级” 中找到“显示测试网”的开关并启用。第二步、启用测试网络后在网络中可以看到 Ropsten 、 Kovan 、 Rinkeby 和 Goerli 四个测试网络,四个测试网络各有特点, Ropsten 采用 POW 机制,可以自己搭建节点挖测试币,但是稳定性较差,偶尔还会遇到区块回滚的情况,很多实验性测试,比如 “区块阻塞攻击” 实验会放到这个测试网来测试; Kovan 、 Rinkeby 和 Goerli 是采用 POA 机制,这几个测试网络不能通过挖矿的方式获取测试币,只能通过水龙头(文章后面会公布水龙头领取方式)领取,我们以 Rinkeby 为例讲解领取过程,...

安全第一 | 2. 如何识别貔貅 Token
貔貅(pí xiū)——为中国传说的一种瑞兽。以金银珠宝为食,而且嘴大食四方,吃得自己浑身珠光宝气!更奇特的是,它没有屁屁,财宝只进不出。 在吉祥物的排行榜里你可能非常想拥有的就是它,而在加密货币领域,貔貅盘的意思只能买进不能卖出,有的是只有项目方的地址才能卖出,有的是只能卖一次或者只能小额才能卖出等等。 利用投资者 “不想错过新币,想尽快抢先买进获利卖出” 的心理,此时的投资者因为幻想着梭哈暴富,所以防范会降低,一不小心就会点击群里的链接或者复制不经过验证的合约地址进行交易,交易过后才知道被骗。 我们也梳理了验证貔貅 Token 的几个技巧: 一、看合约是否已通过验证开源 合约开源的一个好处就是增加合约的公信力,接受群众的监督。新 Token 的发行,稍微有点实力的项目方都会选择开源。打开 https://etherscan.io/,输入 Token 合约地址,如果 Contract 旁边有绿色的 ✅,说明项目方已验证的合约来源,可以直接查看合约的 Source Code,相反则没有。当然,即使开源了合约代码,也可能存在猫腻,例如通过代理合约调用隐藏合约的方式。 二、Token...

走进科学 | 4. 使用 Etherscan 快速调用合约
通过项目方提供的网页在进行铸造 NFT、参与热门币种打新等操作时,由于网站访问人数较多,或被黑客恶意 DDOS 攻击,经常会导致 502 请求过载错误打不开网页,多次刷新进入网站后,却提示 ”Sold Out“ 显示售罄,错失参与时机后拍断大腿。之前比较热门的 NFT 项目,比如小幽灵 @WeirdoGhostGang 和 Cool Cats @coolcatsnft 的 Pets 发售时,项目方都通过服务器扩容、限制IP等一系列防护措施保障用户体验,而通过 Etherscan 来调用合约则是提供了另一种更为高效的方式,不再受限于项目方提供的网页加载速度。 Etherscan @etherscan 是支持以太坊公链的区块浏览器,提供友好的界面,让用户能够以更容易理解的方式来访问区块链上的数据。通过前面小节的介绍,相信大家已经可以独立获取到项目的合约地址;以 adidas Originals @adidas 的合约地址为例:https://etherscan.io/address/0x28472a58a490c5e09a238847f66a68a47cc76f0f。通过链接查看合约...

走进科学 | 3. 如何通过水龙头领取测试币
在 “走进科学” 系列文章中,我们会在以太坊测试网中搭建靶场供大家练习,所以在这之前,大家还需要学会领取测试网的测试币。领取测试币的网站被称为水龙头(faucet),测试币被称为水,所以领取测试币的过程也被叫做领水。 我们以 Rinkeby 的测试币领取为例讲解过程,其他测试网的测试币领取方式类似,大家可以把几个测试网的水都领一些,后面的试炼场我们会用到不同的测试网。 第一步、在 metamask “设置” → “高级” 中找到“显示测试网”的开关并启用。第二步、启用测试网络后在网络中可以看到 Ropsten 、 Kovan 、 Rinkeby 和 Goerli 四个测试网络,四个测试网络各有特点, Ropsten 采用 POW 机制,可以自己搭建节点挖测试币,但是稳定性较差,偶尔还会遇到区块回滚的情况,很多实验性测试,比如 “区块阻塞攻击” 实验会放到这个测试网来测试; Kovan 、 Rinkeby 和 Goerli 是采用 POA 机制,这几个测试网络不能通过挖矿的方式获取测试币,只能通过水龙头(文章后面会公布水龙头领取方式)领取,我们以 Rinkeby 为例讲解领取过程,...
#BUIDL #Crypto

Subscribe to web3eye.eth

Subscribe to web3eye.eth
Share Dialog
Share Dialog


<100 subscribers
<100 subscribers
签名这个词语对我们来说并不陌生,在很多场景中都会使用到签名。比如:
1、登录某网站时,连接钱包之后会提示你进行签名。
2、discord 使用 collab.land 进行身份认证时,要求连接钱包并签名。
3、在 coinlist 登记优先队列时,也会用参与任务的钱包地址签名进行认证。
或许上面这些场景你都没遇到过,但其实只要你使用过 eth 进行转账,其实你也用到过签名,只不过签名的步骤包含在发起交易的过程中了。所以签名在加密世界里面无处不在,我们如果要使用代码去调用合约抢跑交易,自然也是少不了签名的,所以在本文中,我们将重点讨论下签名的原理和工具。
什么是签名
现实生活中我们都有过签名的经历,很多时候不仅要签名还要盖上指纹印,这里签名的作用就是通过字迹和指纹来证明这是经过你本人确权的,是有法律效应的。当然,我们这里要讨论的是数字签名,和现实中的签名类似,也是要证明你签署的信息或者交易确实是你本人发起的,它的主要作用就是保证了数据的有效性(验证是谁发的)和完整性(证明信息没有被篡改)。这一过程是如何做到的呢?
我们的钱包地址都会有一个私钥,私钥是唯一的并且非常重要,如果别人知道你的私钥他就可以盗走你的资金,拥有私钥的人就拥有整个钱包资产的所有权。这个私钥可以推导公钥,但由于公钥太长,为了简便实用,就出现了“地址”,地址是公钥推导出来的。这些推导过程是单向不可逆的,所以地址不能推出公钥,公钥也不能推出私钥。对比生活中的签名,你的字迹和指纹就代表了你的私钥,只有你可以解锁你的资产。而数字签名就是用你的私钥签署一段信息,而验证人可以通过公钥来验证签署信息的合法性。
注意签名安全
在新版的 metamask 中,会把签名的原始信息展示给用户,比如使用 collab.land 验证 discord 的身份时,点击签名按钮之后会出现签名确认的界面,如图所示:

除了特别注意签名的原始内容之外,还要注意签名界面上发起签名的网页地址是正确的网页地址。
对于一些比较复杂的交易,也要注意签名内容是否正确,比如在 opensea 升级之后,会重点显示签名的原始信息,需要核实签名的信息和当前设置的价格是否一致,以及合约地址等信息,当然重点也要关注发起签名的网页地址是否是官方地址。

所以在签名的过程中,应该反复确认签名的网页发起地址和签名内容,而对于不能确认的网页地址或者域名,或者出现了自己不能确认的签名内容,千万不要确认签名。
签名的工具
在 coinlist 验证优先队列的时候,需要对一段特定的文字进行签名,并提交签名结果,遇到这样的场景,推荐使用 myetherwallet 进行签名和验签,具体使用方法如下:
1、访问 https://www.myetherwallet.com/,选择 “Access my wallet”

2、选择 "Browser Extension", 选择该项使用浏览器钱包,选择小狐狸钱包

3、进入 dashboard 之后,找到左边菜单栏的 “Message” 菜单,这里提供了签名和验签的功能

4、点击 “Sign message”,使用签名功能,输入一段文字信息,如 “I love Web3Eye” ,点击 “Sign” 按钮会调用小狐狸钱包,对签名的内容进行确认,然后点击 “签名按钮完成签名” 。

5、在跳转的页面中便可以看到签名的返回结果,“sig” 字段便是对原始信息 “I love Web3Eye” 签名之后的信息。

6、复制签名信息,可到 “Verify Message” 中进行验签

除此之外,etherscan 也提供了签名和验签的功能,我们也可以把上面的签名结果拿去 etherscan 进行验证。
1、访问 https://etherscan.io/verifiedSignatures,选择 “Verify Signature” 按钮,依照上面的签名信息分别填入地址,签名原始信息和签名信息( sig 字段中的信息,注意在 etherscan 中使用需要加上 0x 的前缀)

2、点击 “continue” 之后便可查看签名结果,注意这里默认选择不对外发布签名信息,这样你签名的信息只有你自己看到,如果选择下面的 “verify & publish ...” 便会将签名信息发布出去,别人也能访问到。

如果你替换签名的信息或者地址,便不能通过验证签名,即使只是改变原始消息的大小写也不能通过验证。

3、点击 “Sign Message” 按钮,可以连接钱包之后,输入原始信息进行签名,该过程和 myetherwallet 类似,大家可以体验一下,这里不再赘述。
至此,我们已对签名有初步的了解和认知,并能使用一些工具进行签名和验签,当然,这已经能帮助我们完成一些工作了,但如果要在抢跑过程中用代码实现签名交易,自动发送交易还需要有更深入的学习和了解,在后面的小节中我们再详细讲解。
关于我们
Web3Eye 是一个专注于技术研究和分享的 Web3 加密技术社区,团队拥有多年区块链研发经验和安全技术能力,以帮助更多人安全地进入 Web3 世界,欢迎关注我们的 Twitter 帐号,了解最新动态。
签名这个词语对我们来说并不陌生,在很多场景中都会使用到签名。比如:
1、登录某网站时,连接钱包之后会提示你进行签名。
2、discord 使用 collab.land 进行身份认证时,要求连接钱包并签名。
3、在 coinlist 登记优先队列时,也会用参与任务的钱包地址签名进行认证。
或许上面这些场景你都没遇到过,但其实只要你使用过 eth 进行转账,其实你也用到过签名,只不过签名的步骤包含在发起交易的过程中了。所以签名在加密世界里面无处不在,我们如果要使用代码去调用合约抢跑交易,自然也是少不了签名的,所以在本文中,我们将重点讨论下签名的原理和工具。
什么是签名
现实生活中我们都有过签名的经历,很多时候不仅要签名还要盖上指纹印,这里签名的作用就是通过字迹和指纹来证明这是经过你本人确权的,是有法律效应的。当然,我们这里要讨论的是数字签名,和现实中的签名类似,也是要证明你签署的信息或者交易确实是你本人发起的,它的主要作用就是保证了数据的有效性(验证是谁发的)和完整性(证明信息没有被篡改)。这一过程是如何做到的呢?
我们的钱包地址都会有一个私钥,私钥是唯一的并且非常重要,如果别人知道你的私钥他就可以盗走你的资金,拥有私钥的人就拥有整个钱包资产的所有权。这个私钥可以推导公钥,但由于公钥太长,为了简便实用,就出现了“地址”,地址是公钥推导出来的。这些推导过程是单向不可逆的,所以地址不能推出公钥,公钥也不能推出私钥。对比生活中的签名,你的字迹和指纹就代表了你的私钥,只有你可以解锁你的资产。而数字签名就是用你的私钥签署一段信息,而验证人可以通过公钥来验证签署信息的合法性。
注意签名安全
在新版的 metamask 中,会把签名的原始信息展示给用户,比如使用 collab.land 验证 discord 的身份时,点击签名按钮之后会出现签名确认的界面,如图所示:

除了特别注意签名的原始内容之外,还要注意签名界面上发起签名的网页地址是正确的网页地址。
对于一些比较复杂的交易,也要注意签名内容是否正确,比如在 opensea 升级之后,会重点显示签名的原始信息,需要核实签名的信息和当前设置的价格是否一致,以及合约地址等信息,当然重点也要关注发起签名的网页地址是否是官方地址。

所以在签名的过程中,应该反复确认签名的网页发起地址和签名内容,而对于不能确认的网页地址或者域名,或者出现了自己不能确认的签名内容,千万不要确认签名。
签名的工具
在 coinlist 验证优先队列的时候,需要对一段特定的文字进行签名,并提交签名结果,遇到这样的场景,推荐使用 myetherwallet 进行签名和验签,具体使用方法如下:
1、访问 https://www.myetherwallet.com/,选择 “Access my wallet”

2、选择 "Browser Extension", 选择该项使用浏览器钱包,选择小狐狸钱包

3、进入 dashboard 之后,找到左边菜单栏的 “Message” 菜单,这里提供了签名和验签的功能

4、点击 “Sign message”,使用签名功能,输入一段文字信息,如 “I love Web3Eye” ,点击 “Sign” 按钮会调用小狐狸钱包,对签名的内容进行确认,然后点击 “签名按钮完成签名” 。

5、在跳转的页面中便可以看到签名的返回结果,“sig” 字段便是对原始信息 “I love Web3Eye” 签名之后的信息。

6、复制签名信息,可到 “Verify Message” 中进行验签

除此之外,etherscan 也提供了签名和验签的功能,我们也可以把上面的签名结果拿去 etherscan 进行验证。
1、访问 https://etherscan.io/verifiedSignatures,选择 “Verify Signature” 按钮,依照上面的签名信息分别填入地址,签名原始信息和签名信息( sig 字段中的信息,注意在 etherscan 中使用需要加上 0x 的前缀)

2、点击 “continue” 之后便可查看签名结果,注意这里默认选择不对外发布签名信息,这样你签名的信息只有你自己看到,如果选择下面的 “verify & publish ...” 便会将签名信息发布出去,别人也能访问到。

如果你替换签名的信息或者地址,便不能通过验证签名,即使只是改变原始消息的大小写也不能通过验证。

3、点击 “Sign Message” 按钮,可以连接钱包之后,输入原始信息进行签名,该过程和 myetherwallet 类似,大家可以体验一下,这里不再赘述。
至此,我们已对签名有初步的了解和认知,并能使用一些工具进行签名和验签,当然,这已经能帮助我们完成一些工作了,但如果要在抢跑过程中用代码实现签名交易,自动发送交易还需要有更深入的学习和了解,在后面的小节中我们再详细讲解。
关于我们
Web3Eye 是一个专注于技术研究和分享的 Web3 加密技术社区,团队拥有多年区块链研发经验和安全技术能力,以帮助更多人安全地进入 Web3 世界,欢迎关注我们的 Twitter 帐号,了解最新动态。
No activity yet