自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

快活林高老大--编码30年

人工智能专业,手机、嵌入式、智能家居、区块链开发经历,从工程师到CTO

  • 博客(103)
  • 收藏
  • 关注

原创 EIP-3664合约研究笔记01--项目介绍

早在 2021 年的5月份,DRepublic 团队提出了一个叫做EIP-3664 的协议方案(又叫做NFT 属性扩展协议),其使用了一种较为巧妙的方式,来进一步解决了主流NFT标准比如ERC-721 或 ERC-1155等,在属性上表现力不足,NFT之间难以融合,且在存储上中心化(目前主要存储在服务器上)的种种问题,并且该提案进一步实现了NFT 属性的动态扩展。

2022-09-30 10:08:53 807

原创 在WSL(Ubuntu)上运行eclipse,调试C语言的makefile项目

首先下载eclipse指定版本:Eclipse IDE for C/C++ Developers,Linux 86_64,

2023-08-04 16:09:18 864

原创 预言机Truora学习笔记5--Truora-Service服务端代码分析

本文分析Truora-Service服务端java,目标是梳理出OracleCore合约查找创建机制、事件监听机制、url访问机制、数据回写机制, 以后创建自己的预言机服务器就了如指掌了。代码下载路径: git clone。

2023-05-22 11:19:45 389

原创 预言机Truora学习笔记4--预言机合约分析

Truora-Service 获取到数据后,对 URL 发起一个 HTTP 调用,获取到数据,对数据按照解析格式进行处理,然后再调用 OracleCore 合约,根据请求编号将结果上传到链上,提供给其他合约来获取。预言机服务将取到数据通过调用预言机智能合约方法来将数据回传,预言机智能合约通过回调用户智能合约告知用户数据取到,用户合约做相应业务处理即可。用户在智能合约中调用预言机智能合约中的请求方法,预言机智能合约校验相应参数,发送相应的链事件。用户负责编写应用端合约,发出请求,读取结果。

2023-05-22 11:16:08 383

转载 预言机Truora学习笔记3--预言机原理

预言机是指获取、验证外部信息(即存储在链下的信息)并将外部信息传送给在区块链上运行的智能合约的应用程序。除了“拉取”链下数据并在以太坊进行广播之外,预言机还将信息从区块链“推送”到外部系统。在用户通过以太坊交易发送费用后解锁智能锁的预言机就是一个推送信息的示例。预言机充当一座“桥梁”,连接区块链上的智能合约与链下数据提供者。如果没有预言机,智能合约应用程序只能访问链上数据。预言机提供了一种使用链下数据触发智能合约功能的机制。

2023-05-22 11:15:24 568

原创 预言机Truora学习笔记2--Truora-Web安装部署

由于现在truora-web组件还不支持V3.3.0的链节点,页面上无法显示出服务端部署好的预言机合约地址。该项目是区块链中间件 Truora-Service 预言机 的前端服务,基于 vue-cli 框架开发。主要支持请求详情和请求历史的查询。方便应用查询自己预言机请求的结果,如果失败,可以看到请求失败的原因。Truora-Web 是 Truora 服务的前端组件。安装Truora-Web前端组件。配置Ngjinx服务。

2023-05-22 11:11:40 206

原创 预言机Truora学习笔记1--Truora-Service安装部署

Fiscobcos提供的预言机是Truora,完整的Truora功能包括:预言机合约 -- 系统提供合约,是请求-应答模式设计的。客户端合约 -- 系统提供模板,应用程序需要继承模板合约,并重写请求和回调处理方法预言机事件服务--监听预言机合约事件,完成网络调用获取数据,调用预言机合约的callback方法将数据写入到客户端合约。数据源网站 -- 通过url查询数据关键点:提供预言机事件服务的是我们部署的服务程序,内置了一个链上地址私钥,可以调用预言机合约发起交易。

2023-05-22 11:08:26 391

转载 「后端」架构师是如何画架构图?

部署架构也叫网络架构,就是底层服务器、网路的设计,提供网络安全、服务可靠性的设计。架构图包括总体架构、逻辑架构、应用架构、技术架构、数据架构、功能架构、网络架构、运行架构等等。或者更加通俗来描述,逻辑架构更偏向我们日常所理解的“分层”,把一个项目分为“表示层、业务逻辑层、数据访问层”这样经典的“三层架构”。早期的单体架构、后面的各种分层架构、微服务、服务网格等,说的都是在这里进行设计。这样的话,技术架构,就是高层级的技术架构了,不仅仅体现的是技术组件了,而是更高层级的一些模块,甚至规范。

