自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(182)
  • 收藏
  • 关注

原创 智能合约开发中13种最常见的漏洞

1.重入攻击 2.整数溢出和下溢 3.未授权访问 4.不当的继承顺序 5.短地址攻击 6.断言失败 7.代理模式中的初始化漏洞 8.时间依赖性漏洞 9.Gas限制和DoS攻击 10.权限管理不当 11.外部调用 12.随机数生成 13.存储和计算效率

2024-06-06 13:36:56 5472 87

原创 智能合约中:可升级的代理合约

代理合约是一种设计模式,用于间接地执行另一个合约的功能。在代理模式下,代理合约接收外部调用,但并不直接执行这些调用,而是将调用转发给另一个合约(通常称为实施合约或目标合约)。可升级性:通过代理合约,实施合约可以在不影响外部接口的情况下被替换或更新,从而实现合约的升级。安全性:代理合约可以作为一层额外的安全屏障,用于实现访问控制、权限管理等,保护实施合约不受未经授权的访问。资源共享:代理合约可以持有资源(如ETH或NFT),而实施合约可以访问这些资源,但不直接拥有它们。

2024-07-24 07:30:00 588 9

原创 智能合约中最常见的11种函数

注意,这些示例仅展示了基础概念,实际的智能合约可能需要更复杂的错误检查和安全措施。编写智能合约时务必小心,因为一旦部署,代码通常是不可更改的,任何错误都可能导致资金损失或其他严重后果。

2024-07-22 11:23:27 1197 5

原创 智能合约中重放攻击

重放攻击(Replay Attack)是一种网络安全威胁,它发生在攻击者截获了合法用户与服务之间的有效数据传输(如认证令牌、加密消息、交易请求等),然后在稍后的时间重新发送这些数据,以欺骗服务端重复执行相同的操作。在区块链和智能合约的上下文中,重放攻击通常指的是攻击者试图重复提交已执行过的交易,以期达到某种恶意目的,比如多次转移资产、获取不当利益或滥用合约功能。在智能合约中,重放攻击通常涉及合约对某个操作的验证不足,导致攻击者能够重复提交有效的交易,即使这些交易已经被执行过。这可以防止过时的交易被重放。

2024-07-19 08:00:00 2789 97

原创 智能合约的重入攻击

智能合约的重入攻击是一种常见的安全漏洞,特别是在基于以太坊的区块链上,它利用了智能合约设计或实现中的缺陷。重入攻击的核心在于攻击者能够在一个交易的中间阶段,即智能合约尚未完成其预期的内部状态更新时,递归地调用合约的同一或另一个函数。

2024-07-17 14:09:56 2641 27

原创 智能合约中授权与转账的分离可行性分析

本文档旨在探讨智能合约中授权与转账操作为何通常被设计为分离的步骤,以及在授权与转账之后,是否能够立即进行连续的代币转移。我们将从安全性、效率、灵活性和操作流程的角度分析这些问题。智能合约设计中,授权与转账的分离是为了增强安全性和灵活性,而连续转账的可行性取决于合约逻辑、权限设置和网络状况。理解这些原则对于构建安全、高效和用户友好的区块链应用至关重要。

2024-07-16 10:50:11 1453 10

原创 rabbit启动:Error when reading /var/lib/rabbitmq/.erlang.cookie: eacces auth.erl

erlang.cookie 文件对 Erlang 节点之间的通信至关重要,因为它包含了节点间的认证信息。从提供的日志错误信息来看,问题出现在读取 /var/lib/rabbitmq/.erlang.cookie 文件时出现了权限错误(eacces),这通常意味着 Erlang 节点尝试读取 .erlang.cookie 文件时没有足够的权限。为了解决这个问题,你需要确保 Erlang 节点运行的用户(通常是 rabbitmq 用户)具有读取 .erlang.cookie 文件的权限。

2024-07-12 13:57:38 2475 23

原创 自动做市商AMM

在去中心化金融(DeFi)领域,这种集中式的做市模式并不适用,因为DeFi追求的是无需信任、无需许可和去中心化的交易环境。:AMM模型正在不断发展,出现了许多变种,如Uniswap V3的集中流动性、Balancer的加权池和Curve的稳定币优化池,每种模型都有其特定的应用场景和优势。交易完成后,池子中ETH的数量减少,USDC的数量相应增加,但两者的乘积仍保持在1,000,000附近,从而动态调整了ETH/USDC的价格。设交易后ETH的数量为x’,USDC的数量为y’,则有。

