US 7,519,823 B1
Concealed, non-intrusive watermarks for configuration bitstreams
Paul R. Schumacher, Berthoud, Colo. (US); Robert D. Turney, Watertown, Wis. (US); Mark Paluszkiewicz, Schaumburg, Ill. (US); Prasanna Sundararajan, Mountain View, Calif. (US); and Brandon J. Blodget, Santa Clara, Calif. (US)
Assigned to XILINX, Inc., San Jose, Calif. (US)
Filed on Aug. 12, 2004, as Appl. No. 10/917,042.
Int. Cl. H04L 9/00 (2006.01)
U.S. Cl. 713—176  [713/1; 713/2; 713/100; 713/168; 713/189; 380/268; 716/16; 716/17; 716/18] 19 Claims
OG exemplary drawing
 
1. A method for embedding identifier information in a configuration bitstream for a programmable logic device (PLD), wherein the configuration bitstream implements a design, comprising:
providing for determining bits in a configuration bitstream that are unused in implementing the design on a PLD, wherein the bits are unused bits;
wherein the providing for determining the unused bits includes using a configuration bit definition in determining whether a bit is essential or unused, and the configuration bit definition is a configuration bit description equation;
providing for encrypting the identifier information;
providing for selecting a subset of the unused bits using a function; and
providing for placing the encrypted identifier information in the selected subset of unused bits,
wherein the providing for selecting a subset of the unused bits includes initializing a random number generator with a seed, generating a pseudo-random sequence of bits by the random number generator, and selecting the subset of bits using the pseudo-random sequence of bits.