一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于区块链的碳排放权交易中心账户管理系统的制作方法

2022-04-30 10:55:30 来源:中国专利 TAG:


1.本发明涉及信息技术领域,具体涉及一种基于区块链的碳排放权交易中心账户管理系统。


背景技术:

2.碳排放权目前已成为一种能够在企业之间交易的商品。碳排放权富余的企业能够将部分碳排放权出售给碳排放权不足的企业,从而获得经济利益。使得碳排放量超标的企业需要承担额外的成本。相对的,能够减少碳排放的企业能够获得额外经济利益。通过市场竞争调节,促使低排放的企业获得竞争优势,最终实现碳排放的减少,直至实现碳中和。为此需要建立供企业之间进行碳排放权交易的交易中心。但目前的交易中心技术存在中心化风险,使企业的账户存在风险。碳排放权的交易直接关系到企业的生产。若企业账户密码被盗用,将给企业的生产带来严重的影响。因而需要研究提高交易中心账户管理安全程度的技术方案。完善交易中心对账户的管理。
3.如中国专利cn113672663a,公开日2021年11月19日,公开了一种工业企业碳账户系统,包括能源碳排放管理模块、工艺碳排放管理模块、碳排放总量管理模块、碳排放强度管理模块、企业碳排放等级管理模块、能源消费总量管理模块、能耗强度管理模块和企业贴标情况管理模块。通过其技术方案可以完善数据采集和基础数据统计体系,通过接入企业的碳排放数据采集端口,开通第三方评估接口,实现企业碳账户的自动采数,减少人工报数造成的漏报与错报,提升企业碳足迹捕获精准度。其技术方案虽然通过自动采数消除了人工采集的不稳定性,但其不能解决账户的安全性低的技术问题。


技术实现要素:

