Krypto (Unix)

Krypto
Type Filkryptering
Forfatter Robert Morris
Operativ system Forskning Unix V3-V7, OpenSolaris
Interface sprog engelsk
Hardware platform IA-32 , x86-64 og andre
Stat forældet

UNIX - systemer er crypt et forældet filkrypteringsværktøj .

Historie

Crypt blev skabt af Robert Morris og dukkede først op i Version 3 Unix for at anspore til udvikling af kryptering; Morris knækkede til sidst krypten selv . Dennis Ritchie var i stand til at automatisere dekrypteringsprocessen ved hjælp af metoden foreslået af James Reeds, og en forbedret version af kryptalgoritmen dukkede op i Version 7 Unix , som Reeds og Peter Weinberger også knækkede [1] .

Forholdet til hash-funktionen

Der er også en kryptografisk hashfunktion af samme navn - krypt . Selvom både krypteringsværktøjet og krypteringsfunktionen bruges til at kryptere data, har de intet til fælles. For at skelne mellem de to refererer man normalt til systemværktøjet som crypt(1) , da det er dokumenteret i afsnit 1 i  UNIX-manualen, og til den kryptografiske hash-funktion som crypt(3) , da det er dokumenteret i afsnit 3 .

Krypten (1) -kommandoen

crypt(1) er et simpelt værktøj til kryptering/dekryptering af data. Det bruges typisk som et filterprogram (et program, der tager en streng som input og returnerer en anden streng), og som traditionelt er baseret på den algoritme , der bruges i Enigma-maskinen . Algoritmen anses for at være overdrevent kryptografisk sårbar til at yde beskyttelse mod brute-force nøglesøgning fra en moderne forbrugercomputer .

Nogle versioner af UNIX blev leveret med en endnu mere sårbar version af crypt(1) -kommandoen for at håndhæve moderne love, der begrænser eksporten af ​​kryptografisk software. Nogle af implementeringerne af krypten var faktisk implementeringer af Cæsar-chifferet .

crypt(1) på Linux

Linux-distributioner inkluderer normalt ikke en UNIX-kompatibel version af krypt af flere årsager:

  1. crypt anses for at være meget sårbar over for brute-force-angreb ( distributionen inkluderer normalt GnuPG , som er temmelig kryptografisk sikker efter nutidens standarder).
  2. Tidligt i udviklingen af ​​Linux var der bekymring for, at krypten muligvis ikke opfylder ITARs eksportkrav til kryptografisk software; af denne grund blev værktøjet udelukket fra de fleste distributioner udviklet i USA (udviklere tilbyder brugere selv at downloade GnuPG eller lignende software, nogle gange leverer scripts til at automatisere installationsprocessen).

Kildekoden til flere ældre versioner af krypteringsprogrammet er tilgængelig fra The Unix Heritage Society.

Den seneste version af koden er tilgængelig fra OpenSolaris-projektet .

Avancerede symmetriske kryptosystemer er nu tilgængelige på Linux (de er også bærbare til ethvert andet UNIX-lignende operativsystem ), inklusive mcrypt og ccrypt [2] . Selvom disse programmer tillader brugen af ​​meget sofistikerede krypteringsalgoritmer, kan kommandolinjeindstillinger bruges til at sætte dem til at fungere på en måde, der er kompatibel med den klassiske krypt(1) .

Hacking crypt(1)

Programmer til at bryde krypt(1)-cifre er bredt tilgængelige. I 1984-1985 skabte Bob Baldwin programmet Crypt Breaker's Workbench [3] , som er et interaktivt værktøj, der giver brugeren sekventielle 'gæt' om adgangskoden, og brugeren skal vælge den bedst egnede blandt dem. Unixcrypt-breaker af Peter Selinger [4] bruger en simpel statistisk model til at luge ud af dårlige adgangskoder og kræver ikke brugerindgreb.

Noter

  1. McIlroy, Douglas En Research Unix-læser: kommenterede uddrag fra programmeringsmanualen. CSTR. Bell Labs. 139. 1971-1986 . Hentet 8. september 2015. Arkiveret fra originalen 11. november 2017.
  2. Peter Selinger: ccrypt Arkiveret 22. februar 2011 på Wayback Machine . 27. juli 2008.
  3. Bob Baldwin: Crypt Breakers Workbench Arkiveret 18. august 2011 på Wayback Machine , 1984-1985.
  4. Peter Selinger: unixcrypt-breaker Arkiveret 19. september 2015 på Wayback Machine . 27. juli 2008.

Links