>Rainbow makes several different implementations of dongles, depending >on your desire for fanciness and the size of your budget. If you >are a developer you can get demo keys and they explain how >they work. But the key you have will have been "customized" >by the AutoCAD people, probably even to assigning which >pins take data and which clock them through, as well >as some cipher keys in the scrambling algorithm. So the best >you could probably hope for is to be able to characterize >what comes back after you send something through it, >and use that to lock your software, without ever actually >learning anything about how the insides work. I have never heard of software suppliers modifying the pinout of the dongles provided by the dongle manufacturer. I would doubt this would actually happen as they seem to use the control pins on the ports to send an I2C type serial communication between the dongle and the port. Early dongles used I2C EEPROM's as discrete chips. Slightly later ones used the bare chip bonded straight to the PCB with the epoxy blob over it, but were essentially the same functionality as the discrete chip ones. Later ones have some sort of chip which performs more like a smartcard credit card and can provide some scrambling capability. In all cases there seems to be a set of registers which contain the dongle manufacturer/type, an identifier for the software manufacturer, and the software manufacturers product identifier, and some sort identifier to allow the dongle to apply to a single product or multiple products. The actual placing of these registers in the address space differs from manufacturer to manufacturer. -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.