Archief - Bestand Encrypteren

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Forum

Legacy Member
Hoe los ik het volgende probleem op? Ik zou een bestand met een Java programma wille encrypteren. De sleutel voor encryptie zou gegeneerd moeten worden vanuit een password. Als ik de file terug wil decrypteren kan ik dan best ook eerst het ingegeven password controleren met een bhijgehouden hash? want anders gaat die bij een fout password het verkeerd decrypteren? Moet de hash dan samen met/naast het bestand opgeslagen worden? Of hoe kan je het best files encrypteren met een password vanuit een jaa programma?
Alvast bedankt.

NeverwinterX

Legacy Member
Googelen op "java password based encryption file" geeft een hoop informatie, maar ik neem aan dat je dat al gedaan hebt.
Als je het paswoord erbij gaat opslagen, dan herleg je het probleem voor de aanvaller van het kraken van de encryptie op de file, naar het kraken van de hash voor het paswoord. Het 2de is meestal makkelijker (zeker als je een onveilig hash algoritme gebruikt zoals MD5 of SHA1).
Het lijkt me niet erg dat als iemand het verkeerde paswoord opgeeft, dat de file dan verkeerd decrypt. Dat is juist wat je wilt. Natuurlijk als het erg grote bestanden zijn en je decryptie is niet zo snel en je tikt als legitieme gebruiker per ongeluk een verkeerd paswoord in, dan zal dat even vervelend zijn. Vanuit usability view niet zo leuk natuurlijk, maar het lijkt me dat als het echt gaat om gevoelige data dat security dan sowieso boven usability staat.
Anyway als je dit toch zou willen doen: gebruik dan zeker een sterk hashing algoritme en gebruik een salt bij het paswoord.

Cycloon

Legacy Member
Als het over enorm grote bestanden gaat kan je de data encrypteren in 2 blokken. Het eerste blok is dan relatief klein
- Je bewaart een hash van de niet geëncrypteerde blok
- Je laat de gebruiker het wachtwoord invoeren
- Je decrypteert die kleine blok
- Je voert de hash opnieuw uit en controleert of die overeen komt
- Als die overeenkomt kan je de grote blok decrypteren, als ze niet overeenkomen vraag je het wachtwoord opnieuw.

Maar grote blokken data in 1 geheel encrypteren is sowieso af te raden, anders wordt het vinden van patronen te makkelijk. Daarom verdelen de meeste encryptiealgoritmen de data sowieso al in kleinere blokken die met een andere seed worden geëncrypteerd. Bij dit soort algoritmen is het dus makkelijk om vroegtijdig na te gaan of de sleutel correct is of niet.

Maar het beste is ook hier om eigenlijk geen hashes bij te houden. Door hashes te bewaren wordt het potentieel makkelijker om de code te kraken vermits je weet wat de correcte decryptie is. Als je geen idee hebt of iets juist geëncrypteerd is wordt het veel moeilijker om een encryptie te breken (je weet immers nooit wanneer je de correcte sleutel hebt gevonden).

Forum

Legacy Member
Merci voor de antwoorden.

De bestanden zijn niet zo groot, het zijn XML bestanden. Het probleem is als het password verkeerd is de XML file wordt gedecrypteerd met waardeloze data. Het programma zal het XML bestand verkeerd interpreteren en een exception werpen. Het best is dus deze exceptie af te handelen als een melding van een fout ingegeven password?
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan