Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (S2)

Sylabus przedmiotu Zaufana infrastruktura obliczeniowa:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia stacjonarne Poziom drugiego stopnia
Tytuł zawodowy absolwenta magister inżynier
Obszary studiów charakterystyki PRK, kompetencje inżynierskie PRK
Profil ogólnoakademicki
Moduł
Przedmiot Zaufana infrastruktura obliczeniowa
Specjalność Projektowanie oprogramowania
Jednostka prowadząca Katedra Inżynierii Oprogramowania
Nauczyciel odpowiedzialny Włodzimierz Bielecki <Wlodzimierz.Bielecki@zut.edu.pl>
Inni nauczyciele Tomasz Hyla <Tomasz.Hyla@zut.edu.pl>, Jerzy Pejaś <Jerzy.Pejas@zut.edu.pl>
ECTS (planowane) 4,0 ECTS (formy) 4,0
Forma zaliczenia egzamin Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
laboratoriaL2 30 2,00,50zaliczenie
wykładyW2 30 2,00,50egzamin

Wymagania wstępne

KODWymaganie wstępne
W-1Słuchacz musi posiadać podstawową wiedzę w zakresie: podstaw ochrony informacji, inżynierii oprogramowania, sieci komputerowych i baz danych.

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Potrafi krytycznie wyjaśnić pojęcie zaufania w odniesieniu do systemów operacyjnych, zaufanych urządzeń oraz wymagań wobec tych urządzeń.
C-2Zna rolę i cel każdego komponentu modułu zaufanej platformy (TPM).
C-3Potrafi stosować wybrane interfejsy użytkownika (m.in. TSS API) do interakcji z TPM.
C-4Rozumie, w jaki sposób technologie wirtualizacji mogą być łączone z zaufanymi modułami platformy w celu zbudowania zaufanej infrastruktury.
C-5Potrafi opisać niektóre architektury systemów, które dzięki zastosowaniu możliwości technologii TPM pozwalają na uzyskanie innowacyjnych i silnie zabezpieczonych rozwiązań.

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1Systemy jednokrotnego uwierzytelniania (Single-Sign-On (SSO) – Kerberos2
T-L-2Podstawowe zasady posługiwania się modułem TPM2
T-L-3Wirtualizacja TPM2
T-L-4Stos programowy TPM – rejestry PCR2
T-L-5Uwierzytelnione uruchamianie systemu z modułem TPM2
T-L-6Pieczętowane danych4
T-L-7Protokoły atestacji4
T-L-8Nieulotna wewnętrzna pamięć TPM (NVRAM)2
T-L-9Wykorzystanie tokenów sprzętowych do zabezpieczenia transakcji elektronicznych oraz uwierzytelnianie – wykonanie aplikacji testowej i badanie bezpieczeństwa4
T-L-10Analiza działania systemu SELinux, np. podstawowe polecenia, polityki kontroli dostępu2
T-L-11Badanie działania mechanizmu LSM (Linux Security Module)2
T-L-12Badanie algorytmów biometrycznych w protokołach uwierzytelnienia2
30
wykłady
T-W-1Wprowadzenie do systemów zabezpieczeń (notacja, podstawy zabezpieczeń, zaufane obliczenia, niektóre aspekty ataków czasu wykonania)2
T-W-2Zaufanie i zabezpieczenia (zaufanie jako przewidywalne zachowanie, rola elementów zaufanej infrastruktury, wady architektury, wpływ na poprawne i niepoprawne wyniki)2
T-W-3Bezpieczne obliczenia oparte na sprzęcie i oprogramowaniu (jednorazowe programy, bezpieczne przetwarzanie oparte na tokenach, moduły kryptograficzne, generatory liczb losowych, karty elektroniczne, interfejsy programistyczne)4
T-W-4Główne źródło zaufania (jego rola w ustanowieniu zaufania do przechowywania, pomiaru i raportowania danych, łańcuch zaufania, zaufane ładowanie procesów, zaufane aplikacje)2
T-W-5TPM (standard modułu TPM i jego właściwości, standardowe interfejsy API do funkcji TPM, zaufany pakiet oprogramowania TSS)4
T-W-6Podstawowe funkcje modułu TPM (wiązanie i pieczętowanie, metryki integralności, uwierzytelnianie, atestacja, protokoły anonimizacji urządzeń, m.in. Direct Anonymous Attestation2
T-W-7Zaufana wirtualizacja (wirtualizacja całego system, zarządzanie maszynami wirtualnymi, wirtualne zaufane platformy)2
T-W-8Zastosowania (zaufane uruchamianie systemu, zaufane połączenia sieciowe, zaufana sieć, zabezpieczenie infrastruktury chmurowej, wprowadzenie do bezpiecznych obliczeń outsourcingowych)2
T-W-9Bezpieczne systemy operacyjne (długotrwałe podejście do bezpieczeństwa systemu, izolacja oparta na kontach użytkowników, izolacja oparta na projekcie procesora, braki i podatności)2
T-W-10SELinux modele kontroli dostępu i modele uprawnień, architektura systemu SELinux projektowanie polityk zabezpieczeń)4
T-W-11Techniki biometryczne4
30

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1uczestniczenie w zajęciach30
A-L-2przygotowanie do ćwiczeń laboratoryjnych12
A-L-3kończenie (w ramach pracy własnej) srawozdań z ćwiczeń laboratoryjnych8
50
wykłady
A-W-1uczestnictwo w zajęciach30
A-W-2zapoznanie się ze wskazaną literaturą i materiałmi dydaktycznymi10
A-W-3przygotowanie do zaliczenia8
A-W-4udział w konsultacjach2
50

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład informacyjno-konwersatoryjny
M-2Ćwiczenia laboratoryjne

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Ocena na podstawie wejściówki, stopnia wykonania (pod koniec zajęć) scenariuszy formułowanych w oparciu o konspekty laboratoryjne i/lub sprawozdania z zajęć.
S-2Ocena podsumowująca: Test (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe).

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_2A_D02.06_W01
Zna zasady działania, instalowania i konfigurowania sprzętowych i wirtualnych modułów zaufanych platform, bezpiecznych systemów operacyjnych oraz ich wykorzystania w budowaniu zaufania do wybranych komponentów programowo-sprzętowych oraz niektórych architektur systemów
I_2A_W07, I_2A_W09C-1, C-4, C-5T-W-1, T-W-2, T-W-7, T-W-8, T-W-9, T-W-10, T-W-11, T-L-2, T-L-3, T-L-10, T-L-11M-1, M-2S-1, S-2

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_2A_D02.06_U01
Potrafi instalować i konfigurować sprzętowe i wirtualne moduły zaufanych platform, bezpieczne systemy operacyjne oraz posiada umiejętność programowania wirtualnych i sprzętowych modułów zaufanych platform.
I_2A_U03, I_2A_U04, I_2A_U16C-2, C-4T-W-3, T-W-4, T-W-5, T-W-6, T-W-7, T-L-2, T-L-3, T-L-4, T-L-6, T-L-7, T-L-9M-2S-1

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
I_2A_D02.06_W01
Zna zasady działania, instalowania i konfigurowania sprzętowych i wirtualnych modułów zaufanych platform, bezpiecznych systemów operacyjnych oraz ich wykorzystania w budowaniu zaufania do wybranych komponentów programowo-sprzętowych oraz niektórych architektur systemów
2,0nie spełnia kryteriów określonych dla oceny 3
3,0potrafi wyjaśnić pojęcie zaufania w odniesieniu do systemów operacyjnych, zaufanych urządzeń oraz wymagań wobec tych urządzeń
3,5potrafi krytycznie wyjaśnić pojęcie zaufania w odniesieniu do systemów operacyjnych, zaufanych urządzeń oraz wymagań wobec tych urządzeń
4,0rozumie rolę modułu zaufanej platformy (TPM) oraz zaufanych systemów operacyjnych w budowaniu zaufania do wybranych modułów programowo-sprzętowych
4,5zna wpływ sprzętowego lub wirtualnego modułu zaufanej platformy (TPM) na poziom zaufania do wybranych modułów programowo-sprzętowych
5,0zna wpływ sprzętowego lub wirtualnego modułu zaufanej platformy (TPM) na wiarygodność obliczeń realizowanych w oparciu o wskazane moduły programowo-sprzętowe

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
I_2A_D02.06_U01
Potrafi instalować i konfigurować sprzętowe i wirtualne moduły zaufanych platform, bezpieczne systemy operacyjne oraz posiada umiejętność programowania wirtualnych i sprzętowych modułów zaufanych platform.
2,0nie spełnia kryterium określonego dla oceny 3
3,0potrafi instalować i konfigurować sprzętowe i wirtualne moduły zaufanych platform oraz bezpieczne systemów operacyjne
3,5potrafi korzystać z interfejsów użytkownika (m.in. TSS API) do interakcji z TPM oraz zastosować w aplikacjach podstawowe funkcje modułu TPM (metryki integralności)
4,0spełnia kryteria określone dla oceny 3,5 oraz dodatkowo potrafi tak skonfigurować system, aby podczas uruchamiania systemu wykorzystany był sprzętowy lub wirtualny moduł TPM
4,5potrafi zastosować w aplikacjach zaawansowane funkcje modułu TPM (wiązanie i pieczętowanie, podpis cyfrowy, uwierzytelnianie, atestacja)
5,0potrafi wykorzystać sprzętowe i wirtualne moduły zaufanych platform oraz wybrane kryptograficzne tokeny sprzętowe do zaprojektowania i wykonania wybranych systemów zabezpieczających (np. transakcje elektroniczne, protokoły uwierzytelniania użytkowników systemów komputerowych)

Literatura podstawowa

  1. T. Müller, Trusted Computing Systems, Springer, Berlin, Heidelberg, 2008
  2. Ariel Segall, Trusted Platform Modules - Why, When and How to Use Them. Institution of Engineering and Technology, The Institution of Engineering and Technology, London, United Kingdom, 2016, Dostępna pod adresem: https://app.knovel.com/hotlink/toc/id:kpTPMWWHU3/trusted-platform-modules/trusted-platform-modules

Literatura dodatkowa

  1. Charles P. Pfleeger, Shari Lawrence Pfleeger, Jonathan Margulies, Security in Computing, Pearson Education, Inc., New York, Toronto, Montreal, 2015, V
  2. David Challener, Kent Yoder, Ryan Catherman, David Safford, Leendert Van Doorn, Practical Guide to Trusted Computing, IBM Press, New York, Toronto, Montreal, 2008, II
  3. Smith, Sean W., Trusted Computing Platforms: Design and Applications, Springer Verlag, New York, 2005, I
  4. Will Arthur, David Challener, Guide to TPM 2.0 - Using the Trusted Platform Module in the New Age of Security, Apress, 2015, I
  5. F. Mayer, K. MacMillan, SELinux by Example: Using Security Enhanced Linux, Prentice Hall PTR, New York, 2006, I
  6. Trent Jaeger, Operating System Security, Morgan & Claypool Publishers, I, 2008

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1Systemy jednokrotnego uwierzytelniania (Single-Sign-On (SSO) – Kerberos2
T-L-2Podstawowe zasady posługiwania się modułem TPM2
T-L-3Wirtualizacja TPM2
T-L-4Stos programowy TPM – rejestry PCR2
T-L-5Uwierzytelnione uruchamianie systemu z modułem TPM2
T-L-6Pieczętowane danych4
T-L-7Protokoły atestacji4
T-L-8Nieulotna wewnętrzna pamięć TPM (NVRAM)2
T-L-9Wykorzystanie tokenów sprzętowych do zabezpieczenia transakcji elektronicznych oraz uwierzytelnianie – wykonanie aplikacji testowej i badanie bezpieczeństwa4
T-L-10Analiza działania systemu SELinux, np. podstawowe polecenia, polityki kontroli dostępu2
T-L-11Badanie działania mechanizmu LSM (Linux Security Module)2
T-L-12Badanie algorytmów biometrycznych w protokołach uwierzytelnienia2
30

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Wprowadzenie do systemów zabezpieczeń (notacja, podstawy zabezpieczeń, zaufane obliczenia, niektóre aspekty ataków czasu wykonania)2
T-W-2Zaufanie i zabezpieczenia (zaufanie jako przewidywalne zachowanie, rola elementów zaufanej infrastruktury, wady architektury, wpływ na poprawne i niepoprawne wyniki)2
T-W-3Bezpieczne obliczenia oparte na sprzęcie i oprogramowaniu (jednorazowe programy, bezpieczne przetwarzanie oparte na tokenach, moduły kryptograficzne, generatory liczb losowych, karty elektroniczne, interfejsy programistyczne)4
T-W-4Główne źródło zaufania (jego rola w ustanowieniu zaufania do przechowywania, pomiaru i raportowania danych, łańcuch zaufania, zaufane ładowanie procesów, zaufane aplikacje)2
T-W-5TPM (standard modułu TPM i jego właściwości, standardowe interfejsy API do funkcji TPM, zaufany pakiet oprogramowania TSS)4
T-W-6Podstawowe funkcje modułu TPM (wiązanie i pieczętowanie, metryki integralności, uwierzytelnianie, atestacja, protokoły anonimizacji urządzeń, m.in. Direct Anonymous Attestation2
T-W-7Zaufana wirtualizacja (wirtualizacja całego system, zarządzanie maszynami wirtualnymi, wirtualne zaufane platformy)2
T-W-8Zastosowania (zaufane uruchamianie systemu, zaufane połączenia sieciowe, zaufana sieć, zabezpieczenie infrastruktury chmurowej, wprowadzenie do bezpiecznych obliczeń outsourcingowych)2
T-W-9Bezpieczne systemy operacyjne (długotrwałe podejście do bezpieczeństwa systemu, izolacja oparta na kontach użytkowników, izolacja oparta na projekcie procesora, braki i podatności)2
T-W-10SELinux modele kontroli dostępu i modele uprawnień, architektura systemu SELinux projektowanie polityk zabezpieczeń)4
T-W-11Techniki biometryczne4
30

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1uczestniczenie w zajęciach30
A-L-2przygotowanie do ćwiczeń laboratoryjnych12
A-L-3kończenie (w ramach pracy własnej) srawozdań z ćwiczeń laboratoryjnych8
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1uczestnictwo w zajęciach30
A-W-2zapoznanie się ze wskazaną literaturą i materiałmi dydaktycznymi10
A-W-3przygotowanie do zaliczenia8
A-W-4udział w konsultacjach2
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_2A_D02.06_W01Zna zasady działania, instalowania i konfigurowania sprzętowych i wirtualnych modułów zaufanych platform, bezpiecznych systemów operacyjnych oraz ich wykorzystania w budowaniu zaufania do wybranych komponentów programowo-sprzętowych oraz niektórych architektur systemów
Odniesienie do efektów kształcenia dla kierunku studiówI_2A_W07Posiada poszerzoną wiedzę teoretyczną i praktyczną w zakresie bezpieczeństwa systemów informatycznych
I_2A_W09Ma poszerzoną wiedzę dotyczącą trendów rozwojowych i możliwości zastosowania informatyki w wybranych obszarach nauki i techniki
Cel przedmiotuC-1Potrafi krytycznie wyjaśnić pojęcie zaufania w odniesieniu do systemów operacyjnych, zaufanych urządzeń oraz wymagań wobec tych urządzeń.
C-4Rozumie, w jaki sposób technologie wirtualizacji mogą być łączone z zaufanymi modułami platformy w celu zbudowania zaufanej infrastruktury.
C-5Potrafi opisać niektóre architektury systemów, które dzięki zastosowaniu możliwości technologii TPM pozwalają na uzyskanie innowacyjnych i silnie zabezpieczonych rozwiązań.
Treści programoweT-W-1Wprowadzenie do systemów zabezpieczeń (notacja, podstawy zabezpieczeń, zaufane obliczenia, niektóre aspekty ataków czasu wykonania)
T-W-2Zaufanie i zabezpieczenia (zaufanie jako przewidywalne zachowanie, rola elementów zaufanej infrastruktury, wady architektury, wpływ na poprawne i niepoprawne wyniki)
T-W-7Zaufana wirtualizacja (wirtualizacja całego system, zarządzanie maszynami wirtualnymi, wirtualne zaufane platformy)
T-W-8Zastosowania (zaufane uruchamianie systemu, zaufane połączenia sieciowe, zaufana sieć, zabezpieczenie infrastruktury chmurowej, wprowadzenie do bezpiecznych obliczeń outsourcingowych)
T-W-9Bezpieczne systemy operacyjne (długotrwałe podejście do bezpieczeństwa systemu, izolacja oparta na kontach użytkowników, izolacja oparta na projekcie procesora, braki i podatności)
T-W-10SELinux modele kontroli dostępu i modele uprawnień, architektura systemu SELinux projektowanie polityk zabezpieczeń)
T-W-11Techniki biometryczne
T-L-2Podstawowe zasady posługiwania się modułem TPM
T-L-3Wirtualizacja TPM
T-L-10Analiza działania systemu SELinux, np. podstawowe polecenia, polityki kontroli dostępu
T-L-11Badanie działania mechanizmu LSM (Linux Security Module)
Metody nauczaniaM-1Wykład informacyjno-konwersatoryjny
M-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Ocena na podstawie wejściówki, stopnia wykonania (pod koniec zajęć) scenariuszy formułowanych w oparciu o konspekty laboratoryjne i/lub sprawozdania z zajęć.
S-2Ocena podsumowująca: Test (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe).
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia kryteriów określonych dla oceny 3
3,0potrafi wyjaśnić pojęcie zaufania w odniesieniu do systemów operacyjnych, zaufanych urządzeń oraz wymagań wobec tych urządzeń
3,5potrafi krytycznie wyjaśnić pojęcie zaufania w odniesieniu do systemów operacyjnych, zaufanych urządzeń oraz wymagań wobec tych urządzeń
4,0rozumie rolę modułu zaufanej platformy (TPM) oraz zaufanych systemów operacyjnych w budowaniu zaufania do wybranych modułów programowo-sprzętowych
4,5zna wpływ sprzętowego lub wirtualnego modułu zaufanej platformy (TPM) na poziom zaufania do wybranych modułów programowo-sprzętowych
5,0zna wpływ sprzętowego lub wirtualnego modułu zaufanej platformy (TPM) na wiarygodność obliczeń realizowanych w oparciu o wskazane moduły programowo-sprzętowe
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięI_2A_D02.06_U01Potrafi instalować i konfigurować sprzętowe i wirtualne moduły zaufanych platform, bezpieczne systemy operacyjne oraz posiada umiejętność programowania wirtualnych i sprzętowych modułów zaufanych platform.
Odniesienie do efektów kształcenia dla kierunku studiówI_2A_U03Potrafi dobierać, krytycznie oceniać przydatność oraz stosować metody i narzędzia do rozwiązania złożonego zadania inżynierskiego
I_2A_U04Potrafi wykorzystywać poznane metody, techniki i modele do rozwiązywania złożonych problemów
I_2A_U16Potrafi planować i realizować proces samokształcenia, określać możliwe kierunki dalszego permanentnego uczenia się oraz aktywnie wpływać na kształtowanie postaw innych osób
Cel przedmiotuC-2Zna rolę i cel każdego komponentu modułu zaufanej platformy (TPM).
C-4Rozumie, w jaki sposób technologie wirtualizacji mogą być łączone z zaufanymi modułami platformy w celu zbudowania zaufanej infrastruktury.
Treści programoweT-W-3Bezpieczne obliczenia oparte na sprzęcie i oprogramowaniu (jednorazowe programy, bezpieczne przetwarzanie oparte na tokenach, moduły kryptograficzne, generatory liczb losowych, karty elektroniczne, interfejsy programistyczne)
T-W-4Główne źródło zaufania (jego rola w ustanowieniu zaufania do przechowywania, pomiaru i raportowania danych, łańcuch zaufania, zaufane ładowanie procesów, zaufane aplikacje)
T-W-5TPM (standard modułu TPM i jego właściwości, standardowe interfejsy API do funkcji TPM, zaufany pakiet oprogramowania TSS)
T-W-6Podstawowe funkcje modułu TPM (wiązanie i pieczętowanie, metryki integralności, uwierzytelnianie, atestacja, protokoły anonimizacji urządzeń, m.in. Direct Anonymous Attestation
T-W-7Zaufana wirtualizacja (wirtualizacja całego system, zarządzanie maszynami wirtualnymi, wirtualne zaufane platformy)
T-L-2Podstawowe zasady posługiwania się modułem TPM
T-L-3Wirtualizacja TPM
T-L-4Stos programowy TPM – rejestry PCR
T-L-6Pieczętowane danych
T-L-7Protokoły atestacji
T-L-9Wykorzystanie tokenów sprzętowych do zabezpieczenia transakcji elektronicznych oraz uwierzytelnianie – wykonanie aplikacji testowej i badanie bezpieczeństwa
Metody nauczaniaM-2Ćwiczenia laboratoryjne
Sposób ocenyS-1Ocena formująca: Ocena na podstawie wejściówki, stopnia wykonania (pod koniec zajęć) scenariuszy formułowanych w oparciu o konspekty laboratoryjne i/lub sprawozdania z zajęć.
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia kryterium określonego dla oceny 3
3,0potrafi instalować i konfigurować sprzętowe i wirtualne moduły zaufanych platform oraz bezpieczne systemów operacyjne
3,5potrafi korzystać z interfejsów użytkownika (m.in. TSS API) do interakcji z TPM oraz zastosować w aplikacjach podstawowe funkcje modułu TPM (metryki integralności)
4,0spełnia kryteria określone dla oceny 3,5 oraz dodatkowo potrafi tak skonfigurować system, aby podczas uruchamiania systemu wykorzystany był sprzętowy lub wirtualny moduł TPM
4,5potrafi zastosować w aplikacjach zaawansowane funkcje modułu TPM (wiązanie i pieczętowanie, podpis cyfrowy, uwierzytelnianie, atestacja)
5,0potrafi wykorzystać sprzętowe i wirtualne moduły zaufanych platform oraz wybrane kryptograficzne tokeny sprzętowe do zaprojektowania i wykonania wybranych systemów zabezpieczających (np. transakcje elektroniczne, protokoły uwierzytelniania użytkowników systemów komputerowych)