首先了解下BSI,

联邦信息安全办公室(Bundesamt für Sicherheit in der Informationstechnik,缩写为BSI)是德国上层联邦机构负责管理计算机和通信的安全性德国政府。 它的领域的专业知识和责任包括计算机应用的安全,关键基础设施保护,网络安全,密码学,反窃听,认证安全产品和安全测试实验室的认证。网址:https://www.bsi.bund.de/EN/TheBSI/thebsi_node.html

BSI TR-03110 的全称是 Technical Guideline Advanced Security Mechanisms for Machine Readable Travel Documents and eIDAS Token,具体可以查看网址:https://www.bsi.bund.de/EN/Publications/TechnicalGuidelines/TR03110/BSITR03110.html

另外由于BSI中大量引用了ICAO9303的规范,所以我也列出,网址是:
http://www.icao.int/Security/mrtd/Pages/default.aspx

BSI TR-03110  该规范主要讲述了电子护照类别的强安全认证协议指引和规范,主要包含PACE,TA,CA这三种协议;

Password Authenticated Connection Establishment (PACE):
Establish a secure channel with a strong key between two parties that only share a weak secret.
通过弱密码的方式生产一个强会话的协议;
Terminal Authentication (TA):
Verify/prove the terminal’s certificate (or rather certificate chain) and secret key.
终端认证;
Chip Authentication (CA):
Establish a secure channel based on the chip’s static key pair proving its authenticy.
芯片认证;

在开发过程中国内的相关资料比较少,国外有相关的开源资料,对我有一定的启发,链接网址为:https://frankmorgner.github.io/openpace/

开发过程中我主要负责算法的实现和移植,所以后期主要的以PACE,TA,CA具体的算法实现为主,主要包含以下几种功能的算法:

•  用对称密钥K加密明文S:E(K,S); 
•  用对称密钥K解密密文C:D(K,C); 
•  用H(m)表示计算消息m的散列值的运算。 
•  用对称密钥K计算消息M的消息认证码:MAC(K,M); 
•  基于非对称密钥对(SK,PK)和(SK’,  PK’)以及域参数D的密钥协商:KA(SK,PK’,D)/KA(SK’,PK,D); 
•  从共享秘密S派生密钥:KDF(S)。
另外还有一些密码学的大数计算和点运算,这里先带过,以后用到了再详述。

BSI TR-03110相关推荐

  1. yejikuaibao

    <table class="border"><thead><tr><th style="text-align:center;wi ...

  2. 表格(table、tr、th、td、colspan、rowspan)

    表格一: <!DOCTYPE html> <html> <head><meta charset="UTF-8"><title& ...

  3. 理解linux tr命令

    2019独角兽企业重金招聘Python工程师标准>>> 1. tr 命令的功能 tr命名是简化了的sed命令.其主要的功能包括: a. 用一个字符来替换另外一个字符. b. 删除字符 ...

  4. 中tr不能显示字符_BeautifulSoup4中find 和find_all的比较

    BeautifulSoup4中find 和find_all分别有不同的含义,find返回的是TAG对象,只有一个值,可以直接使用属性例如,children.而find_all返回的是TAG对象的迭代对 ...

  5. php tr 用法,Linux_Linux系统中tr命令删除和替换文本字符的基本用法,通过使用 tr,您可以非常容易 - phpStudy...

    Linux系统中tr命令删除和替换文本字符的基本用法 通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能.您可以将 tr 看作为 sed 的(极其)简化的变体:它可以用一个字符来替换另一个 ...

  6. Linux批量文件名大小写转换,Linux中批量把目录内文件名转换大小写用tr

    如何将一个目录中所有文件名由大写变为小写 我们以目录 tmp 为例 1. 进入 tmp 目录的上一级目录 2. zip -r tmp.zip tmp/* 3. mv tmp tmp-old (这是为了 ...

  7. SAP WM中阶为多个TR创建了Group后将TR从Group里删除?

    SAP WM中阶为多个TR创建了Group后将TR从Group里删除? SAP WM 2-Step Picking流程里,需要为多个TR或者交货单创建组,然后去对该Group执行集中拣配和后续Allo ...

  8. SAP WM初阶之LX09查询TR List

    SAP WM初阶之LX09查询TR List 在SAP WM模块里,TR单据是有相关的报表可供查询的.比如如下的事务代码:LB10/LB11/LB12/LB13, 不过这些事务代码都有局限性.比如LB ...

  9. SAP WM 显示TR ITEM的标准报表LX09

    SAP WM 显示TR ITEM的标准报表LX09 SAP WM模块里,标准的TR报表,有LB10,LB11,LB12等,如下图示. 不过不方便的是,这些报表都不能以列表形式显示多个TR的ITEM数据 ...

  10. SAP 谈谈PFCG创建ROLE后打包产生TR

    SAP 谈谈PFCG创建ROLE后打包产生TR 项目上最近忙于系统配置,Function顾问需要完成系统功能相关的配置,也要完成权限相关的配置.权限相关的配置主要就是设计ROLE,然后在PFCG里创建 ...

最新文章

  1. js练习 好友列表选择
  2. Loadrunner的Tuxedo脚本分析,基本流程和基本函数介绍
  3. Velocity知识点总结
  4. 交叉线和直连线的线序,做法和使用场合
  5. 容器源码分析之PriorityQueue(十)
  6. 使用vim打开文件的16进制形式,编辑和全文替换
  7. 获得Web目录URL
  8. 【开源】对基于图像背景的字体生成、人体姿势预测、关键点检测、超分辨率等探讨...
  9. DataSet本地化数据的二表链接操作
  10. 2021-1-28Linux学习纪要
  11. java自带数据结构(set/list/stack/queue)
  12. rehat 出现GDB debuginfo-install 问题处理
  13. 手写instanceof
  14. 使用Eclipse编译运行MapReduce程序
  15. 第一代GCN: Spectral Networks and Locally Connected Networks on Graphs
  16. 文本标注工具BRAT的安装与配置
  17. 帆软报表写switch函数
  18. 深度参与 openGauss Developer Day 2022,云和恩墨在多项活动中展风采
  19. 2.4 导集,闭集,闭包
  20. 写代码时尽量少用复制粘贴(ctrl+c, ctrl+v)

热门文章

  1. ​LeetCode刷题实战524:通过删除字母匹配到字典里最长单词
  2. 联想LECOO电脑显示器闪屏解决办法
  3. linux 下缓存失败,Linux下搭建网站提示缓存文件写入失败怎么办?
  4. 苹果怎么分屏操作_苹果tf上架困难吗?tf上架怎么操作?
  5. java如何从屏幕输入数字_关于java的从键盘输入,从显示屏上输出?怎么做?为什么?...
  6. 抢红包算法 java
  7. Android弹幕功能实现,模仿斗鱼直播的弹幕效果,跪了
  8. 一个链接引发的“恶意执行”
  9. 160809310 袁韬淳
  10. 随机森林和神经网络有什么区别?