变量是编程语言中最基本的元素。 基本使用 创建一个变量 use debug::PrintTrait; fn main() { let x = 5; x.print(); } 使用let关键字来创建一个...
Cairo1.0程序的入口
单文件Cairo程序入口 与大多数编程语言类似,单文件的Cairo程序入口是main函数。 use debug::PrintTrait; const ONE_HOUR_IN_SECONDS: felt...
预女巫攻击:在隐私保护下进行合约速率限制
速率限制? n-per-epoch 库使合约创建者能够在定义的时间周期内限制特定用户调用函数的次数。时间周期的持续时间非常灵活,允许开发者将其设置为接近无限(永远只能调用一次)或者设置为很短的时间以实...
一段Solidity汇编代码逻辑整理
/// @solidity memory-safe-assembly assembly {// solhint-disable-line no-inline-assembly let ptr:= ml...
数额太小的闪电支付是不安全的吗?
摘要:在闪电网络上发起小额支付时,尤其是在链上手续费 “较高” 的环境中,闪电网络的 HTLC 系统的安全性收益可能在一定程度上是有限的。这个问题可能仅在非常少数的场景中出现,也即当支付还在转发的时候...
扩展公钥与扩展私钥
比特币钱包软件让你可以在同一个应用中使用许多个 “钱包” 并生成无数个地址。理解 “xPub” 和 “xPriv” 可以帮助你理解这是怎么做到的。 “xPub” 是 “扩展公钥(Extended Pu...
BIP 324 点对点加密传输协议简介
引言 BIP324 提出了一种新的比特币点对点通信协议,其特性有:伺机自动加密(opportunistic encryption)、节约少许带宽,以及可以在交换应用消息前协商更新。 完整的说明书已经形...
BIP 158 致密区块过滤器详解
在本文中,我会简要介绍比特币轻客户端的需要,以及为什么 “致密区块过滤器(compact block filters)” 比 “布隆过滤器(Bloom filters)” 更好地满足了这种需要。然后,...
币安BSC智能链发币教程——lp分红usdt,限制撤销流动性,禁止lp在不同钱包之间转移的合约实现【pdf+视频BSC发币教程下载】
一、合约说明 该合约主要实现加池分红usdt的功能,同时考虑到项目运营过程中避免流动性随意撤销,增加必要的功能限制,只有当前代币价格高于初始上线价格指定数量时才允许用户撤销流动性。增加禁止lp在不同钱...
BSC layer2 opBNB领取空投教程
币安又搞事情了!BNB链 也加入Layer2 大军了! 花费0成本,5个步骤,领取潜在价值5000美金的空投! opBNB 测试网已于6月19日上线,花了点时间做了一份保姆级的交互...
BTC API:如何在比特币网络上创建应用程序?
比特币是一种去中心化的数字货币,可以通过比特币API与比特币网络进行交互。比特币API是一组允许开发人员与比特币网络进行交互的编程接口,可以帮助开发者构建各种比特币应用程序。 比特币API可以用于创建...
著名的区块链漏洞:双花攻击
介绍: 区块链技术通过提供去中心化和透明的系统彻底改变了各个行业。 但是,与任何技术一样,它也不能免受漏洞的影响。一个值得注意的漏洞是双花攻击。 在本文中,我们将深入研究双花攻击的复杂性,探讨其工作原...