2023-05-09 09:18:31 2848

原创 智能合约编译插件(solc-gradle-plugin)使用方法

智能合约编译插件可以大大简化从solidity源码到java代码的过程,帮助开发者快速编译调用合约。本文记录了编译0.4.25版本和0.8.11版本的使用方法。

2023-04-29 23:48:13 254

原创 AMOP功能使用代码示例

Java SDK支持链上信使协议AMOP(Advanced Messages Onchain Protocol),用户可以通过AMOP协议与其它机构互传消息。从这个表述上看,我们的应用可以当做即时消息系统使用,只不过这是依托链节点运行,类似于Kafka。当有2个节点时, 广播出来的消息变多了, 两个节点都广播一遍,还掺杂了seq为空的消息。本文完成了AMOP消息话题创建、发布、广播、订阅、应答功能代码实例,据此可以应用在项目工作中。要说明的是单播消息具备回调函数,可以接收应答消息。广播消息不具备回调函数。

2023-04-25 17:27:31 460

原创 Event事件监听使用方法

本文详细介绍了Fiscobcos SDKV3.2版本下如何监听合约事件,监听参数的设置:起始区块、合约地址、事件主题, 给出了可行的代码。解决了文档老旧无法运行的问题。

2023-04-25 15:53:54 415

原创 通用溯源Baas平台设计方案

通用溯源区块链平台Baas系统设计方案

2023-04-24 17:27:31 351

原创 节点管理服务登录接口使用

webase-node-manager 节点管理服务,提供完整的节点管理功能、合约部署交易功能、账户创建功能。使用浏览器登录webase-web管理平台,会出现图片验证码,客户端与node-manager完成认证后获得授权token,以后客户端发起的命令就携带该token才能成功。

2023-04-24 17:07:00 696

原创 Fiscobcos发起交易方法2--节点RPC接口调用

Fisco链的节点支持RPC接口,我们可以直接向指定节点发起RPC调用,完成交易。

2023-04-24 16:55:57 900

原创 发起交易各种方法比较结论

在Fiscobcos链上发起交易有多种方法,看文档都看花了眼,晕头转向的,到底那一种是最好用的呢?今天我们做一个总结,给出推荐方案。

2023-04-24 16:53:45 174

原创 Fiscobcos发起交易方法5--JavaSDK API调用

本文记录针对SDK api函数的学习研究,目的是搞清楚用法和核心函数写法。已知的bug是 SDKV3.2版本 api不支持返回 结构体数据, 需要升级到将来的V3.3版本才解决。

2023-04-24 16:52:35 1086

原创 Fiscobcos发起交易方法4--前置节点管理服务调用

WeBASE-Front节点前置服务,端口号5002,说明: 与web平台不同,Front平台无需密码和验证码登录,直接访问成功http://192.168.2.231:5002/WeBASE-Front/#/home【优点】: 开发人员可以任意操作接口函数。可以完成链上数据查询, 合约部署, 交易,交易签名,账户创建等操作。

2023-04-24 16:49:07 401

原创 Fiscobcos发起交易方法3--节点管理服务接口调用

节点管理服务:WeBASE Node-Manager,端口号5001,调用这些接口必须先登录,登录要经过用户名、密码、图片验证码检验,才能得到一个认证token,以后的每条命令必须携带这个认证token才能成功。本文只试验了几条命令,目的是研究清楚调用时请求参数填写方法。

2023-04-24 16:39:29 293

原创 Fiscobcos发起交易方法1--智能合约生成Java类调用

Fisco链的节点支持RPC接口,我们可以直接向指定节点发起RPC调用,完成交易。

2023-04-24 16:29:36 628

转载 WTF Solidity极简入门: 39链上随机数

本文是按照以下教程编写的,在BNB测试网上运行失败,发现了ChainLink帮助文档中的参数错误,修正后才运行成功。很多以太坊上的应用都需要用到随机数,例如随机抽取、抽盲盒、战斗中随机分胜负等等。这一讲我们将介绍链上(哈希函数)和链下(chainlink预言机)随机数生成的两种方法,并利用它们做一款tokenId随机铸造的NFT。

2022-12-06 16:25:17 1045

转载 WTF Solidity极简入门: 35. 荷兰拍卖

