YubiKey

YubiKey（ユビキー）は、コンピュータ、ネットワーク、オンラインサービスへのアクセスを保護するため、Yubico社により製造されたハードウェア認証装置である。これは、ワンタイムパスワード、公開鍵暗号、認証、FIDOアライアンスが開発したユニバーサル2ndファクター（英語版）（U2F）、FIDO2（英語版）プロトコルに対応している。ユーザーは、ワンタイムパスワード（その時限り有効なパスワード）を発行するか、デバイスによって生成されたFIDOベースの公開鍵/秘密鍵ペアを使用することで、安全にログインすることができる。また、YubiKeyは、ワンタイムパスワードに対応していないサイトで使用するための静的パスワードを保存することもできる。Facebook社は従業員の認証情報にYubiKeyを使用している。Google社は従業員と顧客の両方に対応している。いくつかのパスワードマネージャーはYubiKeyに対応している。YubicoはYubiKeyに似た認証装置のSecurity Keyも製造しているが、公開鍵認証に焦点を置いたものである。 Yubikeyは、HMACベースワンタイムパスワード（英語版）アルゴリズム（HOTP）と時間ベースワンタイムパスワードアルゴリズム（TOTP）を実装し、USB HID（英語版）プロトコルを介してワンタイムパスワードを配信するキーボードとして自身を識別する。YubiKey NEOおよびYubiKey 4には、1024ビット、2048ビット、3072ビット、4096ビットのRSA（2048ビット以上の鍵サイズの場合はGnuPGバージョン2.0以上が必要）と楕円曲線暗号（ECC）p256およびp384、近距離無線通信（NFC）、FIDO U2Fを使用したOpenPGPカード（英語版）などのプロトコルが含まれている。YubiKeyを使用することで、秘密鍵を外部に公開することなく、メッセージの署名、暗号化、復号を行うことができる。第4世代のYubiKeyは2015年11月16日に発売された。これは4096ビットのRSA鍵を持つOpenPGPに対応し、Dockerイメージのコード署名（英語版）を可能にする機能であるPIVスマートカードのPKCS 11（英語版）をサポートしている。 Yubico社は、最高経営責任者のStina Ehrensvärd (英語版) 氏が2007年に設立した非公開企業で、パロアルト、シアトル、ストックホルムにオフィスを構えている。Yubico社の最高技術責任者であるJakob Ehrensvärdは、ユニバーサル・セカンド・ファクター（U2F）として知られるようになった最初の強力な認証仕様の筆頭著者である。 2018年、YubikeyはFIDO2（英語版）にも対応できるYubikey 5シリーズの提供を開始した。 Yubico社は2007年に設立され、同年11月に開発者向けのPilot Boxの提供を開始した。2008年4月に開催された年次RSAカンファレンスで初代YubiKey製品を発表し、2009年にはより堅牢なYubiKey IIモデルを発売した。「YubiKey」という名前は、日本語の「指」と「your ubiquitous key」（「あなた用のどこでも鍵」）に由来する。 YubiKey II以降の製品では、二つの用法が用意されており、AES秘密鍵やその他の設定で二つの異なる構成を保存できる。認証時には、一つ目の用法は端末のボタンを短く押すもの、二つ目の用法はボタンを2～5秒長押しするものである。 2010年、Yubiko社は、「YubiKey OATH」と「YubiKey RFID」モデルの提供を開始した。YubiKey OATHでは、独自のOTP認証方式である32文字のワンタイムパスワードに加えて、オープン認証イニシアティブ（英語版）（OATH）のプロトコルを利用した6文字-8文字のワンタイムパスワードを生成する機能が追加された。Yubikey RFIDモデルには、OATH機能に加えて、MIFARE Classic 1kのRFIDチップが搭載されているが、これはパッケージ内の別個のデバイスであり、USB接続による通常のYubicoソフトウェアでは設定できない。 Yubico社は2012年2月にYubiKey Nanoを発表した。これは標準のYubiKeyの小型版で、ほぼ完全にUSBポート内に収まり、ボタン用の小さなタッチパッドのみが露出するように設計されていた。YubiKeyのその後のほとんどのモデルは、標準版と「nano」版の両方で利用可能である。 2012年には、Yubico社は、近距離無線通信（NFC）技術を実装し、デバイスのUSB側と統合することで、以前のYubiKey RFID製品を改良した製品『YubiKey Neo』を発売した。YubiKey Neo（および「nano」版の YubiKey Neo-n）は、NFC Data Exchange Format（NDEF）メッセージに含まれる設定可能なURLの一部として、ワンタイムパスワードをNFCリーダーに送信できる。Neo は、USB HID（英語版）キーボードとして端末に接続できるのに加えて、CCID（英語版）スマートカードとしめ端末と通信することもできる。CCIDモードはPIVスマートカードとOpenPGPに対応し、USB HIDはワンタイムパスワード認証方式に使用される。 2014年には「YubiKey Neo」が改良され、FIDO Universal 2nd Factor（U2F）に対応した。その年の後半、YubicoはFIDO U2Fセキュリティキーをリリースしたが、これには特にU2Fサポートが含まれていたが、以前のYubiKeyのその他のワンタイムパスワード、静的パスワード、スマートカード、NFC機能は含まれていなかった。発売時には、標準版が25米ドル（Nanoバージョンは40ドル）、Neo版が50米ドル（Neo-nは60ドル）であったのに対し、わずか18米ドルという当時として低価格で販売されていた。FIDO/U2Fの開発中にGoogle社が発行したプレリリースデバイスの中には、「Yubico WinUSB Gnubby（gnubby1）」と報告されている。 2015年4月、同社は標準版とnano版の「YubiKey Edge」を発売した。これは、OTPやU2F認証には対応するが、スマートカードやNFCには対応していないため、機能面ではNeoとFIDO U2F製品の中間に位置していた。 2015年11月、Yubico社は、YubiKey 4 系統の製品を発売した。標準サイズとnanoサイズのUSB-Aモデルが用意されている。YubiKey 4 は、許容されるOpenPGPキーサイズを4,096ビット（従来の2048ビットと比較して）に拡大するなど、YubiKey Neoのほとんどの機能を搭載しているが、NeoのNFC機能は削除された。 Yubico社は、CES 2017で、新しいUSB-Cデザインに対応するためにYubiKey 4シリーズの拡張を発表した。YubiKey 4Cは2017年2月13日に発売された。USB-C接続のAndroid OS上ではワンタイムパスワード機能のみに対応し、その他の機能はユニバーサル2ndファクター（U2F）など現在は対応していない。2017年9月には4C Nano版が利用可能になった。 2018年4月、同社は、新しいFIDO2認証プロトコルである「WebAuthn」（3月にW3C候補推奨ステータスに到達）および「Client to Authenticator Protocol」（CTAP、2018年5月時点でまだ開発中）を実装した初のデバイス「Security Key by Yubico」を発表した。発売時には、USB-Aコネクタを備えているもの（標準版）のみで提供される。前モデルの「FIDO U2F Security Key」と同様に青を基調色とし、ボタンには鍵のアイコンが採用されている。ボタンとキーリングの穴の間のプラスチックに「2」という数字が刻まれていることで区別される。また、FIDO U2F機能は保持しているが、従来のデバイスのOTP機能やスマートカード機能が欠けているため、YubiKey NeoやYubiKey 4よりも安価で、発売時には1個あたり20米ドルとなっている。 YubiKey製品の主な機能と機能の一覧。 ワンタイムパスワードおよび内部に保存された静的パスワードを使用する場合、YubiKey は、システムのキーボード設定にできるだけ依存しないようにするために、変更された16進数のアルファベットを使用して文字を出力する。このアルファベットはModHexまたはModified Hexadecimalと呼ばれ、16進数の「0123456789abcdef」に対応する文字「cbdefghijklnrtuv」で構成される。YubiKeysはUSB HIDモードで生のキーボードスキャンコードを使用するため、Dvorakのような異なるキーボードレイアウトで設定されたコンピュータでデバイスを使用すると問題が発生する可能性がある。ワンタイムパスワードを使用する場合は、オペレーティングシステムの機能を使用して、一時的に標準のUSキーボードレイアウト（または同等なもの）に切り替えることが勧められているが、YubiKey Neo以降のデバイスは、ModHex文字セットと互換性のないレイアウトに合わせて代替スキャンコードを設定することができる。 YubiKeysとSecurity KeysのU2F認証は、キーボードスキャンコードの代わりに生のバイナリメッセージを送受信する代替U2FHIDプロトコルを使用することで、この問題を回避する。CCIDモードは、HIDプロトコルを全く使用しないスマートカードリーダーとして機能する。 曖昧さによるセキュリティ（英語版）の例として、Yubikey上で実行されるコードのほとんどがソースコードが公開されないこと（クローズドソース）が挙げられる。YubicoはPGPやHMACベースワンタイムパスワード（英語版）（HOTP）のような業界標準機能のコードを公開したが、それは製品の第4世代の時点で、これは新しい製品に付属しているコードと同じではないことが明らかになった。新しい製品は工場で恒久的にファームウェアロックされているため、オープンソースコードをコンパイルして手動でデバイスに読み込むことはできない。 U2F（英語版）、PIV、Modhexなどの他の機能のコードは完全にクローズドソースである。 2016年5月16日、Yubicoの最高経営責任者であるJakob Ehrensvärd氏は、オープンソースコミュニティの懸念に対して、「私たちは製品会社として、既製品のコンポーネントに基づく実装に対して明確な立場を取っており、商用グレードのAVRやARMコントローラのようなものはセキュリティ製品に使用するには適さないと考えている。」というブログ記事で回答した。 Techdirtの創設者であるマイク・マスニック氏はこの決定に対し、「暗号化は厄介なものである。ほとんどの場合、脆弱性やバグがある。これは最近多くのことを指摘している。しかし、それらを修正する最善の方法は、多くの知識のある人にコードを見てもらうことである。クローズドソースではそれは不可能である。」と強く批判した。 2017年10月、セキュリティ研究者は、さまざまなセキュリティキーやセキュリティトークン製品（YubiKeyを含む）で幅広く使用されているInfineonのセキュリティチップで使用されている暗号化ライブラリでのRSAキーペア生成の実装に脆弱性（ROCAと呼ばれる）を発見した。この脆弱性により、攻撃者は公開鍵を使用して秘密鍵を再構築できる。リビジョン 4.2.6から4.3.4までのYubiKey 4、YubiKey 4C、YubiKey 4 Nanoのすべてのデバイスがこの脆弱性の影響を受けている。Yubicoでは、出荷されているYubiKey 4のすべてのデバイスについて、別のキー生成機能に切り替えることでこの問題を解決し、影響を受けたキーの交換を無償で提供した。交換オファーは2019年3月31日で終了した。場合によっては、YubiKeyの外部で新しいキーを生成し、デバイスにインポートすることで、この問題を回避することができる。 2018年1月、Yubicoは、Yubikey NEOのOTP機能のパスワード保護が特定の条件下でバイパスされる可能性がある中程度の脆弱性を開示した。この問題はファームウェアバージョン3.5.0で修正されており、Yubicoは影響を受けたと主張するユーザーに対し、無償で交換用キーを提供した。 2019年6月、Yubicoは、ファームウェアバージョン4.4.2および4.4.4を搭載したFIPS認証デバイスにおいて、電源投入直後にランダム性が低下したことを報告するセキュリティアドバイザリを公開した（バージョン4.4.3は存在しない）。ランダム性が低下したセキュリティキーを使用すると、予想よりも簡単にキーが検出されて侵害される可能性がある。この問題は、FIPSシリーズのみに影響し、特定のシナリオのみに影響を与えたが、FIPS ECDSAの使用は「リスクが高い」としている。同社は、影響を受けた鍵の交換を無償で行っている。 2019～20年の香港抗議行動では、警察による権力乱用に直面した抗議者のネット上の安全性に大きな懸念が寄せられている。Yubicoは、香港のデモ参加者を保護するために500台のYubikeyをスポンサーとして提供した。同社は、脆弱なインターネットユーザーを保護するという同社の使命に基づいて決定したとしており、言論の自由を支持する人たちと協力しているという。 OpenPGPカード（英語版） ^ McMillan (3 October 2013). “Facebook Pushes Passwords One Step Closer to Death”. Wired. 7 November 2014閲覧。 ^ Diallo, Amadou (30 November 2013). “Google Wants To Make Your Passwords Obsolete”. Forbes. https://www.forbes.com/sites/amadoudiallo/2013/11/30/google-wants-to-make-your-passwords-obsolete/ 15 November 2014閲覧。  ^ Blackman, Andrew (15 September 2013). “Say Goodbye to the Password”. The Wall Street Journal. オリジナルの3 January 2014時点におけるアーカイブ。. https://web.archive.org/web/20140103085719/https://online.wsj.com/news/articles/SB10001424127887323585604579008620509295960 15 November 2014閲覧。  ^ “YubiKey Authentication”. LastPass. 15 November 2014閲覧。 ^ “KeePass & YubiKey”. KeePass. 15 November 2014閲覧。 ^ a b "Yubico Releases FIDO U2F Security Key" (Press release). 21 October 2014. 2018年5月5日閲覧。 ^ a b "Yubico Launches New Developer Program and Security Key for FIDO2 and WebAuthn W3C Specifications" (Press release). 10 April 2018. 2018年5月6日閲覧。 ^ “Launching The 4th Generation YubiKey”. Yubico. 20 November 2015閲覧。 ^ a b “With a Touch, Yubico, Docker Revolutionize Code Signing”. Yubico. 20 November 2015閲覧。 ^ “The Team”. Yubico. 12 September 2015閲覧。 ^ “History of FIDO”. FIDO Alliance. 16 March 2017閲覧。 ^ “Yubico launches new YubiKey 5 Series 2FA keys, supports passwordless FIDO2 and NFC”. Android Police (2018年9月24日). 2019年10月7日閲覧。 ^ “Specifications Overview”. FIDO Alliance. 4 December 2015閲覧。 ^ “What Is A Yubikey”. Yubico. 7 November 2014閲覧。 ^ Clark (2012年2月22日). “Yubico introduces one-time password token that secures access to the contents of NFC phones”. NFC World. 2018年5月5日閲覧。 ^ Maples (2012年12月26日). “YubiKey NEO Composite Device”. Yubico. 2018年5月5日閲覧。 ^ "Yubico Introduces Industry's First FIDO Ready™ Universal 2nd Factor Device" (Press release). 6 January 2014. 2018年5月5日閲覧。 ^ “About Yubico, Maker of the YubiKey”. Yubico. 2023年4月29日時点のオリジナルよりアーカイブ。2023年4月29日閲覧。 ^ “pamu2fcfg doesn't support test devices”. 2021年2月12日閲覧。 ^ "Yubico Launches YubiKey Edge at RSA 2015; OTP and U2F Two-Factor Authentication in One Key" (Press release). 2018年5月5日閲覧。 ^ “NEW YubiKey 4C featuring USB-C revealed at CES 2017 | Yubico”. Yubico. (2017年1月5日). https://www.yubico.com/2017/01/yubikey-usb-c-ces2017/ 2017年9月14日閲覧。  ^ “Can the YubiKey 4C be plugged directly into Android phones or tablets with USB-C ports? | Yubico”. Yubico. https://www.yubico.com/support/knowledge-base/categories/articles/can-yubikey-4c-plugged-directly-android-phones-tablets-usb-c-ports/ 2017年9月14日閲覧。  ^ “Our Family is Growing! YubiKey 4C Nano Unveiled at Microsoft Ignite”. Yubico (2017年9月25日). 2018年5月5日閲覧。 ^ Jones (2018年3月20日). “Candidate Recommendation (CR) for Web Authentication Specification”. W3C Web Authentication Working Group. 2018年5月6日閲覧。 ^ “Yubico launches YubiKey Pilot Box”. Yubico (2007年11月26日). 2008年2月21日時点のオリジナルよりアーカイブ。2021年2月12日閲覧。 ^ Steve Gibson (April 2008). “Security Now! Notes for Episode #141”. Security Now!. Gibson Research Corporation. 2018年5月5日閲覧。 ^ Leo Laporte and Steve Gibson (2008年4月24日). “Episode #141 - RSA Conference 2008”. Security Now!. Gibson Research Corporation. 2018年5月5日閲覧。 ^ Mike (2009年8月27日). “Yubikey II – got it”. Read My Damn Blog. 2018年5月5日閲覧。 ^ “Company Information” (英語). Yubico. 2020年11月30日閲覧。 ^ “RFID YubiKey”. IDivine Technology. 2018年5月5日閲覧。 ^ Maples, David (2012年12月26日). “YubiKey NEO Composite Device”. Yubico. 2018年5月5日閲覧。 ^ “YubiKey Hardware”. Yubico. 2014年11月7日時点のオリジナルよりアーカイブ。2021年2月12日閲覧。 ^ “pamu2fcfg doesn't support test devices”. 2021年2月12日閲覧。 ^ “NEW YubiKey 4C featuring USB-C revealed at CES 2017 | Yubico”. Yubico. (2017年1月5日). https://www.yubico.com/2017/01/yubikey-usb-c-ces2017/ 2017年9月14日閲覧。  ^ “What YubiKey Do You Have”. 2021年2月11日閲覧。 ^ “What YubiKey Do You Have”. 2021年2月11日閲覧。 ^ “ROCA: Vulnerable RSA generation (CVE-2017-15361) [CRoCS wiki]”. crocs.fi.muni.cz. 2017年10月19日閲覧。 ^ “NVD - CVE-2017-15361”. nvd.nist.gov. 2017年10月19日閲覧。 ^ “Infineon RSA Key Generation Issue - Customer Portal”. Yubico.com. 11 June 2019閲覧。 ^ “Yubico Mitigation Recommendations”. Yubico.com. 11 June 2019閲覧。 ^ “Security advisory YSA-2018-01” (英語). Yubico. 2021年1月4日閲覧。 ^ “Security advisory YSA-2018-01” (英語). Yubico. 2021年1月4日閲覧。 ^ “Bad News: Two-Factor Authentication Pioneer YubiKey Drops Open Source PGP For Proprietary Version”. techdirt. 21 September 2020閲覧。 ^ “Bad News: Two-Factor Authentication Pioneer YubiKey Drops Open Source PGP For Proprietary Version”. Techdirt (16 May 2016). 27 March 2020閲覧。 ^ “Infineon RSA Key Generation Issue - Customer Portal”. Yubico.com. 11 June 2019閲覧。 ^ “Yubico Mitigation Recommendations”. Yubico.com. 11 June 2019閲覧。 公式ウェブサイト YubiKey 5 比較表 YubiKey FIPS 比較表