CN111464643B - 一种基于区块链的多能源交易与管理平台 - Google Patents

一种基于区块链的多能源交易与管理平台 Download PDF

Info

Publication number
CN111464643B
CN111464643B CN202010250670.4A CN202010250670A CN111464643B CN 111464643 B CN111464643 B CN 111464643B CN 202010250670 A CN202010250670 A CN 202010250670A CN 111464643 B CN111464643 B CN 111464643B
Authority
CN
China
Prior art keywords
transaction
layer
energy
block chain
intelligent contract
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010250670.4A
Other languages
English (en)
Other versions
CN111464643A (zh
Inventor
丁涛
董江彬
穆程刚
曲明
宁可儿
董晓博
齐捷
张效梦
贺元康
陈天恩
王永庆
刘健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwest Branch Of State Grid Power Grid Co
Xian Jiaotong University
Electric Power Research Institute of State Grid Shaanxi Electric Power Co Ltd
Original Assignee
Northwest Branch Of State Grid Power Grid Co
Xian Jiaotong University
Electric Power Research Institute of State Grid Shaanxi Electric Power Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northwest Branch Of State Grid Power Grid Co, Xian Jiaotong University, Electric Power Research Institute of State Grid Shaanxi Electric Power Co Ltd filed Critical Northwest Branch Of State Grid Power Grid Co
Priority to CN202010250670.4A priority Critical patent/CN111464643B/zh
Publication of CN111464643A publication Critical patent/CN111464643A/zh
Priority to US17/157,221 priority patent/US20210312547A1/en
Application granted granted Critical
Publication of CN111464643B publication Critical patent/CN111464643B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/085Payment architectures involving remote charge determination or related payment systems
    • G06Q20/0855Payment architectures involving remote charge determination or related payment systems involving a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • G06Q20/145Payments according to the detected use or quantity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F15/00Coin-freed apparatus with meter-controlled dispensing of liquid, gas or electricity
    • G07F15/003Coin-freed apparatus with meter-controlled dispensing of liquid, gas or electricity for electricity
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F15/00Coin-freed apparatus with meter-controlled dispensing of liquid, gas or electricity
    • G07F15/003Coin-freed apparatus with meter-controlled dispensing of liquid, gas or electricity for electricity
    • G07F15/008Rewarding for providing delivery of electricity to the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/06Electricity, gas or water supply
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本发明公开一种基于区块链的多能源交易与管理平台。该平台包括区块链层、智能合约层、前端交互层和数据库层,其中区块链层存储能源交易的每一条交易记录以及区块链本身的区块相关元素;智能合约层存储能源信息和交易信息,并响应于前端交互层的合约调用返回结果;前端交互层接收用户注册,并接收买卖双方发布的交易信息,通过与智能合约层交互,将交易数据存储在智能合约的待撮合交易信息结构体,并执行智能合约的交易撮合;数据库层用于存储用户注册信息、个人资料以及区块链交易信息中的交易双方的账户地址和姓名的映射关系。本发明能实现用户之间自由发布和自动撮合,保障交易的公开化,分布式需求,为区块链技术应用化提供新的解决方法。

Description

一种基于区块链的多能源交易与管理平台
技术领域
本发明属于能源分布式交易与管理技术领域,尤其涉及一种基于区块链的多能源交易与管理平台。
背景技术
随着区块链技术由数字货币向更多产业发展的转型,以及能源市场化的不断改革,区块链技术应用到能源领域具有很大的潜力,区块链所提出的分布式、去中心化的特点与能源领域提出的分布式交易需求非常契合。以电能为例,通过区块链中的智能合约技术,可以实现自动协调发电商以及用户用电需求,缓解配电网压力,同时区块链的公开性的特点保证了能源交易的安全性,降低了能源交易中的信任成本以及管理维护成本。
目前,对于区块链中的智能合约开发已经有很多的研究成果,可以通过实验验证智能合约在能源领域交易的合理性,这为进一步推动区块链技术在能源分布式交易中的应用提供可能。
然而,在现有技术中,针对能源交易已开发的区块链技术仍存在很多问题,例如,大多数智能合约目前只能依赖于仿真环境,基于可视化程度不高的平台进行编译,函数调用等,普通用户参与度非常有限,阻碍了区块链技术落地应用的进程。此外,区块链技术的性能问题仍受到很大挑战,过多的信息依托智能合约实现将消耗更多资源,同时,基于区块链原始的交易信息复杂冗长,区块链中的个人账户均为20字节长度的地址,虽然区块链中的交易信息公开透明,但是仍无法对交易双方有真实的判断,且进入市场的用户未提供真实身份,这与交易市场的公开透明并不符合,并且对于市场的管理者来说,无法保障市场交易的合法化。这些问题的存在使得区块链技术在能源领域的落地应用受到很大阻碍。
发明内容
本发明的目的是克服上述现有技术的缺陷,提供一种基于区块链技术和数据库结合的多能源交易与管理平台及其搭建方法,从而对分布式能源交易落地运作模式,区块链技术与传统数据库技术融合发展进行指导,为区块链技术应用提供新的解决方案。
根据本发明的第一方面,提供一种基于区块链的多能源交易与管理平台,包括区块链层、智能合约层、前端交互层和数据库层,其中:
所述区块链层存储能源交易的每一条交易记录以及区块链本身的区块相关元素;
所述智能合约层存储能源信息和交易信息,并响应于所述前端交互层的合约调用返回结果;
所述前端交互层接收用户注册,以及接收买卖双方发布的交易信息,通过与所述智能合约层交互,将交易数据存储在智能合约的待撮合交易信息结构体中,并执行智能合约的交易撮合;
所述数据库层用于存储用户注册信息、个人资料以及区块链交易信息中的交易双方的账户地址和姓名的映射关系。
在一个实施例中,所述前端交互层还用于响应于用户查询交易信息,通过与所述智能合约层交互获得相应的交易信息,并根据所述数据库层中存储的姓名和区块链地址的映射关系,将交易信息中的交易双方转换成以真实姓名显示。
在一个实施例中,所述用户注册包括以下步骤:
针对用户输入的用于注册的个人信息,使用以太坊智能合约专用ether.js库随机生成密钥对,并转换成私钥和地址;
使用ether.js为私钥和地址生成签名;
利用签名验证地址的合法性,以决定是否将用户输入的个人信息和对应的地址存入数据库。
在一个实施例中,所述买卖双方发布的交易信息包括能源类型、买卖身份、交易数量和期望价格。
在一个实施例中,所述前端交互层包括链上市场和个人中心,所述链上市场包括能源列表、所有发布和所有交易,能源列表将当前市场的所有能源未交易数据进行汇总,以表征市场供需关系。
在一个实施例中,本发明提供的基于区块链的能源交易和管理平台还包括管理员模块,用于将用户交易手续费的转账记录在区块链上、执行用户的市场准入审核、查看用户的个人信息、管理能源信息、管理能源类型中的一项或多项。
在一个实施例中,所述智能合约层提供增删能源函数、申请交易函数、撮合函数和查询函数。
根据本发明的第二方面,提供一种基于区块链的多能源交易与管理平台的搭建方法,包括以下步骤:
基于云服务器平台创建用于能源交易的项目实例,配置以太坊Geth客户端运行所需要的依赖,配置创世区块文件进行初始化,启动私有链并允许其他节点加入,以完成私有链的搭建;
将用于能源交易的智能合约用Remix在线编译器编译,Remix自动生成合约应用程序二进制接口和字节码,将其以json文件格式保存在服务器项目文件同目录下,继而连接私有链,在node.js环境中对私有链进行配置,以完成合约部署;
利用JavaScript中的ether.js库,搭建智能合约和前端交互层的客户端的接口,对合约中的函数进行调用,合约向Geth发送远程过程调用,Geth读取传输进来的函数和调用地址,执行对应指令,以完成客户端对智能合约的内部调用。
与现有技术相比,本发明的优点在于,依据数据库功能保存用户信息,与区块链建立映射关系,避免了与分布式交易原则冲突,并且使系统可用性增强,符合现今应用的需求;能源分布式交易的主体功能仍依据区块链技术实现,从而实现用户之间自由发布,系统自动撮合的功能,同时用户可以依据区块链查询所有交易信息,保障了交易的公开化和分布式需求。本发明为目前区块链技术在能源交易领域由实验到应用转换提供了有效的解决方案。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1根据本发明一个实施例的基于区块链的多能源交易与管理平台的架构图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
简言之,本发明结合区块链技术和数据库技术的不同优势搭建能源交易和管理平台,将发布交易、交易撮合和交易信息查询等功能部署在例如以太坊智能合约中,将用户注册信息保存在传统数据库中,同时建立真实信息和冗长的区块链账户的映射关系,使得市场上的交易信息都能以真实姓名显示。本发明提供平台既满足能源分布式交易的需求,又避免了以太坊智能合约中string类型数据难以兼容且影响系统性能的问题,同时以真实姓名显示的交易数据,保证了交易系统的公开性以及合法安全性,对发展分布式能源交易的新模式具有较强参考意义。
具体地,参见图1所示,本发明实施例提供的基于区块链的多能源交易管理平台将能源交易系统分为区块链层、智能合约层、前端交互层、数据库层四大部分,其中数据库不违背去中心化原则地运用在以区块链为主体的系统中,用于水、电、天然气等多种类型的能源交易和管理。
下文将从本发明所实现功能出发,介绍区块链层、智能合约层、前端交互层和数据库层的逻辑过程和配合机理。
一、关于数据库和区块链技术的搭配过程
搭建本发明提供的基于区块链的能源交易与管理平台,需首先确定能源交易与管理平台实现的功能、确定区块链技术实现的功能、确定数据库技术实现的功能等。例如,确定各层功能的过程包括:
步骤S101、确定能源交易平台所实现的功能。
对用户来说,能源交易平台可以实现用户发布交易、系统撮合,查看个人交易结果,查看交易所生成的区块链信息,查看并更改个人注册时的信息等;对管理员来说,可以向某一用户转账,查看用户的个人信息,管理能源等。
步骤S102、确定区块链技术实现的功能。
基于区块链技术分布式的特点,将能源交易的主体环节部署在区块链上,即发布能源,系统自动撮合交易,查看交易结果和交易生成的区块链信息;同时,用户要针对不同种类能源进行交易,故将增删能源的功能也放在区块链中,以上例如可以基于以太坊智能合约实现相关函数功能。
步骤S103、确定数据库技术实现的功能。
基于数据库成熟稳定的特点,且区块链智能合约中对string类型的数据很不兼容,严重影响性能,故将不违背分布式交易原则的功能部署在数据库中,即用户注册信息的存储,用户登录后可查看并修改个人资料;同时,所有区块链交易信息中的交易双方初始均以区块链账户地址显示,通过数据库中存储的账户地址和姓名一一映射关系,将交易双方换为姓名显示。
进一步地,搭建图1包含区块链层、智能合约层、前端交互层和数据库层的交易和管理平台包括以下步骤:
步骤S201,基于云服务器平台创建项目实例,创建项目文件后,配置以太坊Geth客户端运行所需要的依赖,配置创世区块文件进行初始化,随后启动私有链并允许其他节点加入,完成私有链的搭建;
步骤S202,将用于能源交易的智能合约用Remix在线编译器编译,Remix自动生成合约应用程序二进制接口(ABI)和字节码(Byte-code),将其以json文件格式保存在服务器项目文件同目录下,然后连接私有链,在node.js环境中对私有链进行配置,完成合约部署;
步骤S203,利用JavaScript中的ether.js库,搭建智能合约和客户端的接口,对合约中的函数进行调用,合约向Geth发送远程过程调用(RPC),Geth读取传输进来的函数和调用地址等信息,执行对应指令,完成客户端对智能合约的内部调用。同时,根据客户端与智能合约的连接,将智能合约存储的能源信息和交易信息数据返回客户端,借助前端开发Vue+element框架,生成便于用户操作的界面。
步骤S204,用户注册时,将注册的信息和生成的区块链账户地址一并提交至服务器,根据区块链地址和真实姓名的一一映射关系,在用户查看区块链中的交易时,交易双方以姓名显示。
为进一步理解,以下具体介绍数据库和区块链技术搭配过程涉及过程和接口。
1)、底层技术:基于MySQL搭建数据库,同时基于nodejs+egg.js实现后端;区块链技术以例如以太坊Geth客户端为底层,使用Solidity编写智能合约。
2)、连接权限:将数据库和后端部署至服务器,数据库关闭对外连接,只能由服务器内部访问;后端允许访问数据库,此时,只有后端程序被允许访问数据库。
3)、功能分离:系统的交易模块和用户模块相分离。数据库主要实现用户注册信息的存储,用户登录后可查看并修改个人资料等功能,同时所有的交易信息双方均以真实姓名显示。
4)、用户注册
在一个实施例中,用户注册定义为以下操作序列:
使用以太坊智能合约专用ether.js库随机生成密钥对,并转换成私钥和地址,即生成用户的账户信息;
使用ether.js将私钥和地址生成签名;
将用户输入的姓名、身份证号等信息,以及地址和签名(不包括私钥)发送至服务器的后端程序;
后端程序使用签名验证地址,若根据签名计算出的地址和客户端发送的地址相同,则允许后面的步骤,否则阻止此行为。
将地址、姓名、身份证号等信息存入数据库中(不包括签名,当然也不包括私钥)
5)、设计“查看接口”
在一个实施例中,查看接口的具体逻辑如下:
服务器接受若干参数,包括地址和签名,以及需要查询的用户地址映射列表;
后端程序使用签名验证地址,若根据签名计算出的地址和客户端发送的地址相同,则允许后面的步骤,否则阻止此行为;
根据需要查询的用户地址映射列表,从数据库读取出对应这些用户的地址、姓名等信息,并返回这些信息。
6)、交易信息的姓名和地址映射替换。
在一个实施例中,交易信息的姓名和地址映射替换操作序列如下:
使用ethers.js,把当前登录用户的私钥和地址作为输入,生成签名;
向服务器调用“查看接口”,参数地址为当前用户的地址;
验证通过后,从地址姓名映射列表中搜索到所要查询地址对应的姓名,并在显示交易双方时显示姓名。
综上,基于区块链去中心化的特点和传统数据库性能稳定的优势,将区块链技术与数据库技术结合使用在本发明的不同功能上,区块链技术用于多能源分布式交易,传统数据库用于存储复杂的string类型数据,在不违背分布式交易特点的前提下,本发明提升了系统性能,减少了资源消耗。
二、从多能源交易与管理系统功能角度分析系统架构
1)、管理员功能
管理员对于能源的交易过程没有任何干涉,保证能源区块链分布式的特点。当然,在能源交易中,仍需具有市场准入机制,传统的解决方式完全依赖于中心化的数据库,管理员对用户提交的信息审核后准许进入市场,这样的方式仍然存在信任问题。这源于在区块链中调用智能合约(于用户而言就是申请交易等事件的触发),都需要消耗一定的Gas手续费。本系统为每一位初始用户充值一定数目的手续费,待体验手续费耗尽,如若继续使用,则需向管理员申请准入市场,管理员根据数据库中的个人基本信息进行审核,审核通过后向用户的区块链地址转入相应手续费,以这样的方式完成市场准入审核。同时,这样的一笔转帐也会记录在区块链上,保证了信息的公开性。
管理员的第二个的功能是对能源类型进行管理,由于不同类型的能源决定了用户可以对哪些能源进行交易,所以这部分功能依托于区块链中的智能合约实现,使得能源交易系统具有良好的扩展性,实现多种能源互补,多元用户参与。
2)、用户注册
在前端交互层设计注册界面,普通用户根据界面指引进行注册,填写的个人基本信息保存在数据库层。同时向区块链层发出申请,注册成功后会获得个人区块链地址以及私钥,在随后的交易中都是使用地址和私钥进行,基于区块链的这种交易特点,保证了交易的安全性和隐私性。
3)、买卖双方发布交易信息
在此界面,用户可以申请能源交易,提交的信息包括能源类型、买卖身份、交易数量和期望价格等。
确认成功后,前端交互层将通过ether.js接口与智能合约交互,将数据存储在智能合约的待撮合交易信息结构体中,同时执行智能合约的撮合函数。
4)、个人中心
个人中心包括个人资料,个人发布和个人交易。个人资料的内容主要由存储信息的数据库返回。个人发布展示的是自己向市场发布的交易,个人交易则展示的是成功被撮合的交易,一方面,交易流水是以往交易的凭证,另一方面,交易流水对于之后的合理报价起到一定的参考作用。
5)、链上市场
链上市场包括能源列表、所有发布和所有交易。能源列表将当前市场的所有能源未交易数据进行汇总,方便用户快速分析市场供需关系。以当前系统的列表能源举例(参见下表1),可以看到,电和水处于供大于求状态,天然气处于供不应求状态。而电中仍然存在一笔求购信息,可以推测是其报价过低,系统未将其撮合。
表1当前系统中的剩余能源信息
Figure BDA0002435369500000091
除此之外,用户可以看到所有成功交易的信息,包括交易时间、交易双方、交易能源、交易量和成交价等。首先由智能合约层返回交易信息,接下来根据数据库中存储的姓名和区块链地址的映射关系,将交易信息中的交易双方换成以真实姓名显示。更重要的是,区别于传统交易信息,每一条交易都记录在区块链上,也就包含了区块链本身的元素,如区块高度,区块hash,父区块hash等,由区块链层将这些信息调入。这些信息对于用户而言并无太多参考价值,但是每位用户都可以在这里得到区块链的完整信息,也就是自己的副本,这对于保障整个交易系统的公平,公开和不可篡改性具有非常重要的作用。
综上所述,本发明的有益效果至少体现在以下方面:
1)、本发明提出的基于区块链技术和数据库结合的多能源交易与管理平台及其搭建方法,能够巧妙避免区块链技术中性能较低,数据类型可视程度低等问题,依据数据库功能保存用户信息,与区块链建立映射关系,既不与分布式交易原则冲突,又使系统可用性增强,符合现今应用的基本需求。通过合理地将区块链和传统数据库技术相结合,能够较好用在分布式能源交易与管理应用中。
2)、本发明能够使能源分布式交易的主体功能仍依据区块链技术实现,实现用户之间自由发布,系统自动撮合的功能,同时用户可以依据区块链查询所有交易信息,保障了交易的公开化,分布式需求。
3)、本发明能够有效地解决现今区块链在能源交易领域大多仍局限于仿真分析和测试,且普通用户参与门槛高等问题,同时为目前区块链技术在能源交易领域由实验到应用转换困难提出了有效的解决措施,工程开发人员可以据此进一步开展相关研究工作。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。

