Physical Unclonable Functions (PUFs) are based on characteristics of physical devices that are easy to evaluate, but hard to predict. These characteristics are different between different instances of devices of the same type and may provide unique outputs for the same inputs, resulting in a form of "unclonable" functions. This field is relatively new and highly interesting. Attacks against the integrity, confidentiality or availability of such PUFs have been described in literature, and we would now like to try to test their actual feasibility regarding implementation.
The actual task
We will provide you with different PUF instances and try to define some feasible attack scenarios against them. You are, of course, encouraged to think of more such scenarios on your own, based on the relevant literature. Your main task will be to:
- → improve these scenarios, adopting and refining them to fit the actual situation at hand,
→ implement them and try to come up with successful real-life attack scenarios, and
→ finally, evaluate and present your results.
You need to:
- → have good programming skills in some widely used language (C, C++, Java or Python, etc.) OR in VHDL or Verilog,
→ speak English quite fluently,
→ be willing to work with Matlab or some other similar program,
→ be creative and willing to work towards your goal (within reasonable limits).
- → some experience regarding the programming of microcontrollers (FPGAs or any other evaluation boards or embedded systems), or be willing to quickly learn,
→ some general broad knowledge on attack scenarios against secure devices,
→ a general understanding regarding PUFs (to have at least read this: https://en.wikipedia.org/wiki/Physical_ ... e_function),
→ some experience in writing reports and presenting results.
- → anagnostopoulos(-at-)seceng.informatik.tu-darmstadt.de
→ http://www.seceng.informatik.tu-darmsta ... stopoulos/