基于区块链的P2P 虚拟图书馆构建研究
2021-08-16肖相金
肖相金 伍 伟
一、引言
在当今世界,随着科学技术的飞速发展,信息的采集与存储、传播与生产的速度与规模都达到前人无法想象的境界与水平,“知识以过去无法想象的速度被生产、处理和广泛分配”[1]。图书馆作为知识收集、储存和传播的中心,面临着前所未有的挑战。作为知识的载体,无论是图书、期刊、报纸等传统媒体,还是图片、声音、视频等多媒体新型数据,其数量呈逐年爆发式增长,给资源的订购、配送、存储、检索、更新等带来了巨大的挑战。
自1996 年第62 届国际图联(IFLA)大会正式提出数字图书馆概念,术语虚拟图书馆通常与数字图书馆互换使用[2],虚拟图书馆一般指数字图书馆。数字图书馆是以数字资源为对象的在线数据库,包括文本、图像、音频、视频或其他数字媒体格式[3]。除了数字资源的存储外,数字图书馆还具备了信息组织、检索以及全文获取等功能。数字内容可以本地存储和访问,也可以通过计算机网络远程访问。传统的数字图书馆通常采用集中式拓扑结构或半分布式拓扑结构。集中式拓扑结构是以提供数字图书馆服务的组织为中心节点,用户终端通过网络与中心节点连接,用户端发出请求,信息处理都由中心节点完成,如图1 所示(见下页)。而半分布式拓扑结构是选择性能较好的节点作为超级节点,各个超级节点上存储了系统中其他部分节点的信息[4],超级节点之间运用发现算法进行请求转发,将终端请求转发给合适的节点进行处理,如图2 所示。
图1 集中式拓扑结构示意图
图2 半分布式拓扑结构示意图
经过二十余年的发展,数字图书馆建设取得了一定的成效,但仍然面临着不少问题与挑战,如用户的访问认证、版权保护、接口设计、系统间的兼容性、信息组织的有效性、硬件设备冗余的高昂成本等。数字图书馆建设过程中,由于相关法律法规不完善,缺乏统一建设规范和标准,各建设单位之间难以找到彼此认同的平衡点,数字图书馆建设存在“各自为政”的现象,缺乏统一规划与协调系统上存在较大差异,各系统之间相互兼容性差,导致大量的财力、人力、物力等资源浪费在低水平的重复建设上。随着信息技术、网络技术的快速发展,数字化文献资源的传播、复制、盗版等变得更加容易,数字化资源的版权保护问题比纸质文献资源显得更加复杂。根据《著作权法》的相关规定,作品须取得著作权人授权后才可上传,在数字图书馆建设过程中,由于文献资源量巨大,逐一取得著作权人的授权异常困难。而在作品被下载后,后续的使用无法精确跟踪和掌握,容易造成难以溯源的侵权行为。
P2P 虚拟图书馆为解决这些问题提供了一种潜在的新途径,即基于互联网、搜索引擎、云计算甚至人工智能的最新发展,在不同的层次上建立大量的P2P 虚拟图书馆,将各种在线资源从更大的空间整合起来,作为传统图书馆的有益补充。未来的图书馆应该为知识和信息的创造者、传播者和获取者提供一个共享和共建的平台,在更大的时间和空间范围内具有更大的开放性、便利性和互动性。为了满足上述要求,本文提出了基于区块链技术的P2P 虚拟图书馆(PVLB),这是一个可行的、开放的虚拟图书馆框架。
二、技术分析
传统图书馆已无法很好地满足日益增长的读者需求,本文提出的基于区块链的P2P 虚拟图书馆是具有一定颠覆性的,能够克服现有图书馆的缺点与不足。构建具有可行版权保护机制、方便阅读、方便分散分发和传输、覆盖更大时空范围、面向更多终端用户的虚拟图书馆开放框架,需要一些关键技术作为实现依据。本文构建PVLB 的关键技术主要有P2P 网络技术、DHT 存储搜索技术以及区块链技术。
1.P2P 网络。P2P 网络即对等网络(Peer-to-Peer Networking),客户机既与服务器连接,每个节点作为一个对等节点也相互连接,各节点通过P2P 网络共享自身拥有的一部分硬件资源(如处理能力、存储能力等),这些共享资源通过网络为其他节点提供内容和服务,而无须经过中心节点处理[5]。通过算法分析,将应用程序的计算、传输和存储等功能压力分散至整个网络中,让P2P 网络中的每个节点既是生产者,又是传输者和消费者,极大提升网络运行效率[6]。当前,许多网络应用采用了 P2P 架构,如 Napster、QQ、Skype、BitTorrent、PPLive 等,取得了很大的成功。
从技术角度上分析,P2P 适合构建虚拟图书馆,但由于资源特性、版权保护、分析机制以及用户习惯等方面存在的复杂性,需要与DHT 搜索和区块链等技术相结合应用。
2.DHT 存储与搜索技术。解决好P2P 网络中的搜索问题,是有效应用P2P 网络的前提,这已成为现代P2P技术研究的一个重要方向。P2P 搜索是在合理的网络开销、计算性能开销和可接受的等待时间等成本的基础上,从P2P 网络中检索出满足用户需求的信息资源[7]。从索引存储位置分析,P2P 搜索方法分为集中式和分布式两类,分布式搜索协议又可再分为无结构、有结构和半结构三种[8]。P2P 虚拟图书馆的用户对检索结果的准确性和完备性有一定的要求,需要有结构协议来保证搜索完备性和准确性,基于分布式哈希表(DHT)结构搜索协议可有效地实现P2P 的搜索功能[9]。
分布式哈希表(Distributed Hash Table)是一种广泛使用的分布式存储方法[10]。DHT 存储网络中无须服务器提供服务,所有终端节点均以对等身份存在,存储一定的资源,并记录一定范围内节点的路由信息,实现DHT 网络的寻址和存储[11]。DHT 的每一个终端是一个节点,由于节点均记录着一定范围内的路由信息,因此新加入的终端只和DHT 网络中的任一节点相连接,就可以通过相应的路由信息快速地连接到其他节点中。DHT 为像P2P 这样的分布式网络系统提供了一种快速可行的搜索服务。通过将(键,值)存储在分布于世界各地计算机上的DHT 中,任何参与节点都可以有效地检索出给定密钥相关的值,键是映射到特定值的唯一标识符,而这些标识符又可以是从地址到文档到任意数据的任何内容[12]。简单地说,DHT 技术使用的网络中任何一台设备都具有服务器的部分功能,从而终端用户的搜索下载不再依靠中心节点服务器[13]。
DHT 具有以下特征:自治与分权:节点相互之间形成系统,不需要中心节点协调。容错:即使其中有节点离开或连接失败,系统也是可靠的。可伸缩性强:节点可自由加入,即使节点数量为数千个或数百万个,系统也可有效运行。低成本:任何一个节点仅需要与系统中的其他少数几个节点进行协调,因此节点的改变只需要对少数几个节点进行调整即可,大大降低建设和维护成本。
DHT 以上技术特征非常适合构建P2P 虚拟图书馆,能够有效解决该模式的搜索、下载等问题。当然,P2P 虚拟图书馆与一般的文件共享和搜索不同,而是一个更高层次的、更复杂的、更加规范的信息资源共享和共建联盟,需要建立一种基于DHT 的文献资源检索机制,为P2P 虚拟图书馆提供规范高效的支持与服务。
3.区块链。构建P2P 模式的虚拟图书馆给文献资源服务方式和服务效率带来重大变革,但同样无法绕开数字资源使用中存在的版权问题,尤其是P2P 模式的资源传播方式对数字资源版权管理能力提出了更高的要求。原创作品被侵权和使用未授权的数字资源是两种常见的版权侵权行为,当前主要通过《著作权法》和传统的数字资源版权管理进行保护,实现的途径主要是限定资源的使用范围和权限,如此难以避免版权侵权行为的发生,且在侵权行为发生后,著作权人也难以举证和维权[14]。
区块链具有去中心化、不可篡改、可追溯等基本特性[15],为解决P2P 虚拟图书馆数字版权问题提供了新的方案。区块链的概念由日裔美国人申本聪于2008 年首次提出[16],在随后几年区块链成为比特币的核心组成部分,也逐步在金融、物联网、物流、公共服务等领域得到广泛应用[17]。区块链的核心技术包括分布式账本、非对称加密、共识机制以及智能合约等[18],应用这些技术构建基于区块链的数字版权保护和管理系统,对于数字资源的版权信息进行追踪,权利人对自己作品的版权具有更强大的控制权。利用区块链不可篡改和可追踪的记录信息,在侵权行为发生后可快速地定位侵权主体,并利用带有时间戳信息的P2P 分布式数据库记录数字资源的版权链信息,可有效降低数字资源被侵权风险。2017 年9 月,国内首家区块链主题图书馆深圳“前海区块链图书馆”揭牌成立,标志着区块链技术正式运用于图书馆领域[19]。
三、建设框架
基于区块链技术的P2P 虚拟图书馆(PVLB)由分布在世界各地的终端节点构成,这些终端节点的拥有者可以是个人,也可以是组织(如图书馆、企业、社会团体等),终端节点设备能够连接到PVLB 的P2P 网络中。每个节点拥有一定数量的数字资源,可用于外借、租赁,也可仅仅用于P2P 中继转发,以加速传输过程。PVLB 具有以下特征。
完全虚拟:PVLB 没有固定或规定的实物场所,也没有特有的图书管理员,其资源是分布存储在各个终端节点的所有非重叠资源副本的总和。
完全开放:任何人或组织均可自由地加入或退出PVLB,不需要经过所谓中心节点或管理员的许可。
严格版权保护:除了快速、方便的资源共享外,PVLB 是将以区块链技术为基础的严格版权保护作为前提的。
角色重定义:PVLB 重新定义了图书馆、作者、出版者和读者的角色,角色边界正在消失。任何节点都是不同角色的组合,在某些场景下某节点可能是作者,为其他节点提供资源服务,同时它也可能是其他资源的读者,从其他节点借阅或购买资源,也有可能仅仅是网络中资源转发者,提升资源的传输效率。
功能丰富:PVLB 除具备图书借阅功能外,还支持图书出版、预览、出租、买卖、转让等功能,任何节点均可以借助PVLB 完成相应的资源服务。
基于P2P 网络,每个节点都拥有支持上述特性的软件系统,并加入其中,整个PVLB 的层次结构可分为用户层、版权保护层和P2P 网络层,如图3 所示(见下页)。
图3 PVLB 框架结构示意图
1.用户层。用户层包括用户界面、用户角色、数字资源以及用户操作等部分,提供用户登录、系统设置和管理、检索、阅读、交易等功能界面,还可及时显示PVLB实时状态,如连接速度、连接节点数量等。数字资源包括图书、论文、图片、音视频等可在P2P 网络中传输、使用的资源。为了版权保护,每条资源记录除了本身内容,还包含版权信息(版权所有者、保护期限、权利范围等)、费率信息(如免费、租金、售价等)、交易记录列表等。此外,还包含了用于版权保护的加密信息,除资源基本信息外,详细内容需要经权利人授权才可进行使用。
用户进入PVLB 系统后,能承担着四个不同的角色,分别为作者、出版者、读者和传递者。作者为资源的创造者,对产品拥有著作权,决定着资源的使用和推广方式;出版者协助作者进行资源推广,也可以向作者购买著作权,并独立推广授权资源;读者是PVLB 的主要服务对象,根据自身需求借阅、购买相应资源,但未经权利人授权,不得复制、传播、转让资源给其他人;而传递者在P2P 网络中起着传输中继的作用,将自身存储的资源传递给其他获得授权的用户,可以大大提升资源传输效率。
PVLB 除了为用户提供传统数字图书馆拥有的阅读、资源检索等基本功能外,还提供资源发布、在线交易以及中继传输等操作。阅读是PVLB 的最基本功能,可以是在线的,也可以是离线的,但与传统数字图书馆不同之处是,阅读必须是获得了相应授权;检索功能则与传统检索功能没有太大区别,用户可以根据自身需求,在P2P 网络上根据标题、作者、关键词、主题等进行检索。此外,角色为作者或出版者的用户可通过P2P 网络在PVLB 上发布资源,并为其他用户提供服务。
2. 版权保护层。每个资源条目中都拥有一个区块链,记录着不断增长的交易记录,每个块包含前一个块的密码序列作为时间戳,使得交易数据是不可篡改的。同时,每个块由用户节点集群管理,采用分布式存储,使用共享的不可篡改的分布式账本。区块链中信息对所有节点用户都是开放的、透明的,每个参与者都对自己的行为负责。
基于区块链的数字版权管理提供了一种不可篡改的去中心化互信机制,PVLB 网络中的所有节点在分布式账本模式下具有平等的地位,形成集体参与、高度透明、有安全保障的共识机制[20]。通过共识机制,区块链记录着数字作品的生产过程,网络中的其他节点共同承担数据的验证、传输,并全程跟踪监督版权的流转过程,从而实现数字版权管理。
3.P2P 网络层。P2P 网络层包括P2P 网络接入、检索和传输。当新节点首次加入PVLB 时,将获得一个唯一的ID,并要求完善一些节点基本信息,如姓名、认证信息、地址等。当用户在PVLB 上发布资源时,每条新的资源也被赋予一个唯一的ID,同样也被要求完善资源基本信息和内容,如使用方式(免费、收费)、费用、权利范围等。这些信息都是通过DHT 进行计算和分布式存储的。
如其他一些基于P2P 文件共享协议的软件系统一样,PVLB 中每条资源链接被记录到多个对等节点中,用户根据自身需求在网络中进行资源检索,PVLB 将返回较近节点的资源链接,在完成资源授权后,用户可以启动多个线程从多个节点中下载相应资源,从而提升资源获取效率。
目前,各领域研究人员已经从P2P 网络分类模型、检索机制、通信方式等多个不同的角度进行了深入研究[21],P2P 技术也广泛应用于各领域。P2P 网络具有可扩展性好、健壮性好、性价比高等优势[22],为文献资源服务提供了一个高效率、低成本的选择。同时,随着区块链技术的逐步成熟,区块链的研究和应用也已逐步覆盖了教育、供应链、消防安全、媒体文化、电力系统、智慧城市、公共管理、医疗服务等各个行业[14]。区块链的点对点技术、智能合约、共识机制以及时间戳技术等,则为数字资源版权保护提供强有力的技术支持,为构建和谐的版权生态环境提供了新方向。
本文提出的基于区块链技术的P2P 虚拟图书馆设计框架有一定的现实意义,能为今后图书馆资源模式研究提供参考。区块链技术和P2P 技术应用于图书馆建设中,能为将来不同领域的协作奠定一个良好的基础。
本文仅是从理论上进行了分析探讨,从而提出了基于区块链技术的P2P 虚拟图书馆实现框架方案,对于具体如何实现、软件系统的总体设计及具体实施措施尚未进行深入研究,这也将是今后的研究方向。