刘丰源 赵建民 陈 昊 徐振国
基于区块链的教育资源共享框架探究*
刘丰源 赵建民[通讯作者]陈 昊 徐振国
(山东师范大学 教育学部,山东济南 250014)
文章针对国内教育资源在共享过程中存在的资源产权亟需保护、资源质量不容乐观、资源库建设方式有待转型等问题,采用区块链的网络拓扑结构,借鉴区块链的共识验证技术,设计了包含资源存储层、资源评估层、资源互连层的教育资源共享框架。文章设计的基于区块链的教育资源共享框架,既能保障资源供给方的知识产权,又能提升教育资源的质量,还能扩大教育资源的共享范围,故可为教育资源共享的实现提供理论参考。
区块链;教育资源共享;资源产权保护;网络拓扑;共识验证技术
当今,“以学生为中心”、“因材施教”、“个性化学习”的教育理念正不断冲击着传统的教学方式,而教师根据学生的学习特征分配不同的学习任务、实施不同的教学策略,都离不开教育资源的支持(注:若无特别说明,本研究中的教育资源特指数字教育资源)。2010年,教育部颁布《国家中长期教育改革和发展规划纲要(2010-2020年)》,指出要“建设开放的教育资源公共服务平台,促进教育资源的普及共享”[1]。尽管教育资源的普及共享已成为广大师生的共同诉求,但从现有实践来看,国内教育资源在共享过程中还存在不少问题,主要表现为:
资源供给方是资源的生产者,其分享意愿决定着资源内容的丰富程度。从现有实践来看,生产资源耗费了资源供给方大量的时间和精力,因此资源供给方的资源分享意愿主要取决于其付出所得的回报奖励和对资源本身的价值认同。
长期以来,如何保护资源产权一直是个棘手的难题,而在资源产权无法得到保护的情况下,资源供给方往往不愿分享。为此,共享创意组织(Creative Commons,CC)制定了知识共享协议,并提供了6种许可组合方式。然而,CC并未得到国际法律上的认可,一旦发生侵权纠纷,“举证难”的问题依然存在[2]。数字版权管理(Digital Rights Management,DRM)同样是一种保护资源产权的方式,采用加密技术保护资源的安全,未授权用户无法获取资源使用权,但DRM标准、设备兼容性等还有待完善,且无法避免盗版现象的发生[3]。
资源的生产、流通、检索和共享已成为凸显其价值的有效路径。为解决学习中存在的问题,资源需求方往往登录资源服务平台,利用检索功能从数据库中筛选出符合自身的资源。因此,资源质量显得尤为重要,是资源需求方提升自身专业发展、满足知识型社会对人才需求的前提。
目前,劣质资源在国内不断涌现,使优质资源淹没于茫茫大海之中。究其原因,主要在于:①诸多资源服务平台没有明确的质量审核机制,资源建设流程不够规范[4];②地理位置、经济落差导致院校之间缺乏有效的互动交流并产生“信息孤岛”,低水平重复建设造成资源质量参差不齐,可供资源需求方选择资源内容的类型不足[5];③资源评价主体过于单一,“重专家、轻大众”的评审方式屡见不鲜,缺少校内外师生对教育资源的评价反馈[6]。
资源库建设方式分为两种:一种是以政府为主导的集中式建设,统一将资源从孕育腹地汇聚并存储于中心数据库,资源需求方通过免费或付费的共享机制获取资源,共享主体范围较广;另一种是以学校为中心的独立式建设,由院校成员组织运营,仅供校内师生共享,外部人员无法访问[7]。
资源需求方对资源的需求越大,集中式资源库的更新、管理、维护所耗费的资金成本就越高,而一旦资金链断裂,资源的可持续发展便会遭受巨大的冲击——犹他州立大学开放课件项目关闭的原因正是如此[8]。此外,资源需求方对资源平台的并发访问,也容易造成中心服务器出现超载、崩溃、网络延迟等现象,致使资源需求方错过获取资源的最佳时间。独立式教育资源库虽然管理成本较低,但资源内容类型匮乏,且共享主体范围较窄。基于上述分析,为了提升资源质量、促进资源大范围地传播共享,除政府统筹建设之外,院校之间亦可打造一个共建共享的资源共同体,以便在本地服务器发生故障时,可以跨区域、跨平台访问其它资源库。
2008年,Nakamoto[9]提出去中心化的数字货币,即比特币。此后,区块链作为比特币的底层技术,引起了诸多研究者的关注。从本质上来讲,区块链是指结合加密技术,将数据封装成区块,通过链式结构使区块互连,利用共识机制对事务的结果达成统一共识,营造一种分布式的基础架构和去中心化的运行环境[10]。上述定义表明:区块链的正常运行离不开网络拓扑结构和共识验证技术——这为本研究设计基于区块链的教育资源共享框架提供了思路:选择相应的网络拓扑结构,可以降低数据库之间的并发访问风险,提升教育资源共享的利用率;通过共识验证技术,可以达成教育资源的评价共识,进而优化教育资源的质量。
“去中心化”是指在没有中心服务器的协调下,节点之间可以互相通信;每个节点无主从之分,均有路由寻址、广播等功能;节点的加入或离开,不会影响网络的正常运行[11]。众所周知,区块链基于P2P实现去中心化的分布式管理,而P2P的网络拓扑结构分为中心化拓扑(Centralized Topology,CT)、半分布式拓扑(Partially Decentralized Topology,PDT)、分布式非结构化拓扑(Decentralized Unstructured Topology,DUT)和分布式结构化拓扑(Decentralized Structured Topology,DHT)[12]。那么,区块链究竟采用何种网络拓扑结构?
CT类似于传统客户端/服务器通信模式,其网络拓扑结构是中心化的,不符合区块链去中心化的需求;PDT的路由查询依赖于超级节点,若超级节点崩溃,整个网络就会处于部分瘫痪的状态,故区块链也无法通过PDT实现去中心化;DUT采用泛洪算法实现节点定位,仅限于小部分的分布式网络检索,且扩展性较差,容易造成网络风暴、消息重叠等问题,因此区块链采用DUT尚不合适;在DHT中,所有节点共同维护一张巨大的散列表,适用于大规模分布式网络,路由查询速度精准,可靠性良好,符合区块链的需求。教育资源的共享亦离不开网络拓扑结构的支撑,故本研究设计基于区块链的教育资源共享框架的资源互连层时也将采用DHT。
在区块链中,区块的共识验证涉及三种技术:默克尔树、数字签名和共识机制。其中,默克尔树用来存储数据,数字签名保证区块中数据的完整性验证,共识机制是达成共识的算法。
(1)默克尔树(Merkle Tree,MT)
区块中部分数据以MT形式存储,如比特币交易信息。MT是存储哈希值的特殊二叉树,哈希值(也称数字摘要)通过具有不可逆性的哈希算法(Hash Algorithm,HA)计算得出,而典型的HA有消息摘要算法(Message Digest 5,MD5)和安全散列算法(Secure Hash Algorithm,SHA)——其中,SHA已成为联邦信息处理标准(Federal Information Processing Standards,FIPS)认证的算法,如比特币使用SHA-256计算哈希值。MT由一个根节点、多组中间节点和一组叶子节点构成,这些节点依次迭代执行HA得出MT的根,所以,MT的根表示整个默克尔树。从逻辑而言,MT是一种存储数据的结构,当教育资源存储于MT时,若想验证区块中的数据,就只需验证MT的根,因此相较于其它存储结构,MT的验证效率更高。
(2)数字签名(Digital Signature,DS)
DS类似于刻在纸上的印章标识,其实现基于非对称加密(Asymmetric Encryption,AE)技术。AE算法虽有多种,但遵循的原理相同,即生成密钥对——公钥(Public Key,PK)和私钥(Private Key,PrK),使用PK对数字摘要加密并产生密文,通过PrK对密文解密。公钥加密算法(Rivest Shamir Adleman,RSA)是一种典型的AE,其密钥对的生成基于欧拉定理和模反元素,故RSA很难被破译。鉴于此,教育资源评价可以采用基于RSA的DS,以保证教育资源检验的完整性。
(3)共识机制(Consensus Mechanism,CM)
CM是按照一定的时间先后顺序,对事务的处理结果达成共识。实际拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)是常用的共识算法,可容忍少数拜占庭节点。由于区块链分为私有链、联盟链和公有链三种,不同种类的区块链使用的CM大相庭径,而本研究设计的教育资源共享框架适用于区域教育资源共享,具有联盟链的性质,所以选择的是可容忍少数拜占庭节点的PBFT,以达成对教育资源的评价共识。
结合上述分析,教育资源共享框架可在以下方面借鉴区块链的共识验证技术:在资源存储层,用默克尔树存储教育资源;通过数字签名尤其是基于RSA的数字签名,来保证用默克尔树存储的教育资源检验的完整性;借助共识机制尤其是PBFT,来达成对教育资源的评价共识。
针对国内教育资源在共享过程中存在的问题,采用区块链的网络拓扑结构DHT,借鉴区块链的共识验证技术,本研究设计了基于区块链的教育资源共享框架,如图1所示。
虽然区块链中的区块数据不可篡改,但区块链自身存在安全漏洞,如比特币明确规定只有掌控51%的节点才能有效篡改区块数据,这就是其中的一个漏洞——2018年,比特币黄金(Bitcoin Gold,BG)遭受非法攻击,攻击者控制了网络中的大多数算力,非法收入1800余万美元[13]。区块之间的互连是由区块中所有数据迭代执行HA得出。若修改区块中的数据,就需计算出从当前区块至最后一个区块中所有首尾互连区块的地址哈希值,由此可见,篡改数据会耗费庞大的算力——破坏区块链所需的算力成本是每小时336美元到49万美元[14]。当攻击者的回报小于自身的付出时,断然不会冒险篡改区块中的数据。
图1 基于区块链的教育资源共享框架
基于上述分析,资源存储层采取“区块”+“链”存储链接方式,以保护资源产权:资源供给方将教育资源封装成区块等待验证(区块中的基本数据如表1所示),随后,系统将区块链接到从创世区块至前一个区块的主链上,同时将区块链中的数据备份至各个节点——每个节点拥有相同的“记账簿”,均记录着区块链上的所有数据。区块中包含时间戳、资源供给方等基本信息,这些信息明确了资源的归属权,一旦发生侵权纠纷,节点可以充当“证人”的角色。
表1 区块中的基本数据
资源评估层采取去除“中心化”的评估方式,形成院校、专家、师生等共评联盟体系;评估者依据评价指标,在网络中达成资源质量评估共识。但网络的不稳定、基础设备出现故障、黑客攻击等会造成网络延迟、死机、资源被截取等问题——本研究将这些问题定义为拜占庭将军问题。为此,本研究采用可容忍部分拜占庭节点且适用于联盟链的PBFT算法,来保证评估结果的有效反馈。
PBFT是一种状态机副本复制算法,实施验证时,对每个节点的状态进行副本复制,所有的副本均在视图中运行[15]。在视图中选取一个副本为主节点(Primary Node,PN),PN=v mod |n|——其中,v为视图编号,n为副本的个数,其余副本为备份节点(Backup Node,BN)。为便于后文表述如何通过PBFT达成资源质量评估,本研究采用表述术语
①连接(Connection):资源供给方通过本地服务器将资源封装成区块,发送
②预准备(Pre-prepare):启动视图操作,PN验证资源供给方发送的证书格式是否规范,若验证通过,PN给BN分配seq并执行数字签名,广播
③准备(Prepare):在证书传输的过程中,有可能出现PN失效的情况,因此,BN收到Pre-prepare证书后,应判断PN分配的seq是否在水线[h, H]范围内,检验d是否一致。若验证通过,表明区块内容完整,BN下载待评估的教育资源、对其进行评价,并通过证书反馈res。随后,BN执行数字签名,广播
④确认(Commit):系统操作按照时间的优先顺序进行,若PN在某个时间发生拜占庭错误,系统便会启动更换视图的操作,在这个时间点之前,已经分配的seq会全部失效。此时重新分配seq,会浪费系统中的时间和存储空间,故增加确认阶段以解决PN失效带来的问题。收到Prepare证书后,若验证通过,PN、BN执行数字签名,广播
⑤回应(Replay):资源供给方检查Commit证书中的内容,若其反馈res的数量大于节点总数的2/3,就表明大部分节点对资源的评价达成了共识,可将区块上传至区块链。
资源互连层选择基于Kademlia(下文简称“Kad”)协议的DHT,使院校之间的资源库可以互连共访。实现DHT的技术有Tapestry、CAN、Chord、Kad。与其它三种技术相比,Kad以独特的异或算法(Exclusive OR,XOR)为距离度量的基础,建立了一种全新的拓扑结构,提高了路由查询速度[16]。
(1)Kad网络划分
Kad把整个P2P网络逻辑划分为二叉树,节点可以看成树中的叶子节点,每个节点又可把整个二叉树划分为不包含自身的子树。Kad给节点随机分配一个160位二进制ID,节点的位置由ID最短前缀决定。Kad保证了每个节点至少知道其划分子树中的一个节点,每个节点可以通过ID来定位其它节点的位置[17]。Kad将路由表分布在网络中的各个节点,在节点加入或离开的情况下,能最大程度地保留原有节点中的映射,使整个网络具有良好的扩展性。
(2)Kad路由查询
Kad采用XOR计算两个节点之间的距离:假设存在节点x=1010和节点y=0011,采用XOR计算x, y之间的距离,得到:d(x, y)=1010⊕0011=1001。节点的路由表信息通过一个K桶表格构造,由
(3)Kad操作步骤
假设师生通过本地客户端搜索其它院校的资源库,可按以下步骤进行Kad远程操作[19]——
①PING:资源供给方通过客户端探测目标节点是否在线,并计算两者之间的距离;
②STORE:依据两者之间的距离,通知相邻的K桶更新相应的
③FIND_NODE:客户端从自身K桶中选择n个节点进行查询操作,整个查询是一个迭代循环的过程。在n个节点之中,若存在目标节点,就表示查询结束,客户端与目标节点建立连接;若不存在目标节点,则以n个节点为基准,重复上面的操作,直至找到目标节点为止;
④FINDE_VALUE:目标节点请求节点返回自身的位置信息
本研究设计的基于区块链的教育资源共享框架,适用于区域教育资源、校内教育资源的共享。作为一项探索性的理论研究,该框架尚存在以下不足:①在资源存储层,不能仅靠“区块”+“链”存储链接方式来保护资源产权,还需完善与区块链相关的法律法规、制定保护资源产权的相关政策。②在资源评估层,PBFT采用数字签名对教育资源加以保护,而数字签名虽然可以保证数据的完整性,但不能保证数据的有效性;为了保证评估者的安全隐私,评估者往往以匿名的方式评估,而消息认证编码(Message Authentication Code,MAC)虽然可以保证数据的有效性,但前提是要明确资源供给方与资源评估方的身份——针对这个矛盾问题,能否借助MAC以非匿名的方式进行资源评估有待进一步思考。③在网络共享层,分布式网络基础设施建设需要大量的成本资金,当网络节点自由出入时,还应预防巫女攻击(Sybil Attack,SA)、域名系统劫持(Domain Name System Hijacked,DNSH)等情况,并且Kad不支持复杂的查询方式。此外,如何完善资源供给方提供资源后的奖励机制,本研究也尚未涉及。
[1]教育部.国家中长期教育改革和发展规划纲要(2010-2020年)[OL].
[2]姜川.CC协议的民法性质探析——介于合同与单方法律行为之间[J].中国版权,2015,(5):67-71.
[3]常江.数字版权管理与合理使用权利冲突的解决路径[J].出版广角,2016,(16):38-40.
[4]董艳,杜国,徐唱,等.国内开放教育资源平台建设的现状与发展[J].中国电化教育,2017,(11):36-42.
[5]刘雅馨,徐超超,王林丽,等.大数据支持下的数字教育资源生态建设[J].现代教育技术,2016,(10):5-11.
[6]徐美仙.将量规引入函授网络课程评价中的探索[J].远程教育杂志,2007,(2):60-64.
[7]丁新.探索建立网络教育优质资源共享机制[J].中国高等教育,2003,(22):41-42.
[8]王龙.开放教育资源可持续发展能力建设的再思考——美国犹他州立大学开放课件项目关闭的警示[J].现代远程教育研究,2010,(1):29-32.
[9]Nakamoto S. Bitcoin: A peer-to-peer electronic cash system[OL].
[10]邵奇峰,金澈清,张召,等.区块链技术:架构及进展[J].计算机学报,2018,(5):969-988.
[11]沈鑫,裴庆祺,刘雪峰.区块链技术综述[J].网络与信息安全学报,2016,(11):11-20.
[12]周韬.P2P网络资源搜索方法的研究[D].北京:北京交通大学,2015:9-12.
[13]猎云网.Bitcoin Gold遭黑客攻击,价值1800万美元比特币黄金被洗劫[OL].
[14]巴比特.区块链的不可更改性,是否意味着我们不需要保护区块链数据[OL].
[15]Castro M, Liskov B. Practical Byzantine fault tolerance and proactive recovery[J]. ACM Transactions on Computer Systems, 2002,(4):398-461.
[16][17][18][19]Yamato Y, Ogawa T, Moriya T, et al. Kademlia based routing on locator-ID separated networks for new generation networks[J]. Peer-to-Peer Networking and Applications, 2013,(3):294-304.
Research on the Educational Resources Sharing Framework based on Blockchain
LIU Feng-Yuan ZHAO Jian-Min[Corresponding Author]CHEN Hao XU Zhen-Guo
There were problems, such as the urgent need to protect the resource property, the unoptimistic quality of resources and the requirement to transform the construction way of resource banks, existing in the process of sharing domestic educational resources. In order to solve these problmens, the educational resources sharing framework was designed by using the network topology and the consensus verification technology of blockchain, which included resource storage layer, resource evaluation layer and resource interconnection layer. The design of educational resources sharing framework based on blockchain could guarantee the intellectual property of resource providers, improve the quality of educational resources, and expand the sharing scope of educational resources, so as to provide theoretical reference for the realization of educational resources sharing.
blockchain; educational resources sharing;resource propertyprotection;network topology; consensus verification technology
G40-057
A
1009—8097(2018)11—0114—07
10.3969/j.issn.1009-8097.2018.11.017
本文为2016年山东省本科高校教学改革研究项目“基于混合式教学模式的师范院校课程改革探索与实践”的阶段性研究成果。
刘丰源,在读硕士,研究方向为计算机教育应用,邮箱为491866176@qq.com。
2018年3月6日
编辑:小米