Autor: Maurycy Gast

Przedmiot: Informatyka

Temat: Szyfrowanie i deszyfrowanie w języku Java

Grupa docelowa:

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

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.
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ą,
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;

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):

  • Przygotujesz program umożliwiający użytkownikowi szyfrowanie wiadomości, za pomocą różnych algorytmów szyfrujących.

  • Dobierzesz metody szyfrowania do programu realizującego operacje szyfrowania i deszyfrowania.

  • Zaimplementujesz menu opracowanego programu.

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. Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Szyfrowanie i deszyfrowanie w języku Java”. Uczniowie zapoznają się z treściami w sekcji „Przeczytaj”.

Faza wstępna:

  1. Prowadzący wyświetla na tablicy interaktywnej zawartość sekcji „Wprowadzenie” i omawia cele do osiągnięcia w trakcie lekcji.

  2. Rozpoznanie wiedzy uczniów. Nauczyciel zadaje uczniom pytanie dotyczące ich aktualnego stanu wiedzy w obszarze poruszanego tematu, opartego o programowanie.

Faza realizacyjna:

  1. Praca z tekstem. Nauczyciel ocenia, na podstawie informacji na platformie, stan przygotowania uczniów do zajęć. Jeżeli jest ono niewystarczające, prosi wybraną osobę o przedstawienie najważniejszych informacji z sekcji „Przeczytaj”.

  2. Na forum klasy uczniowie analizują funkcje opisane w sekcji „Przeczytaj” (szyfrującą tekst za pomocą szyfru Cezara oraz szyfrującą metodą płotkową) i odtwarzają je na swoich komputerach.

  3. Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Infografika”. Uczniowie wspólnie analizują infografikę, która przedstawia schemat działania programu. Następnie indywidualnie analizują implementacje menu programu. W kolejnym kroku w parach próbują zapisać odpowiedni kod. Następnie porównują swoje rozwiązanie z inną grupą.

  4. Uczniowie samodzielnie wykonują ćwiczenie nr 1 w sekcji „Sprawdź się”. Chętne lub wybrane osoby przedstawiają rozwiązania i je omawiają.

  5. Następnie uczniowie dobierają się w pary i wykonują ćwiczenie nr 2 z sekcji „Sprawdź się”. W kolejnym kroku porównują swoje rozwiązanie z inną grupą.

Faza podsumowująca:

  1. Nauczyciel wyświetla na tablicy temat lekcji i cele zawarte w sekcji „Wprowadzenie”. W kontekście ich realizacji podsumowuje przebieg zajęć, a także wskazuje mocne i słabe strony pracy uczniów.

  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ą pracę domową z sekcji „Infografika”. Ich zadaniem jest przetestowanie działania programu, podając dowolne ciągi znaków oraz ustalając różne klucze szyfrujące. Weryfikują, czy program na pewno działa prawidłowo.

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:

  • Uczniowie mogą przed lekcją przygotować krótkie prezentacje algorytmów szyfrowania tekstu, wskazanego przez nauczyciela.