梁国泉
广西壮族自治区食品药品安全信息与监控中心
张国飞
广西壮族自治区食品药品安全信息与监控中心
黄星儒
广西壮族自治区食品药品安全信息与监控中心
莫欢倩
广西壮族自治区食品药品安全信息与监控中心
张明丽
广西壮族自治区药品监督管理局
为满足《疫苗管理法》要求,国家药监局制定了《疫苗标识体系标准》《疫苗追溯数据采集体系标准》等行业标准规范,并建设了国家疫苗追溯协同服务平台,为各级药品监管单位提供数据汇聚交换服务。
基于国家药监局的相关标准,各省(自治区、直辖市)药监局逐步建设了药品追溯监管系统,这些系统普遍采用了疫苗标识、环节数据采集、数据汇聚、数据分析预警、追溯查询等设计思路,提供了疫苗标识体系、疫苗追溯数据采集体系、疫苗追溯数据汇聚体系和疫苗追溯查询体系。药品追溯监管涉及多方数据来源,在数据采集和汇聚时存在接口格式不统一、接口数量繁多、数据采集效率低、数据格式不标准、数据清洗工作量大等问题,亟需引入新的技术手段,提升疫苗追溯数据采集的时效性和可信度,构建来源可查、去向可追、责任可究的综合立体式监控体系。
广西疫苗追溯监管系统引入区块链技术,以解决疫苗追溯数据采集中的时效性和可信度问题。首先,通过设计区块链疫苗追溯数据采集模型,采用联盟链架构,以收发货单拼接锁扣方式跟踪疫苗数据上链全过程,确保系统数据公开、透明,不被篡改。其次,基于微服务和区块链技术组建浏览器/服务器(B/S)架构,采用模块化设计,构建区块链疫苗追溯监管体系。最后,建设疫苗数据可信追溯汇集库、疫苗追溯协同监管系统、疫苗追溯智能分析系统和省级疫苗追溯数据交换节点,实现疫苗全程追溯监管、疫苗风险预警、疫苗库存管理、疫苗强制召回、疫苗统计分析等功能。
通过将区块链和大数据技术与疫苗追溯监管业务相结合,提升疫苗追溯数据采集的时效性和可信度,采集并监测疫苗生产、流通、存储、接种过程中追溯数据,实现疫苗全过程可追溯[1],全面提升疫苗监管能效。
1.1.1 加强疫苗追溯监管及预警功能
利用大数据分析建模技术,为疫苗质量风险、库存风险等风险环节构建不同的预警模型,建立监管逻辑设置预警规则,对疫苗流向数据、温湿度数据、质量数据等全面的预警监管。通过可视化地图的形式直观地展示自治区内近期各个区域的预警严重程度,查看温湿度预警列表、过效期库存预警列表、低库存短缺疫苗列表。
1.1.2 实现全自治区疫苗质量情况远程动态监管
通过与仓储、物流企业的数据对接,获取疫苗存储、运输过程中温湿度等质量监管数据,构建疫苗全链条质量追溯信息,实时监管全自治区疫苗生产、流通、存储、接种过程中疫苗质量信息,实现全自治区疫苗质量的远程动态监管。
1.1.3 建设六大疫苗追溯主题数据库
在疫苗数据汇聚基础上,设计并建设各类基础数据库和专业数据库,为各业务应用系统集成、数据交换和共享访问提供数据支撑,建成生产厂商、运输单位、接种单位、疫苗流通、疫苗批准文号、温湿度六大主题数据库,实现疫苗追溯数据的分类决策分析。
疫苗全生命周期追溯数据的采集和汇聚是实现疫苗全链条追溯监管,提升疫苗生产、流通、存储、接种过程中的安全性,达成确保公众健康安全的社会效益的关键环节。
传统的数据采集和交换方式由于要对接不同疫苗生产厂家、流通企业和接种单位的多种追溯数据和多个追溯系统,在数据采集和汇聚时存在接口格式不统一、接口数量繁多、数据采集效率低、数据格式不标准、数据清洗工作量大等问题,极大地影响了疫苗追溯监管系统的应用效果。
为提升数据汇聚效率,提升数据可信度,规范管理数据和接口,亟需采用新的数据交换和汇聚技术实现数据的可信规范采集和统一汇聚。区块链技术是一种分布式记账的可信的数据账本技术[2],通过各个数据源头的数据上链,可实现数据的可信采集与汇聚,可解决疫苗全链条追溯监管系统面临的数据汇聚难点。
通过为生产厂商、接种单位、受种者、疫苗建立唯一标识,构建区块链可信追溯体系。在疫苗生产、流通、存储、接种环节,利用可信的区块链节点,对上链的疫苗追溯信息进行确权,形成共识数据,构建完整、不可篡改的疫苗追溯时序数据,确保数据可信安全。
通过建设疫苗数据可信追溯汇集库、疫苗追溯协同监管系统、疫苗追溯智能分析系统和省级疫苗追溯数据交换节点,实现疫苗全程追溯监管、疫苗风险预警、疫苗库存管理、疫苗强制召回、疫苗统计分析等功能(图1)。
图1 广西疫苗追溯监管系统建设内容
全程追溯功能通过对疫苗生产到使用全过程数据的汇总关联,提供疫苗溯源全过程综合查询服务,支持按疫苗品种、批次、追溯码正向查询,按接种信息反向数据查询,实现来源可循、去向可知和状态可查的目的。
疫苗召回功能可及时召回发现的问题疫苗,通过国家疫苗追溯协同服务平台对接召回通知,并发送至疾控中心,由疾控中心业务系统通知各个接种点停止接种。省级发布召回通知下达到辖区内的生产企业和地级市的监管部门,并可查看召回疫苗的进度。
企业备案功能实现对于外地疫苗流入本自治区,生产企业可在线快速发起备案申请,监管部门可在线审核备案信息,审核通过的备案信息,生产企业可在线发起备案变更,无需线下流通申请。
风险预警功能对预警的数据进行配置管理,疫苗追溯监管系统根据配置的疫苗预警设置对疫苗进行预警监控,对已预警的疫苗信息进行查询,实现疫苗近效期、低库存、温湿度、过效期疫苗以及进口代理企业变更的预警。
日常监管功能对辖区内疫苗生产、配送、使用单位进行定期或不定期、综合性的日常性监督检查。对日常检查信息进行统计分析功能,可以灵活地按照所定义的统计条件进行综合统计分析。
统计分析功能支持按时间、品类、区域等不同维度疫苗的生产、配送、进口代理企业、使用等情况进行统计分析。利用大数据、智能分析技术对疫苗监管和追溯数据进行统计分析,支撑智慧监管应用。
公众查询功能支持公众通过药品监管部门的App、小程序、网站识别伪劣疫苗,通过对疫苗从生产到流通各个环节的信息采集,建立疫苗科学透明、人人可查的监管体系。
1.4.1 整体架构设计
基于微服务和区块链技术组建浏览器/服务器(B/S)架构,采用模块化设计,构建区块链疫苗追溯监管体系,系统整体架构如图2所示。
图2 基于区块链的疫苗追溯监管系统整体架构
疫苗追溯监管系统整体架构通过弹性架构与应用层扩展,对复杂的分布式应用具有良好的支撑作用,为疫苗追溯应用提供价值赋能。以区块链即服务(BaaS)形式使开发者专注于应用层业务逻辑的实现和部署,从而更好地以更具成本效益的方式快速开发和部署业务应用。
整体架构由下到上分别为区块链底层、核心层、接口层。在上层近业务端,部署了边缘服务器(ECS),可实现身份管理、数据建模、访问授权审计、应用数据块(DB)、隐私计算等功能。通过链增强能力基础设施,区块链底层通过跨链协议,可实现与异构区块链网络、链外业务系统的接入。上层隐私计算模块,通过隐私计算服务器 (PCS),可实现多方安全计算、零知识证明、同态加密、联邦学习等功能拓展。架构具有资产数字化建模、存证、身份、iService、多引擎智能合约平台等核心特性。
资产数字化建模为联盟链成员提供了将资产进行链上数字化建模的能力。通过该模块,每个链外资产将被在联盟链上进行具有唯一性的数字化建模,并使用身份标识号(ID) 进行身份认证[3],借助联盟链安全且不可篡改的特性,其所有权将得到明确。同时,链上数据对象在成员间的流转过程也将被公开地记录,以便于追溯以及争议处理。
存证用于将任何链外数据可信地映射在联盟链上,作为对原始数据的证明。其可信性是通过密码学算法与区块链的安全性来保证的。
身份模块构建了一个分布式身份(DID)体系,实现并扩展了 W3C DID 规范。身份的密码学材料包括公钥以及公钥证书。身份可以包含额外的凭证信息。
iService 旨在弥合区块链和传统应用之间的鸿沟。其规范化了链外服务的定义和绑定(提供者注册),便于调用和交互,并能调解服务治理过程(分析和争议解决)。主要功能有:服务定义、服务绑定、服务调用、服务响应。
多引擎智能合约平台模块提供了多引擎智能合约能力,完整兼容主流智能合约,允许数据库应用开发者快速开发业务合约以及平滑移植现有业务。
1.4.2 区块链疫苗追溯数据采集模型设计
运用区块链技术,采用联盟链架构[4],对上市许可持有人、国内疫苗生产企业、国外疫苗生产企业、进口代理企业、冷链运输药品企业与配送企业、疾控中心与接种单位各环节流转过程中产生的疫苗审批签发、生产、运输、储存等过程相关方数据全部“上链”,实现疫苗追溯全流程监管和可靠追溯。
疫苗数据上链全过程以收发货单拼接锁扣方式,跟踪记录每一个交易环节的信息,确保系统数据公开、透明,不被篡改。区块链中任一节点的企业单位可通过访问区块轻松完成疫苗追溯查询[5],也可依据自身的个性化需求,使用药品追溯码、生产批次号、疫苗档案编号等搜索条件,从区块链存储系统中查询[6]相关数据。
所有疫苗追溯区块链的参与方,根据联盟链管理的权限,管理和使用疫苗追溯数据[7]。政府药品监管部门负责监督与维护区块链上数据信息安全,链上的疫苗相关信息由国内疫苗生产企业、进口代理企业、冷链运输配送单位、疾控中心、接种单位、监督检查机关共同维护与更新。通过构建疫苗追溯统一公共链,为疫苗相关企业机构与疫苗接种者提供方便快捷、准确真实的疫苗信息查询服务。当某一环节出现问题时,可以精准定位和快速追溯,为疫苗监管提供便利,为公众健康提供保障。
如图3所示,疫苗追溯监管系统采用联盟链搭建区块链可信追溯基础平台[8],对接疫苗追溯数据相关参与方,为公众提供疫苗追溯信息查询服务。
图3 区块链疫苗追溯数据采集模型
联盟链有“准入机制”,并不是任意的个人或组织都能参与其中,数据只在联盟链内部公开、共享,可提升疫苗追溯数据安全性。该模型采用分布式账本(DLT)、数据防篡改、共识算法、准入机制技术构建区块链架构。区块链底层采用共识引擎、可信账本、密钥管理服务(KMS)。区块链核心层依托证书授权(CA)认证服务,进行身份权限管控,通过加密星际文件系统(IPFS)分布式存储对象存储(OSS)数据。区块链接口层通过资源转移(REST)、应用程序接口(API)、远程过程调用(RPC)、命令行界面(CLI)、软件开发工具包(SDK)与外部进行交互,并通过隐私计算保证疫苗追溯数据安全,达到疫苗追溯数据的“可用不可见”,实现疫苗数据的联合查询、联合统计和联合预测。
当前3 种主流分布式账本技术分别是Ethereum、Hyperledger Fabric、R3 Corda。Ethereum拥有全球级健壮的智能合约引擎,使其成为任何类型应用程序的通用平台,但Ethereum 以隐私性与可扩展性为代价换取无权限操作模式及其完全透明。模块化架构允许Fabric 针对多种应用进行定制。Fabric 通过允许的操作模式,特别是通过使用拜占庭容错(BFT)算法和细粒度访问控制来解决性能可伸缩性和隐私问题。Corda 被有意识地设计为高度监管环境的金融交易行业服务,简化了其架构设计的分布式账本技术。
此外,Ethereum 具有内置加密货币(Ether)。通过挖掘区块达成共识以及支付交易费用的节点支付奖励。Fabric 可以使用链码开发本机货币或数字令牌。Corda 聚焦监管金融无意创建数字货币或代币。
基于区块链与大数据的疫苗追溯方案设计的基础,采用分布式账本技术Hyperledger fabric技术[9],fabric 由账本、共识算法、App、节点、通道、成员服务器提供商、证书授权等组成。结合fabric 结构与疫苗配送储备的特点,设计疫苗追溯可行方案,区块链作为底层的数据接口和应用支撑,结合Spring Boot 与Spring Cloud 构建微服务。
使用HTML5、CSS3、JavaScript、Vue 前端技术与框架构建业务功能应用与可视化界面。利用区块链、大数据技术,采用Java、HTML5、CSS、JavaScript、Python 语言开发,基于分布式大数据平台构建疫苗追溯监管系统。该系统采用面向服务的架构(SOA)和微服务部署架构,基于Docker、Spring Cloud+Spring Boot 构建微服务。
基于区块链的疫苗追踪溯源系统架构分为:业务层、应用层、服务层和数据层。业务层是疫苗追踪溯源系统与国家疫苗追溯协同服务平台系统的数据交互结果、监督检查任务、追溯管理、冷链管理、备案管理、召回管理、紧急调配信息管理、智控预警、系统管理,体现疫苗各相关方对于疫苗管理的业务需求。应用层为区块链平台用户移动端和Web端。对于系统用户而言,用户只需要与应用层进行交互。应用层采用当前流行成熟的Vue 架构,用户友好型的界面设计和安全的组件封装,提高用户使用体验,使得用户在使用系统时流畅、简捷、学习成本低,并且安全。服务层主要以区块链为载体来实现,基于Spring Boot 与Spring Cloud 架构,使用Java 语言为主进行开发,包括通过身份认证节点提供的身份服务、基于区块链构造的算法共识和不可更改账本、节点间的交易信息有数字签名保证数据完整性。分布式部署Eureka 注册服务,nipvt-api 网关,base-service 认证用户服务,biz-service 主业务服务,dasservice 基础数据查询,stockservice 库存统计,dex-service接收数据服务,dps-service 解析疫苗数据,file-service 文件服务。数据层体现区块链网络的状态,存储在数据库当中。交易数据中的敏感数据采用加密算法的方式进行记录。
1.5.1 基于Spring Cloud+Spring Boot 构建微服务
微服务架构模式就是将整个系统应用服务组织为一系列独立的子应用服务。这些子应用服务可以独立地编译及部署,并通过各自暴露的API 接口相互通讯。彼此相互协作,作为一个整体为用户提供功能,却可以独立地进行扩展。项目开发采用Spring Cloud 微服务架构。Spring Cloud 是微服务架构集大成者,是云计算最佳业务实践,Spring Cloud 为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如,配置管理、服务发现、断路器、智能路由、微代理、控制总线)。分布式系统的协调导致了样板模式,使用Spring Cloud 开发人员可以快速地支持实现这些模式的服务和应用程序。Spring Boot 可以帮助开发者更容易地创建基于Spring 的应用程序和服务。
1.5.2 基于SOA 架构搭建系统集成环境和应用支撑平台
SOA 是一个组件模型,其将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。
SOA 服务总线是一种体系结构模式,支持虚拟化通信参与方之间的服务交互并对其进行管理。它为提供者和请求者之间的连接提供服务,即使并非完全匹配,也能够使其进行交互。此模式可以使用各种中间件技术和编程模型实现。另外,连接到SOA 服务总线是集成部署决策,应用程序源代码不会受到影响。
搭建一个以可信的消息管控为核心,以SOA 架构为基础的应用支撑平台。可信的消息管控,旨在构建一个统一应用服务基础架构和安全管理基础架构,将电子政务网络基础设施、政务信息资源目录服务与数据交换、应用服务与信息安全基础设施和SOA应用支撑平台有组织、按统一标准、有序地连接在一起,是应用服务的可信枢纽,并以安全互联互通、安全信息共享和安全运行业务应用的可信消息管控总线方式提供应用服务的调用。
1.5.3 利用区块链技术构建数据采集汇聚体系
狭义区块链技术是按照时间顺序,将数据区块以顺序相连的方式组合成的链式数据结构,并以密码学方式保证不可篡改和不可伪造的分布式账本。广义区块链技术是利用块链式数据结构验证与存储数据,利用分布式节点共识算法生成和更新数据,利用密码学方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约,编程和操作数据的全新的分布式基础架构与计算范式。
一般说来,区块链系统由数据层、网络层、共识层、激励层、合约层和应用层组成。其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等基础数据和基本算法;网络层则包括分布式组网机制、数据传播机制和数据验证机制等;共识层主要封装网络节点的各类共识算法;激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础;应用层则封装了区块链的各种应用场景和案例。区块链疫苗追溯数据采集模型中,基于时间戳的链式区块结构、分布式节点的共识机制、共识算力的经济激励和灵活可编程的智能合约是区块链技术最具代表性的创新点。
1.5.4 利用大数据分析建模技术,构建分析预警体系
采用高版本大数据技术架构(如Hadoop3.0/Spark2.0 以上版本的),利用分布式数据库系统实现大数据系统建设,利用如Spark SQL/Spark Streaming/Python 等实现数据定时和实时统计分析计算,利用如Spark MLlib机器学习库实现监测信息的聚类、分类、回归、关联分析等数据挖掘功能。疫苗追踪溯源系统部署为Hadoop/Spark 集群模式,统一管理计算资源,调度各类统计报表和数据挖掘计算分析任务。
广西疫苗追溯监管系统投入应用,有效地降低了疫苗追溯采集的数据交换成本,提升了追溯数据的采集效率,提高了追溯数据的可信度,有效保障了公众疫苗使用安全,减少了疫苗质量安全问题,也为其他相关单位建设疫苗追溯或药品追溯系统提供了参考案例。该系统应用效果主要体现在以下方面。
区块链在线数据采集和汇聚,统一了监管部门和不同企业信息系统间的数据对接接口标准,降低了监管部门和企业的接口开发和维护成本,实现了数据在区块链各方间的真实准确查询,为监管部门和企业提供了方便,将监管部门和企业跑腿变为数据跑腿,提升了信息采集效率,节省管理所需的信息采集成本。
通过建设监管人员移动执法系统,打通疫苗追溯数据与一线监管人员之间的通道,将疫苗追溯相关数据从自治区下沉到乡镇,为一线监管人员提供便捷查询相关企业疫苗追溯信息功能,构建自治区、市、县、乡镇的四级疫苗监管体系,支撑一线监管人员及时处置疫苗监管相关问题。
通过对疫苗追溯海量数据的汇聚、交换、整合和分析,建立疫苗质量安全控制机制,提高安全监管预测预警能力和应急响应能力。利用全样本分析及预测思维技术,实现对疫苗追溯信息的精确分析和预测,提升疫苗监管信息预警系统的预警灵敏度和信息精准程度。
疫苗监管涉及疫苗生产、流通、销售等全产业链,监管对象多,行业状况复杂,监管任务与基层监管人员配备数量不匹配,利用大数据新理念、新技术、新模式,对海量的业务数据进行深入挖掘和分析,发现其中的规律和问题,为科学决策提供依据,提高监管执法的科学性。
建设疫苗追溯查询平台,展示疫苗相关知识,公众可以通过在线查找、在线学习等方式了解疫苗安全基础知识,增强个人疫苗安全常识。同时,公众也可查询疫苗追溯全程的生产、质量等信息,为公众提供透明、高效的疫苗知识。
通过建设广西疫苗追溯监管系统,制定了广西疫苗追溯监管的区块链采集标准规范,实现了疫苗追溯数据的可信规范采集和统一汇聚,提升了疫苗追溯数据汇聚效率和数据可信度。
区块链技术在本项目中显示是一种可信的数据账本技术,通过各个数据源头的数据上链,可实现数据的可信采集与汇聚,可解决疫苗全链条追溯监管系统现面临的数据汇聚难点。
在本项目推广实施过程中,通过为生产厂商、接种单位、受种者、疫苗建立唯一标识,构建区块链可信追溯体系。在疫苗生产、流通、存储、接种环节,利用可信的区块链节点,对上链的疫苗追溯信息进行确权,形成共识数据,构建完整、不可篡改的疫苗追溯顺序数据,确保疫苗追溯数据可信安全。