Emulate a floppy or other usb storage device

Would it be possible for an arduino board (with USB shield) to mimic a certain USB device, down to the hardware ID level? In other words, if I have an optical unit connected via USB in a propietary device, I´d like to emulate either a floppy disk or a CD/DVD with an arduino board.

Yes, in other words, I´d like to do a floppy or CD emulator with an arduino board. Then I could supply the storage to the arduino board via a SD slot or ethernet I don´t care. The biggest issue I think is to fake the USB mass storage protocol, and identify as the unit the hardware expects (ie, if it expects an atapi cd rom with brand name "nec" I should be able to supply this data as well).

I´m just thinking aloud. Any ideas/feedback? thanks.... FC