2024-07-04 08:00:00 1772 34

原创 是什么让以太坊从众多公链中脱颖而出

这些因素共同作用,使以太坊能够在众多公链中脱颖而出,成为区块链技术领域的领军者。然而,随着技术的不断进步和竞争的加剧,以太坊也面临着来自Solana、Avalanche、Polkadot等新兴公链的挑战,这些挑战促使以太坊持续改进和创新以维持其领先地位。

2024-07-03 11:54:09 2704 15

原创 Pump.fun

它的核心价值在于简化了发币过程,降低了技术门槛,允许任何人以极低的成本(0.02SOL,约2美元)部署和发行代币,无需编程经验。尽管如此,Pump.fun仍被视为一个创新的平台,将发币与社交互动相结合,提供了独特的用户体验。通过简化发币流程和提供透明度,Pump.fun吸引了大量用户,尤其在Solana生态中迅速崛起,日交易费高达75.2万美元,成为生态中的领头羊。总结来说,Pump.fun是一个革新性的Meme币发币平台,通过降低成本和简化流程吸引用户,但其高风险特性要求参与者具备充分的风险意识。

2024-07-03 11:51:42 476 4

原创 什么叫创世区块、创世区块有什么用、为什么需要创世区块

创世区块(Genesis Block)是任何区块链技术中的第一个区块,它是区块链的起点,标志着该区块链的诞生。在创世区块之前没有任何区块存在,因此它没有前一个区块的哈希值,通常这个位置会被设置为零或者一个预定义的特殊值。创世区块包含了区块链网络的一些初始参数和规则,比如初始的难度值、时间戳、初始的交易记录等。

2024-07-03 07:45:00 418 6

原创 Solana公链

Solana是一个高性能的区块链平台,其设计目标是在不牺牲去中心化或安全性的情况下提供可扩展性。Solana由前高通、英特尔及Dropbox的工程师于2017年末创立。以下是Solana的一些关键特点:高吞吐量:Solana能够每秒处理高达65,000笔交易,这使得它在众多区块链中具有极高的速度和效率。低成本:Solana的交易费用非常低廉,通常在几分美分之内,这得益于其独特的共识机制。快速确认:Solana的交易确认时间极短,一般在几秒钟内即可完成,这大大提升了用户体验。可扩展性:Solana使用了一种名

2024-07-02 09:26:33 1192 5

原创 区块链不可能三角

不可能三角”,又称“区块链三难”或“三元悖论”,是由长铗于2014年提出的理论。它指出,在区块链设计中,无法同时最大化去中心化、安全性和可扩展性这三个关键特性。去中心化:指的是网络的无中心化结构,所有节点具有平等地位,共同参与决策,这是区块链抵御审查和单点故障的关键。安全性:指网络抵抗恶意攻击的能力,如防止双花攻击或51%攻击,确保交易的不可篡改性。可扩展性:即区块链处理交易的能力,包括高交易吞吐量和低延迟,是实现大规模应用的前提。

2024-06-28 14:03:37 2613 71

原创 solidity智能合约如何实现跨合约调用函数

比如现在有一个需求、我需要通过外部合约获取BRC20 token的总交易量。那么我需要在brc20的转账函数里面做一些调整,主要是两个函数内统计转移量。然后再提供外部获取函数。实操1、定义了一个函数接口2、BRC20 token实现目标函数3、外部合约调用示例4、输出

2024-06-25 11:24:20 2464 72

原创 swp添加池子addLiquidity失败

将初始化代码的哈希值作为输入之一,确保了生成的流动性对地址与特定的初始化代码紧密绑定,这样就不可能用一个不同的初始化代码来创建一个看似相同的流动性对。这个哈希值在计算流动性对地址的过程中扮演着重要角色,因为它帮助确保了生成的地址与特定的工厂合约、代币组合以及初始化代码相对应。:由于哈希函数的性质,即使微小的变化也会导致完全不同的哈希值。因此,不同的代币组合和初始化代码将产生不同的流动性对地址,即使工厂合约地址相同。的存在是为了确保流动性对地址的生成既具有确定性又具有安全性,同时与特定的初始化代码相绑定。

2024-06-24 21:11:33 1828 3

原创 一文看懂TON链

