LW 14 - #11.2 Flashcards
cryptografie
houdt zich bezig met het beveiligen van gegevens
ten behoeve van wat kunnen cryptografische technieken worden ingezet?
- vertrouwelijkheid (exclusiviteit)
- integriteit (correctheid, volledigheid, geldigheid, authenticiteit, onweerlegbaarheid)
waar vallen cryptografische technieken onder?
- logische beveiligingsmaatregelen
[echter zijn er aanvullende organisatorische maatregelen nodig om de cryptografische technieken effectief te kunnen gebruiken – waarvan sleutelbeheer het belangrijkst is]
vercijferen (encryptie)
het onleesbaar maken van een bericht voor onbevoegden
hoe achterhalen oorspronkelijke bericht?
men kan het oorspronkelijke bericht alleen achterhalen (ontcijferen/decryptie) als men volledige kennis heeft van de gebruikte cijfermethode (algoritme) en de bijbehorende waarden (sleutel)
wat vormt een vercijfersysteem/cryptosysteem?
een vercijferalgoritme (en ontcijferalgoritme) en de bijbehorende sleutels-
waar maakt een sterk vercijfersysteem gebruik van?
sterk vercijferalgoritme
- het kenmerk hiervan is dat er geen eenduidige relatie lijkt te bestaan tussen de tekens uit het oorspronkelijke bericht en de tekens uit het vercijferde bericht
wat gebeurt er bij een wijziging van een sterk algoritme?
bij wijziging van 1 bit in het oorspronkelijke bericht verandert ongeveer de helft van het aantal bits in het vercijferde bericht
frequentieanalyse
de frequenties waarmee tekens, of combinaties van tekens, voorkomen in het vercijferde bericht, vergeleken met bekende frequenties in natuurlijke taal
een sterk vercijfersysteem heeft een grote sleutelruimte -> wat is dat?
dat wil zeggen dat er een groot aantal verschillende sleutels mogelijk zijn
sleutellengte
de lengte van de gebruikte sleutel in aantal karakters of bits
[hoe langer de sleutel is - hoe meer sleutelmogelijkheden - des te moeilijker het is om de juiste sleutel te vinden]
sleuteluitputting (brute force/grof geschut)
de vercijfering kan worden gekraakt door alle mogelijke sleutels te proberen
hoe wordt er bepaalde welke sleutellengte noodzakelijk is?
- de periode gedurende welke bepaalde gegevens vertrouwelijk moeten blijven
- de waarde van de gegevens
- de ontwikkelingen in de techniek
Security through obscurity (beveiliging door geheimhouding)
het geheimhouden van het gebruikte vercijferalgoritme
[in dit geval zit de beveiligingskracht niet zozeer in de sterkte van het gebruikte algoritme, maar in het geheim ervan] – het is dan zelfs mogelijk om te vercijferen zonder dat er gebruik wordt gemaakt van een sleutel
security through obscurity is niet zo veilig, waarom?
- het geheimhouden is onvoldoende gereviewd en bevat vaak kwetsbaarheden
- bovendien kunnen implementaties van het algoritme worden onderzocht om zo de werking van het algoritme te ontdekken
wat is van belang bij algoritmen die openbaar zijn?
- de omvang van de sleutelruimte
- het geheimhouden van sleutels
wat is een groot voordeel van openbare vercijferalgoritmen?
- het is breed toegankelijk waardoor vercijferde communicatie tussen verschillende organisaties en verschillende mensen makkelijker wordt gemaakt
berichtvercijfering/ end-to-endvercijfering
als een bericht door de afzender zodanig wordt vercijferd dat het bericht alleen door de beoogde ontvanger (sleutelbezitter) kan worden ontcijferd
[in dit geval hoeven er geen componenten van de gebruikte infrastructuur te worden afgeschermd]
lijnvercijfering
het onleesbaar maken van gegevens over een communicatiekanaal tussen twee knooppunten
[bij elk knooppunt ontcijferd en daarna weer vercijferd voor transport naar het volgende knooppunt]
wanneer wordt lijnvercijfering vooral gebruikt?
communicatienetwerken
lijnvercijfering vergemakkelijkt het sleutelbeheer maar het brengt ook een nadeel met zich mee.
Welk nadeel?
het bericht op de knooppunten is tijdelijk in onvercijferde vorm aanwezig
bij vercijfering wordt de inhoud van een bericht onleesbaar gemaakt, maar niet het feit dat het bericht wordt verstuurd.
de headers van de betreffende berichten wordt niet vercijferd, waarom?
de adresinformatie moet leesbaar blijven
steganografie
als berichten worden verstopt in andere berichten
symmetrisch vercijferen / klassiek vercijferen
maakt gebruik van symmetrische vercijferalgoritmen
- bij symmetrische algoritmen wordt dezelfde sleutel gebruikt voor zowel vercijferen als ontcijferen
[veelal geïmplementeerd in apparatuur]
voordeel symmetrisch vercijferen
- de sleutel wordt verspreid over alle leden van een groep en die leden kunnen zowel vercijferen als ontcijferen, voor buitenstaanders blijft de sleutel geheim
- sneller dan asymmetrische algoritmen
symmetrische vercijferalgoritmen maken gebruik van
transpositie en substitutie
transpositie
het verplaatsen van tekens uit de brontekst
substitutie
het vervangen van tekens uit de brontekst door andere tekens
wat is een voorbeeld van een zwak symmetrisch algoritme
Ceasar-algoritme (26-1)
wat is een sterk symmetrisch algoritme?
AES Advanced Encryption Standard
AES Advanced Encryption Standard
AES ondersteunt verschillende sleutellengtes en is efficiënt te implementeren
- gebaseerd op het Rijndael-algoritme
asymmetrisch vercijferen / public-key-vercijferen
asymmetrisch vercijferalgoritmen
- er worden verschillende sleutels gebruikt voor het vercijferen en ontcijferen
- kan ook worden gebruikt voor authenticatie en het vaststellen van integriteit
welke 2 sleutels zijn er nodig bij asymmetrisch algoritmen om een bericht te vercijferen en vervolgens te ontcijferen
- private key
- public key
als een bericht moet worden vercijferd, dan wordt dat gedaan met de openbare sleutel van de ontvanger.
het vercijferde bericht is dan alleen te ontcijferen met de bijbehorende geheime sleutel.
wanneer wordt er gezegd dat een bericht is voorzien van de digitale handtekening van de verzender
als de integriteit en de authenticiteit is vast te stellen
het gebruik van een digitale handtekening kan gecombineerd worden met versluiering -> hoe gaat dat
een bericht wordt eerst vercijferd met de geheime sleutel van de verzender (authenticatie en integriteit) en vervolgens nog een keer met de openbare sleutel van de ontvanger (versluiering)
een bekend asymmetrisch algoritme
RSA Rivest, Shamir, Adleman
RSA Rivest, Shamir, Adleman
het maakt gebruik van 2 grote priemgetallen en het product ervan; de priemgetallen moeten geheim blijven
[de krach van het algoritme zit in het feit dat het zonder additionele informatie zeer moeilijk is om de oorspronkelijke priemgetallen te vinden als alleen het product bekend is.]
ECC – elliptic curve cryptography
[asymmetrisch algoritme]
- dit algoritme heeft tov RSA het voordeel dat de gebruikte sleutels bij dezelfde mate van bescherming korter zijn, waardoor het sneller is.
eenrichtingvercijferen
vanuit de vercijferde tekst is de originele tekst niet te achterhalen
hashfunctie
- een hashfunctie genereert een code, de hash, die specifiek is voor een bepaald bericht
- de hashfunctie moet zodanig complex zijn dat het niet mogelijk is om bij een gegeven hash zelf een ander bericht te construeren
- met de hash kan dan de integriteit van een verzonden bericht worden aangetoond
asymmetrische vercijfersystemen worden gebruikt voor:
- vercijfering
- voor het zetten van een digitale handtekening
digitale handtekening
een waarmerk dat men aan een bericht toe kan voegen en waaraan de ontvanger van het bericht kan zien dat het bericht authentiek is en dat er niet met het bericht is gerommeld nadat de handtekening is gezet
het plaatsen van een digitale handtekening heeft dus een tweeledige functie
- het vaststellen van de bron van het bericht (berichtauthenticatie)
- het vaststellen of het bericht ongeschonden is (integriteit)
wat is het equivalent van de digitale handtekening voor symmetrische vercijfersystemen
Message Authentication Code – MAC
[de authenticatiekracht hiervan is minder sterk, omdat de sleutel, die nodig is voor het authenticatiealgoritme, aanwezig is bij meerdere partijen]
waar hangt de beschermende kracht van cryptografische technieken vanaf?
- gebruikte algoritmen
- geheimhouding van de gebruikte sleutels
- authenticiteit van de openbare sleutels
sleutelbeheer (key management)
omvat het aanmaken, registeren, opslaan, distribueren, in gebruik nemen, herroepen en vernietigen van sleutels
bij de beheer van sleutels zijn er specifieke maatregelen nodig zoals..
fysieke beveiligingsmaatregelen; bij het aanmaken en opslaan van sleutels
functiescheiding; om misbruik van sleutels te voorkomen, of althans te detecteren
wat voor soort maatregelen moeten worden ingezet bij sleutelbeheer?
organisatorisch, fysiek en logische beveiligingsmaatregelen in combinatie
bij symmetrische vercijfersystemen gebruikt elke combinatie van verzender en ontvanger … (geheime) sleutel(s)
1 (geheime) sleutel
bij asymmetrische vercijfersystemen gebruikt elke combinatie van verzender en ontvanger … sleutels
4 (twee paar)
- 2 sleutels (waarvan 1 geheime) voor communicatie in de ene richting
- 2 sleutels (waarvan 1 geheime) voor communicatie in de andere richting
weetjes symmetrisch & asymmetrisch
- bij 5+ partijen zijn er meer sleutels in omloop bij een symmetrisch systeem
- alle sleutels in een symmetrisch systeem zijn geheim
- in het asymmetrisch systeem is de helft van de sleutels geheim
- bij een symmetrisch systeem moet elke geheime sleutel gedeeld worden door tenminste 2 partijen -> ongeacht waar de geheime sleutel wordt aangemaakt, is het noodzakelijk dat deze sleutel wordt getransporteerd en bovendien op tenminste 2 locaties (tijdelijk) wordt opgeslagen
wat is het voordeel van asymmetrische systemen
al met al in het voordeel qua sleutelbeheer
geheime sleutels hoeven niet te worden getransporteerd en elke geheime sleutel hoeft slechts op 1 locatie te worden opgeslagen, doorgaans ook bij degene die de sleutel ook heeft aangemaakt
hybride systemen
combinatie van symmetrische en asymmetrische systemen
hybride systemen [uitleg]
- berichten vercijferen mbv een symmetrisch systeem met een eenmalige sleutel (sessiesleutel) -> de sessiesleutel wordt door de verzender bepaald en dan vercijferd mbv een asymmetrisch systeem met de openbare sleutel van de ontvanger en vervolgens met het bericht meegestuurd -> ontvanger kan dan met zijn eigen geheime sleutel de sessiesleutel ontcijferen en die gebruiken voor het ontcijferen van het meegestuurde bericht
voorbeeld hybride systeem
Pretty Good Privacy PGP
wat speelt een belangrijke rol bij het gebruik van vercijfersystemen
betrouwbare distributie van sleutels
bij symmetrische systemen worden … sleutels gedistribueerd, bij asymmetrische systemen … sleutels
- geheime
- openbare
oplossing voor het probleem ‘man in the middle’
het gebruik van digitale certificaten -> waarbij openbare sleutels worden gewaarmerkt door een derde partij die door de met elkaar communicerende partijen worden vertrouwd (Trusted Third Party) TTP -> de structuur waarbinnen dat gerealiseerd wordt is een Public-Key Infrastructure
[bij mits is vertrouwelijkheid en integriteit in het geding]
Public-Key Infrastructure PKI
een infrastructuur die het toepassen van asymmetrische encryptie mogelijk maakt door de sleutelproblematiek ervan op te lossen -> hierbij wordt gebruikgemaakt van digitale certificaten die door een Certification Authority (CA) worden uitgegeven
Certification Authority (CA)
een CA is een Trusted Third Party TTP, die zich specifiek richt op het beheren en uitgeven van digitale certificaten
aan wie biedt een Certification Authority (CA) diensten?
- aan een besloten gemeenschap (sector/branche)
- het hele internet
digitaal certificaat
een combinatie van identiteit en openbare sleutel die is gewaarmerkt door een CA
welke informatie is opgenomen in een digitaal certificaat
- de identiteit van de houder van het certificaat
- de openbare sleutel van de houder
- de identiteit van de CA die het certificaat heeft uitgegeven
- de uiterste houdbaarheidsdatum van het certificaat
registeren van certificaten (lichte variant)
gebruiker genereert zelf een openbare sleutel die hij per email naar de CA stuurt -> CA maakt obv het emailadres en de openbare sleutel een certificaat aan
registeren van certificaten (zwaarste variant)
gebruiker dient zich persoonlijk te legitimeren bij de CA, die de identiteit van de gebruiker controleert, een sleutelpaar genereert en het certificaat afgeeft
Registration Authority - RA
voor het registreren van gebruikers en hun openbare sleutels wordt vaak een afzonderlijk organisatieonderdeel ingericht
info –
elk certificaat wordt door de CA gewaarmerkt met een digitale handtekening (het wordt door de CA vercijferd met diens geheime sleutel)
- de geldigheid van een certificaat kan worden gecontroleerd door het bericht te ontcijferen met de openbare sleutel van de CA
- de ontvanger van het bericht kan vervolgens de geldigheid van het bericht controleren door mbv de openbare sleutel van de CA eerst de geldigheid van het meegestuurde certificaat te controleren en vervolgens mbv de daarin opgenomen openbare sleutel van de verzender ook de geldigheid van het bericht te controleren
deze stap automatiseren? -> certificaat moet via een standaardformaat zijn opgesteld
(bekendste standaard ITU-standaard X.509
waar moet een ‘betrouwbare’ CA zich aan houden
Certification Practice Statement (CPS) Certificate Policy (CP)
stel gebruiker ontvangt een certificaat dat is uitgegeven door een andere CA -> hoe weet de gebruiker dat de CA + certificaat betrouwbaar zijn
- algemeen vertrouwde partij aanwijzen die de CA’s controleert en certificeert (root CA)
–> dmv
- uitvaardigen van centrale wet- en regelgeving die CA’s aan strikte regulering onderwerpt en onder toezicht stelt van een overkoepelende organisatie
- als de markt een algemeen vertrouwde partij aanwijst die de verschillende CA’s controleert en certificeert (dmv branchevereniging)
root CA
toets op de naleving van het CPS en de CP en tekent voor de betrouwbaarheid van de certificaten van een CA met het afgeven van een certificaat waarin de identiteit en de openbare sleutel van de CA zijn opgenomen
Mutual Recognition Agreements (MRA’s)
als er op internationaal niveau meerdere root CA’s ontstaan, die ieder een eigen markt of landsector afdekken, dan is het uitwisselen van certificaten tussen verschillende sectoren mogelijk als de desbetreffende root CA’s elkaar eerst wederzijds hebben gecertificeerd, of elkaars certificaten erkennen obv onderlinge afspraken