CN111476548A - 一种基于区块链的职称评审方法及系统 - Google Patents
一种基于区块链的职称评审方法及系统 Download PDFInfo
- Publication number
- CN111476548A CN111476548A CN202010300044.1A CN202010300044A CN111476548A CN 111476548 A CN111476548 A CN 111476548A CN 202010300044 A CN202010300044 A CN 202010300044A CN 111476548 A CN111476548 A CN 111476548A
- Authority
- CN
- China
- Prior art keywords
- review
- evaluation
- data
- block chain
- title
- 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.)
- Granted
Links
- 238000012552 review Methods 0.000 title claims abstract description 160
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000011156 evaluation Methods 0.000 claims abstract description 137
- 238000012854 evaluation process Methods 0.000 claims abstract description 10
- 238000012163 sequencing technique Methods 0.000 claims description 46
- 230000008569 process Effects 0.000 claims description 45
- 239000000463 material Substances 0.000 claims description 44
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 238000002955 isolation Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 claims description 3
- 238000007726 management method Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 26
- 239000010410 layer Substances 0.000 description 19
- 230000008520 organization Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000011160 research Methods 0.000 description 10
- 238000012795 verification Methods 0.000 description 10
- 238000012550 audit Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 239000000306 component Substances 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 230000006735 deficit Effects 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 4
- 238000012797 qualification Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 239000012792 core layer Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000004744 fabric Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009956 central mechanism Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000004886 process control Methods 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 238000013215 result calculation Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Primary Health Care (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开公开了一种基于区块链的职称评审方法及系统,包括:对接收的职称评审数据生成区块,根据排序服务存储至区块链网络中;根据评审权限接入评审节点,并通过调用智能合约依次对职称评审数据进行评审;对评审结果进行加密,将加密后的评审结果广播至区块链网络中。针对目前商业职称评审系统的数据集中存储、评审过程人为干预、公示信息缺乏公正权威性等问题,以去中心化的区块链平台为基础,对接收的职称评审数据生成区块,并通过调用智能合约依次对职称评审数据进行评审,实现去中心化、评审过程可追溯、数据不可篡改、公示具有可信性。
Description
技术领域
本公开涉及区块链及其应用技术领域,特别是涉及一种基于区块链的职称评审方法及系统。
背景技术
本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。
目前,高校专业技术职务资格评审是对高校教师教学能力、科研水平、工作业绩的综合评价。高校教师职称评审一般包括个人申报,基层单位初审、推荐,学校组织专家评审推荐、公示、审批等环节的规范化操作程序。但发明人发现当前高校教师职称评审工作中依然存在申报流程复杂,审核外审困难,评审缺乏公平公正,公示可信度低等问题。
教师在职称申报阶段需要自己填报个人基本信息、学习工作经历、教学科研业绩等数据,数据来源依赖于教师诚信度。基层单位在对教师申报材料审核过程中,需要依托于现实资料进行审核,各审核环节审核工作繁重,审核过程复杂困难。教师职称材料的外审程序完全依赖于外部单位,外审环节无法掌控,数据无法及时获得,数据安全得不到保障。高校在职称评审阶段,评审专家需要结合申报人员述职报告,审阅大量的评审材料,对申报人员的教学、科研及综合业绩进行学科组评议,然后学校组织专家评委对申报人员依托于学科组评议成绩,对申报人员进行综合评价,同样需要审阅材料。
评审专家一般来源于学校各二级学院专家教授,评审过程中对本部门申报人员存在一定程度上的偏向性,从而导致综合评价投票会产生票数分散、名额浪费等问题,容易使得个别教师错失机会。学科组评议与综合评价两个阶段存在数据孤立,信息链断裂等问题,评审过程存在恶意操控可能性,从而导致评审结果公示可信度低。
传统的高校职称评审方式一般是由申报人员填写电子评审表并打印,学院初审推荐,然后由学校相关部门审核。由于申报人员组织材料不当或填写错误,在审核过程中需多次在审核环节退回重新填报。通过审核的材料需根据评审机制提供多份评审材料,申报人员的申报支撑材料种类繁多、数量巨大,参与审核的部门众多,提交材料重复,导致资源严重浪费。现场职称评审过程组织工作复杂,评审流程繁琐,人工评审、统计等工作容易产生差错。传统职称评审中的纸质评审材料,流通性差使评审工作周期变长,而且纸质评审材料存档困难,也难以长时间保存,后期查询检索困难。
现有的职称评审系统虽然涉及职称评审的各个阶段,但是材料组织方式、材料审核等主体工作依然存在,工作量大,流程复杂,并存在重复劳动,仅仅将评审流程从线下发展到线上进行开展。随着高校数字校园建设的逐步发展,高校数据治理工程对高校教学、科研及管理过程中产生的信息资源进行集成优化,以此构成统一的用户管理、统一的资源管理和统一的权限控制,并建立高校教师职称评审系统,但是在数据生产、清洗转化、优化集成过程中存在数据交换共享,其最终数据无法确源及确权,从而无法使得职称申报所用的数据具有权威性的问题。
发明内容
为了解决上述问题,本公开提出了一种基于区块链的职称评审方法及系统,针对目前商业职称评审系统的数据集中存储、评审过程人为干预、公示信息缺乏公正权威性等问题,以去中心化的区块链平台为基础,对接收的职称评审数据生成区块,并通过调用智能合约依次对职称评审数据进行评审,实现去中心化、评审过程可追溯、数据不可篡改、公示具有可信性。
为了实现上述目的,本公开采用如下技术方案:
第一方面,本公开提供一种基于区块链的职称评审方法,包括:
对接收的职称评审数据生成区块,根据排序服务存储至区块链网络中;
根据评审权限接入评审节点,并通过调用智能合约依次对职称评审数据进行评审;
对评审结果进行加密,将加密后的评审结果广播至区块链网络中。
第二方面,本公开提供一种基于区块链的职称评审系统,包括:
排序服务模块,用于对接收的职称评审数据生成区块,根据排序服务存储至区块链网络中;
智能合约模块,用于根据评审权限接入评审节点,并通过调用智能合约依次对职称评审数据进行评审;
加密模块,用于对评审结果进行加密,将加密后的评审结果广播至区块链网络中。
与现有技术相比,本公开的有益效果为:
本公开以去中心化的区块链平台为基础,对接收的职称评审数据生成区块,并通过调用智能合约依次对职称评审数据进行评审,解决目前商业职称评审系统的数据集中存储、评审过程人为干预、公示信息缺乏公正权威性等问题,实现去中心化、评审过程可追溯、数据不可篡改、公示具有可信性。
本公开对利用区块链的不可篡改性,对评审结果采用密码学加密技术进行加密、实现投票规则的定制化、选票的隐私保护、计票过程的无人干预、计票结果的可验证性,保证了最终实现整体投票的公正性和准确性。
本公开根据排序服务对生成的区块进行广播,确保同一个链上的节点接收到相同的消息且有相同的逻辑顺序;排序服务的多通道实现多链的数据隔离,确保只有同一个链的Peer节点才能访问链上数据,保护用户数据隐私。
附图说明
构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
图1为本公开实施例1提供的基于区块链的职称评审方法示意图;
图2为本公开实施例1提供的用户登记和注册时序图;
图3为本公开实施例1提供的创建通道时序图;
图4为本公开实施例1提供的加入通道时序图;
图5为本公开实施例1提供的实例化链码时序图;
图6为本公开实施例1提供的投票流程图;
图7为本公开实施例1提供的当前阶段完成情况判断流程图;
图8为本公开实施例1提供的选举流程控制算法流程图;
图9为本公开实施例2提供的生成区块时序图;
图10为本公开实施例2提供的区块链网络节点架构图;
图11为本公开实施例2提供的区块链平台体系架构图;
图12为本公开实施例2提供的基于区块链的职称评审系统功能结构图;
图13为本公开实施例2提供的基于区块链的职称评审系统软件分层架构结构图。
具体实施方式:
下面结合附图与实施例对本公开做进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
实施例1
如图1所示,本实施例提供一种基于区块链的职称评审方法,包括:
对接收的职称评审数据生成区块,根据排序服务存储至区块链网络中;
根据评审权限接入评审节点,并通过调用智能合约依次对职称评审数据进行评审;
对评审结果进行加密,将加密后的评审结果广播至区块链网络中。
在本实施例中,以Hyperledger Fabric网络提供区块链底层平台服务,接收职称评审请求,通过接口SDK调用智能合约,通过智能合约完成评审过程。
在本实施例中,用户需在区块链平台中进行登记和注册,获取CA证书,如图2所示,具体为:
(1)职称评审系统应用程序根据配置文件获取CA和CSP的配置信息;
(2)应用程序根据获取的配置信息创建FabricClient实例作为所有操作的入口,并设置CryptoSuite和KeyValueStore等信息;
(3)应用程序通过SDK的FabricClient获取负责提交用户资料信息的登记员信息Register,若果不存在,则初始化登记员用户,获取登记员注册证书和私钥;
(4)应用程序根据配置信息和组织信息创建FabricCAClient实例;
(5)应用程序根据需要登记的用户信息生成RegistrationRequest请求,提交给FabricCAClient;
(6)登记员Registrar提交访问fabric-ca的POST请求,请求的URL是/api/v1/register;
(7)fabric-ca验证请求,生成用户注册的密码Secret,最终返回给应用程序,完成用户信息登记;
(8)应用程序利用申请的用户信息和返回的注册密码,调用FabricCAClient的Enroll接口;
(9)FabricCAClient生成私钥和证书签名请求CSR(Certificate SigningRequest),调用fabric-ca提供的enroll接口生成注册证书;
(10)SDK的FabricCAClient返回生产的注册证书和私钥给应用程序;
(11)应用程序调用FabricClient保存用户信息到KeyValueStore中。
可以理解的,用户包括:系统管理员,学校管理员,教职工,外审专家,评议组评议专家,专家(评价)委员会综合评价评委。
在本实施例中,职称评审包括评审管理,申报审批,材料外审,学科组评议,专家(评价)委员会综合评价,统计报表,信息公示,系统设置等,系统管理员用户搭建并启动基于Hyperledger Fabric框架的职称评审业务区块链网络。
用户在区块链网络网络中完成注册后,分配MSP证书,MSP证书是区块链网络实体的身份标识,实体在通信和交易时使用证书进行签名和验证。学校管理员用户登录系统,根据学校职称评审工作安排,发布职称评审通知、职称评审文件、评审规则及系统操作说明文档等信息;设置学科组信息、职称评审单元信息、申报类型权重信息、学科组陈述顺序等;管理职称申报材料、外审材料等;非结构化数据通过IPFS存储,并将文件Hash值存于区块中;依据权限创建教职工、外审专家、学科组评议专家、专家(评价)委员会综合评价评委等用户,并分配证书和初始秘钥,将上述职称评审数据生成区块,根据排序服务存储至区块链网络中。
在本实施例中,生成排序服务创世区块,区块内容包含联盟和学校组织机构信息,并包含通道访问控制策略,创建通道,定义节点,Peer节点加入通道。排序服务给客户端和Peer节点提供了一个共享通信通道,实现交易的广播服务,排序服务支持多通道,通道之间相互隔离,对客户端透明,客户端连可以连接到多个通道上,接到指定的通道上,就可以发送或者获取消息。根据评审顺序设定评审权限,通过登录认证后,将评审节点接入指定通道中。
在本实施例中,通道管理包括通道创建、通道更新、通道加入和通道查询,其中:
所述通道创建,应用程序通过SDK向排序服务发起创建通道的请求,提交通道配置交易信息,排序服务接收到创建通道的请求,检查配置交易,然后排序服务节点重新生成一个配置交易,并修改交易类型,新生成的交易会利用接收消息的排序服务节点的私钥重新进行签名,然后添加到区块系统链的交易消息队列中进行处理。如图3所示,具体为:
(1)应用程序读取利用configtxgen生成的通道配置文件信息,包含通道名称、组织配置等信息。
(2)应用程序与排序节点通信,通过排序节点的配置生成Orderer实例;
(3)指定名称,并通过通道配置文件和Orderer实例生成创建通道请求的CreateChannelRequest;
(4)应用程序创建FabricClient实例,调用CreateChannel创建通道;
(5)HFCSDK转换创建通道的请求CreateChannelRequest,生成HeaderType_CONFIG_UPDATE类型交易common.Payload;
(6)HFC SDK对common.Payload进行签名,签名者要拥有创建通道的管理员权限。
(7)HFC SDK通过调用Orderer实例发送SendBroadcast请求,提交请求给排序服务节点;
(8)排序服务节点检查提交的请求,校验是否拥有创建新通道的权限,创建通道后排序服务节点皆可以接收新通道请求。
所述通道更新,通道的配置可以更新,包括通道组织、组织MSP、访问控制策略、排序服务配置等信息。通道更新在线下确定好需要修改的配置项,离线修改后通过SDK发送给排序服务节点;发送给排序服务的交易请求类型为HeadecType_CONFIG_UPDATE,排序服务节点接收到配置更新交易请求后,重新创建一个类型为HeaderType_CONFIG的信封,添加到被修改通道的交易队列里;每个区块链设置了一些过滤器规则,若检测到是类型是HeaderType_CONFIG就提交给configManager来处理。利用排序服务生成的配置区块,也会通过排序服务建立好gRPC连接的主节点广播给通道内的其他节点;记账节点接收到配S区块以后,账本提交器在提交到账本之前检查ChannelHeader的类型,如果是HeaderType_CONFIG就确认是配罝区块,从区块里获取链编号,更新本地节点这个链的配置区块为最新收到的区块。
所述通道加入,应用程序通过SDK给节点发送包含通道创世区块的JoinChain请求,请求的类型是HeaderType_CONFIG。节点加入链的joinChain请求是由系统链码CSCC处理的。节点会校验创世区块的合法性(包括内容完整性),例如是否包含应用相关的配置项,还会对提交者的身份逬行认证和权限检查。
配置交易需要应用程序用提交者的私钥进行签名的,身份认证需要确认清求头是否包含有效的提交者身份信息,再验证配置交易请求是否是该提交者签名的,然后是权限检查,包括两个方面:
(1)是否有权限向节点提交请求:即检查提交者的MSP是否与本地MSP相同;
(2)是否满足加入通道请求的策略:提交加入通道请求是需要有管理员权限。
权限检查在节点本地创建以请求头里channel_header的channel_id为标识的链,节点的本地配置是由主节点或者选举为主节点后主动和创世区块里设置的排序服务节点建立连接,接收排序服务广播的新区块,再在组织内部节点同步;节点若不是主节点就从组织内部其他节点上同步。
所述通道查询,应用程序根据权限通过SDK发送请求查询指定节点加入的通道,通过权限检查返回的是由本地节点维护的已加入通道的名称。
所述Peer节点加入通道,创建通道完成以后,排序服务节点上就有了新通道的基本信息,只有把Peer节点加入到新通道中,应用程序才能通过Peer节点发起交易请求,对新通道的交易进行排序打包生成区块。Peer节点加入通道时先从排序服务节点获取创世区块,再在本地Peer节点初始化链,如图4所示,具体为:
(1)应用程序初始化配罝,创建FabricClient实例,设罝发起加入通道请求的用户、Channel实例、Orderer实例;
(2)应用程序调用GenesisBlock的请求获取创世区块,Channel实例构造HeaderType_DEUVER_SEEK_INFO的请求,通过Orderer实例发送SendDeliver请求给排序服务节点,获取该通道的创世区块。
(3)应用程序利用获取到的创世区块构造JoinChannelRequest请求,通过Channel实例发起JoinChannel请求。
(4)HFC SDK的JoinChannel操作会根据JoinChannelRequest请求重新构造类型为HeaderType_ENDORSER_TRANSACTION的Proposal,Proposal会用FabricClient实例设置的用户进行签名,生成SignedProposal。
(5)HFC SDK为每个加入通道的Peer节点创建一个Peer实例,通过Peer实例调用ProcessProposal向Peer节点发送加入通道的SignedProposal。
(6)SignedProposal是调用智能合约CSCC的JoinChain请求,Peer节点接收到SignedProposal请求后,调用智能合约CSCC进行消息有效性检査和权限检査,然后在本地Peer节点初始化链,初始化的过程会根据通道名称在本地目录创建账本数据,写入通道的创世区块。
(7)通道的本地账本创建后,Peer节点会启动Gossip服务从排序服务节点同步最新的区块数据,根据Peer节点的配罝,参与主节点的选举或者直接作为主节点进行Peer节点之间的P2P通信;
(8)Peer节点完成初始化链后接收新链的交易请求。
所述通过Peer节点实例化链码,Peer节点加入到通道以后,安装链码到Peer节点,然后部署链码才能模拟执行智能合约的功能。实例化链码首先创建链码镜像,启动链码容器并调用链码接口初始化,生成的交易发送给排序服务节点,然后生成区块记录到账本中。如图5所示,具体为:
(1)应用程序实例化链码操作需要创建多个实例,包含FabricClient实例、User实例、Channel实例、Peer实例;
(2)应用程序通过调用Channel实例的SendlnstantiateProposal进行链码实例化;
(3)SDK构造包含ChaincodeDeploymentSpec的ChaincodelnvocationSpec,调用智能合约LSCC的deploy请求;
(4)SDK发送给Peer节点的请求同样会用Channel关联的用户进行签名,通过Peer实例的ProcessTransactionProposal提交生成的SignedProposal。
(5)每次给Peer节点发送SignedProposal的时会新建一个gRPC的连接,通过ProcessProposal接口提交请求。
(6)Peer节点通过SignedProposal进行验证以后,调用智能合约LSCC执行链码部署操作;
(7)Peer节点返回背书节点模拟执行和背书签名的结果,然后提交给排序服务节点生成最终区块生效,调用的过程同Peer节点接入通道的过程。
(8)生成的新区块会通过主节点分发给组织内的其他Peer节点。
所述根据评审权限接入评审节点,并通过调用智能合约依次对职称评审数据进行评审中,生成通道,并创建通道访问策略,评审节点接入通道后,通过安装实例化链码,部署智能合约,依据评审故障依次对职称评审数据进行评审,具体为:
教职工用户登录后,查阅职称评审通知及相关文件,符合职称申报条件的教职工通过申报审批业务应用程序调用综合填报工具,自动抽取个人数据中心数据,填报相应系列的教职工专业技术职务资格申报表,申报人员调整、确认申报表格数据,提交学院或部门、学校主管部门审批。学校业务部门依托学校机构知识库及申报人员提交的支撑材料对申报人员所提交的申报表中数据进行审核审批,通过最终审批的生成申报人员基本信息、评审材料及外审材料(按条件要求生成);申报审批业务应用程序最终生成的数据为申报人员基本情况一览表(非结构化数据),申报人员信息汇总表(结构化数据),以及按条件要求生成的外审一览表(非结构化数据),然后调用通用功能应用组件创建交易,将数据打包成区块上链。
外审专家用户登录后,在材料外审业务应用程序中查询所有外审一览表,在时效期限内,对外审材料进行资格条件审核,并反馈外审意见;链码(智能合约)自动将外审意见写入区块。外审结束,学校管理员对申报人员外审意见进行汇总,外审通过者进入学科组评议,不通过者,反馈申报人员。
材料外审业务应用程序的智能合约包含外审合格和外审不合格链码调用功能,外审材料匿名,外审专家只看外审一览表中提供信息是否满足符合相应级别职称条件,若满足,则外审合格,否则外审不合格,并使用证书进行签名。
学科组评议专家用户通过学科组评议业务应用程序对申报人员申报情况进行评议,学校管理员按照职称评审进程,组织学科组评议专家现场学习职称评审文件,学科组评议规则,系统操作手册等,设置学科组信息、申报类型权重、申报人员个人述职陈述顺序等参数,然后开启学科组评议功能,并按照学科组分别组织符合条件的申报人员进行学科组评议阶段个人述职;学科组评议专家以评审材料为依据,参考申报人员个人述职,对申报人员根据学科对应评议项目分档进行评分,系统根据学科组的申报类型权重参数自动计算申报人员综合成绩,对所有申报人员完成评议后签名并提交确认,提交后评议结果将不能修改。待所有专家评议结束,学校管理员结束学科组评议,系统依据评审规则、学科组信息参数计算每位申报人员最终综合成绩并排名,学校管理员导出并打印学科组评议报表,学科组评议组长签字存档。
学科组评议专家须认真学习有关规定,按照综合评价原则,充分考虑申报人员的教学水平及教学业绩、学术水平及科研能力、社会服务情况、学科专业特点及其他业绩,结合申报人员所在单位推荐排名、个人陈述情况、教学能力测评成绩和空岗数量情况等各方面的因素,对照申报材料,反复比较衡量,确定申报人员的各项分数。学科组评议业务应用程序的智能合约包括个人成综合成绩计算,个人平均成绩计算等链码。在本实施例中,设定的规则如下:
(1)学科组评议个人综合成绩实行百分制,由教学业绩成绩、科研业绩成绩及其他业绩成绩三部分构成,教学为主型、教学科研并重型、科研为主型分别按照6:2:2、4:4:2、2:6:2的比例综合确定。教学业绩成绩由评议专家根据教学能力测评成绩和申报材料中的教学业绩情况进行打分确定;科研业绩成绩由评议专家根据申报材料中的科研业绩情况进行打分确定;其他业绩成绩由评议专家根据申报材料中的人才培养、学科建设、社会服务等有关业绩情况打分确定。
(2)学科组评议成绩总分分为四个档次:第一档为85分以上,第二档为75-84分,第三档为65-74分,第四档为65分以下。
(3)根据学科组评分表计算个人平均成绩,计分时,人文社科组分别去掉总分的两个最高分和两个最低分、理工组分别去掉总分的一个最高分和一个最低分,取平均分作为最终个人平均成绩。
(4)根据个人平均成绩进行排序推荐。
专家(评价)委员综合评价评委通过对进入综合评价环节的申报人员情况进行综合评价,依据评价规则进行投票。学校管理员按照职称评审文件和进程,设置各职称评审单元参数信息,组织专家(评价)委员综合评价评委现场学习职称评审文件,综合评价规则,系统操作手册等,然后开启职称评审单元评议功能;专家(评价)委员会综合评价评委审阅申报人员职称评审材料,结合学科组评议综合成绩及排名,按照学校职称评审综合评价规则进行投票,系统提示当前评价单元信息及投票信息(包括当前轮次、候选人数、可选最大人数),当前评审轮次投票完成后,签名提交并确认,提交后评价结果将不能修改。待当前轮次所有评委都完成投票后,学校管理员结束评价,系统统计申报人员当前轮次票数结果,按照评价规则,进入下一轮投票或者结束投票,直到当前职称评审单元评审结束,获得最终评价结果。学校管理员通过统计报表导出并打印评审结果,评价委员会主席签字存档。
专家(评价)委员会综合评价方法是基于区块链的职称评审系统的重要功能,为参与职称评审的专家对申报人员是否获得所申报职称提供表决服务,利用智能合约实现投票规则和策略,提高表决效率,保护投票人隐私,保证表决结果的高度可信和不可篡改。职称评审过程中的综合评价场景主要是专家评价委员会对进入综合评价环节的申报人员是否获得所申报职称进行表决投票,依据职称系列、职称等级设置多个评审单元,主要包括差额评审投票规则和按条件评审投票规则两类。
当候评审名额数小于候选名额数时,依照差额评审投票规则进行投票。专家评委根据申报人员评审材料是否满足学校设置的评审条件,参考学科组推荐顺序,对所有申报人员进行综合评价,在候选人中选择小于或等于评审名额数的申报人员进行投票。其投票规则如下:
(1)同意票数少于或等于评审名额数为有效票,智能合约限制多于评审名额数的情况。
(2)同意票数超过总票数2/3的人数多于评审名额数的,按同意票数从高到低确定评审通过人员,同意票数相同且影响确定评审通过人员数的,对涉及的同意票数相同人员重新进行投票。
(3)同意票数超过总票数2/3的人数少于或等于评审名额数的,同意票数超过2/3的为通过。
(4)同意票数超过总票数2/3的人数少于评审名额数的,对同意票数超过总票数1/2且小于等于总票数2/3的再进行投票,同意票数超过2/3的为通过。
(5)同意票数都不超过1/2时,根据得票多少按剩余评审名额数1:2重新确定投票人数,进行复议,同意票数超过2/3的为通过。
当候评审名额数大于或等于候选名额数时,依照按条件评审投票规则进行投票。专家评委根据申报人员评审材料是否满足学校设置的评审条件,对申报人员进行综合评价,决定是否将选票投给候选人。其投票规则如下:按条件评审,只进行一轮投票,同意票数超过总票数2/3的为通过,不超过2/3的不再进行投票。
职称评审的综合评价环节涉及不同类型、不同评审单元、多轮次的投票表决,每一轮次投票根据当前伦次的评审名额数与候选名额数,产生差额评审投票或按条件评审投票情况,因此通过智能合约进行投票规则的定制实现,充分发挥智能合约的可编程性和灵活扩展性,形成多元化的投票体系,学校管理员可以根据实际需求定制投票方案,保证职称评审的有序进行。
职称评审的综合评价依据投票规则,其核心算法经判断各个轮次及父轮次是否完成,并自动生成下轮次数据。算法如下:
(1)每一轮次,根据候选人得票分为N1(得票数大于2/3)、N2(得票数不大于2/3且大于1/2)、N3(得票数不大于1/3)三个阶层。
(2)通过选举的候选人在当前得票必须大于2/3。
(3)任何阶段的等额选举,只进行一轮。
(4)任何阶段的差额选举,按照N1、N2、N3的次序依次递补投票,直至通过人数等于应选人数或N3阶段等额选举结束。
(5)任何阶段的差额选举,若末位存在并列情况,并列人员需要进入下轮投票。
(6)进行N2阶段投票时,所有N2人员均列为候选人。
(7)进行N3阶段投票时,按照1:2的比例,按照票数由高至低选取候选人,末位并列时,并列人员全部列为候选人。
具体的,如图6所示,投票流程包括:统计当前轮次得票,判断当前阶段是否完成,若完成,判断选举是否可以结束,若是,则结束选举;否则生成新的轮次、投票。
如图7所示,当前阶段完成情况判断流程包括:候选人按得票数排序,判断N1人数是否大于应选人数N,若是;
判断是否末位并列,若是,当前阶段未完成,末位并列候选人进入下轮次,否则,当前阶段完成,N1中前N名入选;
若N1人数不大于应选人数N,判断选举类型,若为等额选举,当前阶段完成,所有N1人员入选;
若为差额选举,判断是否存在N2候选人,若存在,当前阶段未完成,所有N2人员进入下轮次;
若不存在,当前阶段未完成,N3中前2*(N-N1)名进入下轮次,若2*(N-N1)大于N3,则全部进入。
如图8所示,选举流程控制算法流程包括:首先判断阶段类型,若为N1,判断是否存在剩余应选人数,若存在,使用父轮次的N2候选人生成下轮次;若不存在,父阶段完成,以父阶段为起点继续判断;
若为N2,判断是否存在剩余应选人数,若存在,使用父轮次的N3候选人生成下轮次;若不存在,父阶段完成,以父阶段为起点继续判断;
若为N3,判断父阶段是否是第一轮次,若是,选举结束;否则父阶段完成,以父阶段为起点继续判断。
在本实施例中,评审结束后,对评审结果进行加密,根据职称评审管理机制要求,每个投票者不得知晓其他投票者的投票结果。
因此,在隐私保护方面,本实施例采用了数字签名和EC-ElGamal加密算法,数字签名保证了投票者投出的选票在整个上链过程中无法篡改,而EC-ElGamal加密算法具有加法同态性,在保证选票加密的前提下,可以实现密文选票的同态计算,从而实现所述的智能合约的自动化计票。而智能合约的自动化计票及以计票结果的可验证性,保证了最终实现整体投票的公正性和准确性。
在专家(评价)委员会综合评价投票表决流程中,基于智能合约实现各类投票规则的在线实施,专家评委作为投票者,对投票单元中的申报人员进行投票,而学校管理员作为投票的发起者和计票者,控制评审进程,最终将选票和计票结果进行公示,整个投票表决流程分为发起投票、投票表决、计票、结果公示及验证。
(1)发起投票,学校管理员针对一个职称评审单元部署一个智能合约,合约约定可以参与到本次职称评审单元的专家评委、申报人员评审材料、投票的票选项(同意/反对)、投票规则、投票的终止条件等,智能合约部署完成后由指定的专家评委进行投票表决。
(2)投票表决,在投票表决阶段,专家评委根据智能合约约定的票选项对每一个申报人员是否获得相应职称进行表决,从而形成选票,选票将通过专家评委进行签名并且加密后上链,每一张选票都将存证在区块链上,保证选票不可篡改,专家评委可以通过哈希对比或者密文对比方式进行校验,确认自己的选票未被篡改。
(3)计票,为确保公平公正,整个投票和计票过程都通过智能合约完成,计票方式采用同态加密的密文计算形式,确保选票在保密的情况下进行统计。智能合约进行统计则保证了无法干预计算过程,最终得到计票,计票结果也是加密的密文,需要由学校管理员进行解密后公示。
(4)结果公示及验证,投票结果最终由学校管理员进行解密,并向专家(评价)委员会公示投票结果。结果公示可能出现计票者直接篡改最终计票结果的可能性,但是由于选票由智能合约进行计算,结果具有可验证性,通过对计票者公布的结果重新加密,并与智能合约计算的密文结果进行密文减法运算,在结果未修改的情况下,得到的密文结果必将为零。在已知明文结果的情况下,利用零知识证明可实现结果验证。
投票表决方法利用了区块链的不可篡改性,密码学加密技术、智能合约的可编程性,实现了投票规则的定制化、可扩展性、选票的隐私保护、计票过程的无人干预、计票结果的可验证性。
学校管理员通过统计报表业务应用程序对学科组评议及专家(评价)委员会综合评价过程中的过程数据及最终结果数据进行查询统计,生成报表,并在学科组评议及综合评价过程中监控专家及评委评审异常情况。
学校管理员通过信息公示业务应用程序生成通过人员信息二维码,对职称评审结果按照学校职称要求进行公示。公示期间,可以扫描通过人员信息二维码,对评审过程及评审材料数据进行溯源,以保证公平公正。
实施例2
本实施例提供一种基于区块链的职称评审系统,以开源框架Hyperledger Fabric提供区块链底层平台服务,包括:
排序服务模块,用于对接收的职称评审数据生成区块,根据排序服务存储至区块链网络中;
智能合约模块,用于根据评审权限接入评审节点,并通过调用智能合约依次对职称评审数据进行评审;
加密模块,用于对评审结果进行加密,将加密后的评审结果广播至区块链网络中。
在本实施例中,所述系统包括业务区块链网络,业务区块链网络是一个去中心化的网络,去中心化即没有中心机构参与;基于分布式账本技术在网络中的成员组织之间安全高效地转移业务资产,资产可以是实体形式的,也可以是数字形式的,比如车辆、钻石、生鲜农产品或保险记录。
分布式账本是一种在点对点的网络成员之间共享、复制和同步的数据库,分布式账本记录网络参与者之间的交易,比如资产或数据的交换;网络中的参与者根据共识原则来制约和协商对账本记录的更新,分布式账本中的每条记录都有一个时间戳和唯一的密码签名,使得账本成为网络中所有交易的可审计历史记录。
参与者可以是个人或机构,例如企业、大学或医院;
交易为数据资产的所有权在业务区块链网络中创造价值的过程;
发起交易请求过程与实例化链码过程类似,如图9所示:
(1)普通的交易请求调用链码的Invoke接口,实例化链码调用的是Init接口;
(2)普通的交易请求是不嵌套的ChaincodelnvocationSpec请求,包含通道的名称和调用链码的函数和参数等;
(3)实例化链码的时候才开始构建链码镜像并启动链码容器,所以实例化链码的过程都比较慢;调用链码的背书节点已经启动了链码容器,所以调用链码的过程是很快的,除非链码的功能比较复杂或者出于系统的原因;第一次接收调用链码请求的背书节点会自动构建链码镜像并启动链码容器,返回结果的时间会变长。
区块链网络中包括区块链网络节点架构、典型数据交易流程和区块链平台体系架构;
其中,如图10所示,区块链网络节点架构决定职称评审系统组网方式、网络协议、消息传播方式以及数据验证机制等,以确保基于区块链的职称评审系统中的每个节点都能参与到区块链交易的校验及创建区块。节点是区块链的通信主体,包括客户端节点、Peer节点、排序服务节点(Orderer)、CA节点,多个不同类型节点可以运行于同一物理服务器上或者多个服务器上;
所述客户端节点即应用程序,是用户操作的实体,必须连接到某一个Peer节点或者排序服务节点与区块链网络进通信;客户端向背书节点(Endorser)提交交易提案,当收集到足够背书后,向排序服务广播交易,进行排序,生成区块。
所述Peer节点包括记账节点(Committer)、背书节点(Endorser)和主节点(LeaderPeer);
所述记账节点(Committer),所有的Peer节点都是记账节点,负责验证从排序节点区块里的交易,维护数据状态和账本副本;
所述背书节点(Endorser),链码在实例化时设置背书策略,指定部分Peer节点对交易背书后有效,只有在应用程序向它发起交易背书请求时,这部分节点会执行交易并对结果进行签名背书,充当背书节点角色;背书节点与具体链码绑定动态变化。
所述主节点(Leader Peer),负责与排序服务节点通信,从排序节点处获取最新区块并在组织内部同步;主节点可以强制设置,也可以动态选举产生;
所述排序服务节点(Orderer),接收包含背书签名的交易,对未打包的交易进行排序生成区块,广播给Peer节点;排序服务提供的是原子广播,以确保同一个链上的节点接收到相同的消息且有相同的逻辑顺序;排序服务的多通道实现多链的数据隔离,确保只有同一个链的Peer节点才能访问链上数据,保护用户数据隐私。
所述CA节点,是证书颁发机构(Certificate Authority),由服务器和客户端组件组成,负责接收客户端的注册申请,返回注册密码用于用户登录,获取身份证书;用户在区块链网络上的所有操作都会验证用户身份。
典型数据交易流程为达成数据的一致性,在没有中心机构集中处理下,需要区块链网络中全体参与者参与管理,并以某种方法达成共识,所以区块链的数据交易流程即为共识的过程。交易过程详细流程:
(1)应用程序客户端通过SDK调用证书服务(CA)服务,进行注册和登记,并获取身份证书;
(2)应用程序客户端通过SDK向业务区块链网络发起一个交易提案,交易提案把带有本次交易要调用的智能合约标识、合约方法和参数信息以及客户端签名等信息发送给背书节点;
(3)背书节点收到交易提案后,验证签名并确定提交者是否有权执行操作,同时根据背书策略模拟执行智能合约,并将结果及其各自的CA证书签名发还给应用程序客户端;
(4)应用程序客户端收到背书节点返回的信息后,判断提案结果是否一致,以及是否参照指定的背书策略执行,如果没有足够的背书,则中止处理;否则,应用程序客户端把数据打包到一起组成一个交易并签名,发送给排序服务节点;
(5)排序服务节点对接收到的交易进行共识排序,然后按照区块生成策略,将一批交易打包到一起,生成新的区块,发送给提交节点;
(6)提交节点收到区块后,会对区块中的每笔交易进行校验,检查交易依赖的输入输出是否符合当前区块链的状态,完成后将区块追加到本地的区块链,并修改世界状态。
如图11所示,区块链平台体系架构包括网络层、核心层、服务层、接口层、应用层;
(1)网络层,由多个分布式节点构成一个P2P的网络结构,采用Gossip协议进行点对点的传输,通过多播实现路由、新节点识别及数据传播功能,并采用gRPC框架互相调用接口功能。
(2)核心层,由成员管理、区块链服务和链码服务三部分,加上安全和加密服务贯穿于各个组件,应用程序客户端通过接口调用身份、账本、交易、智能合约等信息;
其中,所述成员管理,基于PKI(Public Key Infrastructure)为成员提供包括注册、登记、申请证书等服务功能,节点、成员只有获得证书才能加入到区块链网络中;
所述区块链服务,是区块链的核心组成部分,负责分布式账本管理和账本存储、提供节点间的共识服务和背书验证管理,为区块链的主体功能提供了底层支撑;
所述分布式账本,由区块链和世界状态两部分组成,所有节点共同维护,每个Peer节点都保存有账本,账本记录发生在区块链网络中的所有交易信息;
所述账本存储,区块链的账本存储主要包含以文件形式存储的链式区块数据,以及在数据库保存的键值对状态数据;其中链式区块数据存放的是交易的原始数据区块,通过区块的哈希值形成防篡改的链式结构;状态数据库的作用主要是加速对数据的访问,因为区块链数据采用链式顺序存放,在读取数据时通常需要遍历整个链的数据块,采用数据库能够从区块索引迅速定位到所需数据;
区块数据是通过区块文件管理器以二进制文件的形式存储的,每个账本数据存储在节点文件系统的不同目录下,默认的区块文件大小为64MB,如果当前文件大小超过该值,则区块写入下一个文件中;
区块索引包括区块链提供区块编号、区块哈希、交易编号等多种索引方式(键),以方便能快速找到所需要区块数据,每次提交区块后都会更新索引数据库。
状态数据库记录的是交易执行的结果,最新的状态代表了通道上所有键的最新值,所以又称为“世界状态”,交易或查询操作调用链码会根据当前状态数据库来完成,状态数据库支持查询单个键的数据,多个键的数据以及一个范围内的数据;
历史数据,记录每个状态数据的历史信息;
所述共识服务,由3个阶段完成:客户端向背书节点提交提案进行签名背书,客户端端将背书后的交易提交给排序节点进行交易排序,生成区块和排序服务后广播给记账节点验证交易后写入本地账本;同时,基于Gossip消息协议提供P2P网络通信机制,实现高效数据分发和状态同步,确保节点账本一致性;
所述背书验证,智能合约执行背书过程中基于背书策略,对节点执行的交易结果进行签名,校验交易的合法性并达成共识,验证通过后将新区块加入到区块链中并且更新账本信息。
所述链码服务,是基于标准的一段代码,通过链码执行提交的交易,实现具体的基于区块链的智能合约业务逻辑;链码通过GO、Java或Node.js等编程语言来实现,通过Docker容器运行链码,安装和实例化后通过gRPC与同一通道内的Peer节点进行连接,链码不依赖于底层账本,其更新不影响原有数据;
所述安全和加密服务,节点或成员必须被许可才能进入区块链网络,通过证书、加密和签名等技术手段保证系统安全;通过多通道隔离功能,保证只有参与交易的节点能访问到数据,其他的节点看不到,真正实现逻辑与数据的分离。
(3)服务层,包括身份管理、账本管理、交易管理及智能合约:
其中,所述身份管理,在用户注册和登录系统后,首先需要获取到用户注册证书,其他所有操作都需要与用户证书关联的私钥进行签名,消息接收方会进行验证签名后进行后续的消息处理;网络节点在系统启动和网络节点管理中同样会用到颁发的证书,对用户身份进行认证和授权;
所述账本管理,用户得到授权,可以通过区块号、区块哈希、交易号等多种方式查询区块数据,也可以通过交易号查询交易数据,还可以通过通道名称获取查询到的区块链信息;
所述交易管理,区块链账本数据只能通过交易的执行进行更新,客户端应用程序通过交易管理提交易提案,并获取到交易背书后,再给排序服务节点提交交易,然后打包生成区块;接口层的SDK提供应用程序接口,利用用户证书生成本地交易号,背书节点和记账节点校验是否存在重复交易;
所述智能合约,是运行在区块链上的模块化、可重用的自动执行脚本,是区块链超级账本的编程实现,通过链码执行提交的交易,具体实现基于区块链区块链的复杂的智能合约业务逻辑功能,修改状态数据,更新账本。
(4)接口层,包括应用程序接口(APIs)、事件(Events)、软件开发工具包(SDKs),提供API方式给第三方应用调用,方便二次开发,提供Node.js和Java SDK等多种语言接口;可以通过SDK方式进行安装、测试链码,还可以查询交易状态和数据等功能,同时通过事件监听区块链网络中发现的事件,方便第三应用系统调用和处理;
其中,所述应用程序接口,提供REST API,允许注册用户、查询区块链和发送交易;一些针对链码的API,可以用来执行交易和查询交易结果,是区块链中预先定义的配置操作、通道操作、链码操作、节点操作、日志操作等函数,为应用程序与开发人员提供基于区块链的服务;
所述事件,支持访问区块链网络上的通道事件,验证节点和链码会发送事件来触发监听动作,例如链码作为用户代码,可以触发用户事件,事件客户端接收区块事件,过滤区块事件,链码事件和交易状态事件;
所述软件开发工具包(SDKs),是区块链的客户端,包括GO、Java、Node.js、Python等编程语言的软件开发工具包,调用智能合约,负责与其他服务节点进行交互,访问区块链网络中的多种资源,包括账本、链码、事件、权限管理等,提供相关API接口服务,并支持用户开发丰富的应用程序;
(5)应用层是与用户的交互应用,涉及具体的业务功能,包括评审管理,申报审批,材料外审,学科组评议,专家(评价)委员会综合评价,统计报表,信息公示,系统设置等功能,如图12所示,为本实施例提供的职称评审系统结构图,进行用户角色权限设置,信息安全管理,具体包括:
文件管理为学校管理员提供,发布及管理职称评审通知、高校制定的相关职称评审文件、评审规则以及系统操作说明文档等功能;学校教职工、学科组评议专家、综合评价评委等其他用户可以在任何时候查阅文件。
数据管理为学校管理员提供,按照职称评审要求抽取职称申报人员基本信息、评审材料以及外审材料等功能;在学科组评议、综合评价开始前,将学校给出的学科组评议专家、综合评价评委等用户数据导入系统。
评审参数设置为学校管理员提供,学科组信息、职称评审单元信息、申报类型权重信息、学科组陈述顺序等参数设置等功能。
另外,在本实施例中,职称评审系统还包含区块链网络平台、智能合约、业务层、应用层,各个层之间采用不同的接口进行通信,业务层的SDK、智能合约和区块链网络平台之间采用gRPC的接口,业务层和Web应用之间采用RESTful的接口,其分层架构图如图13所示,其中:
区块链网络平台提供分布式共享账本的维护、状态数据库维护、智能合约的全生命周期管理等区块链功能,实现数据的不可篡改和智能合约的业务逻辑,另外,通过fabric-ca提供员注册和注销等功能。
智能合约是通过链码来实现的,包括评审管理,申报审批,材料外审,学科组评议,专家(评价)委员会综合评价,统计报表,信息公示,系统设置链码调用功能,链码查询包括査询申报材料,查询待学科组评议材料,专家(评价)委员会综合评价材料等。
业务层是应用程序的后端业务服务,给Web应用提供RESTful的接口,处理前端的业务清求,后端服务的基本功能包括用户管理和评审管理,通过HFC SDK和区块链网络进行通信,职称评审系统通过业务逻辑层与其他业务系统进行交互;
应用层是职称评审系统的Web应用采用JSP+HTML+CSS的前端架构编写的具有MVC、模块化、自动数据绑定等特点的单页面应用。提供用户交互的界面操作,包括用户操作的功能和业务操作的功能。用户是内置的,只提供用户登录和用户退出操作。业务操作包括用户登录、用户退出,职称申报审批,材料外审,学科组评议,专家(评价)委员会综合评价,统计报表,信息公示等功能;
分布式数据存储,基于区块链的职称评审系统的数据包含结构化数据和非结构化数据两类:结构化数据即业务交易数据通过业务应用程序打包成区块上链,形成分布式账本数据,账本数据以二进制形式存储在不同的文件目录下。非结构化数据是数据结构不规则或不完整,没有预定义的数据,包括所有格式的Word及PDF文档、文本、XML、HTML、各类报表、图像和音频/视频信息等;非结构化数据存储通过星际文件系统IPFS进行加密存储文件,并将文件的Hash值作为交易数据上链,存储于区块中。
针对目前商业职称评审系统的数据集中存储、评审过程人为干预、公示信息缺乏公正权威性等局限,以去中心化的区块链平台为基础,设计的一种适应高校职称评审机制的系统。该系统以去中心化、评审过程可追溯,数据不可篡改、公示具有可信性等特点,为高校职称评审工作提供一种安全可靠的系统。
以上仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。
Claims (10)
1.一种基于区块链的职称评审方法,其特征在于,包括:
对接收的职称评审数据生成区块,根据排序服务存储至区块链网络中;
根据评审权限接入评审节点,并通过调用智能合约依次对职称评审数据进行评审;
对评审结果进行加密,将加密后的评审结果广播至区块链网络中。
2.如权利要求1所述的一种基于区块链的职称评审方法,其特征在于,所述排队服务对生成区块广播至区块链网络中,所述区块链网络中接收消息同步且具有相同的逻辑顺序,排队服务包含多通道用以实现多链的数据隔离。
3.如权利要求1所述的一种基于区块链的职称评审方法,其特征在于,所述区块链网络中包括对接入评审节点的认证,接收注册请求,返回证书和私钥,对与证书关联的私钥签名进行验证。
4.如权利要求3所述的一种基于区块链的职称评审方法,其特征在于,所述验证包括,确认接收的交易请求中是否包含提交者身份信息和提交者签名,验证提交者是否具备评审权限和是否满足加入通道请求,即验证提交者MSP证书与本地MSP证书是否相同。
5.如权利要求1所述的一种基于区块链的职称评审方法,其特征在于,
所述对评审结果进行加密包括采用数字签名和EC-ElGamal加密算法,所述数字签名用以保证投票结果在上链过程中无法篡改,所述EC-ElGamal加密算法具有加法同态性,在保证选票加密的前提下,完成密文选票的同态计算,进行智能合约的自动化计票。
6.如权利要求1所述的一种基于区块链的职称评审方法,其特征在于,
所述智能合约,通过链码实现,包括评审管理、申报审批、材料外审、学科组评议、专家委员会综合评价、统计报表和信息公示,链码查询包括査询申报材料、待学科组评议材料和专家委员会综合评价材料。
7.如权利要求6所述的一种基于区块链的职称评审方法,其特征在于,
为每个职称评审过程分配一个智能合约,通过调取专家评委进行投票,所述专家评委根据智能合约约定的票选项对申报人员是否获得相应职称进行表决,形成选票,
所述选票通过专家评委进行签名并且加密后上链,存储在区块链上,通过哈希对比或密文对比方式进行校验。
8.如权利要求1所述的一种基于区块链的职称评审方法,其特征在于,所述评审过程包括条件评审投票规则和差额评审投票规则。
9.如权利要求1所述的一种基于区块链的职称评审方法,其特征在于,所述职称评审数据包括结构化数据和非结构化数据,所述结构化数据打包成区块上链,形成分布式账本数据,以二进制形式存储在不同的文件目录下;
所述非结构化数据通过IPFS进行加密存储文件,并将Hash值作为交易数据上链,存储于区块中。
10.一种基于区块链的职称评审系统,其特征在于,包括:
排序服务模块,用于对接收的职称评审数据生成区块,根据排序服务存储至区块链网络中;
智能合约模块,用于根据评审权限接入评审节点,并通过调用智能合约依次对职称评审数据进行评审;
加密模块,用于对评审结果进行加密,将加密后的评审结果广播至区块链网络中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010300044.1A CN111476548B (zh) | 2020-04-16 | 2020-04-16 | 一种基于区块链的职称评审方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010300044.1A CN111476548B (zh) | 2020-04-16 | 2020-04-16 | 一种基于区块链的职称评审方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111476548A true CN111476548A (zh) | 2020-07-31 |
CN111476548B CN111476548B (zh) | 2024-01-23 |
Family
ID=71753599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010300044.1A Active CN111476548B (zh) | 2020-04-16 | 2020-04-16 | 一种基于区块链的职称评审方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111476548B (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112115098A (zh) * | 2020-08-07 | 2020-12-22 | 北京工业大学 | 一种基于HyperLedger和IPFS的溯源系统 |
CN112633858A (zh) * | 2021-01-05 | 2021-04-09 | 润联软件系统(深圳)有限公司 | 一种流程审批处理方法及系统 |
CN112769831A (zh) * | 2021-01-12 | 2021-05-07 | 欧冶云商股份有限公司 | 一种在不可信网络环境下面向区块链的多通道创建方法 |
CN112907811A (zh) * | 2021-01-29 | 2021-06-04 | 山西特信环宇信息技术有限公司 | 一种锥体区块链的选举系统及投票方法 |
CN112950376A (zh) * | 2021-03-05 | 2021-06-11 | 广东电网有限责任公司 | 基于区块链技术的电力行业数字身份证管理方法及系统 |
CN113010905A (zh) * | 2021-03-29 | 2021-06-22 | 明链科技(深圳)有限公司 | 一种解决区块链环境安全管理问题的sdk部署架构及封装方式 |
CN113342850A (zh) * | 2021-05-28 | 2021-09-03 | 昆明理工大学 | 一种基于区块图的联盟网络模型及其应用 |
CN113381991A (zh) * | 2021-06-04 | 2021-09-10 | 福州大学 | 基于区块链的电子投票系统及方法 |
CN113468612A (zh) * | 2021-06-30 | 2021-10-01 | 上海特高信息技术有限公司 | 一种基于区块链和ipfs的文件审核系统及方法 |
CN113761579A (zh) * | 2021-09-10 | 2021-12-07 | 泰康保险集团股份有限公司 | 基于区块链的评审方法、装置、设备及存储介质 |
CN113837627A (zh) * | 2021-09-28 | 2021-12-24 | 卡斯柯信号有限公司 | 一种基于文本处理的职称评审平台及方法 |
WO2022027531A1 (zh) * | 2020-08-03 | 2022-02-10 | 西安电子科技大学 | 区块链构建方法、系统、存储介质、计算机设备及应用 |
CN114548910A (zh) * | 2022-01-21 | 2022-05-27 | 浙江农林大学 | 一种基于区块链的林业碳汇计量监测与交易系统及方法 |
CN115065690A (zh) * | 2022-06-13 | 2022-09-16 | 四川省自主可控电子信息产业有限责任公司 | 一种基于不同异构指令集的去中心化系统及方法 |
CN115426256A (zh) * | 2021-05-31 | 2022-12-02 | 中移雄安信息通信科技有限公司 | 联盟链配置方法、装置及存储介质 |
CN115423418A (zh) * | 2022-07-04 | 2022-12-02 | 北京交通大学 | 一种基于区块链的论文评审方法 |
CN115664684A (zh) * | 2022-12-27 | 2023-01-31 | 湖南工商大学 | 融合数字证据的共识协议运行方法、装置及相关设备 |
CN116579515A (zh) * | 2023-07-14 | 2023-08-11 | 广东省科技基础条件平台中心 | 一种基于区块链的在孵企业导师管理系统及方法 |
CN117114508A (zh) * | 2023-10-20 | 2023-11-24 | 浪潮软件股份有限公司 | 教师层级认定系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108768607A (zh) * | 2018-05-14 | 2018-11-06 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种基于区块链的投票方法、装置、设备及介质 |
CN109635221A (zh) * | 2018-12-06 | 2019-04-16 | 山东大学 | 基于区块链的论文发表评审共享方法及系统 |
CN110309634A (zh) * | 2019-04-04 | 2019-10-08 | 深圳大通实业股份有限公司 | 一种基于区块链的可信广告数据管理系统 |
CN110503538A (zh) * | 2019-08-16 | 2019-11-26 | 南京审计大学 | 一种基于区块链智能合约的审计应用解决方案 |
CN110675545A (zh) * | 2018-07-03 | 2020-01-10 | 万福资讯股份有限公司 | 基于数字货币的计票方法及区块链计票系统 |
-
2020
- 2020-04-16 CN CN202010300044.1A patent/CN111476548B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108768607A (zh) * | 2018-05-14 | 2018-11-06 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种基于区块链的投票方法、装置、设备及介质 |
CN110675545A (zh) * | 2018-07-03 | 2020-01-10 | 万福资讯股份有限公司 | 基于数字货币的计票方法及区块链计票系统 |
CN109635221A (zh) * | 2018-12-06 | 2019-04-16 | 山东大学 | 基于区块链的论文发表评审共享方法及系统 |
CN110309634A (zh) * | 2019-04-04 | 2019-10-08 | 深圳大通实业股份有限公司 | 一种基于区块链的可信广告数据管理系统 |
CN110503538A (zh) * | 2019-08-16 | 2019-11-26 | 南京审计大学 | 一种基于区块链智能合约的审计应用解决方案 |
Non-Patent Citations (1)
Title |
---|
余以胜 等: "基于区块链的学术评价系统模型构建研究" * |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022027531A1 (zh) * | 2020-08-03 | 2022-02-10 | 西安电子科技大学 | 区块链构建方法、系统、存储介质、计算机设备及应用 |
CN112115098A (zh) * | 2020-08-07 | 2020-12-22 | 北京工业大学 | 一种基于HyperLedger和IPFS的溯源系统 |
CN112633858A (zh) * | 2021-01-05 | 2021-04-09 | 润联软件系统(深圳)有限公司 | 一种流程审批处理方法及系统 |
CN112769831A (zh) * | 2021-01-12 | 2021-05-07 | 欧冶云商股份有限公司 | 一种在不可信网络环境下面向区块链的多通道创建方法 |
CN112769831B (zh) * | 2021-01-12 | 2023-08-08 | 欧冶云商股份有限公司 | 一种在不可信网络环境下面向区块链的多通道创建方法 |
CN112907811A (zh) * | 2021-01-29 | 2021-06-04 | 山西特信环宇信息技术有限公司 | 一种锥体区块链的选举系统及投票方法 |
CN112950376A (zh) * | 2021-03-05 | 2021-06-11 | 广东电网有限责任公司 | 基于区块链技术的电力行业数字身份证管理方法及系统 |
CN113010905A (zh) * | 2021-03-29 | 2021-06-22 | 明链科技(深圳)有限公司 | 一种解决区块链环境安全管理问题的sdk部署架构及封装方式 |
CN113010905B (zh) * | 2021-03-29 | 2024-04-30 | 明链科技(深圳)有限公司 | 一种解决区块链环境安全管理问题的sdk部署架构及封装方式 |
CN113342850A (zh) * | 2021-05-28 | 2021-09-03 | 昆明理工大学 | 一种基于区块图的联盟网络模型及其应用 |
CN113342850B (zh) * | 2021-05-28 | 2024-03-19 | 昆明理工大学 | 一种基于区块图的联盟网络模型及其应用 |
CN115426256A (zh) * | 2021-05-31 | 2022-12-02 | 中移雄安信息通信科技有限公司 | 联盟链配置方法、装置及存储介质 |
CN113381991A (zh) * | 2021-06-04 | 2021-09-10 | 福州大学 | 基于区块链的电子投票系统及方法 |
CN113468612A (zh) * | 2021-06-30 | 2021-10-01 | 上海特高信息技术有限公司 | 一种基于区块链和ipfs的文件审核系统及方法 |
CN113468612B (zh) * | 2021-06-30 | 2023-08-22 | 上海特高信息技术有限公司 | 一种基于区块链和ipfs的文件审核系统及方法 |
CN113761579A (zh) * | 2021-09-10 | 2021-12-07 | 泰康保险集团股份有限公司 | 基于区块链的评审方法、装置、设备及存储介质 |
CN113837627A (zh) * | 2021-09-28 | 2021-12-24 | 卡斯柯信号有限公司 | 一种基于文本处理的职称评审平台及方法 |
CN113837627B (zh) * | 2021-09-28 | 2024-03-15 | 卡斯柯信号有限公司 | 一种基于文本处理的职称评审平台及方法 |
CN114548910A (zh) * | 2022-01-21 | 2022-05-27 | 浙江农林大学 | 一种基于区块链的林业碳汇计量监测与交易系统及方法 |
CN114548910B (zh) * | 2022-01-21 | 2022-10-28 | 浙江农林大学 | 一种基于区块链的林业碳汇计量监测与交易系统及方法 |
CN115065690A (zh) * | 2022-06-13 | 2022-09-16 | 四川省自主可控电子信息产业有限责任公司 | 一种基于不同异构指令集的去中心化系统及方法 |
CN115423418B (zh) * | 2022-07-04 | 2023-05-02 | 北京交通大学 | 一种基于区块链的论文评审方法 |
CN115423418A (zh) * | 2022-07-04 | 2022-12-02 | 北京交通大学 | 一种基于区块链的论文评审方法 |
CN115664684A (zh) * | 2022-12-27 | 2023-01-31 | 湖南工商大学 | 融合数字证据的共识协议运行方法、装置及相关设备 |
CN116579515A (zh) * | 2023-07-14 | 2023-08-11 | 广东省科技基础条件平台中心 | 一种基于区块链的在孵企业导师管理系统及方法 |
CN116579515B (zh) * | 2023-07-14 | 2023-10-17 | 广东省科技基础条件平台中心 | 一种基于区块链的在孵企业导师管理系统及方法 |
CN117114508A (zh) * | 2023-10-20 | 2023-11-24 | 浪潮软件股份有限公司 | 教师层级认定系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111476548B (zh) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111476548B (zh) | 一种基于区块链的职称评审方法及系统 | |
CN110599069A (zh) | 基于区块链网络的应用评价方法及装置 | |
CN111369730B (zh) | 基于区块链的投票表决处理方法和装置 | |
Bouras et al. | An electronic voting service to support decision-making in local government | |
Ikonomopoulos et al. | Functional requirements for a secure electronic voting system | |
Qu et al. | A electronic voting protocol based on blockchain and homomorphic signcryption | |
Biswas et al. | Buvots: A blockchain based unmanipulated voting scheme | |
Madise et al. | Constitutionality of remote internet voting: The Estonian perspective | |
Kaudare et al. | Implementing electronic voting system with blockchain technology | |
CN110727734B (zh) | 基于区块链的信用信息同步方法及信用联合奖惩系统 | |
Rosasooria et al. | E-voting on blockchain using solidity language | |
Leewis et al. | An explorative dive into decision rights and governance of blockchain: A literature review and empirical study | |
Bhumichitr et al. | Acachain: Academic credential attestation system using blockchain | |
Nguyen | Gradubique: An academic transcript database using blockchain architecture | |
Chaieb et al. | Dabsters: A privacy preserving e-voting protocol for permissioned blockchain | |
Heinl et al. | Remote electronic voting in uncontrolled environments: A classifying survey | |
Bruni et al. | Automated analysis of accountability | |
Van Wingerde | Blockchain-enabled self-sovereign identity | |
Larangeira | Reputation at stake! A trust layer over decentralized ledger for multiparty computation and reputation-fair lottery | |
CN115086049A (zh) | 基于可验证延迟函数的区块链医疗数据共享系统及方法 | |
CN115484057A (zh) | 一种基于联盟链的成绩存证方法及系统 | |
CN112560115A (zh) | 一种基于区块链的多方联合研发方法及系统 | |
Cahya | Block Chain Model for Regional Elections in Indonesia | |
Sun et al. | An efficient and secure trading framework for shared charging service based on multiple consortium blockchains | |
Chander | Deep Dive Into Blockchain Technology: Characteristics, Security and Privacy Issues, Challenges, and Future Research Directions |
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 |