首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是双长度派生键?

什么是双长度派生键?
EN

Cryptography用户
提问于 2018-03-08 09:23:03
回答 1查看 878关注 0票数 1

我试图理解一个IPEK是如何从给定的KSNBDK (Triple DES Edition)创建的。在本文中-从给定的KSN和BDK创建IPEK (三版)

从基本派生密钥(BDK)派生初始密钥(IPEK)初始PIN输入设备密钥(最初加载到PIN入口设备中的密钥)由以下过程生成:

  1. 将整个密钥序列号,包括21位加密计数器,右对齐复制到10字节寄存器中.如果键序列号小于10字节,则垫向左用十六进制“FF”字节。
  2. 将这个10字节寄存器中最不重要的21位设置为零.
  3. 取这个10字节寄存器中最重要的8个字节,并使用双长度派生密钥加密/解密/加密这8个字节。
  4. 使用步骤3生成的密文作为初始键的左半部分。
  5. 从步骤2的10字节寄存器中取出8个最重要的字节,并使用双长度派生密钥XORed作为密钥加密/解密/加密这8个字节,该密钥具有十六进制C0C0 C0C0 0000。
  6. 使用步骤5生成的密文作为初始密钥的右半部分。

什么是双长度派生键?我在网上找不到任何有用的信息。

EN

回答 1

Cryptography用户

回答已采纳

发布于 2018-03-08 10:46:55

什么是双长度派生键?

我读到的是基本派生键(BDK),用于派生(生成)初始PIN输入设备密钥(IPEK)。BDK和IPEK都是3 3DES的16字节密钥;对于TDEA选项2,按(过时的) FIPS通用SP-800-67-Rev1第3.2节第2项另有规定。

16字节的BDK或IPEK被分成两个8字节的$K_1$和$K_2$,8字节的$P$被加密为$C=E_{K_1}(D_{K_2}(E_{K_1}(P)$.这是3 3DES/TDEA的通常加密解密加密,如步骤3所解释。

步骤5补充BDK的每一个8字节的四个左/高阶字节的高阶两位,形成一个不同的BDK‘。步骤3的前半部分获得的相同的8字节值是使用BDK (resp )对每个3 3DES/TDEA加密的。( BDK')形成左/高阶(resp.(右/低阶)伊贝克的一半。

票数 1
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/56251

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档