Kurser och kurspaket inom datasäkerhet
Institutionen för data- och informationsteknik utgör en världsledande forskningsmiljö inom cybersäkerhet och erbjuder kurser och kurspaket inom området.
Kurspaket inom datasäkerhet vid Göteborgs universitet
Kurserna samläses med studenter vid Chalmers tekniska högskola och kan alltså antingen läsas som en Chalmerskurs inom program eller som fristående kurser/kurspaket vid Göteborgs universitet.
Datasäkerhet
Computer Security, DIT642
Kursen Datasäkerhet (Computer Security), ger grundläggande kunskaper inom området datasäkerhet – hur man skyddar sitt system mot intrång och attacker. Intrång kan göras med avsikt att ändra eller förstöra resurser – data, programvara, maskinvara och så vidare – för att skaffa tillgång till konfidentiell information eller för att orättmätigt utnyttja systemet och dess tjänster. Kursen behandlar de hot som finns, svagheter i datorsystemen och kommunikationsnäten samt de regelverk och mekanismer som kan användas för att skydda systemen. Säkerhetstänkandet sätts även in i ett vidare sammanhang, genom att organisatoriska, affärsmässiga, sociala, juridiska, mänskliga och etiska aspekter berörs. Se även kortintervjun med kursansvarig Magnus Almgren nedan.
Kryptografi
Cryptography, DIT250
Kryptografi (grek. kryptos: "gömd", grafein: "skrift") handlar om kommunikation utformad för att hålla information hemlig för obehöriga. Före IT-eran handlade området bara om sekretess av meddelanden, kryptering, vilket innebar konvertering från ett begripligt meddelande till ett obegripligt och tvärtom. Under de senaste decennierna har området breddats till att innehålla en mängd olika tekniker för meddelandeintegritet, autentisering av både sändare och mottagare, digitala signaturer och säkra betalningar. Se även kortintervju och filmad intervju med kursansvarig Elena Pagnin nedan.
Språkbaserad säkerhet
Language-Based Security, DIT101
Språkbaserad säkerhet handlar om att identifiera säkerhetsproblem på applikations- och programspråksnivå och utforma och implementera lösningar för de problem som upptäckts. De säkerhetssystem som är standard idag är inte tillräckliga för att skydda mot alla typer av attacker. De flesta attacker sker på applikationsnivå genom att utnyttja buggar och luckor i applikationen. Attacken kan på det sättet kringgå det skydd som finns installerat genom att den körs med hjälp av den attackerade applikationens egna rättigheter. Exempel på attacker på applikationsnivå kan vara så kallade trojanska hästar, olika maskar, överbelastningsattacker och webbapplikationsattacker. Ett sätt att säkerställa att program är säkra är att använda programspråksmetoder för att analysera programmets källkod. Filmad intervju med kursansvarig Andrei Sabelfeld nedan.
Nätverkssäkerhet
Network Security, DIT071
Nätverkssäkerhet består av olika policyer, processer och praxis som introducerats för att förhindra, upptäcka och övervaka obehörig åtkomst, missbruk eller modifiering av datornätverk och nätverksrelaterade resurser. Nätverkssäkerhet handlar om alla tänkbara datanätverk, både offentliga och privata, för att till exempel utföra transaktioner och kommunikation mellan företag, myndigheter och privatpersoner.
Idag är princip alla datorsystem vi konstruerar uppkopplade och kommunicerar med sin omgivning. Det gäller allt från spel, vardagsföremål och smarta hem, till bilar och annan för samhället kritisk infrastruktur. Att ha en genuin förståelse för vilka typer av svagheter som kan utnyttjas i systemen och vilka angrepp som är tänkbara är grundläggande när vi skapar nya system och produkter. Först efter en kartläggning av tänkbara svagheter kan vi bestämma vilka skydd som krävs och hur applikationer och system ska designas.
Det är förhållandevis enkelt idag för utomstående att skicka falska meddelanden och förfalska nätverkspaket. Gamla paket och sessioner kan återspelas och paket kan dupliceras, meddelanden kan tas bort och mycket annat kan hända och därför är medvetenhet om problem och möjliga lösningar är centralt vid all design. I kursen går vi igenom olika typer av protokoll, säkra liksom osäkra, och ser vad som utmärker dem. Vi går också igenom hur man kan autentisera användare över osäkra nätverk, vi tittar på brandväggar, intrångsdetekteringssystem och olika tekniker för att testa säkerheten i system. Kursen passar alla som vill veta vad som krävs av ett uppkopplat system idag och förmedlar kunskap som är central för den som vill arbeta med datakommunikation, programutveckling eller testning av uppkopplade och distribuerade system. Kursansvarig är Tomas Olovsson. (kortintervju kommer)
Magnus Almgren, kursansvarig för Computer Security:
Vad lär sig studenterna i din kurs?
– Min kurs i datasäkerhet tar ett brett grepp och vi går igenom många områden av modern cybersäkerhet. Vi diskuterar historiska attacker, hur skadlig programvara har förändrats genom åren, vikten av att förstå säkerhetsdynamiken mellan försvarare gentemot angripare. Det sistnämnda demonstreras med ett enkelt exempel: användningen av lösenord för autentisering. Kursen ger en översikt och en bra grundläggande uppsättning verktyg som studenten sedan kan utveckla vidare i andra säkerhetsrelaterade kurser som erbjuds vid Göteborgs universitet.
Varför är en kurs inom IT-säkerhet viktig?
– Världen blir alltmer digitaliserad och datorer och deras tjänster blir viktigare. Det gäller både för de människor som använder tjänsterna och för angripare som försöker snedvrida våra liv. Jag skulle rekommendera alla studenter att ta en första kurs i säkerhet, till exempel min kurs Computer Security, oavsett om de vill arbeta med ämnet på heltid eller inte. Det är viktigt att förstå begreppen och olika typer av attacker, också för att kunna skydda sig själv.
– Naturligtvis tycker jag att säkerhet är väldigt intressant och rekommenderar det fullständiga kurspaket inom datasäkerhet som vår institution erbjuder. (kurspaketet listas ovan)
Elena Pagnin, kursansvarig för Cryptography:
What do you find most fascinating about cryptography?
I love cryptography because it is science and art at the same time. It builds on genius ideas and uses mathematical tools to make our digital society safer.
I am teaching in the Cryptography course, which covers the most relevant aspects of modern cryptography:
- symmetric key schemes, including block ciphers such as the advanced encryption standard AES and the message authentication code HMAC.
- public key schemes, including Diffie-Hellman key exchange, digital signatures, homomorphic encryption, and a mention of the state-of-the-art plausible post quantum secure constructions.
- cryptographic protocols, that combine the schemes we just mentioned to achieve even more amazing functionalities. We look at the Signal protocol (used for secure messaging in the Signal app and WhatsApp), as well as zero-knowledge proofs and the basis of secure multi-party computation.
The course is intense and aims to give students tools to reason about security, recognise celebrated recent attacks and their implications, and find cryptographic vulnerabilities in flawed constructions.