- 博客(227)
- 收藏
- 关注

原创 智能合约开发中13种最常见的漏洞
1.重入攻击 2.整数溢出和下溢 3.未授权访问 4.不当的继承顺序 5.短地址攻击 6.断言失败 7.代理模式中的初始化漏洞 8.时间依赖性漏洞 9.Gas限制和DoS攻击 10.权限管理不当 11.外部调用 12.随机数生成 13.存储和计算效率
2024-06-06 13:36:56
12647
98
原创 fiscoBcos中手动部署webase-front
当前手动搭建是从官网获取到源代码,本地打包构建后,在上传到服务器内,打包可以参考Webase-node-manager打jar包这个文档。本地Java环境为1.8.0_221服务器的java环境为java1.8.0_202Java的版本会影响打包的结果,这个问题我在 手动搭建webase启动注意事项文档里面写了详细说明。
2025-03-02 16:02:25
838
2
原创 fiscoBcos中网络端口讲解
FISCO BCOS 2.0的网络包括P2P端口、RPC端口、Channel端口。P2P端口,用于区块链节点之间的互联,包括机构内的多个节点,以及多机构间节点和节点的互联。如果其他节点在机构外,那么这个连接要监听公网地址,或者监听内网,且由连接公网的网关(如nginx)转发网络连接。 节点之间的连接会由联盟链的准入机制控制,节点之间连接依赖节点证书验证,以排除未经许可的危险连接。这个链路上的数据通过SSL方式加密,采用高强度密钥,可以有效的保护通信安全。Channel端口,控制台和客户端SDK连接Chann
2025-02-27 23:02:20
949
1
原创 fiscoBcos中节点、机构、群组的关系
从建链的角度看,机构是区块链的管理单元,节点是区块链的运行单元,群组是区块链的逻辑单元。链证书提供全局信任,机构和节点通过继承链的信任层层生成,最终由节点组成群组,实现具体的区块链业务。
2025-02-16 10:00:00
176
1
原创 fiscoBcos中区块链交易流程
为了能让交易尽可能到达所有节点,其他收到广播过来的交易节点,也会根据一些精巧的策略选择一些节点,将交易再一次进行广播,比如:对于从其他节点转发过来的交易,节点只会随机选择25%的节点再次广播,因为这种情况一般意味着交易已经开始在网络中被节点接力传递,缩减广播的规模有助于避免因网络中冗余的交易太多而出现的广播风暴问题。在共识出块后,节点需要将区块中的交易及执行结果写入硬盘永久保存,并更新区块高度与区块哈希的映射表等内容,然后节点会从交易池中剔除已落盘的交易,以开始新一轮的出块流程。
2025-02-15 10:47:23
826
1
原创 fiscoBcos中手动部署webase-sign
项目源码本地Java环境为1.8.0_221服务器的java环境为java1.8.0_202
2025-02-11 07:15:00
347
1
原创 fiscoBcos扩容节点加入已有群组
修改node4/config.ini。节点5拷贝节点1的node0/conf/group.1.genesis(内含群组节点初始列表)和node0/conf/group.1.ini到node4/conf目录下,不需改动。拷贝node0/config.ini、node0/start.sh和node0/stop.sh到node4目录。执行node4/start.sh启动节点: bash node4/start.sh。获取node4的nodeid:cat node4/conf/node.nodeid。
2025-01-27 08:30:00
690
原创 fiscoBcos中使用工具脚本在本地搭建一条4节点链
二进制fisco下载地址:https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/v2.11.0/fisco-bcos.tar.gz。在/home目录下新增一个fisco10的文件夹,接下来的操作都在这里面进行 :mkdir fisco10 && cd fisco10。,出于安全考虑,请根据实际业务网络情况,修改为安全的监听地址,如:内网IP或特定的外网IP。正常情况会有类似下面的输出;-l表示的是联盟链所在运行的地址和建链的节点数。
2025-01-26 17:30:00
408
原创 fiscoBcos手动部署webase平台前准备
进入到宝塔服务界面,下载数据库和nginx网络代理服务。创建数据库:webasenodemanager。创建数据库:webasesign。用下面的网址+密码启动宝塔服务。数据库版本要选用5.7的版本。修改数据库的默认端口。
2025-01-23 10:47:06
267
原创 fiscoBcos扩容一个新群组
endPoint:接收创建新群组请求的区块链节点IP:Port信息,SDK连接的所有节点IP:Port信息可通过命令getAvailableConnections获取;PS:在新建群组的时候,指定建立节点的时候,要是本控制台连接的节点,如果放入了其它节点,建立出来的群组无法连接到节点,获取不了节点信息。sealerList:新创建群组的共识节点列表,多个共识节点ID之间用空格分割。timestamp:新创建群组的创世块时间戳,可通过命令echo。为指定节点启动群组,至此,已经扩容一个新群组。
2025-01-19 14:27:31
465
1
原创 fiscoBcos群组概念总结
群组架构是在多节点组成的区块链内,部分节点通过配置,独立形成账本,在账本内的节点进行独立的共识和存储,并且只需要修改配置就能组件账本,无需额外的资源。支持区块链节点启动多个群组,群组间交易处理、数据存储、区块共识相互隔离,保障区块链系统隐私性的同时,降低了系统的运维复杂度。不同群组间的交易可并行执行,提升了性能。
2025-01-16 19:38:32
747
1
原创 fiscoBcos中Webase-node-manager打jar包
lib/* com.webank.webase.node.mgr.Application运行jar包,就可以直接运行起整个项目。使用命令手动加入java -cp WeBASE-Node-Manager-master.jar;运行jar包命令解析,需要同时运行当前目录下的jar包以及上一级目录下的lib中的所有文件最后指定启动类com.webank.webase.node.mgr.Application。
2025-01-12 21:40:51
341
1
原创 fiscoBcos落盘加密实践
落盘加密首首先使用keyManager用密码生成了了一个cipherDataKey,在将这个私钥配置到节点的配置文件中,并启用了keyManager服务。这样节点本身不会在本地磁盘中存储datakey,而是存储了加密过后的cipherDataKey。节点启动后在拿cipherDataKey向key Manager请求获取到datakey,而datakey只存在节点 的内存中,当节点关闭后,datakey自动丢弃。切换到/root/fisco/node/127.0.0.1/node0路径下。
2025-01-11 10:47:00
1000
1
原创 fiscoBcos落盘加密介绍
落盘加密是在机构内部进行的,每个机构独立管理自己硬盘数据的安全。内网中,每个节点的硬盘数据是被加密的。所有加密数据的访问权限,通过Key Manager来管理。Key Manager是部署在机构内网内,专门管理节点硬盘数据访问秘钥的服务,外网无法访问。当内网的节点启动时,从Key Manager处获取加密数据的访问秘钥,来对自身的加密数据进行访问。
2025-01-09 21:24:38
463
原创 fiscoBcos运维工具多机搭链
使用generator搭建多机部署的Fisco链以下是我们要做的实践我们将从多机两节点部署开始,机构A和机构B,为机构A节点1做落盘加密为机构A新增节点3并加入群组1新增机构C节点4新增群组2并将机构B和机构C拉入群组2。
2025-01-06 08:39:54
1124
1
原创 fiscoBcos压力测试
本例只是示范怎么去用官方提供的测试代码去进行测试,测试的数据和参数仅提供参考第一步:验证java版本,Java SDK Demo中的测试程序能够在部署有JDK 1.8 ~ JDK 14的环境中运行。第二步:编译源码下载源码切换到2.0版本编译源码第三步:将节点证书,端口配置拷贝至java SDK Demo中的dist中cd dist如果修改了Channel端口,则要去config.toml中*[network.peers]*进行修改第四步:执行压力测试程序cd dist。
2025-01-04 10:00:50
1068
3
原创 fiscoBcos运维部署工具单机搭链
此步会根据机构A的meta文件夹下配置的节点证书,生成group_genesis.ini配置的群组创世区块,教程中需要机构A的meta下有名为cert_127.0.0.1_30300.crt,cert_127.0.0.1_30301.crt,cert_127.0.0.1_30302.crt,cert_127.0.0.1_30303.crt的节点证书,此步需要用到机构B的节点证书。注意,此步指定的节点P2P连接信息peers.txt为群组内其他节点的连接信息,多个机构组网的情况下需要将其合并。
2025-01-02 07:46:33
784
2
原创 fiscoBcos中手动部署webase-web
第六步是反向代理设置,当用户访问mgr的时候会跳转到第四步设置的服务ip和端口号。第六步是反向代理设置,当用户访问mgr的时候会跳转到第四步设置的服务ip和端口号。在dist/static/js文件夹中检查是否包含以下文件。至此webase-web以全部配置完毕可以直接访问。Root是当前WeBASE-Web服务的根路径。175.178.255.47为服务器ip地址。第四步这里放入的是节点管理服务ip和端口号。在data目录下拉取代码。第五步这里80为前端端口。
2025-01-01 08:15:00
279
3
原创 fiscoBcos中手动部署webase-node-manager
项目源码修改源项目的application.yml文件数据名,和数据库密码使用上面宝塔配置的数据库名和密码进行项目的构建构建成功后生成dist文件夹新建一个文件夹webase-node-manager:复制官网的scripts脚本文件到webase-node-manager的scripts文件夹中进入scripts文件修改webase.sh文件中的数据库用户名和密码还有要操作的数据库的名字运行数据库脚本启动项目命令:后台运行指令:查看是否启动相关进程。
2024-12-31 07:30:00
1255
4
原创 fiscoBcos中webase平台导出java项目
在resources目录下的abi放的是编译过后的合约方法,bin.ecc放的是以编译过后的智能合约,conf文件夹下面放的是链证书和sdk节点连接证书。在application.properties里面修改连接节点的主机ip地址和节点端口号。在hello.service里面的地址初始值不是bin.ecc要修改为正确地址。Service里面的ServiceManager也是演示文件删除掉就可以了。2.将下载好的项目解压并用idea打开,目录结构如下。1. 在webase管理平台上面进行项目的导出。
2024-12-30 21:00:00
351
原创 fiscoBcos一键部署webase平台
一键部署可以在同机快速搭建WeBASE管理台环境,方便用户快速体验WeBASE管理平台一键部署会搭建:节点(FISCO-BCOS 2.0+)、管理平台(WeBASE-Web)、节点管理子系统(WeBASE-Node-Manager)、节点前置子系统(WeBASE-Front)、签名服务(WeBASE-Sign)。我在下面的实验是在unbuntu内进行的。
2024-12-30 10:46:27
1673
6
原创 fisco-bcos系统架构
标签:架构 强扩展性 模块设计整体架构上,FISCO BCOS划分成基础层、核心层、管理层和接口层::提供区块链的基础数据结构和算法库: 实现区块链的管理功能,包括参数配置、账本管理和AMOP: 面向区块链用户,提供多种协议的RPC接口、SDK和交互式控制台FISCO BCOS基于多群组架构实现了强扩展性的群组多账本,基于清晰的模块设计,构建了稳定、健壮的区块系统。本章重点介绍FISCO BCOS的群组架构和系统运行时的交易流(包括交易提交、打包、执行和上链)。
2024-12-27 23:00:00
1165
2
原创 fisco-bcos手动部署区块链浏览器
在dist目录下,根据conf_template模板文件生成一个conf目录文件。填入群组内的节点信息(注:这里的rpc接口的防火墙要放开,内网外网的都要放开)修改服务端口号,数据库ip、数据库用户名、数据库密码、和数据库名称。将宝塔创建的数据库名、数据库密码和数据库用户名进行填入。使用宝塔新建数据库,名为db_browser。首先弹出新增群组,将群组信息进行填入。至此区块链浏览器部署完成。
2024-12-27 20:15:00
397
原创 fisco-bcos区块链浏览器区块高度无法更新
经过排除,自动化部署提供的jar引入的lib版本是fisco-bcos-java-sdk-2.9.0.jar,而手动部署提供的引入是fisco-bcos-java-sdk-2.7.2.jar。Fisco区块链浏览器,手动部署后区块高度无法实时更新,但是自动部署的却可以实时更新,后面发现是因为手动部署获取到的代码版本比较低,依赖的版本较低,所以导致功能不健全。找到历史提交版本中最新的这个版本。将代码拉取下来编译,上传到服务器。获取到了实时更新的区块高度。获取到了实时更新的区块高度。
2024-12-27 08:15:00
377
2
原创 fisco-bcos手动搭建webase启动注意事项
修改Web3Config.class目录下的ip地址和channelProt地址为连接链地址和链channel端口。在resources目录下面新增一个conf文件夹,将要连接的节点的sdk证书放进去。安装官网的解决思路,了一路下来都没有对应的错误,secp256k1曲线也没有报错。首先是要连接的链的ip地址,在本地运行就填写外网地址,在服务器内就填写内网地址。然后是channelProt是为sdk连接链的端口,需要配置节点证书才能使用。Java环境变量:1.8.301的时候一下的错误。
2024-12-26 20:40:06
373
原创 move生态
以太坊生态以其成熟度、广泛应用和强大的社区支持著称,而 Move 生态则凭借其独特的安全特性和高效的性能吸引了特定领域的关注。选择哪个生态取决于你的具体需求、目标应用以及对安全性和性能的优先级。随着两个生态系统的不断发展,它们各自的优势也将变得更加明显。
2024-12-24 20:32:26
832
5
原创 pancakeSwapV2交易手续费实现原理
在 pancakeSwap V2 中,会对每次交易收取手续费。具体来说,Uniswap V2 对每笔交易收取 0.3% 的手续费。
2024-11-28 11:32:09
435
3
原创 腾讯云磁盘挂载
首先lsblk查看磁盘情况比如想挂载这个4T的磁盘从 lsblk 输出来看,新磁盘的设备名是由于磁盘大于 2TB,建议使用 GPT(GUID Partition Table)分区表,而不是传统的 MBR 分区表。可以使用 gdisk工具来进行分区。
2024-11-23 17:16:45
465
1
原创 提高区块链网络TPS七步曲
提高区块链网络的TPS需要从多个方面进行综合优化,包括共识算法、网络层、存储层、智能合约、硬件和基础设施、并行处理和分片、安全性和可靠性以及用户体验。通过这些优化措施,可以显著提高区块链系统的性能和吞吐量,从而更好地满足各种应用场景的需求。
2024-11-07 06:45:00
2053
3
原创 FISCO BCOS 网络中共识节点如何工作
在 FISCO BCOS 网络中,五个共识节点(A、B、C、D、E)通过共识机制(如 PBFT 或 RAFT)协同工作,确保交易的一致性和最终性。整个过程包括交易提交、交易广播、共识节点选举、主节点打包交易、备份节点验证、预准备阶段、准备阶段、提交阶段和最终确认。通过这些步骤,确保了交易的安全性和网络的稳定性。
2024-11-05 07:30:00
537
2
原创 Solidity智能合约中的异常处理error、require、assert
error使用require来检查调用者提供的输入是否有效;使用assert来检测程序逻辑中的不可能情况;使用error来自定义错误消息,以便于调试和错误处理。
2024-10-24 14:31:50
760
5
原创 对比长安链、FISCO BCOS、蚂蚁链
长安链、FISCO BCOS和蚂蚁链作为中国区块链领域的佼佼者,不仅在技术上各有千秋,在推动产业发展方面也发挥了重要作用。未来,随着这些平台不断地优化升级,我们有理由相信它们将在更多领域内发挥出更大的价值,并为中国乃至全球的数字经济转型做出贡献。区块链作为一种分布式账本技术,以其去中心化、不可篡改等特点,在金融、政务、供应链等多个领域展现出巨大潜力。在中国,随着政策支持和技术进步,涌现出了一批优秀的区块链平台,其中长安链、FISCO BCOS和蚂蚁链尤为突出。
2024-10-18 07:45:00
779
3
原创 “跨链桥“的危害
跨链桥(Cross-Chain Bridges)是连接不同区块链网络的工具,允许用户在不同的区块链之间转移资产和数据。尽管跨链桥为区块链生态系统带来了许多便利,但它们也存在一些潜在的危害和风险。
2024-09-23 16:37:11
909
7
原创 POS共识机制简介
权益证明(Proof of Stake, PoS)是一种用于区块链网络的共识机制,旨在解决工作量证明(Proof of Work, PoW)机制中存在的能源消耗高、中心化风险等问题。PoS通过要求参与者质押一定数量的代币来获得验证交易和创建新区块的权利,从而确保网络的安全性和去中心化。权益证明(PoS)共识机制为区块链网络提供了一种更加高效、安全和去中心化的解决方案。尽管存在一些挑战,但随着技术的不断进步和优化,PoS有望成为未来区块链网络的主要共识机制。
2024-09-20 22:47:47
1141
3
原创 POW和POS区别
去中心化: PoW通常被认为提供了更高的去中心化水平,因为它不需要预先拥有代币即可参与网络维护。但是,随着矿池的形成,PoW网络也可能变得中心化。能源消耗: PoS相对于PoW而言更为节能。交易速度: PoS通常能提供更快的交易确认时间。安全性: 两种机制都旨在保证网络的安全,但在不同方面有所侧重。PoW通过计算难度保证安全性,而PoS通过经济激励来保障。选择哪种共识机制取决于特定网络的目标和需求。例如,比特币和早期的以太坊使用PoW,而以太坊已经转向了PoS。
2024-09-11 08:39:55
1691
13
原创 DEX-如何防范夹子机器人攻击
防范夹子攻击需要从多个方面综合考虑。通过限制交易速度、设置交易费用、使用预言机、限制单笔交易金额、使用时间加权平均价格(TWAP)等手段,可以有效降低夹子攻击的风险。在设计智能合约时,应结合具体的业务场景和需求,选择最适合的防御策略。
2024-09-08 11:37:06
2190
69
原创 DEX-套利夹子机器人
以太坊上的套利夹子机器人(通常称为夹子机器人或三明治攻击机器人)是一种利用区块链特性、来执行套利交易的自动化工具。它们通常利用去中心化交易所(如Uniswap、SushiSwap等)中的流动性池进行快速交易,以获取利润。
2024-09-05 21:42:38
3858
16
原创 智能合约中storage和memory函数详解
总之storage适用于需要持久化存储的数据,如状态变量、映射、数组、结构体等。memory适用于临时存储的数据,如函数参数、局部变量、返回值、中间计算结果等。总之正确使用storage和memory不仅可以提高智能合约的性能,还能降低gas费用,从而提升智能合约的整体效率。
2024-08-31 07:30:00
2954
32
原创 如何修改NFT的元数据
背景:昨天接到这么一个需求,在erc721协议铸造后的基础上修改上链后的。建议上openSea测试网、直接输入你的合约token即可。本文针对有一定基础的小伙伴、直接上干货。
2024-08-13 10:35:07
1416
17
IPFS之nft.storage核心依赖源码
2024-04-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人