量子密钥分发系统的设计与实现(二):光路子系统初步讨论

       通过上一篇文章,我们对量子密钥分发系统的基本架构、硬件结构以及密钥分发流程进行了初步的总体介绍,从本文开始,我们就基于系统顶层的架构设计,开始从模块到器件,从硬件到软件开始详细讨论QKD系统的设计与实现。本文主要对系统中的光路子系统进行详细讨论

    1.QKD系统的设计与实现难点

       经过多年的发展,QKD系统设计目前来看基本上没有特别大的难点了,毕竟国内的厂家已经开始在小型化、集成化甚至芯片化方面发力了。这里我们主要分析一下QKD系统实现过程中的技术难点。

  1. 单光子的源制备:在量子保密通信中,理想的光源应该是每个脉冲最多一个光子,这样才能保证绝对的安全。但是由于技术发展的限制,直到目前为止,真正的单光子源还并没有实现,至少还没有出现可以被证明每个脉冲都只发射单个光子的光源。
  2. 同步系统:量子保密通信中,由于工作在脉冲的方式下,需要收发双方都处于相同的工作频率,使发射方按照一定的工作频率发送信号光子,接收方也必须按照相同的频率探测光子,并且能准确分辨相互对应的脉冲信号。为达到此目的,收发双方需要有一个同步系统作为联系,起到连接收发双方工作的作用;
  3. 探测器工作频率:实际上,目前量子通信系统的工作频率就是由单光子探测器的工作频率决定的,要提高整个系统的工作频率,就必须首先提高探测器的工作频率。但是探测器在工作在高速情况下会遇多种技术难点,如暗计数和后脉冲概率的加大、雪崩管微分响应信号的增大等可以说,目前光纤量子通信进一步提高成码率和通信距离的最大瓶颈就在于单光子探测器。

       可以看出,QKD系统的视线难点基本上都集中在光路模块,QKD系统的光路部分是量子密钥分发的物理过程。其核心作用为实现系统中量子态的制备以及探测。本文我们讨论三种典型的光路子系统。

    2.基于偏振编码和诱骗态的BB84协议QKD系统光路方案

      关于偏振编码BB84协议请戳之前的文章:量子保密通信:密钥分发协议原理、实现及应用

      如下图为基于偏振编码BB84协议系统的光路系统。这个系统主要包括发送端(Alice)、接收端(Bob)、传输光纤、手动偏振控制器(Manual polarization controller,MPC)等

        该方案中光路子系统的主要工作流程如下:

  1. Alice 中光源板的四路激光器 LD1、LD2、LD3 及 LD4 随机产生波长为 850nm 的光信号;
  2. 通过光模块的偏振状态制备功能,分别制备成 H、V、P 和 N,4 种偏振态;
  3. 对 H、V、P 和 N,4 路光信号进行合束;
  4. 将合束后的信号进行衰减到单光子状态后输出;
  5. Alice 端的主控板的激光器 LD_sync 产生波长为 1310nm 的同步光信号。信号光和同步光分别经过量子信道及同步信道,传送至 Bob 端,同步光利用 PIN 管,将光信号转换成电信号;
  6. Bob 端的光模块配合 MPC 将信号光对 H、V、P和 N 四路偏振光进行偏振补偿,并对 V、P 和 N 三条路径添加不同延时以进行区分。H、V、P 和 N 通过时分复用调制模块,复用到一路上;
  7. 利用单光子探测器(Single photon detector,SPD)将光信号转换成电信号;
  8. 将电信号送到接收端的信号处理模块;

     下图为另一种偏振编码光路子系统方案,这个方案中的编解码模块采用了集成技术,其中强度编码和偏振编码模块都采用了Sagnac结构(插眼,后期细聊这个结构)。

        该方案中,光路子系统的主要工作流程如下:

  1. Alice端的激光器(LD)发送随机相位脉冲,脉冲信号一次通过Sagnac IM强度编码和Sagnac POL偏振编码模块,完成脉冲信号的编码;
  2. 脉冲信号通过可调衰减器(VOA)衰减为单光子量级;
  3. 单光子量级的脉冲信号通过50:50分束器(BS)将脉冲信号分成两束,其中一束接到单光子探测器(SPD)或光功率计(OPT)上来监控强度,另一束脉冲信号通过信道(Channel)发送给 Bob。Channel 为普通商用光纤。
  4. 光脉冲到达Bob端之后,首先经过偏振控制器(PC)完成基矢校准,对准偏振分束解码模块(PAM)的测量基;
  5. 光脉冲通过PAM模块,经过分束之后进入单光子探测器(SPD)完成测量,SPD发送电信到到时间数字转换器(TDC);
  6. 最后TDC记录每台SPD发送电信号的时间;

      对比这两种方案可以看出,他们有种类似“对称”的结构,上面的方案是四个发一个收,下面的是一个发四个收,这是因为偏振BB84是四态协议,这两种方案在具体设备上如何应用后面再讨论。

    3.基于相位编码BB84协议QKD系统中光路方案

      关于相位编码BB84协议请戳之前的文章:

      量子密钥分发设备:基于相位编码的量子密钥分发系统(一)

      如下图为基于相位编码BB84协议的QKD系统方案设计图。

       该方案中光路子系统主要工作流程如下:

  1. 连续激光源Laser发出连续光;
  2. 连续光经过一级衰减器Att和起偏器Pol,变成连续的线偏振光;
  3. 连续线偏振光经过偏振调节pc之后进入强度调制器IM,经过IM调制后得到光脉冲。这个光脉冲是有Alice端的FPGA控制输出的;
  4. 光脉冲进行二级可调衰减,进行功率监控。再经过三级固定衰减,使光信号的强度达到单光子水平;
  5. Alice端产生随机数并发给FPGA,FPGA根据收到的随机数产生发端相位调制器PM的驱动电压对光脉冲进行相位调制,使光脉冲随机产生4个相移;
  6. 发送端产生一个同步脉冲信号,经过适当衰减之后,通过光波分复用器与单光子信号合为一路,进入光纤信道;
  7. 信号到达Bob端后,先用光波分复用器将数据脉冲与同步脉冲分开;
  8. 单光子信号经过 Bob端 M-Z干涉仪进行相位调制和干涉后后进入到单光子探测器 SPD
  9. 同步光经过光电二极管转换为电脉冲,经过处理后分别送入SPD触发端和Bob端FPGA;
  10.  SPD会输出触发信号和探测到的数据信号,经过整形分别送入采集卡的外触发端和采样通道,采集卡进行数据采集和数模转换后,将数据通过 PCI接口送达 Bob 端PC;
  11. 收发方双通过经典信道进行五码检测和协商,经过纠错和密性放大等流程,得到最终密钥。

    4.基于连续变量分发协议QKD系统光路方案

      关于基于连续变量量子密钥分发协议请戳之前的文章:

      量子密钥分发设备:基于连续变量的量子密钥分发系统(一)  

      如下图为连续变量量子密钥分发系统的总体光路图。其中红色实线代表光信号路径,我们称之为光路,紫色虚线为电控制信号走的路线,我们称之为控制电路。

        该方案中光路子系统的主要工作流程为:

  1. Alice端用两串随机数串对光信号进行调制,将信息调制在光子的振幅A(通过强度调制器)和相位φ(通过相位调制器)上,在复平面上对应着正则位置X与正则动量P;
  2. Alice 将调制好的量子态发送到光纤量子信道中,通过单模光纤传输后到达 Bob端;
  3. 在 Bob 接收前端有一个动态偏振控制器DPC,用来校正经过长距离光纤传输后的偏振失配;
  4. 经过偏振校正之后,光信号进入Bob端,Bob随机的选择测量基,对接收到的光信号进行零差(Homdyne)检测,并用FPGA收集数据;
  5.  最后将FPGA采集到的数据发送到计算机中。Bob的计算机把得到的数据通过经典信道和 Alice 的计算机进行通信并比对。经过纠错和保密增强步骤之后即可得到最终的密钥。

     5.写在最后

      光路系统是QKD实现的基础,本文主要讨论了几种基础的光路系统,用于让读者直观的了解QKD系统中光路部分的视线方式,作为储备知识。在实际的工程应用中,会根据每种实现方式的特点或者应用背景等因素进行光路的优化提升设计,后期我们在具体设备的实现中可以详细讨论。另外在本文中出现了大量的光学设备和专业领域名词,大家不慌下,下一篇文章名称已经预定,就讨论QKD系统中的光学器件。

       文章中由谬误的地方,还请大家不吝指出。

     6.主要参考文献

        [1]蔡文琪.量子保密通信中若干关键器件的研制[D]

        [2]杨阳.相位编码量子密钥分发系统设计研究[D]

        [3]房坚.连续变量量子密钥分发的光路设计与方案研究[D]

        [4]秦继伟.量子密钥分发系统中光源的制备与调控方法的研究[D]

        [5]马迪.高稳定量子密钥分发系统及其相关器件安全性研究[D]

        [6]张忠理.基于BB84协议相位编码的量子密钥分发系统研究与实现[D]

