[发明专利]数据转换方法、装置、设备和存储介质在审
申请号: | 202011636181.9 | 申请日: | 2020-12-31 |
公开(公告)号: | CN112783974A | 公开(公告)日: | 2021-05-11 |
发明(设计)人: | 邱炜伟;李伟;匡立中;黄方蕾;张珂杰 | 申请(专利权)人: | 杭州趣链科技有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/25 |
代理公司: | 深圳紫藤知识产权代理有限公司 44570 | 代理人: | 官建红 |
地址: | 310051 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 转换 方法 装置 设备 存储 介质 | ||
本申请公开了一种数据转换方法、装置、设备和存储介质,该方法包括获取智能合约对象;确定智能合约对象各字段的字段类型;根据智能合约对象各字段的字段类型,调用预设的编码方法,对智能合约对象各字段分别进行序列化处理,得到多个子字节流;对多个子字节流进行拼接处理,得到智能合约对象对应的字节流数据,以完成智能合约对象的数据转换。本申请将智能合约对象转换为二进制的字节流数据,提高了数据传输的效率,减小了字节流数据存储所占用的存储空间;提高了序列化转换效率,减少了转换所需时间,执行速度快,进一步为智能合约和区块链账本之间的数据交互提供了便利。
技术领域
本申请涉及区块链技术领域,具体涉及一种数据转换方法、装置、设备和存储介质。
背景技术
区块链技术,是一种新型去中心化协议,能安全地存储数字货币交易或其他数据,并且信息不可伪造和篡改。智能合约是一种可以在区块链网络环境中部署和执行的一段代码,这段代码的部署以及执行都是可以在区块链网络中以交易的形式呈现的,其部署和执行结果可以随着交易被全网共识。
目前,智能合约的执行依赖于执行引擎,智能合约与区块链账本之间存在诸多数据交互,但是智能合约对象采用的数据类型与区块链账本所采用的数据类型并不相同,因此,智能合约与区块链账本的交互过程中需要进行数据类型转换。
现有技术中主要采用两种转化方式进行数据类型转换,方式一:通过Java的Json类库Gson来将Java智能合约对象序列化成json字符串,通过json字符串实现Java智能合约到区块链账本之间的数据交互;方式二:将json字符串反序列化为Java智能合约对象,来实现区块链账本到Java智能合约之间的数据交互。
但是,上述两种转换方式,要么转换后形成的字符串较大,导致数据传输和存储不便,要么转换效率低、耗时长。
发明内容
本申请提供一种数据转换方法、装置、设备和存储介质,旨在解决现有智能合约与区块链账本交互时,智能合约对象转换效率低,且转换形成的字符串数据量大,不方便传输和存储的技术问题。
第一方面,本申请提供一种数据转换方法,包括:
获取智能合约对象;
确定智能合约对象各字段的字段类型;
根据智能合约对象各字段的字段类型,调用预设的编码方法,对智能合约对象各字段分别进行序列化处理,得到对应的多个子字节流;
对多个子字节流进行拼接处理,得到智能合约对象对应的字节流数据,以完成智能合约对象的数据转换。
在本申请一种可能的实现方式中,字段类型包括第一类型和第二类型,编码方法包括第一编码方法和第二编码方法,多个子字节流中包括第一子字节流和第二子字节流,根据智能合约对象各字段的字段类型,调用预设的编码方法,对智能合约对象各字段分别进行序列化处理,得到对应的多个子字节流,包括:
若字段的字段类型为第一类型,则调用第一编码方法对字段进行序列化处理,得到第一子字节流;
若字段的字段类型为第二类型,则调用第二编码方法对字段进行序列化处理,得到第二子字节流。
在本申请一种可能的实现方式中,第一编码方法包括:
获取字段的字段名称、字段值和第一编码值,其中,第一编码值为预设的第一类型的编码值;
根据字段的字段类型,确定字段的字节数;
根据字段名称、第一编码值、字节数和字段值,得到第一子字节流。
在本申请一种可能的实现方式中,第一类型包括整型,获取字段的字段名称、字段值和第一编码值之后,方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州趣链科技有限公司,未经杭州趣链科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011636181.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于数字图像的变电站五防逻辑验证方法
- 下一篇:一种逐次逼近型模数转换器
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置