总之,TON链凭借其独特的技术优势和清晰的发展愿景,正在区块链领域开辟出一片新天地。无论是对于寻求高性能、低成本解决方案的开发者,还是希望体验去中心化服务的普通用户,TON都展现出了巨大的潜力。随着生态系统的不断壮大,TON有望成为推动区块链技术普及的关键力量。

2024-06-23 19:15:00 1727 10

原创 java实现微信小程序登录

【代码】java实现微信小程序登录。

2024-06-23 14:56:37 1936 7

原创 jstack命令参数

jstack命令是Java开发工具包(JDK)中的一部分,主要用于生成Java虚拟机(JVM)中所有线程的堆栈跟踪,这对于诊断线程挂起、死锁或性能瓶颈等问题非常有用。下面是jstackjstack。

2024-06-22 09:54:11 1439 5

原创 TOP命令参数

top命令是Linux和类Unix系统中一个非常强大的系统监控工具,用于实时查看系统中各个进程的资源使用情况。它可以显示CPU使用率、内存使用情况、进程PID、进程运行时间等重要信息。toptop。

2024-06-22 09:51:10 259

原创 手把手教你java CPU飙升300%如何优化

这里拿4353 举例线程资源占用最多,这里先记下来。然后获取4353的16进制值。从上面看很快看出是 pid 4338 这个进程资源消耗很高。打开 js.txt 搜索4353 对应16进制 是1101。今天有个项目运行一段时间后,cpu老是不堪负载。接下来导出该pid 进程快照结果,从而去找线程。得到 4353 对应16进制 是1101。top t 按cpu 排序。top m 按内存使用率排序。从图可知是gc 导致。

2024-06-21 22:41:46 1741 3

原创 uniswap、pancakeswap、shadowswap、有什么区别

总结来说,这三个交易所的主要区别在于它们运行的区块链网络不同,以及它们提供的额外功能和服务。此外,它们的治理结构和附加功能也有所不同,例如PancakeSwap提供了更多的激励机制来吸引用户参与流动性提供和质押。每个交易所的选择取决于用户的个人偏好、对区块链的熟悉程度以及他们想要交易的资产类型。Uniswap、PancakeSwap和ShadowSwap是三个不同的去中心化交易所(Decentralized Exchanges,简称DEXs),它们在各自的区块链生态系统中运作,并且有各自的特点和优势。

2024-06-21 11:16:51 575 8

原创 一文了解ERC404协议

ERC404协议是一种实验性的、混合的ERC20/ERC721实现的,具有原生流动性和碎片化的协议。即该协议可让NFT像代币一样进行拆分交易。是一个图币的互换协议。具有原生流动性和碎片化的协议。这意味着通过 ERC404 协议,NFT 可以像传统代币一样自由交易。ERC404 协议大大提升了 NFT的流动性和实用性。想象一下,像 PUNK 一样昂贵、缺乏流动性的蓝筹 NFT 的所有权,可以在主流交易所作为流动资产进行交易,就好像它是普通的诸如 ERC20 的代币资产一样。

2024-06-21 09:29:13 2001

原创 高性能代码如何编写?

随着应用程序规模的不断增长和用户对性能的不断提升的要求,开发人员需要更加关注如何编写高性能的代码,以确保应用程序能够在各种情况下都能保持稳定和高效。Java Mission Control 是 Oracle JDK 提供的一款高级性能监控和分析工具,它可以实时监控 Java 应用程序的性能,并提供了丰富的分析工具和图形界面,帮助开发人员诊断性能问题并进行优化。这些工具都具有一定的优势和适用场景,可以根据具体的需求和情况选择合适的工具进行性能测试和调优。基于红黑树实现的有序集合,支持按元素有序遍历。

2024-06-19 17:06:07 1055 7

原创 CORE公链

CORE公链采用了结合了工作量证明(Proof of Work,PoW)和委托权益证明(Delegated Proof of Stake,DPoS)的共识机制。具体来说,CORE公链利用了比特币的PoW算法来确保网络的安全性,同时引入了DPoS的元素来提高网络的效率和可持续性。这种混合共识模型旨在平衡安全性和性能,同时降低能源消耗,相较于纯粹的PoW模型有所改进。

2024-06-18 15:44:23 1634 6

原创 深度分析:React Native、Flutter、UniApp、Taro、Vue的差异

选择框架时,应根据项目需求、团队技能、性能要求和维护成本综合考虑。React Native和Flutter在跨平台开发中表现出色,适用于大多数移动应用场景。UniApp和Taro在多平台统一开发方面有独特优势,适合小程序和多平台发布需求。Vue.js作为Web开发的主力,可通过额外工具转化为原生应用。

