Autor: Maurycy Gast

Przedmiot: Informatyka

Temat: Szyfry symetryczne i asymetryczne w języku Java

Grupa docelowa:

Szkoła ponadpodstawowa, liceum ogólnokształcące, technikum, zakres podstawowy i rozszerzony

Podstawa programowa:

Cele kształcenia – wymagania ogólne
I. Rozumienie, analizowanie i rozwiązywanie problemów na bazie logicznego i abstrakcyjnego myślenia, myślenia algorytmicznego i sposobów reprezentowania informacji.
II. Programowanie i rozwiązywanie problemów z wykorzystaniem komputera oraz innych urządzeń cyfrowych: układanie i programowanie algorytmów, organizowanie, wyszukiwanie i udostępnianie informacji, posługiwanie się aplikacjami komputerowymi.
V. Przestrzeganie prawa i zasad bezpieczeństwa. Respektowanie prywatności informacji i ochrony danych, praw własności intelektualnej, etykiety w komunikacji i norm współżycia społecznego, ocena zagrożeń związanych z technologią i ich uwzględnienie dla bezpieczeństwa swojego i innych.
Treści nauczania – wymagania szczegółowe
I. Rozumienie, analizowanie i rozwiązywanie problemów.
Zakres podstawowy. Uczeń:
2) stosuje przy rozwiązywaniu problemów z różnych dziedzin algorytmy poznane w szkole podstawowej oraz algorytmy:
b) na tekstach: porównywania tekstów, wyszukiwania wzorca w tekście metodą naiwną, szyfrowania tekstu metodą Cezara i przestawieniową,
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
3) objaśnia dobrany algorytm, uzasadnia poprawność rozwiązania na wybranych przykładach danych i ocenia jego efektywność;
II. Programowanie i rozwiązywanie problemów z wykorzystaniem komputera i innych urządzeń cyfrowych.
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
3) sprawnie posługuje się zintegrowanym środowiskiem programistycznym przy pisaniu, uruchamianiu i testowaniu programów;
I + II. Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
3) objaśnia, a także porównuje podstawowe metody i techniki algorytmiczne oraz struktury danych, wykorzystując przy tym przykłady problemów i algorytmów, w szczególności:
f) metodę szyfrowania z kluczem publicznym i jej zastosowanie w podpisie elektronicznym,
V. Przestrzeganie prawa i zasad bezpieczeństwa.
Zakres podstawowy. Uczeń:
3) stosuje dobre praktyki w zakresie ochrony informacji wrażliwych (np. hasła, pin), danych i bezpieczeństwa systemu operacyjnego, objaśnia rolę szyfrowania informacji;
Zakres rozszerzony. Uczeń spełnia wymagania określone dla zakresu podstawowego, a ponadto:
1) objaśnia rolę technik uwierzytelniania, kryptografii i podpisu elektronicznego w ochronie i dostępie do informacji;

Kształtowane kompetencje kluczowe:

  • kompetencje cyfrowe;

  • kompetencje osobiste, społeczne i w zakresie umiejętności uczenia się;

  • kompetencje matematyczne oraz kompetencje w zakresie nauk przyrodniczych, technologii i inżynierii.

Cele operacyjne (językiem ucznia):

  • Zaimplementujesz symetryczny algorytm ROT13 w języku Java.

  • Przeanalizujesz zasadę działania protokołu Diffiego‑Hellmana i zaimplementujesz go.

  • Prześledzisz, jakie szyfry są wykorzystywane w komunikacji internetowej.

Strategie nauczania:

  • konstruktywizm;

  • konektywizm.

Metody i techniki nauczania:

  • dyskusja;

  • rozmowa nauczająca z wykorzystaniem multimedium i ćwiczeń interaktywnych;

  • ćwiczenia praktyczne.

Formy pracy:

  • praca indywidualna;

  • praca w parach;

  • praca w grupach;

  • praca całego zespołu klasowego.

Środki dydaktyczne:

  • komputery z głośnikami, słuchawkami i dostępem do internetu;

  • zasoby multimedialne zawarte w e‑materiale;

  • tablica interaktywna/tablica, pisak/kreda;

  • oprogramowanie dla języka Java SE 8 (lub nowszej wersji), w tym Eclipse 4.4 (lub nowszej wersji).

Przebieg lekcji

Przed lekcją:

  1. Uczniowie powtarzają najważniejsze informacje dotyczące szyfrów symetrycznych i asymetrycznych (mogą wykorzystać e‑materiał „Szyfry symetryczne i asymetryczne”).

  2. Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Szyfry symetryczne i asymetryczne w języku Java”. Uczniowie mają zapoznać się z poleceniem 1 w sekcji „Prezentacja multimedialna”.

Faza wstępna:

  1. Nauczyciel wyświetla temat i cele zajęć zawarte w sekcji „Wprowadzenie”. Prosi uczniów, by na podstawie wiadomości zdobytych przed lekcją zaproponowali kryteria sukcesu.

  2. Rozpoznanie wiedzy uczniów. Nauczyciel prosi chętną lub wybraną osobę o zreferowanie najważniejszych informacji dotyczących szyfrów symetrycznych i asymetrycznych.

Faza realizacyjna:

  1. Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Prezentacja multimedialna”. Odczytuje polecenie 1 i prosi wybraną osobę o udzielenie odpowiedzi na zawarte w nim pytania w oparciu o pracę wykonaną przed lekcją. W razie potrzeby nauczyciel udziela wyjaśnień dotyczących tematu prezentacji.

  2. Uczniowie indywidualnie rozwiązują problem 1 z sekcji „Prezentacja multimedialna”. Chętne lub wybrane osoby prezentują swój kod. Nauczyciel go omawia. Uczniowie w parach porównują swoje rozwiązania, a następnie porównują je z filmem.

  3. Praca z tekstem. Uczniowie w grupach zapoznają się z sekcją „Przeczytaj”. Nauczyciel prosi wybrane osoby o podsumowanie najważniejszych informacji. W kolejnym kroku uczniowie implementują omawiane algorytmy na swoich komputerach i testują działanie programów. W razie konieczności nauczyciel wyjaśnia wątpliwości.

  4. Ćwiczenia interaktywne. Uczniowie w parach wykonują ćwiczenie 1 z sekcji „Sprawdź się”. Chętne lub wybrane osoby prezentują swoje rozwiązania. Nauczyciel je omawia.

Faza podsumowująca:

  1. Nauczyciel ponownie wyświetla na tablicy temat lekcji zawarty w sekcji „Wprowadzenie” i inicjuje krótką rozmowę na temat zrealizowanych celów (czego uczniowie się nauczyli).

  2. Wybrany uczeń podsumowuje zajęcia, zwracając uwagę na nabyte umiejętności, omawia ewentualne problemy podczas rozwiązania ćwiczeń z programowania w języku Java.

Praca domowa:

  1. Uczniowie wykonują ćwiczenie 2 z sekcji „Sprawdź się”.

Materiały pomocnicze:

  • Oficjalna dokumentacja techniczna dla języka Java SE 8 (lub nowszej wersji).

  • Oficjalna dokumentacja techniczna dla oprogramowania Eclipse 4.4 (lub nowszej wersji).

Wskazówki metodyczne:

  • Treści w sekcji „Prezentacja multimedialna” można wykorzystać jako podsumowanie i utrwalenie wiedzy uczniów.