solidity0.8.0的应用案例13:数字签名及应用:NFT白名单

以太坊中的数字签名ECDSA,以及如何利用它发放NFT白名单

代码中的ECDSA库由OpenZeppelin的同名库简化而成。

数字签名

如果你用过opensea交易NFT,对签名就不会陌生。下图是小狐狸(metamask)钱包进行签名时弹出的窗口,它可以证明你拥有私钥的同时不需要对外公布私钥。

metamask签名

 

以太坊使用的数字签名算法叫双椭圆曲线数字签名算法(ECDSA),基于双椭圆曲线“私钥-公钥”对的数字签名算法。它主要起到了三个作用:

  1. 身份认证:证明签名方是私钥的持有人。
  2. 不可否认:发送方不能否认发送过这个消息。
  3. 完整性:消息在传输过程中无法被修改。

ECDSA合约

ECDSA标准中包含两个部分:

  1. 签名者利用私钥(隐私的)对消息(公开的)创建签名(公开的)。
  2. 其他人使用消息(公开的)和签名(公开的)恢复签名者的公钥(公开的)并验证签名。 我们将配合ECDSA库讲解这两个部分。本教程所用的私钥公钥消息以太坊签名消息签名如下所示:
私钥: 0x227dbb8586117d55284e26620bc76534dfbd2394be34cf4a09cb775d593b6f2b
公钥: 0xe16C1623c1AA7D919cd2241d8b36d9E79C1Be2A2
消息: 0x1bf2c0ce4546651a1a2feb457b39d891a6b83931cc2454434f39961345ac378c
以太坊签名消息: 0xb42ca4636f721c7a331923e764587e98ec577cea1a185f60dfcc14dbb9bd900b
签名: 0x390d704d7ab732ce034203599ee93dd5d3cb0d4d1d7c600ac11726659489773d559b12d220f99f41d17651b0c1c6a669d346a397f8541760d6b32a5725378b241c

 创建签名

1. 打包消息:

 在以太坊的ECDSA标准中,被签名的消息是一组数据的keccak256哈希,为bytes32类型。我们可以把任何想要签名的内容利用abi.encodePacked()函数打包,然后用keccak256()计算哈希,作为消息。我们例子中的消息是由一个address类型变量和一个uint256类型变量得到的:

    /** 将mint地址(address类型)和tokenId(uint256类型)拼成消息msgHash* _account: 0x5B38Da6a701c568545dCfcB03FcB875f56beddC4* _tokenId: 0* 对应的消息msgHash: 0x1bf2c0ce4546651a1a2feb457b39d891a6b83931cc2454434f39961345ac378c*/function getMessageHash(address _account, uint256 _tokenId) public pure returns(bytes32){return keccak256(abi.encodePacked(_account, _tokenId));}

 

打包消息

 2. 计算以太坊签名消息: 

所谓计算以太坊签名消息,本质上是第二次打包消息,只是这次打包是在上一次打包消息的基础上,加上一个字符串作为编码的一部分:"\x19Ethereum Signe

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1549550.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Adobe Reader 文档无法签名_Adobe | Acrobat amp; Reader多个安全漏洞通告

0x00 漏洞概述 2020年11月03日,Adobe发布了关于Adobe Acrobat和Reader的14个安全更新,其中包括多个任意代码执行漏洞。Adobe表示目前还没有发现任何关于这些漏洞的野外攻击事件。 0x01 漏洞详情 Adobe Acrobat和Adobe Reader都是Adobe官方出品的PDF文档解决方案套件。Adobe R…

Adobe Reader 文档无法签名_如何在Mac上使用预览对PDF进行电子签名

当您通过电子邮件收到必须签名的PDF文档时,打印文件,用钢笔在虚线上签名,扫描签名的文档并将其发回的过程可能是一项相当繁琐的任务。幸运的是,苹果公司增加了使用预览功能对PDF文档进行电子签名的功能,该程序预先安装…

adobe reader XI 打开后闪退(或过几秒后自动退出)【终极解决方案】

Adobe Reader 11打开后闪退(或过几秒后自动退出)【终极解决方案】 win10系统解决2020年2月份Adobe ReaderXI自动关闭问题: (以下方法任一种均可) 方法一、更新补丁 注意:先请安装11.0.00正式版&#xf…

【地理图库】世界小麦产量分布

声明:来源网络,仅供学习!

多肽合成15266-88-3产品特点介绍,Cyclo(glycyl-L-histidyl)

中文名:环(甘氨酰-L-组氨酰) 英文名:cyclo(Gly-His) CYCLO(-GLY-HIS) Cyclo(glycyl-L-histidyl) (S)-3-(1H-Imidazol-4-ylmethyl)-2,5-piperazinedione CAS:15266-88-3 分子式:C8H10N4O2 分子量:194.191 密度 …

Windows运行Spark所需的Hadoop安装

解压文件 复制bin目录 找到winutils-master文件hadoop对应的bin目录版本 全部复制替换掉hadoop的bin目录文件 复制hadoop.dll文件 将bin目录下的hadoop.dll文件复制到System32目录下 配置环境变量 修改hadoop-env.cmd配置文件 注意jdk装在非C盘则完全没问题,如果装在…