Claims (6)

1.一种基于区块链的多能源交易与管理平台,包括区块链层、智能合约层、前端交互层、数据库层和管理员模块,其中:
所述区块链层存储能源交易的每一条交易记录以及区块链本身的区块相关元素;
所述智能合约层存储能源信息和交易信息,并响应于所述前端交互层的合约调用返回结果;
所述前端交互层接收用户注册,以及接收买卖双方发布的交易信息,通过与所述智能合约层交互,将交易数据存储在智能合约的待撮合交易信息结构体中,并执行智能合约的交易撮合,所述前端交互层还用于响应于用户查询交易信息,通过与所述智能合约层交互获得相应的交易信息,并根据所述数据库层中存储的姓名和区块链地址的映射关系,将交易信息中的交易双方转换成以真实姓名显示;
所述数据库层用于存储用户注册信息、个人资料以及区块链交易信息中的交易双方的账户地址和姓名的映射关系;
所述管理员模块用于向注册信息合法的用户转移区块链交易手续费,以执行市场准入审核,以及管理能源类型中的一项或多项;
其中,所述数据库部署在服务器,用户注册时,将注册信息和生成的区块链账户地址一并提交至服务器后端程序,将注册信息进行备份存储,同时生成区块链地址和真实姓名映射,并将该映射返回至所述前端交互层,在用户查看区块链中的交易时,交易双方以姓名显示,并且后端程序使用签名验证区块链地址;
其中,在交易时,将当前登录用户的私钥和区块链账户地址作为输入,生成签名,向服务器调用“查看接口”,参数地址为当前用户的区块链账户地址;验证通过后,从账户地址姓名映射列表中检索对应的注册姓名,并返回至所述前端交互层用于显示交易双方姓名。
2.根据权利要求1所述的基于区块链的多能源交易与管理平台,其特征在于,所述用户注册包括以下步骤:
针对用户输入的用于注册的个人信息,使用以太坊智能合约专用ether.js库随机生成密钥对,并转换成私钥和地址;
使用ether.js为私钥和地址生成签名;
利用签名验证地址的合法性,以决定是否将用户输入的个人信息和对应的地址存入数据库。
3.根据权利要求1所述的基于区块链的多能源交易与管理平台,其特征在于,所述买卖双方发布的交易信息包括能源类型、买卖身份、交易数量和期望价格。
4.根据权利要求1所述的基于区块链的多能源交易与管理平台,其特征在于,所述前端交互层包括链上市场和个人中心,所述链上市场包括能源列表、所有发布和所有交易,能源列表将当前市场的所有能源未交易数据进行汇总,以表征市场供需关系。
5.根据权利要求1所述的基于区块链的多能源交易与管理平台,其特征在于,所述智能合约层提供增删能源函数、申请交易函数、撮合函数和查询函数。
6.一种用于权利要求1至5任一项所述的基于区块链的多能源交易与管理平台的搭建方法,包括以下步骤:
基于云服务器平台创建用于能源交易的项目实例,配置以太坊Geth客户端运行所需要的依赖,配置创世区块文件进行初始化,启动私有链并允许其他节点加入,以完成私有链的搭建;
将用于能源交易的智能合约用Remix在线编译器编译,Remix自动生成合约应用程序二进制接口和字节码,将其以json文件格式保存在服务器项目文件同目录下,继而连接私有链,在node.js环境中对私有链进行配置,以完成合约部署;
利用JavaScript中的ether.js库,搭建智能合约和前端交互层的客户端的接口,对合约中的函数进行调用,合约向Geth发送远程过程调用,Geth读取传输进来的函数和调用地址,执行对应指令,以完成客户端对智能合约的内部调用。
CN202010250670.4A 2020-04-01 2020-04-01 一种基于区块链的多能源交易与管理平台 Active CN111464643B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010250670.4A CN111464643B (zh) 2020-04-01 2020-04-01 一种基于区块链的多能源交易与管理平台
US17/157,221 US20210312547A1 (en) 2020-04-01 2021-01-25 Multi-energy trading and management platform based on blockchain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010250670.4A CN111464643B (zh) 2020-04-01 2020-04-01 一种基于区块链的多能源交易与管理平台

