Yubico Forum
https://forum.yubico.com/

Finding out the Yubikey firmware revision
https://forum.yubico.com/viewtopic.php?f=16&t=85
Page 1 of 2

Author:  Jakob [ Sun Jun 08, 2008 4:14 pm ]
Post subject:  Finding out the Yubikey firmware revision

I've been asked how to check the Yubikey firmware version a few times.

It can be read out via the configuration tool and also via the OS. It is stored in one of the USB descriptors.

Under Windows:
- Fire up the System properties. Go in under Hardware / Device manager.
- Check under "Human Interface Devices". Beside mice, keyboard and other stuff you'll find the "Yubico Yubikey Touch"
- Check under "Details" and browse through the list until "Firmware revision" is found.

Under MacOS X:
- Under "About this Mac" / "More info..." / USB, the Yubikey can be found.
- The firmware revision is shown right away

I just assume there is some straight-foward way to get it under Linux. If you happen to know how, please let me/us know.


Regards,

Jakob E
Hardware- and firmware guy @ Yubico

Author:  Simon [ Mon Jun 09, 2008 8:44 am ]
Post subject:  Re: Finding out the Yubikey firmware revision

Under GNU/Linux you can use 'lsusb':

Code:
jas@mocca:~$ lsusb
Bus 005 Device 012: ID 1050:0010 
...


This is the yubikey. For some reason the linux USB repository I'm using doesn't know this is a yubikey, I thought they retrieved USB listings for upstream automatically.

To look at the details, you can run:

Code:
jas@mocca:~$ lsusb -d 1050:0010 -v

Bus 005 Device 012: ID 1050:0010 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x1050
  idProduct          0x0010
  bcdDevice            1.10
  iManufacturer           1 Yubico
  iProduct                2 Yubico Yubikey Touch
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower               50mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      71
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
Device Status:     0x0000
  (Bus Powered)
jas@mocca:~$


I suspect the 'bcdDevice' is the firmware version, but I'm not sure. Jakob?

/Simon

Author:  Jakob [ Mon Jun 09, 2008 8:42 pm ]
Post subject:  Re: Finding out the Yubikey firmware revision

Right so. The version number in the USB descriptor is a 16-bit BCD number and 0x0110 is version 1.1.0

... which reveals that the USB descriptor was not updated when the firmware version number was lifted to 1.2.0. Sorry for that.

JakobE
Hardware- and firmware guy @ Yubico

Author:  TomN [ Mon Jun 09, 2008 11:22 pm ]
Post subject:  Re: Finding out the Yubikey firmware revision

The Yubikey I received last week also shows version 1.10 under WinXP's Device Manager.

Tomn

Author:  DavidFlint [ Mon Jun 23, 2008 10:20 pm ]
Post subject:  Re: Finding out the Yubikey firmware revision

JakobE wrote:
I've been asked how to check the Yubikey firmware version a few times.

It can be read out via the configuration tool and also via the OS. It is stored in one of the USB descriptors.

Under Windows:
- Fire up the System properties. Go in under Hardware / Device manager.
- Check under "Human Interface Devices". Beside mice, keyboard and other stuff you'll find the "Yubico Yubikey Touch"
- Check under "Details" and browse through the list until "Firmware revision" is found.

......


Regards,

Jakob E
Hardware- and firmware guy @ Yubico


I have Windows Vista SP1.

The Device Manager shows Human Interface Device but doesn't mention Yubico or Yubikey. The driver and details are all for a Microsoft Driver 6.0.6001.18000.

Am I missing something?

I also discovered Yubikeys on Security Now!

Thanks.

Author:  caitsith6502 [ Mon Jun 23, 2008 11:09 pm ]
Post subject:  Re: Finding out the Yubikey firmware revision

Under windows, if it doesn't show up as a Yubico Yubikey touch, You can still find out its version.

It will most likely be listed as "HID Keyboard Device" under Keyboards. In any case, Yubikeys will have VID = 0x1050 and PID = 0x0010. If you go under details, and select Hardware IDs, you will find the Revision, = 0x0110. (Either 1.1 or 1.2 yubikeys, since they forgot to update the revision number for 1.2), or 0x0130 for 1.30 Yubikeys.

(Oh yeah, I am another one to have discovered yubikey by security now.)

Author:  DavidFlint [ Tue Jun 24, 2008 9:42 am ]
Post subject:  Re: Finding out the Yubikey firmware revision

caitsith6502 wrote:
Under windows, if it doesn't show up as a Yubico Yubikey touch, You can still find out its version.

It will most likely be listed as "HID Keyboard Device" under Keyboards. In any case, Yubikeys will have VID = 0x1050 and PID = 0x0010. If you go under details, and select Hardware IDs, you will find the Revision, = 0x0110. (Either 1.1 or 1.2 yubikeys, since they forgot to update the revision number for 1.2), or 0x0130 for 1.30 Yubikeys.

(Oh yeah, I am another one to have discovered yubikey by security now.)


Thanks - it still shows as a generic HID but I have checked the details and they do indicate it is a Version 1.1(or2) Yubikey.

Author:  merlin [ Thu Sep 25, 2008 4:35 am ]
Post subject:  Re: Finding out the Yubikey firmware revision

Hi Jakob

In another post (viewtopic.php?p=180#p180) you mention the bit layout of the decrypted OTP may be revised in the future.

Would it would it be possible to include the firmware version (or at least the OTP layout version) in a known/fixed place in the decrypted OTP. This would allow the authentication server to know what bit layout it's trying to interpret

Just a thought... :)

Author:  harish [ Fri Oct 31, 2008 1:17 pm ]
Post subject:  Re: Finding out the Yubikey firmware revision

I am trying to check the firmware and other details from my Fedora 10 machine. Here's what
I have from two command lsusb and lsusb -d 1050:0010 -v

[root@qbic ~]# lsusb
Bus 001 Device 002: ID 0bc2:3000 Seagate RSS LLC
Bus 001 Device 001: ID 1d6b:0002
Bus 004 Device 003: ID 1050:0010
Bus 004 Device 002: ID 045e:006a Microsoft Corp.
Bus 004 Device 001: ID 1d6b:0001
Bus 003 Device 002: ID 5543:0003 UC-Logic Technology Corp. Genius MousePen 4x3 Tablet/Aquila L1 Tablet
Bus 003 Device 001: ID 1d6b:0001
Bus 002 Device 001: ID 1d6b:0001
[root@qbic ~]# lsusb -d 1050:0010
Bus 004 Device 003: ID 1050:0010

[root@qbic ~]# lsusb -d 1050:0010 -v

Bus 004 Device 003: ID 1050:0010
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x1050
idProduct 0x0010
bcdDevice 1.31
iManufacturer 1 Yubico
iProduct 2 Yubico Yubikey Touch
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 34
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
Remote Wakeup
MaxPower 50mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 71
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 10

I guess "bcdDevice 1.31" is the version number?

Harish

Author:  Simon [ Thu Nov 27, 2008 11:48 am ]
Post subject:  Re: Finding out the Yubikey firmware revision

harish wrote:
I guess "bcdDevice 1.31" is the version number?


Yup. :)

/Simon

Page 1 of 2 All times are UTC + 1 hour
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/