4.本发明要解决的技术问题是:目前碳排放权交易账户存在安全风险的技术问题。提出了一种基于区块链的碳排放权交易中心账户管理系统,能够借助区块链实现账户的安全验证和登录,保障碳排放权交易的顺利进行。
5.为解决上述技术问题,本发明所采取的技术方案为:一种基于区块链的碳排放权交易中心账户管理系统,包括账户生成模块、密码生成模块、验证模块和交易模块,所述账户生成模块接收企业注册资料和登录名,验证注册资料后,将登录名发送给密码生成模块及验证模块,所述密码生成模块随机生成n元多项式,将n元多项式的系数向量发送给验证模块及企业,所述验证模块在区块链上发布验证智能合约,所述验证智能合约包括登录名、特征序列、系数序列、若干个验证栏、验证结果栏和验证程序段,所述验证模块为验证智能合约随机选择若干个变量,选中的变量取值为非零常数值,为验证智能合约生成特征序列,被选中的变量在特征序列中的值为对应常数值,其余变量在特征序列中取值为零,将非零常数值代入n元多项式,得到n’元多项式的系数序列,所述验证程序段根据特征序列和系数序列复原n’元多项式,周期性随机生成若干组n’元变量的值,计算出n’元多项式的的值,公开特征序列和若干组n’元变量的值,企业复原n元多项式,根据验证智能合约公开的特征序
列和若干组n’元变量的值,计算获得n元多项式的值,将ip地址及登录名关联n元多项式的值发送给验证智能合约,若干个n元多项式的值与n’元多项式的值能够匹配相等,则验证通过,所述验证智能合约签名ip地址、登录名和时间戳写入验证结果栏,若验证不通过,则验证智能合约签名登出标识符及时间戳并写入验证结果栏,所述交易模块查询区块链,若验证结果栏存在签名且时间戳距离当前时间在预设范围内,则允许验证结果栏中的ip地址对登录名对应账户进行操作。
6.作为优选,所述验证智能合约随机生成若干组n’元变量的值时,执行以下步骤:所述验证智能合约随机选择至少一个变量,被选择的变量在预设时长内的取值为固定值,超过预设时长后取值另一个随机生成的固定值;未被选择的变量取值随机值,全部变量的值构成一组n’元变量的值。
7.作为优选,为变量设置排序权重,为变量设置排序权重,获得变量的最高的指数值,将每个变量均取所述指数值作为n元多项式的次数,补足n元多项式系数为0的单项式,n元多项式的单项式每个变量的次数与对应变量的排序权重相乘后再求和,作为单项式的排序值,按照排序值降序排列n元多项式的单项式,依次获取排序后n元多项式的单项式的系数,构成n元多项式的系数向量。
8.作为优选,所述验证模块将非零常数值代入n元多项式,得到n’元多项式,n’元多项式的单项式每个变量的次数与对应变量的排序权重相乘后再求和,作为单项式的排序值,依次获取排序后n’元多项式的单项式的系数,构成n’元多项式的系数向量。
9.作为优选,所述验证模块在区块链上发布多个验证智能合约,企业将ip地址及登录名关联相应的n元多项式的值发送给多个验证智能合约,所述交易模块查询区块链,多个所述验证智能合约的验证结果栏均存在签名且时间戳距离当前时间在预设阈值范围内,则允许验证结果栏中的ip地址对登录名对应账户进行操作。
10.作为优选,企业登出碳排放权交易中心时,将ip地址及登录名关联错误的n元多项式的值发送给验证智能合约,使验证智能合约签名登出标识符及时间戳并写入验证结果栏。
11.本发明的实质性效果是:借助n元多项式进行密码的验证,使每次登录时输入的密码均不同,消除了账户密码泄露的风险,保障企业账户的安全;借助区块链上的智能合约记录每次验证,实现账户登录验证历史能够追溯且不可篡改,有利于企业核查账户的登录情况,消除意外验证和登录,即能够及时发现恶意多次登录,也能够发现擅自登录的情况,进一步提高账户管理的安全程度;验证智能合约选择至少一个变量以较低频率改变取值,使通过历史验证数据反推n元多项式不能实现,提高账户管理的安全程度。
附图说明
12.图1为实施例一账户管理系统构成示意图。
13.图2为实施例一登录验证过程示意图。
14.图3为实施例一验证智能合约随机生成变量值过程示意图。
15.其中:10、账户生成模块,20、密码生成模块,30、验证模块,40、交易模块,50、企业,60、区块链,61、验证智能合约。
具体实施方式
16.下面通过具体实施例,并结合附图,对本发明的具体实施方式作进一步具体说明。
17.实施例一:一种基于区块链的碳排放权交易中心账户管理系统,请参阅附图1,包括账户生成模块10、密码生成模块20、验证模块30和交易模块40,账户生成模块10接收企业50注册资料和登录名,验证注册资料后,将登录名发送给密码生成模块20及验证模块30,密码生成模块20随机生成n元多项式,将n元多项式的系数向量发送给验证模块30及企业50,验证模块30在区块链60上发布验证智能合约61,验证智能合约61包括登录名、特征序列、系数序列、若干个验证栏、验证结果栏和验证程序段,验证模块30为验证智能合约61随机选择若干个变量,选中的变量取值为非零常数值,为验证智能合约61生成特征序列,被选中的变量在特征序列中的值为对应常数值,其余变量在特征序列中取值为零,将非零常数值代入n元多项式,得到n’元多项式的系数序列,验证程序段根据特征序列和系数序列复原n’元多项式。区块链上的智能合约是以二进制的形式存在和执行的,不具有可读性,也难以复原出源码,因而不会泄露n’元多项式。
18.请参阅附图2,登录验证过程包括:步骤a01)验证智能合约61周期性随机生成若干组n’元变量的值,计算出n’元多项式的的值,公开特征序列和若干组n’元变量的值;步骤a02)企业50复原n元多项式,根据验证智能合约61公开的特征序列和若干组n’元变量的值,计算获得n元多项式的值;步骤a03)将ip地址及登录名关联n元多项式的值发送给验证智能合约61,若干个n元多项式的值与n’元多项式的值能够匹配相等,则验证通过,步骤a04)验证智能合约61签名ip地址、登录名和时间戳写入验证结果栏,若验证不通过,步骤a05)验证智能合约61签名登出标识符及时间戳并写入验证结果栏;步骤a06)交易模块40查询区块链60,若验证结果栏存在签名且时间戳距离当前时间在预设范围内,则允许验证结果栏中的ip地址对登录名对应账户进行操作。
19.验证智能合约随机生成若干组n’元变量的值时,请参阅附图3,执行以下步骤:步骤b01)验证智能合约61随机选择至少一个变量,被选择的变量在预设时长内的取值为固定值,超过预设时长后取值另一个随机生成的固定值;步骤b02)未被选择的变量取值随机值,全部变量的值构成一组n’元变量的值。
20.为变量设置排序权重,为变量设置排序权重,获得变量的最高的指数值,将每个变量均取所述指数值作为n元多项式的次数,补足n元多项式系数为0的单项式,n元多项式的单项式每个变量的次数与对应变量的排序权重相乘后再求和,作为单项式的排序值,按照排序值降序排列n元多项式的单项式,依次获取排序后n元多项式的单项式的系数,构成n元多项式的系数向量。验证模块30将非零常数值代入n元多项式,得到n’元多项式,n’元多项式的单项式每个变量的次数与对应变量的排序权重相乘后再求和,作为单项式的排序值,依次获取排序后n’元多项式的单项式的系数,构成n’元多项式的系数向量。
21.作为替代的实施方式,验证模块30在区块链60上发布多个验证智能合约61,企业50将ip地址及登录名关联相应的n元多项式的值发送给多个验证智能合约61,交易模块40查询区块链60,多个验证智能合约61的验证结果栏均存在签名且时间戳距离当前时间在预设阈值范围内,则允许验证结果栏中的ip地址对登录名对应账户进行操作。
22.企业50登出碳排放权交易中心时,将ip地址及登录名关联错误的n元多项式的值
发送给验证智能合约61,使验证智能合约61签名登出标识符及时间戳并写入验证结果栏。使区块链60上的验证智能合约61处于验证不通过的状态,使后续任何操作均无法通过验证,保证企业50账户的安全。
23.本实施例的有益技术效果是:借助n元多项式进行密码的验证,使每次登录时输入的密码均不同,消除了账户密码泄露的风险,保障企业50账户的安全;借助区块链60上的智能合约记录每次验证,实现账户登录验证历史能够追溯且不可篡改,有利于企业50核查账户的登录情况,消除意外验证和登录,即能够及时发现恶意多次登录,也能够发现擅自登录的情况,进一步提高账户管理的安全程度;验证智能合约61选择至少一个变量以较低频率改变取值,使通过历史验证数据反推n元多项式不能实现,提高账户管理的安全程度。
24.实施例二:企业50甲提交了注册资料,包括企业50名称、地址、联系方式、营业执照、历史碳排放数据及指定的历史经营信息。经上级主管部门审核后,账户生成模块10为企业50甲生成账户。企业50甲设置的了登录名:aaa,账户生成模块10将登录名发送给密码生成模块20和验证模块30。n的值为预先设定,并给全部企业50采用。n的值周期性更换。本实施例中n的值为4,密码生成模块20为登录名aaa生成n元多项式:f(x,y,z,s)=3*x^4*y^2*z^3*s^2 13*x^3*y^4*z^2*s 11*x*y*z^2*s^3。4元多项式f(x,y,z,s)中包含3个系数非0的单项式。其中3个系数非0的单项式分别为:3*x^4*y^2*z^3*s^2、13*x^3*y^4*z^2*s和11*x*y*z^2*s^3。
25.获得系数向量的过程如下:变量的最高的指数值为4,x、y、z及s的指数均为4时,n元多项式的次数为16。设置变量x、y、z及s的排序权重分别为85、21、5及1。补足系数为0的单项式,n元多项式的形式如下:f(x,y,z,s)=0*x^4*y^4*z^4*s^4 0*x^4*y^4*z^4*s^3 0*x^4*y^4*z^4*s^2 0*x^4*y^4*z^4*s 0*x^4*y^4*z^4*s^0 0*x^4*y^4*z^3*s^4 0*x^4*y^4*z^3*s^3 0*x^4*y^4*z^3*s^2 0*x^4*y^4*z^3*s 0*x^4*y^4*z^3*s^0

