APP下载

区块链在学信系统中的应用与实践

2020-04-14

电子元器件与信息技术 2020年11期
关键词:学历证书以太哈希

(吉林建筑科技学院计算机科学与工程学院,吉林 长春 130114)

0 引言

区块链起源于中本聪的比特币,它其实是比特币应用的底层技术之一,随着其不断发展,人们总结其本质上是一个无中心化的数据库,即通过无中心化和无中介的方式集体去维护一个可靠数据库的技术方案。随着区块链技术的日益完善,使它的应用价值在不同行业逐渐显现出来,同时受到了各个国家政府的高度关注。例如美国、澳大利亚、英国、加拿大等政府推出扶持区块链技术的若干政策主张,比较有代表性的麻省理工学院的实验室应用区块链技术研发了学习证书平台,世界开源Linux 基金会联合30家企业建立Hyperledger项目。我国也相继发布《区块链信息服务管理规定》,中央集体学习时也多次强调,“把区块链作为核心技术自主创新的重要突破口”“加快推动区块链技术和产业创新发展”[1]。在我国“区块链”已开始走进各行各业,成为社会关注的大众焦点。同时大们也开始发掘区块链的价值,并把它和教育行业紧密结合起来。基于密码学技术原理的区块链通过时间戳、哈希函数等具体技术可以打击学术造假,能够保证学历证书和文凭的真实性。

1 学历造假的现状

近年来媒体报道的学历造假事件层出不穷,如论文造假,伪造应届毕业生身份参加高考,被学校开除或者考试不过的学生采取办理假学历的手段等等。传统的人力资源证书检测机构检测证书真伪的方法,就是通过学信网上的学生证书编号及相关信息来查询。另外,从技术方面来讲,大量分散的数据增加了学信网的设备成本,同时学信网中心处理的发布、更新、备份及恢复等业务量巨增[3]。

2 区块链特点

由于区块链技术具有去中心化、不可篡改性、开放性和独立性等特点,基于此技术建立的学信系统即学历证书防伪检验,可以保证教育学历证书的真实,可以在特定的环节上规避学历造假,让岗位竞争更加公平[4]。(1)去中心化。写入区块链的数据是以相同结构体的链式存储形式存在的,数据存储采用分布式的方式,不需要其他管理机构代替管理,也不需要具体的数据存储或服务中心,各个节点进行信息的自我验证、传递和管理。没有中心是区块链技术最突出最本质的特征。(2)开放性。区块链底层技术是开源的,任何人都可以据此开发相关应用;区块链中的数据只加密交易双方认为必要的重要数据,其余信息都是可以公开的,每个人可以通过查询接口查询区块链中的数据,从技术和应用两个方面来讲基于区块链的系统都是透明的。(3)独立性。基于协商一致的规范和协议(类似比特币采用的哈希算法等各种数学算法),整个区块链系统不依赖其他第三方,所有节点能够在系统内自动安全地验证、交换数据,不需要任何人为的干预。(4)不可篡改性。要想恶意篡改数据,必须要掌握系统全部节点的50%以上,其庞大的代价远远超过篡改的目的,这也是使其相对安全的主要原因,避免了主观人为的对数据的修改。(5)匿名性。各区块节点身份的相关信息如果排除法律法规要求外不需要公开或实名验证,区块链可以进行匿名的信息传递。

3 区块链核心技术

(1)使用何种共识机制(consensus process):目前公有链采用的共识算法以POW居多,也就常听说的挖矿,这并不是一个特别满意的方案,后来又有了POS(权益性证明)的方案,以及改进版的DPOS方案,而POS&DPOS还并没有经历工业化的考验,尚待验证[5]。

(2)基础账本和账户模型是如何设计的:目前有两种模型:①以比特币为代表的UTXO账户模型,同时也是基础账本的基础模型。②以以太坊为代表的Balance账户模型,balance的变化取决于合约状态的变迁以及数据写入。

(3)代币分发的经济模型是如何设计的:比特币是最简单的出块奖励线性递减的设计。这里主要涉及的问题是如何将代币公平的分发的问题。

4 区块链技术如何确保学历的真实性

4.1 具体验证的工作原理

首先,使用区块链和强加密的方式,定义一个区块结构体,具体的区块应包括块头和块身两部分内容,块头主要包括父区块哈希值,子区块哈希值,时间戳等信息。块身信息为数字文件,主要包含证书基本信息的姓名、专业、学号、证书号,照片等内容;其次,在加密算法中,使用秘药对中的私钥加密证书数据,再对证书进行签名操作;然后按照某种规则创建一个哈希值,加密整个证书数据,一旦数据信息被改动,就可通过哈希值进行判断;最后,再次使用加密算法中秘药对中的私钥将创建的新记录记录在比特币区块链上,该记录可以证明对应学历证书的颁发时间和被颁发人。

4.2 学信系统的设计方案

(1)底层由区块链技术支撑构建的应用平台的研究与选择。在最开始写区块链应用程序的时候,要拷贝一份比特币的原始代码,然后去修改底层代码,包括网络协议,共识机制和加密算法等等。这种方法不仅费时费力,还要求使用者要精通比特币技术,后来人们试着封装底层代码,出现了区块链2.0时代的代表技术以太坊平台,它是一个封装了比特币底层技术,无中心化的应用平台,区块链应用开发者可以免去研究比特币底层代码的苦恼,直接基于以太坊平台进行相关开发,使得开发者只要专注于应用本身即可,这样大大降低了应用区块链的难度。

(2)在以太坊平台上,如何实现学信系统的设计。编写智能合约,在本地搭建的以太坊私有链节点上部署我们的智能合约(智能合约作为运行在以太坊虚拟机(Ethereum Virtual Machine,EVM)中的应用,智能合约就是程序,具体在接受外部的交易请求和事件时,自动执行预先定义好的规则和程序,还可以进一步生成新的交易和事件,然后调用其它智能合约。智能合约的执行结果会对学信系统上的数据进行更新操作。更新的数据经过以太坊网络中的共识算法并确认后就无法被伪造和篡改)。还要设计与学信系统交互的前端界面,通过以太坊提供的Web3.js库的JavaScript API接口调用部署在区块链上智能合约的相应方法,实现整个学信系统的流程[6-7]。主要技术路线图详见图1。

(3)系统具体设计过程包括两部分。教育机构管理者界面:包括部署智能合约、认证个人学习者、认证个人学习记录和结果、查看学习记录和结果等。学习者界面:包括登录注册、添加学习记录和结果、查看学习记录和结果。

5 结语

区块链技术是一种新的架构思想或者是一种新的设计方案,它所用到的密码学,数据结构学、协议等理论基础已经非常扎实。全国乃至全球所有教育机构,都可以利用分布式记录与存储的区块链技术特征,将其机构的学历证书上,还可以包括学习行为和学习结果记录。利用区块链防篡改、可验证的及无中心化的特征,将学历证书信息存放在基于区块链技术构建的数据库中,能够更有效的保证学历的真实性,同时也节省了制作证书及颁发证书的人力成本和时间成本,用区块链技术解决学历文凭和证书造假是区块链在教育领域应用的更佳方案。

猜你喜欢

学历证书以太哈希
基于特征选择的局部敏感哈希位选择算法
哈希值处理 功能全面更易用
文件哈希值处理一条龙
基于活跃节点库的以太坊加密流量识别方法
以太万物理论概述
车易链:做汽车业的“以太坊”
论职业中专计算机专业教学中五个对接的实现
浅议高校档案馆提高学历证书翻译效率的对策
关于国家资格框架的功能探讨
巧用哈希数值传递文件