Canokey Pigeon的初级玩法

news2024/12/27 12:33:29

Canokey Pigeon的初级玩法

    • 前言
    • 开箱
    • 使用
      • 控制台
        • 新版
        • 旧版
      • 初步设置
      • FIDO2 PIN更改
      • 重置
    • 坑(或者说不满意的地方)
    • 玩法
      • FIDO2/U2F
      • OpenPGP
      • PIV
      • NDEF
      • OATH
    • 参考

本文转载于我的博客Canokey Pigeon的初级玩法

Canokey Pigeon今天终于到货了

{% note warning flat %}

该页面仍在不断完善中…

{% endnote %}

前言

在开始玩之前最好先看看官方文档,不然很容易迷,这玩意坑多得一匹666,要是有足够的马内还是入yubikey的坑吧,生态体验会好很多。。。

官方文档

注意!!!千万不要选择中文文档,直到目前为止那个文档还没完善,没英文版的完全,可以选择浏览器翻译来看

{% note info flat %}
CanoKey 的 FIDO2/U2F的PIN可以使用Windows Hello进行设置和更改,但具体项目操作暂时无相关文档

OpenPGP 可以使用gpg命令直接操作,没有任何兼容性问题

PIV可以使用yubico-piv-manager GUI版或者GUI版自带的CLI进行管理

OATH可以使用yubico-authenticator进行管理(需要指定版本),也可以使用新版WebConsole进行管理(有bug,secret太长会导致无法添加)
{% endnote %}

yubico-authenticator 仅6.0以前的版本支持canokey,6.0以后包括6.0不支持canokey,下面是历史版本下载地址

https://developers.yubico.com/yubioath-flutter/Releases/

下面是yubikey-manager下载地址(可能不怎么好用,看情况吧)

https://github.com/Yubico/yubikey-manager/releases

yubico-piv-manager GUI版(自带CLI 并且可以操作Canokey!!!)

https://developers.yubico.com/yubikey-piv-manager/Releases/

tips生成密钥后可能会提示“PIN密码错误多次,智能卡已锁”,即使PIN是正确的。这时候不必担心,只需要关闭程序,将卡拔掉重新插入

然后再次启动即可

开箱