0*x^4*y^2*z^3*s^4 0*x^4*y^2*z^3*s^3 3*x^4*y^2*z^3*s^2 0*x^4*y^2*z^3*s 0*x^4*y^2*z^3*s^0

0*x^3*y^4*z^2*s^4 0*x^3*y^4*z^2*s^3 0*x^3*y^4*z^2*s^2 13*x^3*y^4*z^2*s 0*x^3*y^4*z^2*s^0


0*x*y*z^2*s^4 11*x*y*z^2*s^3 0*x*y*z^2*s^2 0*x*y*z^2*s 0*x*y*z^2*s^0

0*x^0*y^0*z^0*s^4 0*x^0*y^0*z^0*s^3 0*x^0*y^0*z^0*s^2 0*x^0*y^0*z^0*s 0*x^0*y^0*z^0*s^0。
26.连同系数为0的单项式,计算每个单项式的排序值。其中系数非0的单项式由下划线标出。举例计算系数非0的排序值如下:85、21、5及1单项式3*x^4*y^2*z^3*s^2的排序值为:399=85*4 21*2 5*3 1*2;单项式13*x^3*y^4*z^2*s的排序值为:350=85*3 21*4 5*2 1;单项式11*x*y*z^2*s^3的排序值为:119=85 21 5*2 1*3。
27.系数为0的单项式的排序值的计算在此省略。按照排序值降序排序,则对应的系数排序为0、0、