Publications (2)

Publication Number Publication Date
CN111464643A CN111464643A (zh) 2020-07-28
CN111464643B true CN111464643B (zh) 2021-07-09

Family

ID=71680491

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010250670.4A Active CN111464643B (zh) 2020-04-01 2020-04-01 一种基于区块链的多能源交易与管理平台

Country Status (2)

Country Link
US (1) US20210312547A1 (zh)
CN (1) CN111464643B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112002433A (zh) * 2020-08-21 2020-11-27 苏州市星际云通区块链科技有限公司 一种区块链防疫手环综合管理系统
CN114170013B (zh) * 2021-12-03 2024-01-12 西安交通大学 一种基于区块链的点对点能源系统交易方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106875164A (zh) * 2016-12-29 2017-06-20 北京握奇智能科技有限公司 一种基于区块链技术的去中心化电力交易方法和系统
CN109359985A (zh) * 2018-09-19 2019-02-19 南方电网科学研究院有限责任公司 基于区块链的分布式能源交易执行方法、装置与设备
CN109872251A (zh) * 2019-02-20 2019-06-11 上海理工大学 一种基于区块链技术的分布式能源交易通信平台、通信方法及通信平台的搭建方法
CN110175788A (zh) * 2019-05-31 2019-08-27 国网上海市电力公司 一种智慧城市能源云平台

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8065219B2 (en) * 2001-06-13 2011-11-22 Sungard Energy Systems Inc. System architecture and method for energy industry trading and transaction management
US8849715B2 (en) * 2012-10-24 2014-09-30 Causam Energy, Inc. System, method, and apparatus for settlement for participation in an electric power grid
EP3459038A1 (en) * 2016-05-19 2019-03-27 Mayne, Timothy Method of matching renewable energy production to end-user consumption via blockchain systems
CN107423978A (zh) * 2017-06-16 2017-12-01 郑州大学 一种基于联盟区块链的分布式能源交易认证方法
EP3460940B1 (en) * 2017-09-20 2022-06-08 Hepu Technology Development (Beijing) Co. Ltd. Power trading system
WO2019070357A1 (en) * 2017-10-06 2019-04-11 Siemens Aktiengesellschaft METHOD AND SYSTEM FOR PLATFORM OF SECURE AND PRIVATE TERM OPERATIONS IN TRANSACTIVE MICROARRAYS
KR101955504B1 (ko) * 2017-11-20 2019-03-07 한전케이디엔주식회사 전력거래 시스템 및 방법
US10937111B2 (en) * 2017-11-28 2021-03-02 International Business Machines Corporation Managing energy purchase agreements on a blockchain
EP3561710A1 (en) * 2018-04-25 2019-10-30 Freeformers Holdings Limited Data processing system utilising distributed ledger technology
US20190361917A1 (en) * 2018-05-25 2019-11-28 Bao Tran Smart device
KR101947760B1 (ko) * 2018-09-04 2019-02-13 김종현 스마트콘트랙트의 보안 인증 서버
SG10201809712XA (en) * 2018-11-01 2020-06-29 Energy Absolute Public Company Ltd System and method for facilitating goods or service related activity
US20200161858A1 (en) * 2018-11-19 2020-05-21 Board Of Regents, The University Of Texas System Systems And Methods For Energy Crowdsourcing And Peer-To-Peer Energy Trading
KR20210023601A (ko) * 2019-08-23 2021-03-04 삼성전자주식회사 블록체인 계좌 정보를 제공하는 전자 장치와 이의 동작 방법
US20210065317A1 (en) * 2019-08-30 2021-03-04 EnergyXchain, LLC Managing energy transactions using distributed ledger technology
KR102234602B1 (ko) * 2020-05-27 2021-04-01 김유화 차량직거래 서비스 제공 시스템
US20220012806A1 (en) * 2020-07-10 2022-01-13 State Grid Zhejiang Hangzhou Xiaoshan Power Supply Company Electricity market trading and evaluation method based on weak centralized consortium blockchain

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106875164A (zh) * 2016-12-29 2017-06-20 北京握奇智能科技有限公司 一种基于区块链技术的去中心化电力交易方法和系统
CN109359985A (zh) * 2018-09-19 2019-02-19 南方电网科学研究院有限责任公司 基于区块链的分布式能源交易执行方法、装置与设备
CN109872251A (zh) * 2019-02-20 2019-06-11 上海理工大学 一种基于区块链技术的分布式能源交易通信平台、通信方法及通信平台的搭建方法
CN110175788A (zh) * 2019-05-31 2019-08-27 国网上海市电力公司 一种智慧城市能源云平台