首先我怀着期待的心情打开了快递的外包装,发现老板还送了挂绳和转接头(开心.jpg

下面是图



二话不说马上跑到寝室接上电脑来玩

使用

控制台

首先系统就会提示你打开控制台地址https://console.canokeys.org/
这个就是之后我们操作CanoKey的工具了

注意!!! 控制台分新版和旧版,新版和旧版之间各有可取之处,一起使用更佳

下面是新版和旧版控制台的图片

新版


旧版




旧版不能设置中文,建议搭配浏览器自带翻译一起食用

初步设置

默认密码

PIN名称默认值说明
AdminPIN123456用于在 web console 上管理 CanoKey 上的不同应用,如,重置应用,修改触摸策略等。
FIDO2PIN部分强制使用 PIN 的 FIDU2/U2F 应用会询问此密码。FIDO2 PIN 没有预设值。用户在首次使用强制 PIN 的 FIDO2/U2F 应用时会收到设置 FIDO2 PIN 的提示,此时用户可以自己设置该 PIN。
GPGPIN123456用于常规 GPG 操作,如 GPG 签名等。
GPGAdmin PIN12345678用于 GPG 应用的管理操作。例如,在 CanoKey 上生成 GPG 密钥对,或者修改 GPG 密钥属性时,会需要该 PIN。
PIVPIN123456用于常规 PIV 操作,例如 PIV 身份认证、通过 PKCS#11 调用 PIV 进行签名等。
PIVPUK12345678用于在 PIV PIN 被锁定后的解锁操作。

FIDO2 PIN更改

这里就是一个我觉得奇葩的地方了,官方控制台没有相关选项。。。。。。
他的具体设置在Windows设置内
如下图

而且目前我没找到任何可以单独重置这块区域的设置。。。只能全局重置

重置

在上面图已经不难看出,可以从控制台分别重置不同区域的密码和保存的密钥,除非你忘记了Admin密码,那就只能全局重置了

坑(或者说不满意的地方)

{% note info no-icon %}

  • FIDO2 默认无密码且console没有设置选项
  • FIDO2 需要在Windows设置内修改密码
  • FIDO2 无法单独管理webauthn
  • FIDO2 无法单独重置,只能通过全局重置的方式(Windows设置内的重置无效)
  • 新版console全局重置只能等admin pin锁定后才能使用
  • 新版console简单但功能不怎么多
  • NFC功率太小
  • 旧版console侧边栏没有openpgp选项,要点击overview里面才看得到选项。。。

{% endnote %}

玩法

精玩FIDO2/U2F、OpenPGP、PIV(撰写中)

FIDO2/U2F

支持的功能:

{% note info no-icon %}

  • 多达 64 个驻留密钥
  • HMAC 扩展
  • Ed25519

{% endnote %}

这个没什么好多说的,用得最多的还是网站登录时的webauhtn,有手就行

OpenPGP

支持的算法:

{% note info no-icon %}

  • RSA2048
  • RSA4096*
  • X25519
  • Ed25519
  • NIST P-256 (secp256r1, prime256v1)
  • NIST P-384 (secp384R1)
  • secp256k1

{% endnote %}

*由于计算性能的限制,无法在卡中生成RSA4096。但是,您可以生成密钥对并将其导入 CanoKey。

请注意,目前不支持 RSA3072。

{% note info no-icon %}

  • PIN:默认123456,最小长度 6,最大长度 64
  • 管理员 PIN:默认 12345678,最小长度 8,最大长度 64
  • 重置代码:默认未设置,最小长度 8,最大长度 64
  • 签名 PIN 码:强制 // 即验证每个签名
  • 触摸策略:关闭 SIG、DEC、AUT
  • 触摸缓存时间:0

{% endnote %}

具体各种参数和用法请参考官方文档

PIV

默认密码:

{% note info no-icon %}

PIN: default 123456
PUK: default 12345678
Management Key: default 010203040506070801020304050607080102030405060708

{% endnote %}

注!!!文章开头的默认密码没写Management Key!!!在管理PIV的时候与PIN组合使用

具体使用方法请参考官方文档

通常,在开始使用PIV之前,您应该初始化持卡人唯一标识符(CHUID)和持卡人Capability Container(CCC)

yubico-piv-tool -r canokeys -a set-ccc
yubico-piv-tool -r canokeys -a set-chuid

注:如果你一开始已经修改了Management Key,请在上方命令里加入-k参数来指定新的Management Key

否则会出现{% label “Failed authentication with the application.” blue %}

因为上方原始指令在不加-k参数时会传入默认的Management Key,导致无法通过验证!!!

NDEF

就一个类似于NFC标签的那种,可以记录一些信息(未加密!!!)

OATH

就像那种两部验证用的六位一次性数字,只是说支持在CanoKey里面设置

注!!!TOTP所需要的时间是由连接硬件的计算机通过USB接口传输的,CanoKey本身不带任何计时装置,所以如果计算机时间不准可以无法使用该功能!

参考

User Guide :: CanoKeys

CanoKey Pigeon 的开箱 & 折腾

Canokey 指南:OTP,FIDO2,PGP 与 PIV

使用 PIV 和 PKCS#11 验证 SSH(客户端)

[linux]GPG全面指令 ((子)密钥的创建/删除/吊销/上传/修改及基本的安全流程)

2021年,用更现代的方法使用PGP(上)PGP基础

GPG 入门教程

https://blog.cubercsl.site/post/canokey-unboxing/

Canokey Pigeon 从开箱到上手

Canokey配置OpenPGP/PIV/NDEF

版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 GoodBoyboy 's Blog|惬意小屋-点滴记忆!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++缺省参数、函数重载详解】

目录 一、缺省参数1.1缺省参数的定义1.2缺省参数的分类1.3缺省参数使用时的注意事项 二、函数重载2.1函数重载的概念2.2为什么要有函数重载2.3 C支持函数重载的原理 一、缺省参数 1.1缺省参数的定义 缺省参数是声明或定义函数时为函数的参数指定一个缺省值。在调用该函数时&a…

搭建B2B2C多用户国际版商城系统,快速为外贸企业开拓新市场

企业市场竞争激烈,不只体现在国内,甚至全球,电商行业发展迅速,各企业各行业甚至进出口都竞争相当激烈。要想在这种告诉竞争中脱颖而出,开拓新市场,带来新盈利与新契机是必不可少的。易族智汇Javashop助力企…

nmap学习笔记

一、环境准备 Windows10主机Kali虚拟机(使用nmap的地方)metasploitable虚拟机为以上三个操作系统配置静态IP。 Windows主机的IP:192.168.80.3Kali的IP:192.168.80.2metasploitable的IP:192.168.80.4 具体配置方法请参…

STM32-窗口看门狗WWDG实验

窗口看门狗本质上是一个能产生系统复位信号和提前唤醒中断的定时器。它通常被用来监测,由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位变成0前被刷新,否则看门狗电路在达到预置的时间周期时…

代码随想录二刷-队列及其应用题目(JS)【重要】

239.滑动窗口最大值 题目 给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 进阶: 你能在线性时间复杂度内解决此题吗…

Thinkpad-t470电脑 Hackintosh 黑苹果efi引导文件

原文来源于黑果魏叔官网,转载需注明出处。(下载请直接百度黑果魏叔) 硬件型号驱动情况 主板Thinkpad-t470 处理器Intel Core i7-6600U 2.6GHz / 3.4Ghz Turbo已驱动 内存16GB DDR4 2666Mhz (SK Hynix)已驱动 硬盘Intel SSD Pro 7600P 51…

与Linux的文件权限有关的知识

在Linux系统中,每个文件都有一个所有者和一个用户组。此外,系统还定义了一个“其他人”分类。 文件的所有者通常是创建该文件的用户,而用户组则是在创建该文件时指定的。如果没有指定,则默认为创建用户的主用户组。用户组可以在文…

核心业务1:账户绑定业务

核心业务1:账户绑定业务 1.业务流程图 2.账户绑定数据库设计 3.账户绑定业务流程 4.代码逻辑 5.代码逻辑细节 核心业务1:账户绑定业务 1.业务流程图 ①用户绑定数据到商户平台(已

C++map/set与unordered系列的区别

文章目录 map/set与unordered系列的区别map/set与unordered系列的性能对比测试总结 map/set与unordered系列的区别 1: map/set遍历时是有序的,unordered_map/unordered_set遍历时是无序的. 以set和unordered_set容器为例: 2: map/set是双向迭代器,底层数据结构为红黑树,unor…

重磅 | Shifu物联网开发框架成为CNCF认证项目

近日,边无际Shifu项目被收录进CNCF云原生全景图,成为了云原生计算基金会认证的项目之一。此次收录证明了Shifu具备了符合CNCF标准的技术能力和良好的社区发展,展现了Shifu在云原生计算领域的实力和可信度,巩固了Shifu在云原生领域…

J2EE,Java EE,Jakarta EE 命名之间的恩恩怨怨

介绍 简单来说,上面所有的名字指的都是一个东西 Java Platform, Enterprise Edition 上面的几个名词都是下面的内容的简写: J2EE(Java 2 Platform, Enterprise Edition)Java EE (Java Platform, Enterprise Edition)Jakarta EE(Jakarta Enterprise Edi…

learn_C_deep_1 (C程序补充知识、变量的声明和定义、声明和定义的区别)

目录 C程序补充知识 变量的声明和定义 1.什么是变量? 2.变量的本质是什么? - 所有的变量都要在内存的某个位置开辟空间 3.变量的定义和声明形式、初始化和赋值的区别 4.为什么要定义变量 声明和定义的区别 C程序补充知识 先让我们来看一段C语言…

史上最严宝宝口粮新国标出台,DHA和维生素D可能无需额外补充了

自2023年2月22日起,我国婴幼儿配方食品(以下简称配方奶)新国标开始实施。这意味着2023年2月22日以后在中国上架销售的配方奶必须符合新国标,重新取得国家市场监督管理总局食品评审中心(CFE-SAMR)的注册。这…

【单片机】基于Arduino cli和VS Code配置开发环境,彻底抛弃Arduino IDE

文章目录 0 前言1 VS Code的优势和Arduino IDE的劣势2 前期准备3 Arduino cli3.1 Arduino cli是什么3.2 下载与安装3.3 基本使用3.4 开发环境配置 4 VS Code配置5 参考链接 0 前言 之前有在电脑上基于VS Code配置Arduino环境,大致方法就是在安装Arduino IDE的前提下…

SCT2650STER,可以实现低成本升降压

市面上主流的中高压升降压拓扑方案有四开关管升降压控制芯片、SEPIC/反激控制芯片等。实际上四开关管升降压芯片成本很高,而SEPIC/反激控制芯片设计复杂。 如果仅需要升降压功能,功率较小,不需要隔离时,本篇解决方案将以SCT2650为…

真题详解(地址索引)-软件设计(五十一)

真题详解(单元测试)-软件设计(五十)https://blog.csdn.net/ke1ying/article/details/130189173?spm1001.2014.3001.5501 指令寻址方式 有四种,直接寻址,寄存器寻址,隐含寻址,立即寻址。 按寻…

基于高斯两步移动搜寻法(2SFCA)的城市绿地可达性分析

【2SFCA的基本思路,可以略过】 对每个供给点j,搜索所有在j搜寻半径(d0)范围内的需求点(k),计算供需比Rj;对每个需求点i,搜索所有在i搜寻半径(d0)范围内的供给点(j),将所有的供需比Rj加总得到i点的可达性Ai。 【数据】 成都市城区绿地数据、各街道小区数据、路网…

基于Rush.js的Monorepo实战

基于Rush.js的Monorepo入门实战 概述 Monorepo是一种软件开发模式,它将多个项目或组件存储在同一个代码库中,而不是将它们分散到多个库中。这样做可以方便跨项目的代码重用、版本控制、依赖管理等,被广泛应用于大型软件公司的开发流程中。 …

动力节点Vue3笔记——Vue程序初体验

目录 一、Vue程序初体验 1.1 下载并安装vue.js 1.2 第一个Vue程序 1.3 Vue的data配置项 1.4 Vue的template配置项 一、Vue程序初体验 可以先不去了解Vue框架的发展历史、Vue框架有什么特点、Vue是谁开发的,对我们编写Vue程序起不到太大的作用,…

C语言从入门到精通第4天(1~3天的扩展)

1~3天的扩展 拓展数据类型sizeof关键字整型数据的打印格式字符类型的输出格式ASCII码表转义字符进制 拓展数据类型 在开发过程中我们需要处理各种类型的数据,C语言处理基本类型还有其他的类型: sizeof关键字 C语言中可以通过sizeof关键字获取某个数据…