———————分割线———————

      量子密钥分发系统设计与实现系列文章索引:

  1. ​量子密钥分发系统设计与实现(一):系统基本架构讨论

———————分割线———————

      下面是博主的CSDN主页,里面还有其他的量子相关文章,欢迎大家围观并关注博主~我会持续更新量子领域各类博文。

https://quantum.blog.csdn.neticon-default.png?t=N7T8https://quantum.blog.csdn.net
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/553588.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python爬取猫眼电影票房 + 数据可视化

目录 主角查看与分析 爬取可视化分析猫眼电影上座率前10分析猫眼电影票房场均人次前10分析猫眼电影票票房占比分析 主角查看与分析 爬取 对猫眼电影票房进行爬取,首先我们打开猫眼 接着我们想要进行数据抓包,就要看网站的具体内容,通过按F12…

注塑机自动喷雾程序 报警自动关机

/***参数设置,开模数计数,秒脉冲计时***************/ /***实现功能:检测报警信号,脱模剂开模数计数信号***/ /***参数:1:脱模剂开模数 2:喷雾时间 3:延时时间 ***/ /***串口接收触摸屏参数设置字符串,接收并保存******/ /***端子输入口读开模数,比较设定值后输出到电磁阀**/ /…

Emmet表达式

目录 Emmet语法简介 Emmet作用 Emmet在HTML中的使用 Emmet在CSS中的使用 Emmet语法简介 Emmet语法的前身是Zen coding,它使用缩写,来提高HTML的编写速度,VScode内部已经集成该语法。 Emmet作用 快速生成HTML结构语法快速生成CSS样式语法 Emmet在HTML中的使用…