2024-06-17 10:39:58 10893 62

原创 震惊:全面拆解dapp上线三天、 规则漏洞导致资金全部损失

导火索: 项目方里面有个活动、利用首次推荐新用户推荐人下单获得固定奖励、本来一切都是好好的、但是这里就有一个漏洞了。今天的分析的是链上一个土狗项目由于规则设计漏洞、导致被黑客利用漏洞攻击、致使资金全部损失的案例、近期这个项目也是圈内很火、今天看到了,就趁周末有时间从技术的角度,分析黑客如何利用链上部署的合约,进而干废项目方。说到这里可能有同学就说了、我合约不开源、他怎么发现我的漏洞的、怎么攻击我的、这里可以直接告诉你、不开源不代表安全、只是增加了黑客的一点点成本而已。打码的不用关注、主要就是告诉你、可行。

2024-06-17 07:45:00 2465 69

原创 如何进行智能合约的安全测试

智能合约作为区块链技术的核心应用之一,正在金融、供应链管理、数字版权等多个领域展现出巨大的潜力。然而,智能合约的安全性问题也随之凸显,一旦出现漏洞,可能导致资金被盗、资产损失等严重后果。因此,进行有效的智能合约安全测试,确保其安全、稳定运行,成为了区块链开发者和安全专家的共同关注点。本文将详细介绍智能合约安全测试的重要性、常见安全威胁、测试方法及最佳实践。

2024-06-15 18:49:23 584 6

原创 跨链协议中Cosmos IBC、Polkadot/XCM、Celer Network的区别以及用途

跨链协议是实现不同区块链之间通信和价值转移的关键技术。Cosmos IBC、Polkadot/XCM 和 Celer Network 是三个在跨链领域内具有代表性的协议,它们各自有着独特的设计理念和应用场景。

2024-06-15 09:49:02 984 4

原创 公链常用的共识算法

公链常见的共识算法、以及主流公链采用的共识算法。

2024-06-14 09:53:48 1406 55

原创 常见的 EVM 版本以及它们的区别

每个版本通常伴随着以太坊网络的硬分叉,这是以太坊协议的重大升级。以下是一些常见的EVM版本及其主要区别

2024-06-14 07:30:00 735 2

原创 postman接口测试工具详解

请求构建:用户可以轻松创建HTTP请求,包括GET、POST、PUT、DELETE等方法。参数化:允许动态参数替换,可以使用环境变量、全局变量或数据文件中的值。环境配置:可以定义不同的环境(例如开发、测试、生产),方便切换API的URL和相关设置。断言:内置测试脚本,允许用户编写JavaScript代码来验证API响应是否符合预期。批量执行:通过集合(Collections)组织和运行一系列请求。:模拟服务器,用于开发过程中测试前端或后端而无需真实的后端服务。接口文档。

2024-06-13 18:33:46 973 4

原创 max code size exceeded

Warning: Contract code size exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on mainnet. Consider enabling the optimizer (with a low "runs" value!), turning off revert strings, or using libraries.

2024-06-13 16:15:50 385 1

原创 WBTC与BTC的主要区别

WBTC的核心理念在于“锁仓-发行-赎回”的闭环机制。用户只需将BTC存入特定的托管地址,BitGo——作为信任的托管方——会将这部分BTC安全锁定于多重签名钱包内,并向用户发放等值的WBTC代币。由BitGo等多方参与推出的WBTC项目,通过独特的机制,让用户能在以太坊网络中直接使用和交易BTC,从而拓宽了比特币的应用场景。通过WBTC,比特币的持有者能够在保留原有资产价值的同时,探索以太坊生态的丰富应用,包括去中心化金融(DeFi)、NFTs等前沿领域,实现了两个重要加密货币生态之间的互通有无。

2024-06-13 10:52:09 835 3

原创 跨链桥中双向桥、单向桥、中继桥或侧链桥区别

每种类型的跨链桥都有其独特的优势和适用场景,选择哪种桥接机制取决于具体的需求,包括安全性、效率、成本和灵活性等因素。在实际应用中,跨链桥可能结合了上述多种机制的特点,以满足复杂的需求和挑战。例如,某些桥接解决方案可能在核心设计上是双向的,但在某些操作上采用了类似中继的机制来提高效率或安全性。跨链桥(Cross-chain Bridges)的设计和功能可以根据它们的运作模式和目的而有所不同。