、3、

、13、

、11、

、0,因而系数向量为《0,0,

,3、

、13,

,11,

,0》,系数3之前共有57个0。将系数向量发送给验证模块30及企业50。
28.排序权重设置的方法为:首先将变量排序,将最后一个变量的排序权重设为1,计算最高指数值与1的乘积,将乘积加1作为倒数第二个变量的排序权重。而后计算倒数第二个变量的排序权重与最高指数值的乘积,将乘积加1作为倒数第三个变量的排序权重。以此计算,获得全部变量的排序权重。
29.验证模块30在区块链60上发布验证智能合约61。为验证智能合约61选定取常数值的变量为x,则特征序列为(2,0,0,0)。特征序列(2,0,0,0)表示x必须取值为2,其余取值不限。
30.令x取值2,将x=2代入f(x,y,z,s),获得n’元多项式为f’(y,z,s)=48*y^2*z^3*s^2 104*y^4*z^2*s 22*y*z^2*s^3。验证智能合约61随机生成3组变量的取值:(3,15,26)、(3,4,16)和(3,12,30)。其中y取值随机的常数,y取值周期性更换为另一个常数值。则对应的多项式值分别为:f’(3,15,26)=1,295,892,000;f’(3,4,16)=13,559,808;f’(3,12,30)=964,846,080 。
31.验证智能合约61公开(2,0,0,0)、(3,15,26)、(3,4,16)和(3,12,30)。企业50甲根据系数向量复原n元多项式:f(x,y,z,s)=3*x^4*y^2*z^3*s^2 13*x^3*y^4*z^2*s 11*x*y*z^2*s^3。根据验证智能合约61公开的信息,分别计算:f(2,3,15,26)、f(2,3,4,16)和f(2,3,12,30)的值。将得出f(2,3,15,26)=1,295,892,000、f(2,3,4,16)=13,559,808和f(2,3,12,30)=964,846,080。企业50甲将其ip地址、登录名aaa以及(1,295,892,000、13,559,808、=964,846,080)发送给验证智能合约61。验证智能合约61与f’(3,15,26)、f’(3,4,16)及f’(3,12,30)的对比一致。则签名ip地址、登录名aaa以及时间戳,写入验证结果栏。交易模块40查询区块链60,使用验证智能合约61的公钥解密验证结果栏内的签名信息,可以获得ip地址、登录名aaa以及时间戳,根据时间戳判断距离当前时间是否处于预设范围内,若在预设范围内则允许企业50甲使用验证结果栏内的ip地址访问交易中心账户,并对账户进行操作。若时间戳距离当前时间超过预设范围,则企业50甲需要再次根据验证智能合约61公开
的信息,重新计算3个n元多项式的值。将其ip地址、登录名aaa以及3个n元多项式的值发送给验证智能合约61。验证通过后将可以继续操作账户。为不影响企业50对账户的操作,预设范围应大于交易日的交易时长,使企业50每天验证一次即可。为提高安全性,企业50甲结束账户操作后,应当故意提交错误的n元多项式的值给验证智能合约61,使验证结果栏内写入登录标识符。
32.以上所述的实施例只是本发明的一种较佳的方案,并非对本发明作任何形式上的限制,在不超出权利要求所记载的技术方案的前提下还有其它的变体及改型。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献