Re: FPGA
FPGA's don't store the code or bit file since they are volatile. The bit-file for programming them is stored in the PROM device that the FPGA uses for configuration.
Most PROM's do not have any protection, so if you can hack-into the PROM you can read the bit file. But the bit file is of no use as you cannot convert it back to HDL or any language. It can be used to duplicate the program and manufacture the another product with the same configuration.
Vendor's now offer FPGA's & PROMs with read protection so that once programmed, it cannot be read by others except those who designed and downloaded them.