RAR ist ein Algorithmus, eine Software und ein Dateiformat zur Datenkompression, um den Speicherbedarf von Dateien für die Archivierung und Übertragung zu verringern. RAR hat je nach Dateiformat und der Anzahl der Dateien eine gute Kompressionsrate. Benannt wurde das Format nach seinem Erfinder, Jewgeni Lasarewitsch Roschal, der Name steht für Roshal ARchive. Die Archivdateien tragen üblicherweise die Endung .rar
; der MIME-Typ ist application/x-rar-compressed
.
Technische Eigenschaften
Solide Kompression
RAR unterstützt die Technik der progressiven bzw. soliden Archivierung, bei der zum Archivieren ausgewählte Dateien nicht einzeln, sondern alle zusammen komprimiert werden. Dies entspricht ungefähr einem vorherigen Generieren eines Tarballs mit anschließender Kompression durch gzip. Vor der Komprimierung sortiert RAR die Daten nach ähnlichen Mustern bzw. Dateityp. Der Vorteil der progressiven Kompression besteht darin, dass Redundanzen zwischen mehreren Dateien eliminiert werden, was bei vielen kleineren gleichartigen Dateien (z. B. Quellcode) den größten Effekt entfaltet. Insgesamt wird damit eine deutlich bessere Kompressionsrate erzielt. Dieses Vorgehen besitzt jedoch zwei Nachteile: Es können keine Einzeldateien aus einem Archiv extrahiert werden, ohne den gesamten Datenstrom, der auch ungewünschte Dateien enthält, zu dekodieren. Außerdem führt ein beschädigtes Archiv zum Verlust aller archivierten Dateien (nicht nur der betreffenden Datei, da es in komprimiertem Zustand keine einzelnen Dateien mehr gibt).
Recovery Records
Um das Risiko des Datenverlust aufgrund defekter Archive zu minimieren, unterstützt RAR – im Gegensatz zu anderen Kompressionsformaten wie ZIP, TAR oder gzip – sogenannte Recovery Records. Mit zusätzlichen Fehlerkorrekturdaten (ähnlich wie Reed-Solomon-Codes) können fehlerhafte RAR-Archive in begrenztem Umfang repariert werden. Die Menge der Korrekturdaten kann beim Komprimieren frei in Prozent angegeben werden.
Außerdem können bei mehrteiligen Archiven, die bei RAR Multiple Volumes heißen, sogenannte Spiegelarchive (Rekonstruktionsarchive) erstellt werden, von denen jedes genauso groß ist wie das größte der einzelnen Teilarchive. Liegen beispielsweise ein zehnteiliges Archiv und zwei Spiegelarchive vor und wurden zwei beliebige Teilarchive beschädigt, so können diese mit Hilfe der beiden Spiegelarchive vollständig rekonstruiert werden. Diese Prozedur funktioniert sogar dann, wenn ein Teilarchiv nicht nur beschädigt, sondern nicht vorhanden ist. Allerdings müssen – wie auch bei RAID n – immer mindestens so viele Rekonstruktionsarchive wie beschädigte bzw. fehlende Archive vorhanden sein, damit dieses Verfahren angewandt werden kann.
Verschlüsselung
RAR unterstützt Verschlüsselung der komprimierten Daten mittels des Advanced Encryption Standards (AES-128 bei RAR 4.x, AES-256 ab RAR 5.0[1]) und das Verschlüsseln der Dateinamen, so dass man ohne Kenntnis des Passwortes auch nicht auf den Inhalt eines Archivs schließen kann. Es können außerdem Alternate Data Streams eines Dateisystems (zum Beispiel NTFS, HFS, HPFS) mitgespeichert werden, was dieses Format auf entsprechenden Systemen als backuptauglich qualifiziert.
Wird eine große Datei, zum Beispiel ein Film, auf mehrere Archive verteilt, so sind die Dateinamen in den Archiven häufig identisch und können, mit Ausnahme des ersten Teilarchivs oder zusammenhängender erster Teile, nicht einzeln entpackt werden. Das Zusammenfügen der Gesamtdatei erfolgt automatisch nach Entpacken des ersten Archivs, sofern alle Pakete vorhanden sind.
Verbreitung
Da der Dekompressionsalgorithmus von den Entwicklern veröffentlicht wurde und lizenzkostenfrei genutzt werden darf, können RAR-Archive von zahlreichen anderen Packprogrammen dekomprimiert werden. Der Kompressionsalgorithmus hingegen ist nicht zugänglich, offiziell unterstützen deshalb nur die vom Hersteller stammenden Programme WinRAR, RAR für DOS, RAR für Linux, UnRarX für Macintosh etc. das Erstellen von RAR-Dateien. Version 2 des RAR-Formats wurde jedoch von den Autoren der Programme SpeedCommander und Squeez reproduziert, sodass diese ebenfalls RAR-Archive erzeugen können. Eine völlige Kompatibilität konnte nicht garantiert werden und die damals dokumentierte Version 2 ist mittlerweile veraltet.
RAR konnte sich trotz stärkerer Kompression und innovativer Funktionen (u. a. Aufteilung in mehrere Teildateien) gegenüber dem verbreiteten ZIP-Format nur vereinzelt durchsetzen. Ein Hauptgrund ist, dass RAR, anders als ZIP, ein proprietäres Dateiformat ist. Hinzu kommt, dass RAR zwar deutlich besser als ZIP komprimiert, es mittlerweile aber ähnlich leistungsstarke, dabei aber freie Formate wie etwa 7z gibt.
Geschichte
Die erste Version von RAR, RAR 0.1, wurde im März 1993 veröffentlicht, wobei erst die im Herbst erschienene Version 1.3 nennenswerte Verbreitung fand.[2] Die korrespondierende Version 1.3 des Dateiformates hatte noch keine Magische Zahl.
Anfang 2000 begann die Arbeit an einem freien Dekodierer (UniquE RAR File Library, unrarlib) auf Basis einer Version des offiziellen unrar von Rarlabs, welche mit Erlaubnis von Jewgeni Lasarewitsch Roschal auch unter der GPL verfügbar gemacht werden durfte.[3] Daraus entstand ein freies unrar,[4] das Archive nach allen Versionen des RAR-Formates bis 2.x entpacken kann.
Mit Version 2.9 von WinRAR von Ende September 2001 wurde eine neue Generation (Formatversion 3) des RAR-Formates eingeführt, welche unter anderem die Verwendung besserer Kompressionsverfahren (LZSS, PPMd) ermöglicht und mit der Möglichkeit eingebetteter Fehlerkorrekturdaten (beziehungsweise Wiederherstellungsteile bei mehrteiligen Archiven) die früher übliche zusätzliche Verwendung von PAR erübrigt.
Seit Juli 2010 existiert mit Version 2.5 von The Unarchiver auch freie (LGPL) Entpacksoftware für Archive nach Version 3 des RAR-Formates, die auch mit mehrteiligen, mit verschlüsselten sowie mit selbstentpackenden Archiven umgehen kann.[5][6][7]
Siehe auch
Weblinks
Quellen
- ↑ Encryption. winrar-france.fr, abgerufen am 5. April 2019 (englisch): „RAR archives are encrypted with Gott .AES-128 standard for RAR 4.x and AES-256 in CBC mode for RAR 5.0 archives.“
- ↑ compression.ru
- ↑ unrarlib.org
- ↑ gna.org (Memento vom 17. Mai 2011 im Internet Archive)
- ↑ fsf.org
- ↑ Versionsgeschichte von The Unarchiver von http://wakaba.c3.cx/s/apps/unarchiver.html
- ↑ code.google.com mit Erscheinungsdatum von Version 2.5 von The Unarchiver