2024-06-13 07:30:00 358 2

原创 跨链协议中Cosmos IBC、Polkadot/XCM、Celer Network的区别以及用途

跨链协议是实现不同区块链之间通信和价值转移的关键技术。Cosmos IBC、Polkadot/XCM 和 Celer Network 是三个在跨链领域内具有代表性的协议,它们各自有着独特的设计理念和应用场景。

2024-06-12 18:41:13 663 4

原创 通义千问2.5有哪些升级

新版本增加了对文档的处理能力,可以处理长达1000万字、最多100个文档,且支持多种文件格式如PDF、Word、Excel、Markdown和EPUB等,同时能够解析标题、段落等结构化信息。:对于编程相关的任务,通义千问2.5的能力提升了10%,这对于开发者或需要编写代码的场景提供了更好的支持。:通义千问2.5在遵循用户指令上的表现提高了19%,这意味着它能够更准确地执行用户给出的指令或请求。:在安全性和风险评估方面,通义千问2.5也有所增强,能够更好地识别和处理潜在的安全问题。

2024-06-12 15:44:56 329 2

原创 智能合约中随机数生成漏洞

攻击者可以观察到合约即将结束拍卖的交易,然后在合约调用getLastBlockHash()之前提交一个自己的交易,影响区块哈希,从而影响最终的随机数。一般在区块链上的随机数生成通常难以实现,依赖于区块哈希等可预测因素,这可能导致攻击者能够预测结果、以下是一些比较常见的场景。攻击者可以通过监控区块链上的交易和时间戳来预测未来交易的时间戳,从而预测随机数并始终做出正确的猜测。如果预言机服务被攻击者控制,他们可以提供虚假的随机数,影响游戏结果。

2024-06-12 13:44:20 720 2

原创 智能合约中权限管理不当

如果合约中的关键功能,如转移资产、修改合约状态或升级合约逻辑,可以被未经授权的实体随意操作,这将构成严重的安全风险。虽然这看起来像是一个合理的权限,但如果管理员账户的安全性受损,或者合约开发者错误地将一个不受信任的地址设置为管理员,这将为攻击者打开大门。在这个改进后的合约中,我们引入了多个管理员的概念,并设置了每日铸造资产的上限,以防止无限量的资产创造。例如,管理员可以被授予- - 2、铸造资产的权限,但这种权限应该是有限的,例如每天只能铸造一定数量的资产。

2024-06-12 07:30:00 4121 53

原创 以太坊网络中为什么要设置Gas上限

以太坊网络中的Gas上限(Gas Limit)是一个重要的机制,它主要出于以下几个目的:防止无限循环和拒绝服务攻击(DoS):控制交易成本:确保网络稳定性:经济激励和安全:资源分配和公平性:

2024-06-11 18:29:05 426

原创 智能合约中存储和计算效率漏洞

实际应用中,你可以引入额外的映射或变量来追踪每个提案的投票总数,以避免全地址空间的遍历。为了实现这一点,你可能最初会考虑使用一个映射(map),其中键是提案ID,值是一个数组,存储所有投给该提案的选民地址。这样,每次投票时只需更新投票计数器,大大降低了Gas费用和提高了查询速度。在智能合约开发中,合理的设计和优化存储结构对于降低成本和提升性能至关重要。为了减少Gas费用并提高性能,我们可以重新设计数据结构,使用映射来追踪每个选民是否已经投票给某个提案,而不是维护一个选民数组。

2024-06-11 10:33:42 509 2

IPFS之nft.storage核心依赖源码

IPFS是InterPlanetary File System的缩写。它是一个分布式的网络传输协议,它可以把文件分成很多小块放到服务器的不同地方,然后用一种特别的方式来寻找和传输这些小块。这样,我们就可以更快、更安全、更抗容错了的存储文件了 [NFT.Storage](https://nft.storage/)是一个基于IPFS的分布式存储服务,专门用于存储和管理非同质化代币(NFT)相关的数据和资产。它是由Protocol Labs和Pinata共同推出的服务. 对接源代码链接如下: http://t.csdnimg.cn/iobFA

2024-04-18

java-tron-Odyssey-v3.2.jar

java对接波场链核心依赖

2024-04-12

DDD 领域驱动设计-软件开发中的挑战和问题

转载

2024-03-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除