这一讲,我将介绍荷兰拍卖,并通过简化版Azuki荷兰拍卖代码,讲解如何通过荷兰拍卖发售ERC721标准的NFT。

2022-12-05 15:26:31 707 1

转载 WTF Solidity极简入门: 37. 数字签名 Signature

这一讲,我们将简单的介绍以太坊中的数字签名ECDSA,以及如何利用它发放NFT白名单。代码中的ECDSA库由OpenZeppelin的同名库简化而成。

2022-12-05 15:24:48 1548

原创 Legoot合约研究笔记09--最终的合约设计文档

核心内容是NFT合约从ERC1155改为ERC721,增加合约升级协议UUPS、可拆分组合协议ERC3664。 遇到到问题:主体合约编译后字节码超过24576字节数限制,精简代码函数也无法达到要求。 解决方法:把主体合约拆分成两部分:core平台合约+avatar合约,这样core平台合约只负责组合拆分,降低了代码量。avtar合约作为纯粹的虚拟人合约,不具备拆分组合功能代码,也降低了代码量。 最终结果:在Remix+Ganache环境中,使用代理模式顺利部署,完成avatar发行、组件发行、重

2022-10-31 08:54:33 314

转载 智能合约升级原理03---合约升级的注意事项

这不会构成威胁,因为逻辑合约状态的任何变化都不会影响你的(代理)合约实例,因为你的项目中从未使用过逻辑合约的存储。如果对逻辑合约的直接调用触发了自毁操作selfdestruct,那么逻辑合约就会被销毁,你的所有合约实例最终都会将所有的调用委托给一个地址,而不会有任何代码。这会破坏你项目中的所有合约实例。在编写新版本的合约时,无论是由于新功能还是bug修复,都有一个额外的限制需要遵守:你不能改变合约状态变量的声明顺序,也不能改变它们的类型。如果集成合约有任何自己的变量,你也不能在基础合约中添加新的变量。

2022-10-24 00:30:06 485

原创 智能合约升级原理02---UUPS升级部署示例

点击Deploy按钮后弹出提示框,含义是部署一个实现合约,连接到一个ERC1967代理合约,并且完成实现合约的初始化。部署成功, 左侧任务栏看到又多出了两个合约地址,一个是新版本的Box合约,一个是原来的ERC1967代理合约,这个代理合约的地址是不会改变的。读取代理合约的retrieve方法,得到的数据是200,表明新的业务合约代码生效,原有数据也被保留下来了。第一个版本的业务合约 Box,内部一个value数据,实现读、取两个方法。我们选择使用第一项,将自动创建代理合约,并使用代理合约部署业务合约。

2022-10-24 00:23:41 1889

原创 2013年中秋节桂林旅游

到桂林旅游,最不用发愁的是看不到好风景,完全可以这么说,处处是风景,赏心悦目,令人惊叹!漓江上的景色太漂亮了,令人目不暇接,前后左右无处不风骚~~桂林山水甲天下,阳朔山水甲桂林,名不虚传。银子岩,号称亚洲最具魅力的溶洞,货真价实。印象刘三姐演出,从头到尾每一秒都精彩万分。在观看之前还对这场演出的票价有过怀疑,是否值得198元,演出一开始,就不由自主的惊叹赞赏,所有的怀疑都烟消云散。同样的龙脊梯田也是巍巍壮观,也对得起来此住宿旅游的费用了。记得一定要住宿一晚,好好欣赏下日落和日出景色。

2022-10-17 09:41:22 271

原创 MM3NFT项目研究笔记

