RAR (file format)
Filename extension |
.rar, .rev, .r00, .r01 |
---|---|
Internet media type |
application/x-rar-compressed |
Uniform Type Identifier (UTI) | com.rarlab.rar-archive |
Magic number |
52 61 72 21 1A 07 00 (RAR 1.5 to 4.0) 52 61 72 21 1A 07 01 00 (RAR 5+) [1] |
Developed by | Eugene Roshal |
Initial release | March 1993[2] |
Type of format | archive format |
Open format? | No (decompression source code is available, but it's not free software due to the restriction that it must not be used to reverse engineer the RAR compression algorithm) |
RAR is a proprietary[3] archive file format that supports data compression, error recovery and file spanning. It was developed by a Russian software engineer, Eugene Roshal (the name RAR stands for Roshal Archive) and the RAR software is licensed by win.rar GmbH.[3]
File format
The filename extensions used by RAR are .rar
for the data volume set and .rev
for the recovery volume set. Previous versions of RAR split large archives into several smaller files, creating a "multi-volume archive". Numbers were used in the file extensions of the smaller files to keep them in the proper sequence. The first file used the extension .rar
, then .r00
for the second, and then .r01
, .r02
, etc.
RAR compression applications and libraries (including GUI based WinRAR application for Windows, console rar utility for different OSes and others) are proprietary software, to which Alexander L. Roshal,[3] the elder brother of Eugene Roshal, owns the copyright. Version 3 of RAR is based on Lempel-Ziv (LZSS) and prediction by partial matching (PPM) compression, specifically the PPMd implementation of PPMII by Dmitry Shkarin.[4]
The minimum size of a RAR file is 20 bytes. The maximum size of a RAR file is 9,223,372,036,854,775,807 (263-1) bytes, which is 8 exbibytes minus 1 byte.[5]
Versions
The RAR file format revision history:
- v1.3 (original, does not have "Rar!" signature)
- v1.5
- v2.0 - released with WinRAR 2.0 and Rar for MS-DOS 2.0 features the following changes:
- Multimedia compression for true color bitmap images and uncompressed audio.
- Up to 1 MiB compression dictionary.
- Introduces archives data recovery protection record.
- v2.91 - released in WinRAR version 3.00. Feature changes in this version include:
- File extensions is changed from {volume name}.rar, {volume name}.r00, {volume name}.r01, etc. to {volume name}.part001.rar, {volume name}.part002.rar, etc.
- Encryption of both file data and file headers.
- Improves compression algorithm using 4 MiB dictionary size, Dmitry Shkarin's PPMII algorithm for file data,
- Optional encryption algorithm is changed from cipher block chaining (CBC) mode to 128-bit AES.
- Optional creation of "recovery volumes" (.rev files) with redundancy data, which can be used to reconstruct missing files in a volume set.
- Support for archive files larger than 9 GiB.
- Support for Unicode file names stored in UTF-16 little endian format.
- v5.0 - supported by WinRAR 5.0 and later. Changes in this version:
- Maximum compression dictionary size increased to 1 GiB (default for WinRAR 5.x is 32 MiB and 4 MiB for WinRAR 4.x).
- Maximum path length for files in RAR and ZIP archives is increased up to 2048 characters.
- Support for Unicode file names stored in UTF-8 format.
- Faster compression and decompression.
- Multicore decompression support.
- Greatly improves recovery.
- Optional AES encryption increased from 128-bit to 256-bit.
- Optional 256-bit BLAKE2 file hash instead of a default 32-bit CRC32 file checksum.
- Optional duplicate file detection.
- Optional NTFS hard and symbolic links.
- Optional Quick Open Record. Rar4 archives had to be parsed before opening as file names were spread throughout the archive, slowing operation particularly with slower devices such as optical drives, and reducing the integrity of damaged archives. Rar5 can optionally create a "quick open record", a special archive block at the end of the file that contains the names of files included, allowing archives to be opened faster.
- Removes specialized text, multimedia, and Itanium executables compression algorithms; consequently some files of these types compress better with WinRAR 4.x (Rar4) than WinRAR 5.x (Rar5).
1 WinRAR 5.0 and RAR for Android refer to this format as RAR4.
Software
Operating system support
Software is available for Microsoft Windows (named WinRAR), Linux, FreeBSD, Mac OS X, and Android; archive extraction is supported natively in Chrome OS. WinRAR supports the Windows Graphical User Interface (GUI); other versions named RAR run as console commands. Later versions are not compatible with some older operating systems previously supported:
- WinRAR v5.x supports Windows XP and later.
- WinRAR v4.11 is the last version that supports Windows 2000.[6]
- WinRAR v3.93 is the last version that supports Windows 95, 98, ME, and NT.[6]
- RAR v3.93 is the last version that supports MS-DOS and OS/2 on 32-bit x86 CPUs such as 80386 and later. It supports long file names in a Windows DOS box (except Windows NT), and uses the RSX DPMI extender.[7]
- RAR v2.50 is the last version that supports MS-DOS and OS/2 on 16-bit x86 CPUs such as Intel 8086, 8088, and 80286.[7]
Creating RAR files
RAR files can be created only with commercial software WinRAR, RAR, and other software that has written permission from Alexander Roshal or shares copyrighted code under license from Alexander Roshal. The software license agreements forbid reverse engineering.[3] However, the fully open source program The Unarchiver, with support for uncompressing RAR archives, is distributed under the LGPL without any such restriction against reverse-engineering; it is possible that it could be a starting point for writing software capable of creating RAR archives. Graphical WinRAR is available for Windows. Console RAR application is available for Mac OS X, Linux, FreeBSD. Only WinRAR for Windows and Rar for Linux are available as native 64-bit applications. There is a native fully functional Android application called "RAR for Android".[8]
Extracting RAR files
Several programs can unpack the file format. RARLAB distributes the source code and binaries for a freeware command-line "unrar" program,[9] although this code is not under a free software license. This program can decompress/extract, but not create, RAR files. As of November 2014 some 3rd-party programs documented as "supporting the RAR format" did not recognise RAR5 files.
- The Unarchiver is a free software unarchiver for RAR and other formats, licensed under the LGPL. It runs on Mac OS X and the command line version, unar, also runs on Windows and Linux. It supports all versions of the RAR archive format including RAR3.[10][11]
- PeaZip is a free software RAR unarchiver for Windows, licensed under the LGPL, it also runs as RAR extractor on Linux and BSD, with GUI. PeaZip supports both pre-RAR5 .rar files (out of the box), and files in new RAR5 format (installing PeaZip UNRAR5 Plugin based on royalty-free but not OSI-compliant RARLAB's unrar).
- 7-Zip starting from version 15.06 beta[12] can unpack RAR5 archives. Note that this support is based on the RARLAB unrar and thus is not free software either.
- An older version of the unrar source was the basis for an obsolete free software unarchiving library called "unrarlib", licensed under the GPL, but it could only decompress archives created by RAR versions prior to 2.9. Archives created by RAR 2.9 and later use different formats not supported by this library.
See also
- List of archive formats
- Comparison of archive formats
- Comparison of file archivers
- Data corruption, Bit rot, Disc rot
References
- ↑ RAR 5.0 technote
- ↑ "Interview by correspondence" (in Russian). 1997–2002. Retrieved 26 April 2010.
- 1 2 3 4 win.rar GmbH. "RAR and WinRAR END USER LICENSE AGREEMENT (EULA)". RARLAB.
The author and holder of the copyright of the software is Alexander L. Roshal. [...] Neither RAR binary code, WinRAR binary code, UnRAR source or UnRAR binary code may be used or reverse engineered to re-create the RAR compression algorithm, which is proprietary, without written permission.
- ↑ Christian Scheurer (2006-12-17). "unrarlib FAQ".
- ↑ "WinRAR description". Retrieved 2013-05-01.
- 1 2 WinRAR Release History; RARsoft.
- 1 2 FreeDOS general questions.
- ↑ RAR for Android; RARsoft.
- ↑ "freeware UnRAR source and binaries download". RarLab.com.
- ↑ The Unarchiver Website contains unar. Accessed 5 February 2013.
- ↑ Free Software Foundation on The Unarchiver
- ↑ "7-Zip / Discussion / Open Discussion: 7-Zip 15.06 beta". sourceforge.net. Retrieved 2015-10-24.
External links
- Official website
- RARLAB FTP download website, current and old versions of WinRAR and RAR
- RAR 5.0 archive file format
|
|