Dla nauczyciela
Autor: Maurycy Gast
Przedmiot: Informatyka
Temat: Szyfr RSA w języku C++
Grupa docelowa:
Szkoła ponadpodstawowa, liceum ogólnokształcące, technikum, zakres rozszerzony
Podstawa programowa:
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 w języku C++ klucze prywatny i publiczny szyfru RSA.
Napiszesz program, który za pomocą algorytmu RSA wygeneruje podpis i zweryfikuje jego poprawność.
Wykonasz ćwiczenia dotyczące szyfrowania i deszyfrowania wiadomości za pomocą szyfru RSA.
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 C++, w tym kompilator GCC/G++ 4.5 (lub nowszej wersji) i Code::Blocks 16.01 (lub nowszej wersji), Orwell Dev‑C++ 5.11 (lub nowszej wersji) lub Microsoft Visual Studio.
Przebieg lekcji
Przed lekcją:
Przygotowanie do zajęć. Nauczyciel loguje się na platformie i udostępnia e‑materiał: „Szyfr RSA w języku C++”. Nauczyciel prosi uczniów o zapoznanie się z treściami w sekcji „Film samouczek”.
Faza wstępna:
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.
Rozpoznanie wiedzy uczniów. Nauczyciel prosi wybranego ucznia lub uczniów o przedstawienie sytuacji problemowej związanej z tematem lekcji.
Faza realizacyjna:
Praca z multimedium. Nauczyciel wyświetla zawartość sekcji „Film samouczek”. Prosi wybrane osoby o przedstawienie rozwiązania problemu 1, które uczniowie przygotowywali przed lekcją. Pozostali uczniowie komentują przedstawione programy. W razie konieczności nauczyciel wyjaśnia wątpliwości i odpowiada na pytania.
Praca z tekstem. Nauczyciel wyświetla zawartość sekcji „Przeczytaj”. Uczniowie indywidualnie zapoznają się z jej treścią. Zapisują ewentualne problemy i pytania. Po czym następuje dyskusja, w trakcie której nauczyciel wyjaśnia niezrozumiałe treści.
Ćwiczenie umiejętności. Prowadzący zapowiada uczniom, że będą rozwiązywać ćwiczenie nr 1 z sekcji „Sprawdź się”. Uczniowie wykonują je w parach. Po ustalonym czasie następuje porównanie napisanych kodów podczas wspólnego omówienia rozwiązań.
Liga zadaniowa - uczniowie pracując w parach, wykonują ćwiczenie nr 2 z sekcji „Sprawdź się”, a następnie dzielą się swoimi wynikami przez porównanie napisanego kodu z inną grupą, która również zakończyła zadanie.
Faza podsumowująca:
Nauczyciel ponownie wyświetla na tablicy temat i cele lekcji zawarte w sekcji „Wprowadzenie”. W kontekście ich realizacji następuje omówienie ewentualnych problemów z rozwiązaniem ćwiczeń z sekcji „Sprawdź się”.
Na koniec zajęć z programowania w C++ nauczyciel prosi uczniów o rozwinięcie zdania: „Na dzisiejszych zajęciach nauczyłam/łem się jak…”.
Praca domowa:
Uczniowie wykonują ćwiczenie nr 3 z sekcji „Sprawdź się”.
Materiały pomocnicze:
Oficjalna dokumentacja techniczna dla języka C++.
Oficjalna dokumentacja techniczna dla kompilatora GCC/G++ 4.5 (lub nowszej wersji).
Oficjalna dokumentacja techniczna dla oprogramowania Code::Blocks 16.01 (lub nowszej wersji), Orwell Dev‑C++ 5.11 (lub nowszej wersji) lub Microsoft Visual Studio.
Wskazówki metodyczne:
Treści w sekcji „Film samouczek” można wykorzystać jako podsumowanie i utrwalenie wiedzy uczniów.