python连接数据库失败怎么解决

Python 连接数据库失败怎么解决? 什么是 PyMySQL? PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。 PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。…

Vue_管道符“|”(单竖线)的用处

目录 1、管道符是什么 2、应用场景 背景:项目中偶遇在 {{ }} 插值表达式里用了 “|”此写法,一开始误以为是写错了,应该是写成 “||” 双竖线( 逻辑或运算符 ),结果询问…

为什么用云渲染农场?3D云渲染农场助力影视动画行业发展

​计算机图形技术的进步使得3D渲染成为多个产业发展的重要推动力。设计师和艺术家利用这项技术将创意实现,创造出震撼的视觉作品。但是,高质量的渲染需要大量的计算资源。云渲染农场通过提供这些资源,有效提高了渲染的速度和效率,…

DRF 序列化类serializer单表

【五】序列化类serializer单表 【1】主要功能 快速序列化 将数据库模型类对象转换成响应数据,以便前端进行展示或使用。这些响应数据通常是以Json(或者xml、yaml)的格式进行传输的。 反序列化之前数据校验 序列化器还可以对接收到的数据进行…

学习 Rust 的第六天:所有权问题

大家好, 欢迎来到学习 Rust 的第 6 天,过去 5 天我们学到的内容在几乎每种语言中都是一样的。所有权是 Rust 的一个独特概念。 介绍 所有权是一种独特的内存管理系统,其中每个值都有一个指定的所有者,在所有者超出范围时自动释…

java实现wav的重采样

