Kryptering og RSA – mit projekt om digital sikkerhed

Kryptering og RSA – mit projekt om digital sikkerhed

I en tid hvor alt fra bankoplysninger til private beskeder flyder gennem internettet, er kryptering en af de vigtigste teknologier, vi har til at beskytte vores data. I mit studieprojekt på HTX valgte jeg at dykke ned i emnet for at forstå, hvordan kryptering virker – og hvor sikker den egentlig er.

Hvad er kryptering – og hvorfor er det vigtigt?

Kryptering betyder i bund og grund, at man gør information ulæselig for andre end dem, der har den rigtige nøgle. Det kan sammenlignes med en postkasse: Alle kan smide et brev i, men kun den med nøglen kan åbne og læse indholdet.

Uden kryptering ville vores digitale hverdag ikke fungere – fx når vi logger ind på banken, bruger NemID/MitID eller sender beskeder, som ikke skal læses af fremmede.

Historien bag kryptering

Kryptering er faktisk tusindvis af år gammel. Allerede Julius Cæsar brugte en simpel metode (Cæsar-kryptering), hvor hvert bogstav i en tekst blev flyttet et bestemt antal pladser i alfabetet. Selv om det er en meget simpel teknik, var det starten på en lang historie om, hvordan mennesker forsøger at kommunikere sikkert.

RSA – matematikkens rolle i digital sikkerhed

Mit projekt havde særligt fokus på RSA-kryptering, en af de mest anvendte krypteringsmetoder i dag. RSA bygger på et matematisk princip: at det er nemt at gange to store primtal med hinanden – men ekstremt svært at finde tilbage til de oprindelige primtal, hvis man kun kender resultatet.

RSA fungerer ved hjælp af to nøgler:

  • En offentlig nøgle, som alle kan bruge til at kryptere en besked til dig.
  • En privat nøgle, som kun du kender, og som kan bruges til at dekryptere beskeden.

På den måde kan to personer kommunikere sikkert uden først at have aftalt en hemmelig kode.

Mit program – kryptering og dekryptering i Python

Som en del af projektet udviklede jeg et Python-program, der kunne:

  1. Generere en offentlig og privat nøgle ud fra to primtal.
  2. Kryptere en besked med den offentlige nøgle.
  3. Dekryptere beskeden igen med den private nøgle.

Det gjorde det muligt for mig at se hele processen i praksis – og samtidig opdage, hvor afhængig sikkerheden er af størrelsen på de valgte primtal.

Kan man bryde krypteringen?

Jeg undersøgte også, hvordan man kan forsøge at bryde en RSA-kryptering. Her testede jeg to metoder:

  • Brute force: hvor computeren bare prøver sig frem med alle mulige faktoriseringer (meget langsomt!).
  • Pollards algoritme: en mere intelligent metode, der i mine tests kunne finde løsningen meget hurtigere.

Resultatet viste tydeligt, at små RSA-nøgler kan brydes relativt nemt – men når vi taler om de nøgler, der bruges i praksis (2048+ bits), er det i dag umuligt at knække med almindelige computere.

Hvad jeg lærte

Projektet gav mig en langt bedre forståelse for, hvorfor kryptering er så vigtig i vores samfund, og hvor meget matematikken bag betyder. Jeg lærte, at:

  • Kryptering ikke bare handler om koder, men også om avanceret matematik og algoritmer.
  • Sikkerhed afhænger af, hvor store nøgler man bruger – og at computerkraften hele tiden ændrer, hvad der er “sikkert”.
  • Selv en gymnasieelev med lidt Python-erfaring kan lave et fungerende krypteringsprogram, der efterligner principperne bag noget af verdens mest brugte sikkerhedsteknologi.

Project Details

I en tid hvor alt fra bankoplysninger til private beskeder […]

Opdag Hvad Jeg Gør, og Hvordan Jeg Gør Det

Opdag Hvad Jeg Gør, og Hvordan Jeg Gør Det

Fra koncept til færdigt produkt – jeg tilbyder en bred vifte af tjenester, der hjælper dig med at nå dine mål.