​MM3NFT(https://mm3nft.com/)1 项目说明发布玛丽莲.梦露的NFT头像,用户 mint 的时候,会获得一个戴着饰品的头像 A,但是用户可以自行将饰品拆成单独的 NFT,而这些拆分后的饰品 A, 和其他的头像 B 再进行拼装,依然能保持原有的 ID 不变。核心:合约支持组合拆分!!​

2022-10-17 09:40:51 718

原创 2011年国庆2天厦门到平潭岛湄洲岛自驾游

平潭岛上景点很多,这次只有半天时间游玩,又因为头一次来此道路陌生,只去了2个景点,龙凤头海滩、石牌洋。龙凤头海滩景色非常好,虽然我就在厦门海边,可是全厦门看不到这么漂亮的海滩。海水清澈透明,沙滩细腻柔软,踩上去舒服极了。当天海边风比较大,吹的海浪一层层重叠翻涌,看的我是心旷神怡~~

2022-10-10 09:35:49 1892

原创 linux设备上的Onvif 实现15: 连接RTSP获取视频流流程图

正确的鉴权过程是添加用户名和密码的加密信息,重发DESCRIBE命令。收到200应答表示鉴权成功,以后的SETUP、PLAY、TEARDOWN命令中都要携带用户名和密码的加密信息,否则统统返回401失败。

2022-10-10 09:22:00 699

原创 动人的老磁带,蕴藏着俺的青春

老磁带中蕴藏着俺的青春喜乐!

2022-10-10 09:16:34 128

原创 32周岁,蒸蒸日上

今天的我,蒸蒸日上!

2022-10-10 09:12:02 150 1

原创 2008-03-06 失望的星期天“双高”人才交流会

一大早起来出门直奔人才中心,为的是“双高”人才交流会。人才中心门口有不少人,看来都是找工作的,每个人都满怀希望着匆匆而来。

2022-10-10 09:09:17 105

原创 2008-03-08 好高兴啊,体验了准妈妈的感觉

今天是三八节,下午和老婆一起到外图书店参加准妈妈准爸爸学习班。

2022-10-10 09:06:35 125

原创 2008-03-06 面试第一天

面试第一天

2022-10-10 09:03:08 111

原创 2008-03-06 开始找工作

开始找工作

2022-10-10 09:01:08 92

原创 快活林取名原因

熟悉古龙小说的朋友都知道《流星蝴蝶剑》这个小说,故事发生地点就是快活林,主人公是高老大。在快活林这个地盘上,高老大就是一切的主宰,随心所欲,逍遥快活。我非常喜欢这本经典小说,也希望这个博客成为我和老婆的快活林,容纳各种欢乐与甜蜜。

2022-10-10 08:55:30 1252

转载 DID系列14--可验证表达VP--用户属性的零知识证明

本文提出了一种身份证明的零知识证明方法,该方法将VC和VP独立,生成VP时发证方不需要参与,而且VP中给出的证明具有零知识性,而且有发证方背书。

2022-10-08 23:59:03 817

转载 DID系列13--可验证表达VP--选择性披露

我们讲解了在用户身份中具有多个属性时,用户只选择性的暴露其中某个属性,而且基于默克尔证明,给出了可信的证明字段,任何用户在收到VP后都可以进行合法性验证。同时我们基于随机种子生成了一个随机序列,并将随机序列作为盐添加到每个字段中,从而防止了潜在的默克尔验证时暴露的哈希值导致其他身份属性被碰撞的事情发生。

2022-10-08 23:57:32 1156

原创 DID系列12--可验证表达VP--一般性说明

本文通过具体的毕业证书示例说明VC、VP的一般用法

2022-10-08 23:55:08 1586

原创 DID系列11--如何出具凭证VC

一些文章介绍在某些需要用户出具证明的的场景,用户可以直接出具VC全文即可,但是并没有具体说明具体的过程细节,我对此问题了思考方案。(比如用二维码显示,扫码即可获得VC全文)。

2022-10-08 23:53:05 964

分布式数字身份, BSN-DID SDK开发包

通过代码研究DID协议内容格式,DID、DOC、VC、VP,隐私保护的具体功能调用方法。 下载包中包括: BSN-DID SDK源码包 BSN-DID介绍0310.pdf 区块链服务网络用户手册V1.9.1.pdf

2022-10-08

EIP-3664智能合约源码, Legoot项目, 可组合可分解可扩展合约

MetaCore项目源码:MetaCore(https://www.metacorelabs.io/) 早在 2021 年的5月份,DRepublic 团队提出了一个叫做EIP-3664 的协议方案(又叫做NFT 属性扩展协议),其使用了一种较为巧妙的方式,来进一步解决了主流NFT标准比如ERC-721 或 ERC-1155等,在属性上表现力不足,NFT之间难以融合,且在存储上中心化(目前主要存储在服务器上)的种种问题,并且该提案进一步实现了NFT 属性的动态扩展。 EIP-3664的方案中,不需要修改现有的 ERC-721 协议和 ERC-1155 协议,它支持通过在 NFT mint 方法的 IERC721Receiver 或 IERC1155Receiver 的回调函数中为 NFT attach attributes, 也可以通过 override mint 方法自定义实现为 NFT attach 属性的方式,一个 NFT 可以无限 attach 任意多个属性。

2022-10-08

空空如也

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

TA关注的人

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