Gastles 3: ICT security & Blockchain Flashcards
Wat is de pragmatische definitie van information security? (3)
ICA:
- Integriteit: complete, accurate en geldige data
- Confidentialiteit: restrictie op delen v informatie?
- Availability: zijn er back-ups beschikbaar in nood?
Geeft de kwaliteit van het informatie systeem aan
Hoe maak je een infromatie systeem zo veilig mogelijk voor de blootgestelde bedreigingen? (3)
- Risicoanalyse uitvoeren
- Risico’s uitdrukken in probabiliteit en impact
- Safeguards plaatsen om de bedreigen te mitigeren
Welke safeguards kunnen integriteit en confidentialiteit ondersteunen? (3)
- Authentificatie: verifieren van identiteit
- Acces control: lezen/ schrijven wordt beperkt afhankelijk van de indentiteit v/d gebruiker
- Cryptografie controle: Hashing, elektronische handtekening en encryptie (I & C)
Hoe kan worden verzekerd dat het systeem niet kan worden aangepast door ongeauthoriseerde bronnen? (3)
Integriteit verzekeren door:
- Onderscheid maken tussen geauthoriseerd en niet geauthoriseerde bronnen, ondescheid maken tussen functies (Segregation of duties = SOD)
- Bij het verzenden van informatie: parity bits, cyclic redundancy checks of in de vorm van hashes
- Bij verzenden of opslaan van informatie: elektronische handtekening.
Wat maakt een elektronische handtekening zo interessant?
Elektronische handtekening is een private sleutel die niet kan worden ontkend. Deze verstrekt validiteit. onkenbareheid van aankomst en van ontvangst.
Welke safeguards ondersteunen confidentialiteit? (2)
Mini-primer cryptographie
- toegangscontrole (authorized vs unauthorized)
- Encryptie
Wat houdt Kerckhoff’s assumptie in?
cryptosystem should be secure even if everything about the system, except the key, is public knowledge.
Het beveiligen van cryptosystemen is gevaarlijk, je kan beter de sleutel beveiligen.
Waarom worden wereldwijd gekende algorithmes verkozen boven private algorithmes?
Gekende algorithmes zijn vele malen gestresstest door geleerden.
Wat zijn de 4 cryptografische technieken?
- Randomness: onvoorspelbare sleutel die maar eenmalig kan worden gebruikt (nonce = number only used once)
- Wordt gebruikt in challenge respons protocols bij authentificatie - Unkeyed: algorithmes zonder sleutel bv. hash functies
- wordt gebruikt bij elektronische handtekeningen - Symmetrische sleutel algorithmes: steeds dezelfde sleutel voor encryptie en decryptie
- vb. Advanced Encryption Standard Algorithme (AES) - Assymetisch sleutel algorithmes: gebruik van sleutelparen - private (PR) + publieke sleutel (PU)
- transformaties gedaan met een sleutel worden gereversed met de andere sleutel
- Sign (PR) -> Verify (PU)
- Encrypt (PU) -> Decrypt (PR)
- vb. Rivest/shamir/adlemans (RSA), Elgamal elliptic curve cryptography algorithme.
Unkeyed - Wat zijn hash functies? Welke eigenschappen heeft deze functie (5)? Welke vier soorten hash functies bestaan er?
Hash functie = functie die data van een arbitraire grootte kan mappen tot data v/e vaste grootte.
- Deze hash-waarde (digest) is even lang onafhankelijk van de input.
- Bij het aanpassen van de input zal de hash-waarden disproportioneel veranderen.
- One way functie: kan niet teug worden getransformeerd van digest naar input.
- second pre-image resistance: Gegeven een input m1 is het bijna onmogelijk om een 2de input m2 te vinden met dezelfde output.
- Collision resistance: Bijna onmogelijk om 2 inputs m1 en m2 te vinden met dezelfde output.
4 soorten hash functies:
- imperfect hash: collision tussen hash-waarden
- perfect hash: geen collision
- minimal perfect hash: geen collision + er bestaan zoveel hashwaarden als er inputs bestaan
- Hash tabel slaat informatie op in buckets.
Scenario 1: confidentialiteit via symmetrische encryptie. Leg uit.
Zelfde sleutel voor encryptie als decryptie, confidentialiteit kan worden gegarandeerd. Integriteit en non-repudiation kunnen niet worden gegarandeerd.
Scenario 2: confidentialiteit via assymmetrische encryptie. Leg uit.
We werken hier met sleutel paren: private sleutel voor eigenaar en publieke sleutel bij derde partij.
- Adhv de pu sleutel encrypteerd ene partij een boodschap, deze boodschap kan enkel worden gedecrypteerd met de bijhordende private sleutel.
- probleem: buitenstaanders kunnen de boodschap nog aanpassen maar zonder te weten wat er in staat.
confidentialiteit en gegarandeerd, integriteit niet.
Scenario 3: Integriteit via assymmetrisch handtekening (BELANGRIJK)
Stap 1: private en publieke sleutel worden gegenereed
Stap 2: Bericht wordt door A gemaakt en naar B gestuur (zonder encryptie)
Stap 3: A maakt hash-waarde voor het bericht
Stap 4: Deze hash-waarde wordt met de private sleutel van A geëncrypteerd.
Stap 5: B zal met publieke sleutel van A de hash-waarde decrypteren. en de hashwaarde van het orginele bericht creeren
Stap 6: Als de hash-waarden identiek zijn weet B zeker dat het bericht correct is aangekomen van A.
Het bericht kan door iedereen worden gelezen ( niet confidentieel) maar kan door niemand worden aangepast zonder dat B het weet (integriteit)
6 eigenschappen van de blockchain?
- Integriteit van de Blockchain wordt verzekerd idoor hash & handtekening functies
- Elke deelnemer heeft een kopie v/d blockchain
- Elke blok bevat informatie over transacties
- Nieuwe blokken worden steeds op het einde v/d keten toegevoegd adhv consensus
- De volgorde van de blokken ligt vast en kan dus niet worden gewijzigd
- Een vork kan ontstaan, regel: langste keten wint
Wat zijn de drie stappen v/h toevoegen v/e block a/d blockchain?
- Elke gebruiker (node) heeft een copy v/d blockchain
- Er gebeuren transacties ide moeten worden weggeschreven in een nieuwe blok.
- > Elke node maakt een ‘candidate block’ - Aan de hand van consensus wordt de volgende block gekozen