基于以太坊+IPFS的去中心化数据交易方法及平台
自己的论文,哎费事
目录
基于以太坊+IPFS的去中心化数据交易方法及平台
基于以太坊+IPFS的去中心化数据交易方法及平台
摘要:
数据交易过程中存在数据权属不明和数据安全问题。本文开发了一种基于以太坊+IPFS的去中心化数据交易方法及平台。方法包括:通过自然语言处理技术对文本进行相似计算实现数据确权;通过智能合约构建了以交易体为中心的数据加解密流程以规避恶意交易行为、保证数据交易中的数据安全。数据交易平台由客户前端、后端和数据库三部分构成,其中数据库采用以太坊加星际文件系统模式。实验表明:平台能解决数据交易过程中数据权属不明和数据安全问题,提高数据交易的效率降低数据交易费用,为买卖双方提供安全可靠的数据交易服务。
关键词:数据交易 区块链 智能合约 数据确权 交易体
01 引言
大数据时代已经来临,数据即将成为资产或者已经成为资产。近年来伴随着智能移动设备和物联网设备的发展,因其体积小,易携带等特点,受到人们一致好评,数据呈指数式增长,淘宝网近4亿的会员每天产生的商品交易数据约20TB,Facebook约 10 亿的用户每天产生的日志数据超过300TB。从市场规模来看,全球大数据产业市场规模正在快速扩张。据市场研究机构IDC发布的数据,2020年全球大数据和业务分析市场规模达到1890亿美元,预计到2024年将达到2740亿美元,年复合增长率达到9.2%。同时,国内大数据产业也在迅速发展。根据中国信息通信研究院发布的数据,2019年中国大数据产业规模达到8383亿元,同比增长15.9%。2022年我国大数据产业规模达1.57万亿元,同比增长18%,成为推动数字经济发展的重要力量。[1-2]。
数据交易逐渐发展起来。中央印发《中共中央、国务院关于构建更加完善的要素市场化配置体制机制的意见》要求加快培育数据要素市场。在国家政策的推动鼓励下以及机器学习,深度学习,神经网络和数据挖掘技术的逐渐成熟,数据在这些技术中发挥的作用日益明显,如何合理利用大数据,推进新一代信息技术领域进步与发展成为现今研究热点之一[3-4], 外国也十分重视数据的发展尤其是美国,从2009年开始,美国联邦政府就开始公开大量资料库,并且把许多数据公布在中央信息交换库——Data.gov网站上,以方便民众进行查阅。在2014年,美国国税局建立了一个名为“Get transcript”的共享数据库。美国政府与电力行业在2012年合作推出“绿纽扣”计划,为家庭与企业提供能源使用信息,目前已为5900万家庭与企业提供服务,并帮助他们节约能源。此外,美国政府认为目前大数据应用中最严峻的挑战是如何保证数据安全,并且正在不断修改相关法律法规以保证数据安全,提出未来的改进重点在于:改进消费者隐私权法案、通过有关国家数据外泄的立法、保护非美籍人士隐私、规范在校学生数据采集使用、修正电子通信安全法等。因此打造一个安全的数据交易共享平台是十分有必要的。
现今大数据成为一种资源,数据是数字经济的基础性资源,是后疫情时代经济发展的重要生产要素,但现在人们理论认知远远落后于应用实践,一方面,数据科学和应用技术的发展日新月异,人们需要不断学习和更新相关知识,才能跟上时代的步伐。另一方面,数据的收集、处理、分析和应用也需要考虑到许多复杂的的问题,如数据质量、数据隐私、数据安全等,这些问题需要人们进行深入的研究和探讨。以上原因导致数据不能发挥其最大价值,而且数据的确权、存储安全问题也存在很大问题,这对大数据产业和数字经济的健康发展形成很大的隐患,也成为制约大数据向生产要素正常转化的关键。数据交易中仍有很多问题急需解决[5],数据交易和传统的商品交易有很大不同,由于数据的复制成本低导致数据一键复制遍地都是,因此数据难以确权,且数据具有生长速度快,价值难以估计。中心服务器一旦崩溃或者由于其他不可抗拒因素导致数据中心损坏,数据以及数据交易信息将不复存在,数据安全难以保证,且中心服务器同时面临黑客攻击风险,例如:2018年,Facebook爆出用户数据泄露事件,涉及8700万用户的数据被不当分享给政治咨询公司剑桥分析。同一年雅虎宣布其5亿用户账户信息被盗,包括用户名、电子邮件地址、密码等敏感信息。2021年,Under Armour公司的MyFitnessPal应用程序数据泄露,导致多达1500万用户的个人信息被泄露。数据安全存储显得尤为重要[6]。
区块链技术是一种分布式的数据存储数据库,区块链作为一个去中心化的平台将推动去中心化系统的形成。基于区块链技术可以实现数据交易信息可追溯且不可篡改,数据加密,智能合约控制交易流程,数据实现分布式存储[7-8],可以很好应对以上数据交易过程中出现的问题。我们通过区块链建立一种去中心化的交易系统,在数据上传前进行相似数据比对,在交易过程中数据交易信息可追溯且不可篡改,这样可以确定数据权属问题;使用加密算法对数据加密保证数据安全;通过智能合约对数据交易流程进行控制防止买卖双方抵赖行为;分布式存储可以防止服务器单点故障和黑客攻击。
02 基于区块链的数据交易系统
这一章节主要介绍数据交易过程。在数据交易过程中涉及数据确权,数据加密上传;其次介绍数据交易中解决的关键问题;最后介绍基于以太坊的数据交易的技术架构。
2.1数据交易过程描述
数据交易就是买方(Buyer,B)根据自己的需求在数据交易平台(Data trading platform,DTP)搜索相应的数据集,买卖双方根据现有信息进行交易判断,最终实现数据从卖方(Seller,S)到买方B的数据流转。首先由卖方S向数据交易平台DTP发起数据上传请求数据,数据交易平台DTP收到请求后进行数据确权。数据确权完成之后进行数据加密上传其中数据关键信息存储到以太坊中,数据集存储到星际文件系统中。买方B在搜索到相应数据集之后,向数据交易平台DTP发起交易请求。卖方S响应交易请求,之后在数据交易平台中完成数据交易。最后在数据交易平台进行数据交付,买方B可以下载数据集。这一过程中涉及到关键操作是:数据确权、数据加密上传、数据交易、数据交付。目前数据交易平台DTP在windows系统下实现,主要目的实现仿真实验测试,未来将所有用户操作转移到智能合约中,实现完全的去中心化,数据交易过程如图1所示。
图1数据交易过程图
2.1.1数据确权
我们通过自然语言处理(Natural Language Processing,NLP)技术[9-10]对文本进行相似计算。防止用户对数据进行简单改造,重新上传到系统中。本文仅针对文本数据。用户在提交数据的时,需要提供数据集关键词,关键词的作用是便于平台和用户进行数据集检索。相似文本的处理模型有很多例如:基于类别主题词集的加权相似度短文本分类[11],其中通过主题词加权的形式进行相似文本识别。但是本文针对的文本数据都是大型的文本数据集,不适合使用这种主题词加权的模型。当用户在数据交易平台上传数据时,必须确认数据集关键词,平台方会根据数据集上传方提交的关键词进行检索有相似数据则会进行数据相似对比。数据确权6个步骤为:分词、哈希计算、加权、合并、降维、计算汉明距离。如图2所示。

