Aangestuurd vanuit de commissie Toekomst Wiskunde Onderwijs (http://www.ctwo.nl) worden er in het schooljaar 2006-2007 diverse experimenten gedaan met onderwijsmateriaal dat is en wordt ontwikkeld. Voor het keuze-onderwerp Cryptografie is een eerste versie van een lespakket gemaakt door Monique Stienstra, werkzaam op het Stedelijk Gymnasium Nijmegen. Dit pakket richt zich voornamelijk op de wiskunde achter allerlei cryptografische systemen.
Bert Wikkerink en Harm Bakker (CSG Liudger, Drachten) zijn bezig om ook meer praktische aspecten van cryptografie aan het pakket toe te voegen. Deze pagina geeft toegang tot een aantal simpele applets die handig kunnen zijn bij de opdrachten uit het lesmateriaal.
We danken de opleiding Wiskunde van de Rijksuniversiteit Groningen voor het beschikbaar stellen van de web-ruimte.
Terug
Kies bij Downloads voor Java SE en dan voor een recente
versie van een JRE. Deze is beschikbaar voor allerlei
besturingssystemen (Windows, Linux, Solaris, ...). Kies
de juiste versie en volg de installatie-instructies op.
Het is belangrijk dat je tijdens de installatie aangeeft
dat deze versie van Java standaard aan je browser wordt
gelinkt.
Wil je de applets ook offline kunnen gebruiken, dan
zul je over de betreffende class files moeten beschikken.
Bij elke applet is een zip-bestand beschikbaar met de
broncode-bestanden en de class files.
Als je, nadat je de link van de applet hebt aangeklikt,
de extensie 'html' vervangt door 'zip', dan krijg je
de gelegenheid het zip-bestand met alle java- en
class-files bij die applet naar je eigen machine te
kopieeren.
Nog makkelijker: kies het
zip-bestand met alle applets.
Dit bestand bevat ingepakt alle directories/mappen met
de class-files en bronbestanden van de applets.
Dit bestand wordt niet bij elke herziening gewijzigd!!
Naast de class files bevat het zip-bestand ook de
broncode-bestanden. Dit zijn de bestanden die als extensie
'java' hebben.
Terug
Frequentie-analyse Codetabel
TekstNaarAscii
AsciiNaarTekst
Opteller
Vermenigvuldiger
Machtsverheffer
PriemGenerator
EuclidesOpmerkingen over Java
De applets zijn geschreven in Java.
Als de applet niet start nadat de link is aangeklikt, dan
is op het systeem waarschijnlijk geen of een verouderde
versie van Java aanwezig.
Als het enkel de bedoeling is de applets via een
internetverbinding te draaien, dan is het voldoende
een Java Runtime Environment (JRE) te installeren. Deze is
gratis op te halen van de java-site van Sun:
Het is verstandig voor elke applet een eigen
directory/map te maken, daar het zip-bestand in te plaatsen
en vervolgens in die map het zip-bestand uit te
pakken, bijvoorbeeld met WinZip.
Heb je WinZip nog niet, dan kun je dat ook gratis downloaden.
Met een zoekmachine zoeken op 'winzip' levert diverse
sites waarvandaan je het op kunt halen.
Is alles uitgepakt, dan kan het html-bestand worden
bekeken met je browser. Onder windows is dat een
kwestie van aanklikken. Je browser start dan de applet.
De applets zijn met opzet heel primitief opgebouwd. Dat
geeft je de mogelijkheid om zelf met de programmacode
te experimenteren. Als je dat wilt doen, dan zul de
gewijzigde broncode opnieuw moeten kunnen compileren.
Je hebt dan niet genoeg aan een JRE; je zult dan een
JDK (Java Development Kit) moeten downloaden en installeren.
Die vind je ook op de java-site van Sun.
Het opzetten van een goede werkomgeving is even wat gepruts en
de manier waarop je dat klaar krijgt is systeem-afhankelijk.
Zie
Java onder Windows XP
of
Java onder Linux
voor enkele hints.
Overzicht van de beschikbare applets
Voer een tekst in en krijg een overzicht met bij
elk symbool het aantal voorkomens.
FreqAnalyse
Voer een tekst in en een vertaaltabel en krijg
de vertaalde tekst.
Codetabel
Voer een tekst in en laat het programma de bijbehorende
ASCII-codering genereren.
TekstNaarAscii
Voer de ASCII-code van een tekst in en laat het programma de bijbehorende
tekst genereren.
AsciiNaarTekst
Voer drie gehele getallen a, b en m in
(van pseudo-willekeurige lengte)
en het programma berekent (a + b) en (a + b) mod m.
Opteller
Voer drie gehele getallen a, b en m in
(van pseudo-willekeurige lengte)
en het programma berekent (a * b) en (a * b) mod m.
Vermenigvuldiger
Voer drie gehele getallen a, b en m in
(van pseudo-willekeurige lengte)
en het programma berekent (a ^ b) en (a ^ b) mod m.
De waarde van (a ^ b) wordt alleen berekend als
het resultaat niet meer dan 1000 cijfers heeft.
Machtsverheffer
Voer een getal x in en het programma levert het kleinste
priemgetal dat groter is dan x.
Er is geen absolute zekerheid dat het gegenereerde getal
een priemgetal is, maar de zekerheid is minstens (1 - 2^(-100)).
PriemGenerator
Voer twee positieve getallen M en N in en laat
het programma een oplossing (a,b) van de
vergelijking a*M + b*N = ggd (M,N) berekenen.
Euclides
Commentaar en reacties naar
Harm Bakker