Det er vigtigt at beskytte din personlige information online, og i dette projekt vil du lave et program, der skaber adgangskoder for dig.
Adgangskoderne vil være tilfældige, så ingen vil være i stand til at gætte dem!
Hvis du har brug for at printe dette projekt, brug venligst den Printer-venlige version.
I dette projekt vil de unge mennesker lære, hvordan en god adgangskode er skabtt, og hvordan man laver et program der skaber tilfældige adgangskoder.
Dette projekt er blevet skrevet for Safer Internet Day 2017, som var på d. 7. februar 2017. Målet med Safer Internet Day er at fremhæve sikker og ansvarlig brug af teknologi for unge mennesker. For yderligere information, besøg saferinternet.org.uk hvor du vil finde en undervisningspakke for 7-11 årige med yderligere ressoucer.
Dette projekt bruger Python 3. Vi anbefaler at bruge Trinket til at skrive Python online. Dette projekt indeholder følgende Trinkets:
Der er også en trinkent, der indeholder det færdige projekt:
Dette projekt kan blive fuldført offline hvis man foretrækker det.
Du kan finde det færdige projekt i ‘Volunteer Resources’-sektionen, som indeholder:
(Alle ovenstående resourcer kan også downloades som projekt- og frivilige .zip
-filer.)
random.choice()
metoden;Dette projekt bruger elementer fra den følgende sektion af Raspberry Pi Digital Making Curriculum:
En computer kan prøve at gætte din adgangskode ved at bruge ‘brute force’ – dette betyder, at den prøver mange forskellige adgangskoder, indtil den gætter den rigtige.
Lad os finde ud af, hvor længe det vil tage en computer at gætte din adgangskode.
Gå til howsecureismypassword.net, som er en hjemmeside brugt til at finde ud af, hvor sikker dine adgangskoder er.
Skriv “letmein” (Let me in, som betyder luk mig ind) som adgangskoden. Du vil se, at en computer ville gætte denne adgangskode meget hurtigt!
Du vil også se, hvorfor “letmein” ikke er god til at bruge som adgangskode:
Det er en adgangskode, som er brugt rigtig meget (en af de 15 mest brugte adgangskoder). En computer ville gætte disse først.
Det indeholder ord fra ordbogen. En computer ville også prøve disse adgangskoder først.
Det er meget kort. Det ville tage en computer mere tid at gætte en længere adgangskode.
Det indeholder kun bogstaver. Adgangskoder er mere sikre, hvis de også indeholder tal og tegnsætninger.
Prøv at indtaste et ord fra en ordbog. Hvor lang tid ville det tage en computer at gætte den adgangskode?
Kan du indtaste en adgangskode, der ville tage mere end 1.000 år for computeren at bryde, men som ikke er for lang at skrive?
Husk at din adgangskode er sværere at gætte, hvis den:
Du kommer til at skabe adgangskoder, som er svære for computeren at gætte. Disse er nyttige til at beskytte vigtige kontoer. Bemærk at mange voksne bruger programmer til styring af adgangskoder til at hjælpe dem med at huske mange, vanskelige adgangskoder.
Lad os lave et program til at vælge et tilfældigt tegn til din adgangskode.
Lav en liste af tegn, som gemmes in en variabel kaldt chars
.
For at vælge et tilfældigt tegn, har du brug for at lave import
af random
modulet.
Nu kan du vælge et tilfældigt tegn fra listen, og gemme det in en variabel kaldt password
.
Endelig kan du udskrive din (meget korte!) adgangskode til skærmen.
Test dit projekt ved at klikke ‘run’. Du burde se et enkelt tilfældigt tegn på skærmen.
Hvis du kører dit program et par gange, bør du se forskellige tegn komme frem.
En adgangskode er ikke særlig sikker, hvis det kun indeholder bogstaver. Tilføj nogle tal til din chars
variabel.
Et enkelt tegn er ikke særligt brugbart - Lad os forbedre dit program, så det kan skabe en længere adgangskode.
For at skabe en adgangskode, skal du tilføje tilfældige tegn til det, en ad gangen.
Når programmet starter, bør din password
variabel være tom. Tilføj denne linje til din kode:
Du vil gerne tilføje et tilfældigt tegn 10 gange. For at gøre dette, tilføj følgende kode:
Du bør også rykke linjen for at vælge et tilfældigt tegn ind, så det sker 10 gange.
For at lave indrykning, tryk ‘tabulator’ tasten (normalt fundet over CAPSLOCK tasten).
Du er nødt til at bruge +=
, for at tilføje det nye tegn til adgangskoden hver gang.
Test din nye kode, og du burde se en adgangskode, der indeholder 10 tegn.
Kan du ændre din kode, så det skaber en meeeeeeeeget lang adgangskode?
Nogle hjemmesider kræver, at adgangskoder er en bestemt længde. Lad os give brugeren mulighed for at vælge længden af deres adgangskode.
Først, bed brugeren om at indtaste en længde til adgangskoden, og gem den i en variabel kaldt length
.
Brug int()
til at omdanne brugerens indtastede værdi til et heltal.
Brug din length
variabel til at gentage så mange gange som brugeren har indtastet.
Test din kode. Adgangskoden, der bliver skabt, bør have den længde, brugeren har indtastet.
Lad os give brugeren mulighed for at kabe 3 adgangskoder på en gang.
Tilføj denne kode for at skabee 3 adgangskoder:
Marker koden, der skaber en adgangskode, og tryk tabulator for at indrykke det. Dette vil få koden til at gentage sig 3 gange.
Test din nye kode. Du burde nu se 3 adgangskoder med den længde, du har indtastet.
I stedet for altid at udskrive 3 adgangskoder, kan du give brugeren mulighed for at indtaste det antal adgangskoder de gerne vil have?
Her er hvordan dit program bør fungere:
Koden, du har brug for, ligner meget den kode, der håndterer adgangskodens length
.
Unless otherwise specified, everything in this repository is covered by the following licence:
PROJECT NAME by the Raspberry Pi Foundation is licenced under a Creative Commons Attribution 4.0 International License.