• 工作总结
  • 工作计划
  • 心得体会
  • 领导讲话
  • 发言稿
  • 演讲稿
  • 述职报告
  • 入党申请
  • 党建材料
  • 党课下载
  • 脱贫攻坚
  • 对照材料
  • 主题教育
  • 事迹材料
  • 谈话记录
  • 扫黑除恶
  • 实施方案
  • 自查整改
  • 调查报告
  • 公文范文
  • 思想汇报
  • 当前位置: 雅意学习网 > 文档大全 > 公文范文 > 正文

    基于区块链的量子密钥全生命周期管理

    时间:2023-06-24 22:50:03 来源:雅意学习网 本文已影响 雅意学习网手机站

    林雨生,昌 燕,陈天肃,喻世鹏,张仕斌

    1.成都信息工程大学网络空间安全学院,四川 成都 610225

    2.先进密码技术与系统安全四川省重点实验室,四川 成都 610225

    随着信息化技术的发展,计算机网络成为信息传输的主要载体。由于传统计算机网络保密通信的一切安全寓于密钥中,因此有必要对传统通信系统中密钥的安全性进行研究。目前,关于密钥安全性的研究主要分为以下两类:1)密钥的安全生成与分发;
    2)密钥使用过程的安全管理。相应地,传统通信系统中密钥的安全性也主要存在以下两个问题:1)密钥生成与分发过程的安全性面对挑战。在传统通信模型中,公钥体系承担着保护通信密钥与验证通信用户身份的任务,但随着计算能力的提升与新型计算方法的提出,公钥体系的安全性受到挑战,通信密钥泄露的可能性随着时间的增加而变大。2)在密钥使用过程中的安全管理存在隐患。在传统通信系统中,密钥的使用记录与安全事件的追溯追责都是由通信系统管理员完成的,存在记录易于篡改和删除的问题,故对安全事件进行追溯追责时无法保证可信性。

    量子通信和区块链技术的发展为传统通信系统中存在的密钥安全问题提供了解决思路。量子通信是指将通信内容以光子为载体,通过量子密钥分发(quantum key distribution,QKD)网络中的量子信道传输信息。文献[1-3]阐述了量子密钥传输过程中的无条件安全性由量子力学特性来保证;
    而文献[4-5]正是利用量子通信技术解决了传统通信系统中密钥传输的安全性问题;
    文献[6]认为量子通信技术在保密通信中应用广泛;
    文献[7]将量子信道管理机制应用在大规模通信之中,实现了多节点的路由功能。在量子密钥的管理方面,文献[8]根据量子密钥管理业务性能仿真的结果,提供了量子密钥管理在通信中的应用情况;
    文献[9]利用基于量子密钥虚拟专用网络(virtual private network,VPN)的量子密钥分发技术,实现了量子密钥在VPN 网络中的传输。在量子密钥的应用研究方面,文献[10]设计了融合量子密钥的文件加密系统,将量子密钥结合一次一密的思想来保护系统的安全性;
    文献[11]将量子密钥应用于移动办公以保护办公的安全性;
    文献[12]提出了基于量子通信技术的区块链网络匿名投票选举协议,保证了投票结果在传输时的安全性。以上研究虽然有效解决了密钥在分发、协商阶段的安全性问题,但是并没有妥善解决量子密钥使用过程中存在的管理问题。此外,量子密钥分发网络的物理特性虽然保证了密钥的安全生成与分发,但在实现一次一密通信时存在量子密钥生成率较低的问题。在通信系统中传输的数据量越来越大的情况下,该问题还没有完善的解决方案。

    区块链是一种具有去中心化、分布式计算、不可篡改等特点的技术,可用来解决传统通信中密钥管理存在的信任问题,因此与量子通信技术一样在保密通信中得到了广泛应用。文献[13]用区块链实现去中心化的身份认证及密钥管理方案,为物联网应用场景下的身份认证以及密钥管理提供了可行的解决方案;
    文献[14]提出了基于区块链的医疗数据管理模型,利用区块链记录数据并进行安全事件的追溯。文献[15-16]使用区块链解决物联网中密钥分发困难的问题,并引入量子随机数来保证密钥的安全性,实现了不同物联网底层传感设备间的安全通信。以上研究借助区块链的特性完成对业务数据的可信记录与追溯,但存在以下问题:1)密钥在传输过程中存在被窃取的可能性;
    2)现有的管理方案是基于公有链实现的,故开销较大,不能实时更新;
    3)公有链的隐私保障与监管控制存在隐患,因此其数据的隐私性不如私有链与联盟链;
    4)基于区块链的密钥管理研究大部分关注于密钥生成及分发阶段的管理与记录,而没有对密钥的全生命周期进行管理。

    针对以上研究存在的问题,本文提出一种基于区块链的量子密钥全生命周期管理方案。首先,量子设备通过量子密钥分发网络生成量子协商密钥池;
    然后,通信参与者向量子设备管理员请求量子密钥,结合安全随机数产生会话密钥用于通信,同时将量子密钥全生命周期管理过程中的日志信息上传至区块链;
    最后,区块链管理员通过查询链中的信息完成对量子密钥全生命周期的管理与追溯。本方案使用量子密钥分发技术实现量子密钥的安全生成与分发,结合区块链技术解决了量子密钥在使用过程中无法有效管理的问题,并且以联盟链替代公有链进行管理,克服了现有的区块链管理量子密钥方案的缺点。

    基于区块链的量子密钥全生命周期管理方案包含两部分:1)保密通信模型。有保密通信需求的两方机构用户利用量子密钥的真随机性与安全性进行保密通信。量子密钥在通信过程中经历了生成、分发、存储、备份、使用、销毁、更新的全生命周期,而各个节点用户则将通信过程中的量子密钥操作日志信息上链。2)区块链管理员对量子密钥全生命周期的管理模型。区块链接收到各个节点用户上传的量子密钥操作日志信息后,由区块链管理员对各个节点产生的量子密钥操作日志信息进行管理。整体方案模型如图1所示。

    图1 整体方案模型示意图Figure 1 Schematic diagram of overall model

    1.1 基于区块链的量子密钥管理的通信模型

    基于区块链的量子密钥管理的通信模型主要包括用户身份模块、量子密钥初始化模块、量子密钥请求分发模块、量子密钥加密通信模块、量子密钥更新销毁模块。

    1.1.1 用户身份模块

    有保密需求的两方机构用户进行通信前,需要在通信系统和区块链中获取身份并认证。

    1)用户注册信息包含用户名、密码、所属机构ID 等。用户完成注册操作后,先由中心服务器将该用户信息发送到区块链,再由区块链管理员根据当前用户信息生成该用户在区块链中的成员服务提供者(membership service provider,MSP)身份信息,并将MSP 信息返回给中心服务器进行用户名与MSP 信息的绑定操作。在此过程中,用户虽然获取了在通信系统和区块链的身份,但还未在通信系统中进行身份认证。注册绑定区块链MSP 过程如图2所示。

    图2 注册绑定区块链身份模块示意图Figure 2 Schematic diagram of registration and binding blockchain identity module

    2)用户CA 证书请求用户完成注册操作,虽然可以保证自己在上传量子密钥操作日志文件到区块链时身份的合法性,但还不能保证在通信系统中身份的合法性。因此,用户登录后还应向CA 证书服务器请求证书,并用公钥基础设施(public key infrastructure,PKI)体系保障通信时两方机构用户身份的合法性。证书发放模块如图3所示。

    图3 CA 证书发放模块示意图Figure 3 Schematic diagram of CA certificate issuance module

    1.1.2 量子密钥初始化模块

    两方机构通过量子密钥分发设备产生真随机的对称量子协商密钥池,并分别存储在两方量子设备的管理员处,随后两方量子设备管理员通过协商量子密钥编号规则生成量子密钥文件,完成量子密钥的初始化操作。量子密钥初始化过程如图4所示。

    图4 量子密钥初始化示意图Figure 4 Schematic diagram of quantum key initialization

    1.1.3 量子密钥请求分发模块

    两方机构用户进行保密通信前,需要向用户所在机构的量子设备管理员申请量子密钥。当用户提交量子密钥的请求操作到中心服务器时,中心服务器首先根据用户注册时选择的机构ID 寻找该用户的量子设备管理员,然后由量子设备管理员进行分发量子密钥操作。分发时,量子设备管理员使用用户CA 证书中的公钥将量子密钥ID(由两方量子设备管理员协商的量子密钥编号规则)、量子密钥有效期以及该ID 对应的量子密钥进行加密传输。用户接收到量子设备管理员发送的数据包时,先以自身私钥进行解密获取内容,再将量子密钥、量子密钥ID、量子密钥有效期保存到本地量子密钥文件中。量子密钥分发过程如图5所示。

    图5 量子密钥分发示意图Figure 5 Schematic diagram of quantum key distribution

    1.1.4 量子密钥加密通信模块

    一方用户A登录通信系统并获取量子密钥以及量子密钥ID 后,可以选择另一机构成员B进行保密通信。为了实现一次一密并减少量子密钥的消耗,在每次通信时不是直接以量子密钥作为会话密钥,而是用量子密钥加密每次通信产生的随机数R形成会话密钥。当量子密钥超过量子设备管理员设定的有效期后,用户再次向量子设备管理员申请量子密钥,其加密通信过程如图6所示。

    图6 量子密钥加密通信示意图Figure 6 Schematic diagram of quantum key encryption communication

    1.1.5 量子密钥更新销毁模块

    当用户申请的量子密钥到期后,该用户的量子设备管理员发送量子密钥销毁指令给用户,同时自动删除本地量子密钥文件中该量子密钥的相关信息。用户接收到量子密钥销毁指令后,自动删除本地量子密钥文件中对应的失效量子密钥信息,再次向量子设备管理员请求量子密钥用于保密通信。

    1.2 基于区块链的量子密钥全生命周期管理与溯源方案

    量子密钥的全生命周期可以通过量子密钥在通信过程中经历的各种状态来描述,这些状态是两方机构成员在进行保密通信时对量子密钥的操作。基于区块链的量子密钥全生命周期管理是对各个用户节点上传的量子密钥操作日志文件的管理,因此在保密通信过程中,若涉及到对量子密钥的操作都会以日志文件的形式保存到本地。对量子密钥操作完成后,操作者使用在区块链中的MSP 身份实时将量子密钥操作日志文件上传到区块链。区块链管理员接收到用户上传的量子密钥操作日志文件后,利用智能合约将用户上传的信息加密存储在区块链上,并将区块链网络中的历史信息形成分布式账本,存储并维护在所有网络节点中实现去中心化管理,使量子密钥的管理过程对每个用户节点透明可信。其中,区块链管理过程如图7所示。

    图7 区块链管理过程Figure 7 Blockchain management process

    本方案中上传的日志文件由1.1 节中的通信模型动态产生。以管理员生成量子密钥文件时产生记录的日志文件为例,将产生该日志文件的伪代码表示如下:

    JsonData jsonData=new jsonData()

    Mapmap=jsonData.getMap()

    map.put("index",index)

    map.put("rule","k1++")

    map.put("status","Create")

    map.put("summary",summary)

    map.put("createDate",createDate)

    map.put("username",user.getUsername())

    map.put("targetname",targetname)

    管理员生成量子密钥产生的日志文件之后,使用Google 远程过程调用(Google remote procedure call,GRPC)访问区块链的上传日志文件方法,并在上传时用管理员MSP 信息进行验证。管理员上传至区块链进行上链操作的伪代码和区块链管理上传日志文件的伪代码如下:

    grpcClient.request(user.getMspId(),"Org"+user.getGroupId(),json,"CREATE",null);

    func (*SmartContract) createInfo(APIstub shim.ChaincodeStubInterface,args []string)sc.Response{}

    在保密通信模型中,量子密钥操作者在不同量子密钥阶段产生的日志文件以及将其上链管理的方式与此处一致,故不再赘述。下面介绍量子密钥全生命周期中各个阶段产生的日志信息需要包含的字段信息。

    1.2.1 量子密钥初始化日志信息

    在两方机构成员进行保密通信前,两方量子设备管理员通过协商量子密钥编号规则生成量子密钥文件,完成量子密钥的初始化操作。此过程产生的量子密钥操作日志信息通过区块链接口上传到区块链,由区块链管理员进行管理。其中,上传的量子密钥操作日志信息如表1所示。

    表1 管理员初始化的量子密钥日志表Table 1 Quantum key log table initialized by administrators

    1.2.2 量子密钥分发、存储日志信息

    当量子设备管理员接收到本机构成员的量子密钥请求操作时,依次将初始化密钥文件中的量子密钥以及对应的ID 发放给提出请求的成员。量子设备管理员完成量子密钥的分发操作后,需要记录和上传到区块链中的量子密钥操作日志信息如表2和3 所示。

    表2 管理员分发的量子密钥日志表Table 2 Quantum key log table distributed by administrators

    表3 用户接收的量子密钥日志表Table 3 Quantum key log table received by users

    1.2.3 量子密钥使用日志信息

    保密通信发起方用户接收到量子密钥后,在使用量子密钥进行通信时需要将量子密钥操作的日志信息记录并上传到区块链;
    保密通信接收方用户在使用量子密钥对消息内容进行解密时也需要将量子密钥操作的日志信息记录并上传到区块链。日志信息包含内容如表4所示。

    表4 用户使用的量子密钥日志表Table 4 Quantum key log table used by users

    1.2.4 量子密钥销毁更新日志信息

    当预设的量子密钥过期后,量子设备管理员会发放销毁指令给已分发的用户,用户接收到该消息时自动删除本地密钥文件中过期量子密钥的信息。在这个过程中,量子设备管理员与用户需要记录和上传的日志信息如表5和6 所示。

    表5 管理员销毁的量子密钥日志表Table 5 Quantum key log table destroyed by administrators

    表6 用户销毁的量子密钥日志表Table 6 Quantum key log table destroyed by users

    当保密通信系统中发生安全事件时,区块链管理员可以根据用户对量子密钥全生命周期操作的日志文件信息进行查看追溯,判定本次安全事件是在量子密钥全生命周期中哪个阶段由哪个操作者引起的。由于各个用户节点都存有量子密钥操作日志信息的账本,因此各个用户节点对于区块链管理员的追溯结果都可查证。基于区块链的量子密钥全生命周期追溯利用了区块链不可否认、去中心化等特点,因此对量子密钥的管理更加透明而可信。

    以保密通信系统中发生的安全事件是用户使用已销毁的密钥进行保密通信为例,区块链管理员需要根据量子密钥全生命周期产生的量子密钥操作日志信息对所有用户节点进行追溯,最终判定安全事件的责任方以及量子密钥操作的出错阶段。

    当安全事件发生时,区块链管理员首先获取发生安全事件的密钥、安全事件的提出者身份、安全事件提出者所在组织号,然后使用以下的伪代码查询区块链存储的相关信息。

    public void query(String user,String org,String txtId){

    TxIdRequest request=TxIdRequest.newBuilder().setUser(user).setOrg(org).setTxid(txtId).build();

    Response response;

    try{

    response=this.blockingStub.queryInfoByTxId(request);

    } catch(StatusRuntimeException e) {

    System.out.println(e.getMessage());

    return;

    }

    String texId=response.getTxid();

    }

    func(s*SmartContract)queryInfo(APIstub shim.ChaincodeStubInterface,args[]string)sc.Response {

    secretAsBytes :=APIstub.GetState(args[0])

    return shim.Success(secretAsBytes)

    }

    区块链接收到请求之后,生成响应并返回查询结果,最后展示在追溯界面中。

    下面介绍区块链管理员在安全事件发生时如何对量子密钥全生命周期过程进行追溯追责。

    2.1 量子密钥生成、分发阶段的追溯

    区块链管理员首先查看并展示量子设备管理员上传的日志文件,然后根据日志文件中的量子密钥状态、量子密钥编号规则、量子密钥文件摘要信息判断量子密钥生成过程是否有误。若有误,则说明使用已销毁的密钥进行保密通信这个安全事件是此过程发生的,于是区块链管理员要求量子设备管理员提供量子密钥文件进行追溯,判定此次安全事件的责任方。区块链管理员追溯追责过程如图8所示。

    图8 量子密钥生成的追溯流程示意图Figure 8 Schematic diagram of traceability process of quantum key generation

    区块链管理员在确认量子密钥生成阶段无误后,将对量子密钥分发阶段进行管理。区块链管理员需要查看量子设备管理员和用户上传的日志文件,并对比两个日志文件中的量子密钥ID、量子密钥状态信息。若用户日志文件中的量子密钥ID 与量子设备管理员日志文件中的量子密钥ID 一致,并且用户日志文件中量子密钥状态为已收到但未使用,量子设备管理员日志文件中量子密钥状态为已分发,则说明量子密钥分发过程无误;
    反之则说明该安全事件是量子密钥分发阶段产生的,此时区块链管理员应要求用户提供存储量子密钥的文件,然后比较量子密钥文件的摘要信息等来判定错误的责任方。量子密钥生成和分发的追溯追责过程如图9所示。

    图9 量子密钥分发的追溯流程示意图Figure 9 Schematic diagram of traceability process of quantum key distribution

    2.2 量子密钥存储、使用的追溯

    对量子密钥存储过程进行追溯时,区块链管理员需要查看量子设备管理员上传的量子密钥备份文件摘要、量子密钥编号规则。若两方机构量子设备管理员上传的量子密钥文件摘要一致,则认为量子密钥备份操作无误;
    若不一致,则要求双方管理员提供量子密钥备份文件来判定错误的责任方,并说明该安全事件是在量子密钥备份阶段产生的。

    对量子密钥的使用进行追溯时,区块链管理员只需查看通信双方对量子密钥操作的日志文件。若双方日志文件中量子密钥状态不一致,则说明量子密钥使用过程有误,此时区块链管理员应要求通信双方和量子设备管理员提供相应的日志文件,查看用户日志文件中量子密钥ID 对应的量子密钥状态,验证日志文件的摘要信息是否正确,再通过综合判断来确定错误的责任方。量子密钥存储和使用的追溯流程如图10所示。

    图10 量子密钥使用的追溯流程示意图Figure 10 Schematic diagram of traceability process for use of quantum keys

    2.3 量子密钥更新、销毁的追溯

    对量子密钥更新和销毁进行追溯时,区块链管理员需要查看并展示通信双方以及各自对应的量子设备管理员的日志文件,并对比4 个日志文件中相应的量子密钥ID、量子密钥状态是否一致。若不一致,则说明安全事件是由有误的日志文件上传方所引起的,并且安全事件是在量子密钥销毁阶段产生的。量子密钥更新和销毁的追溯流程如图11所示。

    图11 量子密钥更新销毁管理流程示意图Figure 11 Schematic diagram of quantum key update and destruction management process

    本文提出一种基于区块链的量子密钥全生命周期管理方案,结合量子通信技术和一次一密的思想,保证了两方机构用户在通信过程中的安全性;
    利用区块链的特性对量子密钥的全生命周期进行管理与追溯,实现对量子密钥更加透明的监管。当安全事件发生时,区块链可以根据各个用户节点的量子密钥操作日志文件进行追溯追责,从而确保量子密钥在生成、分发、存储、使用、备份、更新和销毁过程中的安全性。

    猜你喜欢安全事件日志生命周期全生命周期下呼吸机质量控制现代仪器与医疗(2022年2期)2022-08-11一名老党员的工作日志华人时刊(2021年13期)2021-11-272020年度区块链领域安全事件达555起中国计算机报(2021年9期)2021-04-26扶贫日志心声歌刊(2020年4期)2020-09-07从生命周期视角看并购保险中国外汇(2019年13期)2019-10-10民用飞机全生命周期KPI的研究与应用民用飞机设计与研究(2019年2期)2019-08-05企业生命周期及其管理消费导刊(2018年10期)2018-08-20游学日志小学生(看图说画)(2017年6期)2017-11-06食品安全事件的价格冲击效应华南农业大学学报(社会科学版)(2015年1期)2016-01-11一种基于粗集和SVM的Web日志挖掘模型电子设计工程(2014年19期)2014-02-27

    推荐访问:密钥 区块 量子

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章