原因是之前写的TTS文件,需要指定采样率和单声道 但是TTS是用的Jacob调用COMsapi实现的 javaWNI10JACOB方式 SAPI底层支持的是C,C#【官方文档】 SpAudioFormat SetWaveFormatEx method (SAPI 5.4) | Microsoft Learn 用C实现的方式【可指定输出的WAV…

算法练习第19天|222.完全二叉树的节点个数

222.完全二叉树的节点个数 222. 完全二叉树的节点个数 - 力扣(LeetCode)https://leetcode.cn/problems/count-complete-tree-nodes/description/ 题目描述: 给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。题目数据保…

【Python】穿越Python的迭代之旅:while,for 循环的奇妙世界

欢迎来到CILMY23的博客 本篇主题为: 穿越Python的迭代之旅:while,for 循环的奇妙世界 个人主页:CILMY23-CSDN博客 系列专栏:Python | C | C语言 | 数据结构与算法 感谢观看,支持的可以给个一键三连&…

spring的redis注解@Cacheable @Cacheput @CacheEvict的condition、unless

概述 redis的注解使用的过程中总会遇到condition和unless这两个属性,而且不同的注解使用注意事项不一样。本人也是错误使用之后详细查询了一下,作了如下的总结。 Cacheale 这个注解的使用和意义这里不多说,可以查看我的其他文档。这里主要说…

【C++】二维数组传参方式

最近刚开始刷剑指offer,刚做到第三题的时候,发现C二维数组的传参方式和C语言略有些不同,所以在这篇博客中,会列出C/C常见的二维数组传参方式。(本方式和代码都是基于vs环境所编写) 一.C语言二维数组传参方式…

18.读取指定目录下的txt文档时,调用另外一个python文件

1.题目 遍历4K_phone和4K_VR目录下的所有txt文件,并将它们的内容合并到一个名为4k_decoding.txt的文件中。 但是,假设你有一个名为another_script.py的Python文件,你想在合并txt文件之前执行它生成要处理的txt文档。 最后统计完原始的txt文件…

算法与数据结构要点速学——通用 DS/A 流程图

通用 DS/A 流程图 这是一个流程图,可以帮助您确定应该使用哪种数据结构或算法。请注意,此流程图非常笼统,因为不可能涵盖每个场景。 请注意,此流程图仅涵盖 LICC 中教授的方法,因此排除了像 Dijkstra 等更高级的算法。…

eclipse配置SVN和Maven插件

3、 安装SVN插件 使用如下方法安装 Help–Install New Software 注意:目前只能安装1.8.x这个版本的SVN,如果使用高版本的SVN,在安装SVN和maven整合插件的时候就会报错,这应该是插件的bug。 点击Add name: subclipse location…

区块链知识总结——比特币中的密码学原理

比特币中的密码学原理: 比特币的本质:crypto-currency. 比特币用到密码学中的两个功能: 1.哈希函数(cryptographic hash function) 三个重要性质: (1)抗碰撞性collison resista…

3 xgboost

目录 1 定义 1.1 模型定义 1.2 损失函数 1.3 化简损失函数 xgboost比赛以及工程利器。目前存在大量有关算法文档。 XGBoost(eXtreme Gradient Boosting)是一种基于决策树集成的机器学习算法,被广泛应用于分类、回归和排名等任务。XGBoost…

vue快速入门(三十)vue的工程化开发安装配置

步骤很详细,直接上教程 上一篇 新增内容 安装nodejs安装脚手架工具安装vue项目运行项目服务退出项目服务 安装nodejs 没安装的友友可以参考这位大神的博文Node.js下载安装及环境配置教程【超详细】 安装脚手架工具 打开管理员cmd 输入此命令行npm i -g vue/cli …

access多表关联提示:语法错误(操作符丢失)在查询表达式中

在access数据库中执行多表关联时提示了一个错误 select * from Patient a inner join BioMain b on a.BioIDb.BioID inner join BioResult c on b.BioIDc.BioID where len(a.PatientID)>12 and b.AddTime>#2024-04-17 05:53:23# and b.AddTime<#2024-04-17 17:53:23#…