相关文章:
基于以太坊+IPFS的去中心化数据交易方法及平台
自己的论文,哎费事 目录 基于以太坊IPFS的去中心化数据交易方法及平台 基于以太坊IPFS的去中心化数据交易方法及平台 摘要: 数据交易过程中存在数据权属不明和数据安全问题。本文开发了一种基于以太坊IPFS的去中心化数据交易方法及平台。方法包括&am…...
NestJS 的 拦截器 学习
拦截器会用到RxJs,所以在学习拦截器之前可以先了解一下它。 拦截器是使用Injectable()装饰器装饰的类并且实现了接口NestInterceptor。 拦截器受到 AOP(面向切面编程)技术的启发,具有如下的功能: 在方法执行之前/之后绑定额外的逻辑转换函…...
Spring AOP 中的代理对象是怎么创建出来的?
文章目录 1. AOP 用法2. 原理分析2.1 doCreateBean2.2 postProcessAfterInitialization2.3 getAdvicesAndAdvisorsForBean2.3.1 findCandidateAdvisors2.3.2 findAdvisorsThatCanApply2.3.3 extendAdvisors 2.4 createProxy 今天和小伙伴们聊一聊 Spring AOP 中的代理对象是怎么…...
解决@Scope(“prototype“)不生效的问题
目录 Scope(“prototype“)不生效Scope(“prototype“)正确用法——解决Bean多例问题 1.问题,Spring管理的某个Bean需要使用多例2.问题升级3. Spring给出的解决问题的办法(解决Bean链中某个Bean需要多例的问题) Scope(“prototype“)不生效 …...
Mybatis 知识点
Mybatis 知识点 1.1 Mybatis 简介 1.1.1 什么是 Mybatis Mybatis 是一款优秀的持久层框架支持定制化 SQL、存储过程及高级映射Mybatis 几乎避免了所有的 JDBC 代码和手动设置参数以及获取结果集MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO…...
PHP中关于is,between,in等运算符的用法是什么?
我们学习了解了这么多关于PHP的知识,不知道你们对PHP中关于is,between,in等运算符的用法是什么?是否已经完全掌握了呢,如果没有,那就跟随本篇文章一起继续学习吧 相关推荐:关于PHP中的增删改如…...
2023-07-29:华清远见嵌入式2017年线下班:文件IO笔记
这里写目录标题 华清远见嵌入式2017年线下班:文件IO笔记文件权限文件IO文件创建和打开操作文件关闭操作出错处理创建设备文件 || create || 老师自己忘了文件读操作练习:计算文件的大小?文件写操作练习:打开file1和file2ÿ…...
2023年第四届“华数杯”数学建模思路 - 复盘:光照强度计算的优化模型
文章目录 0 赛题思路1 问题要求2 假设约定3 符号约定4 建立模型5 模型求解6 实现代码 0 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 1 问题要求 现在已知一个教室长为15米,宽为12米࿰…...
Typescript第七章 处理错误(返回null,抛出异常,返回异常,Option类型)
第七章 处理错误 Typescript竭尽所能,把运行时异常转移到编译时。Typescript是功能丰富的系统,加上强大的静态和符号分析能力,包揽了大量辛苦的工作。 但是有些问题是无法避免的,比如网络和文件系统异常,解析用户输入…...
Qt库xcb问题
首先在~/.bashrc中加入 export QT_DEBUG_PLUGINS1然后看具体的报错 查看某个库链接的库: ldd libqxcb.so然后找到真正缺少的库,再在路径下搜索,然后建立软链接。 https://blog.csdn.net/LOVEmy134611/article/details/107212845 https://…...
C++ | 哈希表的实现与unordered_set/unordered_map的封装
目录 前言 一、哈希 1、哈希的概念 2、哈希函数 (1)直接定址法 (2)除留余数法 (3)平方取中法(了解) (4)随机数法(了解) 3、哈…...
【漏洞挖掘】Xray+rad自动化批量漏洞挖掘
文章目录 前言一、挖掘方法二、使用步骤工具安装使用方法开始挖掘 总结 前言 自动化漏洞挖掘是指利用计算机程序和工具来扫描、分析和检测应用程序、网络和系统中的安全漏洞的过程。这种方法可以帮助安全专家和研究人员更高效地发现和修复潜在的安全威胁,从而提高整…...
Swagger UI教程 API 文档和Node的使用
在团队开发中,一个好的 API 文档可以减少很多交流成本,也可以使一个新人快速上手业务。 前言 swagger ui是一个API在线文档生成和测试的利器,目前发现最好用的。为什么好用?Demo 传送门 支持API自动生成同步的在线文档 这些文档可…...
P5691 [NOI2001] 方程的解数
[NOI2001] 方程的解数 题目描述 已知一个 n n n 元高次方程: ∑ i 1 n k i x i p i 0 \sum\limits_{i1}^n k_ix_i^{p_i} 0 i1∑nkixipi0 其中: x 1 , x 2 , … , x n x_1, x_2, \dots ,x_n x1,x2,…,xn 是未知数, k 1 ,…...
rust里用什么表示字节类型?
在Rust中,字节可以使用 u8 类型来表示。 u8 是一个无符号8位整数类型,可以表示0到255之间的值,对应于一个字节的范围。 以下是一个示例,演示了如何声明和使用字节: fn main() {let byte: u8 65; // 表示字母A的ASCI…...
CMake简介
文章目录 为什么需要头文件为什么 C 需要声明头文件 - 批量插入几行代码的硬核方式头文件进阶 - 递归地使用头文件 CMake什么是编译器多文件编译与链接CMake 的命令行调用为什么需要库(library)CMake 中的静态库与动态库CMake 中的子模块子模块的头文件如…...
[threejs]相机与坐标
搞清相机和坐标的关系在threejs初期很重要,否则有可能会出现写了代码,运行时一片漆黑的现象,这种情况就有可能是因为你相机没弄对。 先来看一下threejs中的坐标(世界坐标) 坐标轴好理解,大家只需要知道在three中不同颜色代表的轴…...
Qt信号与槽机制的基石-MOC详解
引入 上篇讲到了信号与槽就是实现的观察者模式,那具体如何生成映射表就是moc做的事情。 一、moc简介 1. moc的定义 moc 全称是 Meta-Object Compiler,也就是“元对象编译器”,它主要用于处理C源文件中的非标准C代码。Qt 程序在交由标准编…...
关于单体架构缓存刷新实现方案
背景 如果各位看官是分布式项目应该都采用分布式缓存了,例如redis等,分布式缓存不在本次讨论范围哈;我个人建议是,如果是用户量比较大,建议采用分布式缓存机制,后期可以很容易前后到分布式服务或微服务。 …...
洞悉安全现状,建设网络安全防护新体系
一、“网络攻防演练行动“介绍 国家在2016年发布《网络安全法》,出台网络安全攻防演练相关规定:关键信息基础设施的运营者应“制定网络安全事件应急预案,并定期进行演练”。同年“实战化网络攻防演练行动”成为惯例。由公安部牵头࿰…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...
Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...
GitHub 趋势日报 (2025年06月06日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用
文章目录 一、背景知识:什么是 B-Tree 和 BTree? B-Tree(平衡多路查找树) BTree(B-Tree 的变种) 二、结构对比:一张图看懂 三、为什么 MySQL InnoDB 选择 BTree? 1. 范围查询更快 2…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
图解JavaScript原型:原型链及其分析 | JavaScript图解
忽略该图的细节(如内存地址值没有用二进制) 以下是对该图进一步的理解和总结 1. JS 对象概念的辨析 对象是什么:保存在堆中一块区域,同时在栈中有一块区域保存其在堆中的地址(也就是我们通常说的该变量指向谁&…...
