Future Technology Devices International Ltd USB-Key Datasheet Doc Document Reference No.: FT_000062 Version 1.00 Issue Date: 2008-07-17 Future Technology Devices International Ltd (FTDI) 373 Scotland Street, Glasgow G5 8QB United Kingdom Tel.: +44 (0) 141 429 2777 Fax: + 44 (0) 141 429 2758 E-Mail Mail (Support): support@ftdichip.com Web: http://www.ftdichip.com Neither the whole nor any part of the information contained in, or the product described in this manual, may be adapted or reproduced in any material or electronic form without the prior written consent of the copyright holder. This product and its documentation are supplied on an as-is basis and no warranty as to their suitability for any particular purpose is either made or implied. Future Techn Technology Devices International Ltd will not accept any claim for damages howsoever arising as a result of use or failure of this product. Your st statutory atutory rights are not affected. This product or any variant of it is not intended for use in any medical appliance, device or system in which the failure of the product might reasonably be expected to result in personal pers injury. This document provides preliminary iminary information that may be subject to change without notice. No freedom to use patents or other intellectual property rights is implied by the publication of this document. Future Technology Devices International Ltd, 373 Scotland Street, Glasgow G5 8QB 8 United Kingdom. Scotland Registered Number: SC136640 Copyright (c) 2008 Future Technology Devices International Limited Document Reference No.: FT_000062 USB-Key Datasheet Version 1.00 Clearance No.: FTDI# 41 Table of Contents 1 2 3 Introduction............................................................................................ 2 1.1 Overview .............................................................................................................. 2 1.2 Features and Applications .................................................................................. 2 1.3 USB Key Connections ......................................................................................... 2 FTDI USB KEY User Guide .................................................................... 3 2.1 USB Connection .................................................................................................. 3 2.2 Reading The FTDIChip-IDTM USB Key ............................................................... 3 2.3 Basic Description of the FTDIChipID Function calls ........................................ 3 2.4 Using the EEPROM Writeable Area of the FTDI USB Key. ............................... 4 2.5 Viewing Contents of FTDI USB Key ................................................................... 4 Application Examples ........................................................................... 5 3.1 Security Dongle Using SafeGuard-IT ................................................................. 5 4 Mechanical Dimensions ........................................................................ 6 5 Contact Information............................................................................... 7 Appendix A - FTDI USB Key FT232R EEPROM Configuration................................... 8 Appendix B - Revision History ..................................................................................... 9 Copyright (c) Future Technology Devices International Limited 1 Document Reference No.: FT_000062 USB-Key Datasheet Version 1.00 Clearance No.: FTDI# 41 1 Introduction 1.1 Overview The FTDI USB Key is security device which has a unique identification number burnt into it during manufacture. This is the FTDIChip-IDTM number. This FTDIChip-IDTM number is only readable over the USB interface making it an ideal "key" for "unlocking" particular applications. 1.2 Features and Applications The FTDI USB Key has the following features: * * * * * * Simple to use USB interface to any USB host or hub. Unique FTDIChip-IDTM number can be used to provide a security dongle for software applications. Additional security possible by encrypting the FTDIChip-IDTM number and storing in EEPROM writeable area of FTDI USB Key. Enhanced security protection using SafeGuard-IT Active-X control for Windows. This can be used to generate asymmetric public-private key encryption to provide secure dongle functionality. USB Key can be used to unlock security systems - access control. Password protected access. 1.3 USB Key Connections The USB Key connects to PC USB interface. The following Table 1.1 describe the function of the connector: Pin Number Name Type Description 1 VBUS Power Input 2 D- Input Data Minus 3 D+ Input Data Plus 4 GND Power Input 0V 5 GND Power Input 0V +5V from USB bus Table 1.1 USB Connector Signal Description Copyright (c) Future Technology Devices International Limited 2 Document Reference No.: FT_000062 USB-Key Datasheet Version 1.00 Clearance No.: FTDI# 41 2 FTDI USB KEY User Guide The following illustration, Figure 2.1, shows a representation of the FTDI USB Key unit. The user interface is described below. Figure 2.1 FTDI USB Key Illustration. 2.1 USB Connection The FTDI USB Key module connects to a USB hub or host port via the USB connector. This will supply power to the FTDI USB Key. 2.2 Reading The FTDIChip-IDTM USB Key The unique FTDI USB Key FTDIChip-IDTM number can only be read using function calls from the FTDChipID.dll. This DLL can be downloaded from the FTDI website for Windows (V1.1.0), Linux (V0.1.0) and Mac OS X (V0.1.0). The D2XX drivers must also be installed. The drivers can be downloaded from http://www.ftdichip.com/Drivers/D2XX.htm The FTDChipID.dll and the D2XX.dll can reside in the same directory. An FTDIChip-IDTM programmer's guide gives details of how to use the DLL and is available from the http://www.ftdichip.com/Documents/ProgramGuides.htm page. The programmers guide lists the function calls which need to be used by the software application to identify the unique FTDIChip-IDTM number. 2.3 Basic Description of the FTDIChipID Function calls The following list gives a brief description of the function calls available in order to obtain the FTDIChip-IDTM number when using the FTDChipID.dll * * * * * * * * FTID_GetNumDevices - returns the number of devices attached on the USB bus. FTID_GetDeviceSerialNumber - Given a device index return the device serial number. FTID_GetDeviceDescription - Given a device index returns with description of the device. FTID_GetDeviceLocationID - Given a device index returns with location ID. FTID_GetDeviceChipID - Given a device index returns the unique FTDIChip-IDTM number of the device. FTID_GetChipIDFromHandle - Given a device handle returns the unique FTDIChip-IDTM (must use a valid D2XX device handle). FTID_GetDllVersion - get the dll version. FTID_GetErrorCodeString - get the English translation of the error code. Copyright (c) Future Technology Devices International Limited 3 Document Reference No.: FT_000062 USB-Key Datasheet Version 1.00 Clearance No.: FTDI# 41 2.4 Using the EEPROM Writeable Area of the FTDI USB Key. To further improve security, the unique FTDIChip-IDTM number read from the FTDI USB Key can be read, further encrypted and written back to a EEPROM user accessible area within the FTDI USB Key. This further security could make use of industry standard encryption methods (DES, 3DES, AES, Blowfish for example) plus make use of a timestamp for registration purposes. To access this user area it is necessary to use the FT_EE_UASize, FT_EE_UAWrite and the FT_EE_UARead function calls available in the D2XX.dll. This DLL is available from the FTDI driver download area at D2XX Direct Drivers. The D2XX programmers guide is also available from D2XXPG34.pdf. The amount of EEPROM user available space available varies depending on what data has already been written to the EEPROM. Generally, the longer the strings written to the EEPROM, the less free space available. Users should check that sufficient space is available to write back any further encrypted data. 2.5 Viewing Contents of FTDI USB Key The FTDI USB Key Device Descriptors and Configuration Descriptors can be read using the USBView software utility. USBView can be downloaded free from the FTDI website at http://www.ftdichip.com/Resources/Utilities.htm Copyright (c) Future Technology Devices International Limited 4 Document Reference No.: FT_000062 USB-Key Datasheet Version 1.00 Clearance No.: FTDI# 41 3 Application Examples Numerous examples showing how to access the unique FTDIChip-IDTM number is given in many different software languages on the FTDI website at http://www.ftdichip.com/Projects/FTDIChip-ID.htm 3.1 Security Dongle Using SafeGuard-IT SafeGuard-IT is an ActiveX control for Windows which works with the FTDI_USB_KEY to provide security dongle functionality. The SafeGuard-IT component works by exploiting the FTDIChip-IDTM feature of the FT232R within the FTDI-USB-KEY together with an asymmetric public-private key encryption scheme. The SafeGuard-IT security scheme works as follows: 1. Generate a public-private key pair using the SafeGuard-IT ActiveX control. These keys should be saved to files. 2. Encrypt the FTDIChip-ID using the private key and an optional password. This encrypted information is then stored in the FTDI_USB_KEY. 3. Distribute the programmed FTDI_USB_KEY with the application software. The Safeguard-IT DLL file and the public key are also required by the application software. 4. When the application software is loaded, it can use the SafeGuard-IT control to verify that the required FTDI_USB_KEY device is connected to the client PC. This can be used to prevent software from running if a licensed dongle is not connected. The SafeGuard-IT ActiveX control and SafeGuard-IT.dll are available free from the FTDI website http://www.ftdichip.com/Projects/SafeGuard-IT/SafeGuard-IT.zip Copyright (c) Future Technology Devices International Limited 5 Document Reference No.: FT_000062 USB-Key Datasheet Version 1.00 Clearance No.: FTDI# 41 4 Mechanical Dimensions Figure 4.1 USB Key Dimensions Copyright (c) Future Technology Devices International Limited 6 Document Reference No.: FT_000062 USB-Key Datasheet Version 1.00 Clearance No.: FTDI# 41 5 Contact Information Head Office - Glasgow, UK Future Technology Devices International Limited 373 Scotland Street Glasgow G5 8QB United Kingdom Tel: +44 (0) 141 429 2777 Fax: +44 (0) 141 429 2758 E-mail (Sales) sales@ftdichip.com E-mail (Support) support@ftdichip.com E-mail (General Enquiries) admin1@ftdichip.com Web Site URL http://www.ftdichip.com Web Shop URL http://apple.clickandbuild.com/cnb/shop/ftdichip Branch Office - Taipei, Taiwan Future Technology Devices International Limited (Taiwan) 4F, No 18-3, Sec. 6 Mincyuan East Road Neihu District Taipei 114 Taiwan, R.O.C. Tel: +886 (0) 2 8791 3570 Fax: +886 (0) 2 8791 3576 E-mail (Sales) tw.sales1@ftdichip.com E-mail (Support) tw.support1@ftdichip.com E-mail (General Enquiries) tw.admin1@ftdichip.com Web Site URL http://www.ftdichip.com Branch Office - Hillsboro, Oregon, USA Future Technology Devices International Limited (USA) 7235 NW Evergreen Parkway, Suite 600 Hillsboro, OR 97123-5803 USA Tel: +1 (503) 547 0988 Fax: +1 (503) 547 0987 E-Mail (Sales) us.sales@ftdichip.com E-Mail (Support) us.admin@ftdichip.com Web Site URL http://www.ftdichip.com Distributor and Sales Representatives Please visit the Sales Network page of the FTDI Web site for the contact details of our distributor(s) and sales representative(s) in your country. Copyright (c) Future Technology Devices International Limited 7 Document Reference No.: FT_000062 USB-Key Datasheet Version 1.00 Clearance No.: FTDI# 41 Appendix A - FTDI USB Key FT232R EEPROM Configuration This FT232R device within the FTDI_USB_KEY contains an EEPROM which contains the USB configuration descriptors for that device. When the FTDI_USB_KEY is plugged into a PC or a USB reset is performed, the PC will read these descriptors. The default values stored into the internal EEPROM are defined in Table 5.1 Parameter Value Notes USB Vendor ID (VID) 0403h FTDI default VID (hex) USB Product UD (PID) 6001h FTDI default PID (hex) Serial Number Enabled? Yes Serial Number See Note Pull down I/O Pins in USB Suspend Disabled Manufacturer Name FTDI Product Description FTDI USB-KEY Max Bus Power Current 90mA Power Source Bus Powered Device Type FT232R A unique serial number is generated and programmed into the EEPROM during device final test. Enabling this option will make the device pull down on the UART interface lines when the power is shut off (PWREN# is high). Returns USB 2.0 device description to the host. USB Version 0200 Note: The device is be a USB 2.0 Full Speed device (12Mb/s) as opposed to a USB 2.0 High Speed device (480Mb/s). Taking RI# low will wake up the USB host controller from Remote Wake Up Disabled High Current I/Os Disabled Enables the high drive level on the UART and CBUS I/O pins. Load VCP Driver Enabled Makes the device load the VCP driver interface for the device. Invert TXD Disabled Signal on this pin becomes TXD# if enable. Invert RXD Disabled Signal on this pin becomes RXD# if enable. Invert RTS# Disabled Signal on this pin becomes RTS if enable. Invert CTS# Disabled Signal on this pin becomes CTS if enable. suspend. Table 5.1 Default Internal EEPROM Configuration The internal EEPROM in the FT232R can be re-programmed over USB using the utility program MPROG. MPROG can be downloaded from the www.ftdichip.com. Version 2.8a or later is required for the FT232R chip. Users who do not have their own USB Vendor ID but who would like to use a unique Product ID in their design can apply to FTDI for a free block of unique PIDs. Contact FTDI support for this service. Copyright (c) Future Technology Devices International Limited 8 Document Reference No.: FT_000062 USB-Key Datasheet Version 1.00 Clearance No.: FTDI# 41 Appendix B - Revision History Version 1.00 Initial Datasheet Release Copyright (c) Future Technology Devices International Limited July 2008 9