IDATT2503
Sikkerhet i programvare og kryptografi
Høst
Trondheim
Engelsk
Om emnet
Faglig innhold
- Relevant lovverk, trusselbildet og aktører. Introduksjon i systemprogrammering.
- Vanlige sårbarheter i systemprogrammering, og beskyttelse mot disse gjennom for eksempel bruk av sanitizers og fuzzy testing.
- Etisk hacking og gjennomtrengningstesting, capture the flag (CTF), reverse engineering. Online personvern og anonymitet.
- Kryptografi: Relevant tallteori, prinsipper for kryptografi, noen kryptosystemer (klassiske og moderne offentlig nøkkel-systemer, kryptografiske hashfunksjoner), angrepsmetoder.
Læringsmål
Kunnskaper:
Kandidaten kan gjøre rede for:
- vanlige sårbarheter i systemprogrammering.
- hjelpemidler for å finne sårbarheter i systemprogrammering.
- hvordan sårbarheter kan utnyttes.
- online personvern og anonymitet.
- grunnleggende prinsipper for kryptografi, samt noen kryptosystemer og måter å angripe disse på.
Ferdigheter:
Kandidaten kan:
- finne sårbarheter i systemprogrammering
- utnytte sårbarheter i systemprogrammering
- utføre gjennomtrengningstesting og reverse engineering.
Generell kompetanse:
- Kandidaten kan granske sikkerheten i programsystemer, og velge passende tiltak.
Læringsformer og aktiviteter
Obligatoriske øvinger. Obligatorisk oppmøte på lab for å få godkjent øvingene.