区块链技术在网络信任中的应用*
2019-01-23谭平嶂
李 丹,谭平嶂
(中国电子科技集团公司第30研究所,四川 成都 610041)
0 引 言
网络信任问题是信息安全的核心问题。信息共享、电子商务、网络办公等网络应用的日益广泛,对各种实体间建立信任的需求越来越迫切,需要通过建立网络信任体系来维护网络空间的社会秩序。近年来,针对网络信任体系的研究日益深入。围绕认证、授权、责任认定三大主体功能,网络信任的内容得到一定程度的丰富和完善,应用范围涉及党政、军队以及互联网的部分应用。随着网络和信息安全新技术、新规则的不断涌现,网络信任体系将融入更多先进的技术、理念和架构,满足不同环境和条件下构建灵活、稳固、可发展的网络信任系统的需要。
区块链技术是随着比特币的兴起而发展起来的一项新兴技术和协议体系,具备公开透明、安全可信、分布共享、去中心化、可定制和封装等特性,能够为构建无中心的网络认证系统和信任评估系统提供有力支撑。
1 网络信任体系的现状与不足
网络信任体系的定义有很多,但迄今为止还没有一个统一的定义。目前,比较认同的一种观点是:网络信任体系以密码技术为基础,包含网络实体身份管理、网络身份认证、网络授权管理、全网责任认定和网络信任服务等系列分体系的集合,能够解决网络空间中人、物、信息、软件等实体的身份鉴别、权限控制、行为审计、事件追查与责任认定等系列信任问题。
就网络身份认证而言,目前的认证体系和认证系统实现方式主要存在两方面问题。一方面,对认证方式多样化的支持不足。一个系统往往只能使用特定的认证方式,不具备认证方式的可扩展性,易用性和用户操作体验不佳。另一方面,目前认证系统大多具有中心化管理机构,主要起到各认证节点管理、系统内部工作调度等作用。这种方式的弊端是中心节点容易造成瓶颈,且中心节点容易遭到攻击,一旦瘫痪或连接不上,可能导致整个认证系统的认证服务功能不正常。因此,需要对现有的网络认证体系进行改良,使之适应现实网络应用需求和满足自身健壮性、可扩展性的要求。
在网络授权管理领域,传统的授权管理方式是基于用户的身份、属性以及权限范围来制定静态的访问控制规则,并建立用户与对应访问资源的一一映射关系。然而,由于网络环境的多变性和不确定性,需要补充一种相对的方法对安全信息进行度量和评估,确保用户访问资源的全程可信。特别是在访问重要涉密数据的情况下,这种基于信任评估的动态授权显得尤为需要。
2 区块链
狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合的一种链式数据结构,并以密码学方式保证不可篡改和不可伪造的分布式账本。广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生产和更新数据、利用密码学的方式保证数据传输和访问的安全、利用自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构和计算范式[1]。目前,对于区块链的研究主要集中在底层技术实现和应用普及方面。
在信任应用方面,区块链在金融服务行业的应用相对成熟。它利用已经被验证的有效信息构建可信协议,通过全网节点分布式透明化记账来确认有效信息,从而构建金融交易的基础[2]。目前,很多关于区块链能够解决网络信任问题的说法,其实是依赖区块链无需映射到真实物理社会的特性,仅通过历史信息验证便能达成网络虚拟实体之间进行交易的相互信赖,实则为网络信用的产生与发挥作用的过程。严格来说,区块链解决的是网络中的信用问题,而非真正意义上的网络信任。
3 区块链在网络身份认证中的应用
电子认证是目前比较典型和应用广泛的信任支撑机制,依托权威第三方机构为网络主体提供信任保障。然而,业务应用需求千差万别,安全防护等级要求各不相同,再加之生物特征识别、二维码识别、先验知识认证等新型的身份验证方式层出不穷,用户对于身份认证的易用性体验要求越来越高。仅采用基于PKI的电子认证应对网络环境中各个应用对实体的身份认证需求是不现实的,必须考虑支持多种不同机制的身份认证。采取的应对措施是通过认证功能服务化将各种认证系统提供的安全功能进行整合和集成,同时将安全认证系统的具体特性屏蔽。认证服务提供的认证功能可以根据下层挂接的认证系统进行切换,不同的认证服务之间能够进行协同认证[3]。关于协同认证一般的处理方式是构建一个中心节点,负责各认证服务节点的注册管理以及相互之间的服务调度。这种有中心的认证服务管理方式容易造成瓶颈和成为被攻击的对象,一旦各认证服务节点与中心节点连接不上,可能导致认证服务功能不正常。因此,引入区块链技术来解决有中心认证架构的弊端。
图1 基于区块链的统一认证服务体系
具体的设计思路:多个认证服务节分布于各地各域,各种不同机制的认证系统就近挂接在认证服务节点上,认证服务节点同时充当区块链的参与节点。当用户在某个认证服务节点完成身份认证时,该认证结果信息被认证服务节点记录于区块链中;当用户进行跨域访问时,首先在当前所在域的认证服务节点进行身份验证;若当前认证服务节点不支持该用户身份的认证,则向区块链查询该用户提供的认证方式和认证标识曾在何处认证服务节点完成过认证,并将认证请求转发至该认证服务节点进行协同认证;认证结束获得用户数字身份凭证并返回给请求发起者,完成整个认证过程。
4 区块链在网络信任评估中的应用
信任关系是可以被评估的,信任程度的高低可以用信任值来表示。信任值的大小随实体的信用、当前行为活动以及所处环境等因素的影响而进行动态变化,能够较好地反映出网络环境的多变性和不确定性。信用评价技术作为信任评估技术的重要组成之一,对实现网络实体的动态可信度量具有重要意义。信任评估的信息来源比较广泛,包括用户当前操作终端的安全防护程度、数据通信线路的保密等级、数据流转过程的安全防护措施、用户的历史信用和用户当前行为安全性分析等。其中,历史信用的产生与计算是一个相对独立的研究内容,是信任评估的重要组成之一。信用是与信任密切联系的一个概念。Abdul-Rehman对信用的定义是基于可看到的个体过去行为或者该行为的信息对该个体行为的一种期望。信用重点指的是对一个个体的可信赖度的综合,而信任强调的是一个个体对另一个个体也就是被信任方的主观信赖性。
区块链提供了去中心化的信用建立模式[4],是公认能够解决信用问题的技术手段,实现了社会活动及交易活动的信用证明。
信用度与网络实体历史操作合法性相关。选择影响范围广、服务稳定、口碑良好的业务应用加入区块链,要求这些业务应用对网络实体的操作进行评价,并记录到区块链中。信任评估系统能够从区块链获取网络实体的历史操作评价,按照预置的分析计算模型,经过运算得到实体当前的综合信用评价。信任评估系统将该综合信用评价作为计算信任评估值的一个因子,结合实体身份、当前状态等,综合得到网络实体的动态信任评估值。统一授权管理平台将动态信任评估值与访问控制规则结合,并进行综合评判得到动态鉴权结果。该动态鉴权结果提供给业务应用、应用访问控制网关和网络接入控制网关等安全控制类设备,实现对网络实体访问网络或应用的合理、安全的控制。
图2 基于信用评价的动态鉴权示意
5 结 语
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术在互联网时代的创新应用模式。研究区块链技术在网络信任方面的应用,并不是全盘接受其框架与协议,而是在构成网络信任的某些方面,区块链切实能够发挥其重要作用。因此,需要充分利用区块链去中心化、安全共享、低成本、可定制和封装的优点,改进完善现有网络信任运行规则,实现新的网络信任体系的建立,推动形成良好的网络空间社会秩序。