郑义宣就任韩国现代汽车集团会长;爱立信携手中国电信运用爱立信频谱共享技术 | 美通企业日报...

今日看点 现代汽车集团(Hyundai Motor Group)宣布,集团首席副会长郑义宣(Euisun Chung)就任集团会长。原集团会长郑梦九(Mong-Koo Chung)将担任集团名誉会长。现代汽车公司、起亚汽车公司(Kia Motors Corporation)和现代摩比斯公司(Hyundai Mobis Co.)分别召开了特别…

互联网快讯:京东公布“双11”节奏;猿辅导、掌门教育布局素质教育

零售电商 1、京东公布“双11”节奏:10月20日晚8点正式开启预售,10月31日晚8点提前开抢 2、达达快送发布即时配送SaaS系统“达达智配”,赋能配送服务商提升行业效能 3、天猫国际加速推进“五新”策略,双11重点孵化40个新品类 4…

怎样启动华为桌面服务器,[图]华为鲲鹏服务器/台式机主板登场:为ARM处理器打开桌面市场大门...

华为官网介绍如下鲲鹏台式机主板是基于华为鲲鹏920处理器开发的办公应用主板,兼容业界主流内存、硬盘、网卡等硬件,支持Linux桌面操作系统,提供机箱、散热、供电等参考设计指南,具有高性能、接口丰富、高可靠性、易用性等特点。 根…

百度超级链捐赠开放原子开源基金会一周年,XuperChain成果一览

摘要 2020年9月9日,开放原子开源基金会正式与百度完成了超级链内核项目捐赠协议的签署,这一捐赠协议意味着百度自主研发的超级链技术将依托于开源基金会以全新的组织形态进行运作。此项目作为开源基金会区块链领域首个捐赠项目进行孵化,并在全…

容联云与20多家银行齐聚,共探客服中心与远程银行建设新业态

以客户为中心、以数字为根底、以科技为驱动的非接触金融服务成为金融新业态。聚焦客户体验提升和价值创造的客服中心和远程银行随之迎来前所未有的发展新机遇,成为金融行业数字化转型的重要突破口。 近日,容联云与金科创新社联合举办2021客服中心与远程银…

区块链、AI遇上艺术,科技突破艺术的想象空间

近期,在中国最高的美术馆——上海云间美术馆,来自人工智能和区块链领域的专家、高校学者和知名艺术家,共同展开了一场关于区块链、人工智能和数字艺术的深度交流,探讨区块链和人工智能赋能数字艺术的新方向。 与会嘉宾认为&#x…

数据生态、数字人民币、5G消息……看2022银行数字化七大趋势

以大数据、人工智能、5G、物联网、区块链等为代表的数字科技,持续驱动银行业数字化发展,各机构借助金融科技降低成本、提升质效、增强用户体验、优化业务模式。 中国电子银行网综合过去一年的行业成果与近期的关键动态,展望2022年银行数字化…

金融×元宇宙:虚实交融共进下的金融体系

近年来,“DeFi”、加密货币等在部分海外国家迅速发展,但也引发了许多争议。部分观点认为伴随元宇宙概念的逐步成熟,或产生以加密货币、“DeFi”为底座、融合去中心化思想的金融体系,也有观点认为加密货币是没有价值的泡沫&#xf…

国家级区块链基础设施BSN推出BSN-DDC以支持部署NFT

摘要 产业动态: 谷歌成立区块链部门,将专注于分布式计算、存储等技术 腾讯最快于月内向日本企业提供元宇宙业务服务 目前暂无公司成功注册“元宇宙”相关商标 政策相关: 央行、公安部等11部门联合开展打击治理洗钱违法犯罪三年行动 北京市广播…

面对10亿用户流量,餐饮商家如何打破运营僵局

面对10亿用户流量,餐饮商家如何打破运营僵局? 2017年1月9日微信小程序发布后,餐饮行业动作频频,麦当劳、肯德基、星巴克、等餐饮大品牌相继加入了小程序的行列。根据微信小程序第三方制作平台即速应用相关数据显示,餐饮类小程序月平均流量以及订单量在8月时出现明显增长,…

数字藏品大开杀戒,如何保护好自己的钱包?

数字藏品打响平台“保卫战” 2021年以来,数字藏品,作为一种新型可确权、可追溯的数字艺术文化消费形式,迅速席卷文创市场,中小型企业、互联网巨头、金融机构、传统上市公司甚至官方机构持续涌入其中,涉及领域之多、入…

TaiShan服务器介绍

TaiShan服务器系列介绍 TaiShan 100服务器2016年 基于Kunpeng916处理器 最多16各DDR4内存 支持5个PCIe 3.0扩展插槽 支持SAS/SATA硬盘和SSD 支持板载GE/10GE网络 TaiShan 200服务器2019年 基于Kunpeng 920处理器 最多支持32个DDR4内存 支持最多8个PCLe 4.0扩展插槽 支持NVMe …

百信银行开局漂亮,百度和中信会成为智能金融模范夫妻吗?

今天(4月3日),百度高级副总裁朱光受邀出席中信集团品牌发布会,现场分享了百信银行自开业四个月以来的成绩:系统运行平稳,余额近80亿元,已授信用户数超100万人,累计放款规模超150亿元…