# 其他 # YubiKey YubiKey 是 [Yubico, Inc.](https://www.yubico.com/) 发行的,具有 OTP、TOTP、FIDO 2FA、静态密码、Challenge-Response、PIV、OpenPGP Card 等功能的便携密码学硬件。本文主要描述其智能卡相关功能,即 PIV 与 OpenPGP Card。 YubiKey Neo, YubiKey 5 NFC 具有 NFC 功能,其余的 YubiKey 均通过 USB 与主机进行通信。 详细的访问方式如下表所示:
**功能****接口****AID**
OTP/静态密码(NDEF)USB-HID/NFCD2 76 00 00 85 01 01
U2FUSB-HID/NFCA0 00 00 06 47 2F 00 01
OpenPGPUSB-CCID/NFCD2 76 00 01 24 01 02 00 00 00 00 00 00 01 00 00
PIVUSB-CCID/NFCA0 00 00 03 08 00 00 10 00 01 00
TOTP(OATH)USB-CCID/NFC A0 00 00 05 27 21 01 01
# FIDO U2F # NXP JCOP Javacard NXP JCOP 是由 NXP 公司开发的 Javacard 操作系统,NXP 公司的 Javacard 和一些安全芯片搭载了该系统。 其版本命名规则为:
J3 A 080 G dd(d) / T 0B rr ff o
- J = NXP JCOP - J5=NFC(S2C) -
J3=Dual IF,CD=PKI+DES
-
J2=CT,CD=PKI+DES
-
J1=CT,DES
- A = JCOP version - A=JCOP 2.4.1 R3(Java Card 2.2.2 GP 2.1.1) -
C=JCOP 2.4.2 R1
-
D=JCOP 2.4.2 R2(Java Card 3.0.1 GP 2.2.1)
-
E=JCOP 2.4.2 R3(Java Card 3.0.1 GP 2.2.1)
-
G=JCOP 3.0
-
H=JCOP3 P60-2
- O=JCOP 4.0 - Q=JCOP 4.2 -
080 = EEPROM Size 80K
- G = JCOP type - G=Java Std-Generic -
V=Java Std-VISA
-
C=Java Std-Customized
-
M=Java Std-MasterCard
-
C=Java Static-Generic
-
U=Java Static-VISA
-
T=Java Static-MasterCard
- dd(d) = Delivery type - UA=sawn wafer 150u FFC -
X0=PDM module
-
A4=MOB4
-
A6=MOB6
-
HN1=HVQFN32 package
-
T = FAB ID
-
0B = HW Version
-
rr = ROM code ID
-
ff = FAB key ID
- o = Option - 0=no Mifare -
1=1k Mifare
-
4=4k Mifare
-
7=7k DESFire
-
8=8k DESFire
获取详细信息可以发送 IDENTIFY 命令:00A4040009A000000167413000FF00 返回信息格式如下: ![](https://wiki.nfc.im/uploads/images/gallery/2019-08-Aug/scaled-840-0/image-1565837332689.png) # Canokey Canokey是开源的安全认证USB设备,提供4个接口:U2F/FIDO2(HID)、OpenPGP Card(CCID)、PIV+OATH(CCID)和WebUSB。 # MIFARE Classic MIFARE Classic 有 1K 和 4K 两种类型,1k 和 4k 代表存储空间的大小。 在 MIFARE Classic 中,有 Sector 和 Block 的概念,每个 Sector 有若干个 Block,其中最后一个 Block 是特殊的(称为 Sector Trailer),保存了这个 Sector 的一些信息:Key A、Access Bits、GPB 和 Key B。对于 Classic 4K,首先是 32 个有 4 blocks 的 sector,然后是 8 个 有 16 blocks 的 sector, 整体的内存布局大概是:
``` Sector 0:

Block 0

Block 1

Block 2

Block 3(Sector Trailer)

Sector 1:

Block 4

Block 5

Block 6

Block 7(Sector Trailer)

...

Sector 32:

Block 128

Block 129

...

Block 143(Sector Trailer)

...

Sector 39:

... ```
每个 Block 有 16 字节,一共 256 个 block,所以是 4K 大小的存储空间。Block 0 比较特殊,保存的是生产商写入的信息,不可更改(特殊的卡除外)。 见 [MIFARE Classic 配置 NDEF](https://jia.je/hardware/2020/05/10/mifare-classic-ndef/)