![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
区块链
文章平均质量分 91
通过教程讲解区块链相关内容
一只路过的小码农cxy
咳咳
展开
-
以太坊事务状态 - Pending, Mined, Dropped & Replaced
简单来说,内存池是节点中未确认交易的暂存区。也就是说,如果一个地址没有已确认的交易,它会将第一笔交易标记为 0 的 nonce,并将希望发送的后续交易标记为 1 的 nonce。如果第二个交易被确认到区块链上(例如通过发送一个具有相同nonce和更高gas价格的新交易),那么“被拒绝”的交易将被移动到新的交易状态类别,即“Dropped & Replaced”。然而,如果在创建哈希事务之前设置唯一的nonce,它将防止重放攻击,因为每个确认的交易必须具有唯一的nonce值,随后的相同交易将失败。原创 2023-05-15 23:39:14 · 1038 阅读 · 1 评论 -
solidity教学--快速入门
通过以下方式,对堆栈的访问仅限于顶端:可以将最顶端的 16 个元素之一复制到堆栈的顶部,或者将最顶端的元素与其下方的 16 个元素之一交换。当然,可以将堆栈元素移动到存储或内存中,以便更深入地访问堆栈,但如果不先移除堆栈顶部,就不可能访问堆栈中更深层的任意元素。如前所述,该合约的地址不是零地址,而是从发送方及其发送的交易数量(“随机数”)派生的地址。由于部分日志数据存储在布隆过滤器中,因此可以以高效且加密安全的方式搜索此数据,因此不下载整个区块链的网络对等点(所谓的“轻客户端”)仍然可以 找到这些日志。原创 2023-05-07 23:49:44 · 572 阅读 · 0 评论 -
如何构建“Buy Me a Coffee”DeFi dApp
建立在区块链之上的分散化应用程序的一个好处是,世界各地的任何人都可以使用一个以太坊钱包来访问该应用程序,任何人都可以在不到1分钟的时间内免费设置一个以太坊钱包。这是一个我部署的示例合约,您可以使用它,但是如果您这样做...所有发送到您的网站的小费都将发送到我的地址 :)稍后当我们发布我们的网站时,我们需要一种方式来收集我们的朋友和粉丝留给我们的所有精彩小费。Replit的精妙之处在于,一旦你的网站建好,你可以回到你的个人资料,找到Replit项目链接,然后将其发送给朋友,让他们访问你的小费页面。原创 2023-05-14 15:49:41 · 989 阅读 · 2 评论 -
如何使用Alchemy开发NFT智能合约(ERC721)
像OpenZeppelin Wizard这样的工具,为开发人员提供了点击和编写功能,可以在短时间内创建可组合和安全的智能合约,再加上Web3开发人员工具Alchemy的支持,让编写和部署区块链上的代码的体验变得比以往任何时候都更容易、更快速、更可靠。现在您需要选择要集成到我们的智能合约中的功能,在“设置”部分之后,您将找到“功能”部分,在那里您将能够选择要包括在您的智能合约中的不同模块。原创 2023-05-12 21:55:24 · 1396 阅读 · 0 评论 -
solidity--语言基础
如果 x 是合约地址,它的代码(更具体地说:它的 Receive Ether Function,如果存在,或者它的 Fallback Function,如果存在)将与转移调用一起执行(这是 EVM 的一个特性,无法阻止 ). 如果执行耗尽 gas 或以任何方式失败,以太币转移将被还原,当前合约将异常停止。内部函数只能在当前合约内部调用(更具体地说,在当前代码单元内部,也包括内部库函数和继承函数),因为它们不能在当前合约的上下文之外执行。部分(是可选的)声明了与外部调用返回的类型相匹配的返回变量。原创 2023-05-08 00:17:40 · 628 阅读 · 0 评论 -
solidity -- 合约
在不同的合约(实例)上调用函数将执行 EVM 函数调用,从而切换上下文,使得调用合约中的状态变量不可访问。编译器生成的合约创建代码将在合约返回之前修改合约的运行时代码,方法是将所有对不可变对象的引用替换为分配给它们的值。内部可见性函数访问可以在当前合约或派生的合约访问,不可以外部访问。的变量受到的限制要少一些:可以在合约的构造函数中或在声明时为不可变变量分配任意值。只能使用在当前合约或在基类合约中定义的 修改器modifier , 修改器modifier 也可以定义在库里面,但是他们被限定在库函数使用。原创 2023-05-09 12:14:23 · 1026 阅读 · 1 评论