RAR (Dateiformat)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Vorlage:Infobox Dateiformat/Wartung/Standard fehlt

RAR (Roshal ARchive)
Rar-logo.svg
RAR Logo (WinRAR)

Vorlage:Infobox Dateiformat/Wartung/Screenshot Format

Dateiendung: .rar
MIME-Type: application/x-rar-compressed
application/octet-stream
Magische Zahl:

5261.7221.1A07.00 hex
Rar!\x1A\a\0 (ASCII-C-Notation)

Entwickelt von: Jewgeni Lasarewitsch Roschal
Art: Datenkompression
Container für: beliebige Dateien
Website: rarlab.com

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[Bearbeiten]

Solide Kompression[Bearbeiten]

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 z. B. mit ZIP. 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[Bearbeiten]

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[Bearbeiten]

RAR unterstützt Verschlüsselung der komprimierten Daten mittels des Advanced Encryption Standards 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[Bearbeiten]

Da die Entwickler seit jeher die lizenzkostenfreie Übernahme der Entpackroutinen gestattet haben und dafür erforderliche Routinen im Quelltext bereitstellen, wird das Dekomprimieren von RAR-Archiven inzwischen von nahezu jedem Multiformat-Packprogramm und auf einer Vielzahl von Betriebssystemen unterstützt. Die Erstellung von RAR-Archiven, also der Kompressionsalgorithmus, ist jedoch nicht zur Übernahme freigegeben und auch nicht öffentlich dokumentiert. Offiziell unterstützen deshalb nur die vom RAR-Hersteller selbst veröffentlichten Programme WinRAR, RAR für DOS, RAR für Linux, UnRarX für Macintosh usw. diese Funktionalität. Eine frühere Version des RAR-Formats wurde allerdings von den Autoren der Programme SpeedCommander und Squeez reproduziert, weshalb diese ebenfalls RAR-Archive der inzwischen veralteten Version 2 erzeugen können. Eine Garantie, dass so erstellte RAR-Dateien zu jeder RAR-Implementierung kompatibel sind, kann es aber nicht geben.

Obwohl RAR eine große Fangemeinde hat, konnte es sich trotz der höheren Packrate und der überlegenen Funktionen (u. a. native Splittung in mehrere Teildateien) gegenüber dem weitverbreiteten ZIP-Format nur vereinzelt durchsetzen. Ein Hauptgrund ist, dass RAR, anders als ZIP, ein proprietäres Dateiformat ist und nur der Dekompressionsalgorithmus vollständig dokumentiert und quelloffen verfügbar ist. Hinzu kommt, dass RAR zwar deutlich besser als ZIP komprimiert, es mittlerweile aber ähnlich leistungsstarke, dabei aber quelloffene Formate wie etwa 7z gibt. Der ausschlaggebende Grund der geringeren Verbreitung ist aber wohl, dass das ZIP-Format bereits vor Entwicklung des RAR-Packers große Verbreitung gefunden hatte und somit RAR immer gegen einen großen Bestand vorhandener Archive ankämpfen musste (siehe Pfadabhängigkeit).

Geschichte[Bearbeiten]

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.[1] 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 Eugene Roshal auch unter der GPL verfügbar gemacht werden durfte.[2] Daraus entstand ein freies unrar,[3] 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 Wiederherstellungs-Teile 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) Entpack-Software für Archive nach Version 3 des RAR-Formates, die auch mit mehrteiligen, mit verschlüsselten sowie mit selbstentpackenden Archiven umgehen kann.[4][5][6]

Siehe auch[Bearbeiten]

Weblinks[Bearbeiten]

Quellen[Bearbeiten]

  1. http://www.compression.ru/arctest/descript/roshal.htm
  2. http://unrarlib.org/
  3. http://gna.org/projects/unrar
  4. http://www.fsf.org/blogs/licensing/free-rarv3-extraction
  5. Versionsgeschichte von The Unarchiver von http://wakaba.c3.cx/s/apps/unarchiver.html
  6. http://code.google.com/p/theunarchiver/downloads/list?can=1&q=2.5 mit Erscheinungsdatum von Version 2.5 von The Unarchiver