Also Published As

Publication number Publication date
US20210312547A1 (en) 2021-10-07
CN111464643A (zh) 2020-07-28

Similar Documents

Publication Publication Date Title
US11789933B2 (en) System and method for a hybrid contract execution environment
Wittig et al. Amazon Web Services in Action: An in-depth guide to AWS
Onik et al. Performance analytical comparison of blockchain-as-a-service (baas) platforms
US11275838B2 (en) Code package processing
Molina-Jimenez et al. Implementation of smart contracts using hybrid architectures with on and off–blockchain components
Jennings Cloud computing with the Windows Azure platform
US10929490B2 (en) Network search query
US20160267411A1 (en) Creating sustainable innovation platforms based on service first and service now approach
US20190087755A1 (en) Cognitive process learning
CN111464643B (zh) 一种基于区块链的多能源交易与管理平台
US11487851B2 (en) Using blockchain for flexible application licensing
Qin et al. Intelligible description language contract (IDLC)–A novel smart contract model
US20230067556A1 (en) Systems and methods for tokenization, management, trading, settlement, and retirement of renewable energy attributes
US20180089677A1 (en) Scalable credit card system
US20210247969A1 (en) Automated source code log generation
Dolenc et al. Distributed ledger technologies for IoT and business DApps
Shawon et al. Diucerts DAPP: A blockchain-based solution for verification of educational certificates
Berkeley et al. Software development project management: process and support
Youll Making software development visible: Effective project control
US11321611B2 (en) Deployment verification of authenticity of machine learning results
Ayeva et al. Mastering Python Design Patterns: A guide to creating smart, efficient, and reusable software
CN116521509A (zh) 智能合约测试方法、装置、设备、存储介质及产品
KR20230132878A (ko) 실행-오더-검증 블록체인 모델들에서 트랜잭션 취소들 감소
US11483154B2 (en) Artificial intelligence certification of factsheets using blockchain
Skúlason Architectural operations in cloud computing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Ding Tao

Inventor after: Chen Tianen

Inventor after: Liu Jian

Inventor after: Mu Chenggang

Inventor after: Qu Ming

Inventor after: Dong Jiangbin

Inventor after: Ning Keer

Inventor after: Dong Xiaobo

Inventor after: Qi Jie

Inventor after: Zhang Xiaomeng

Inventor after: He Yuankang

Inventor before: Ding Tao

Inventor before: Chen Tianen

Inventor before: Wang Yongqing

Inventor before: Liu Jian

Inventor before: Dong Jiangbin

Inventor before: Mu Chenggang

Inventor before: Qu Ming

Inventor before: Ning Keer

Inventor before: Dong Xiaobo

Inventor before: Qi Jie

Inventor before: Zhang Xiaomeng

Inventor before: He Yuankang