1. New RAR 5.0 archiving format.
You can use “RAR 5.0″ option
in archiving dialog or -ma command line switch to create
RAR 5.0 archives.
Older software including older WinRAR versions is not able to
decompress RAR 5.0 archives, so if you plan to send an archive
to other people, it is necessary to take the compatibility issue
into consideration. You can select “RAR” instead of “RAR5″ option
in archiving dialog to create RAR 4.x archives compatible with
previous WinRAR versions.
2. Changes in RAR 5.0 compression algorithm:
a) maximum compression dictionary size is increased up to 1 GB
in 64 bit WinRAR. 32 bit WinRAR version can use up to 256 MB
dictionary when creating an archive. Both 32 bit and 64 bit
versions can unpack archives with any dictionary size,
including 1 GB;
b) default dictionary size for RAR 5.0 is 32 MB, typically resulting
in higher compression ratio and lower speed than RAR 4.x 4 MB.
You can use “Dictionary size” archiving dialog option or -md<size>
switch to change this value;
c) -md<size> switch syntax is modified to support larger dictionary
sizes. Append ‘k’, ‘m’ and ‘g’ modifiers to specify the size
in kilo-, mega- and gigabytes, like -md64m for 64 MB dictionary.
If modifiers are not present, megabytes are assumed,
so -md64m is equal to -md64;
d) RAR 5.0 format includes Intel IA-32 executable and delta
compression algorithms, but RAR 4.x text, audio, true color
and Itanium algorithms are not supported. These excluded algorithms
are not efficient for modern data types and hardware configurations;
e) RAR 5.0 decompression can utilize several CPU cores.
Though not to same extent as in compression algorithm,
it improves the decompression speed on large files
with poorly compressible data or when using BLAKE2 checksums.
3. Changes in RAR 5.0 archive format:
a) file times are stored as Coordinated Universal Time (UTC)
instead of former local time, making file exchange among
several time zones more straightforward;
b) file names and archive comments use UTF-8 encoding.
4. RAR 5.0 recovery record is based on Reed-Solomon error correction
codes. If recovery record size is large enough, 5% and more,
the new error correction scheme provides much higher resistance to
multiple damages comparing to RAR 4.x recovery record.
Smaller record, such as 1 – 2%, or less random damage type would
result in less difference between 4.x and 5.0. For single continuous
damage 4.x and 5.0 efficiency is about the same.
Additionally to usual data erasures, the new recovery record
is able to detect deletions and insertions of much larger size
than in previous RAR versions. Maximum insertion size is several
megabytes. Maximum deletion size depends on the damage type
and in some cases can be as large as the recovery record size.
Still, the best recovery performance and efficiency is achieved
if no deletions and insertions are present, so all data including
damaged sectors preserve their original positions. Thus, if you use
some special software to copy an archive from damaged media,
it is better to choose the mode, when damaged sectors are filled by
zeroes or any other data instead of cutting them out completely
from resulting file.
RAR 5.0 recovery record is more resistant to damage of recovery record
itself and can utilize a partially corrupt recovery record data.
Note, though, that “Repair” command does not fix broken blocks
in recovery record. Only file data are corrected. After successful
archive repair, you may need to create a new recovery record
for saved files.
New recovery record is not based on 512 byte sectors anymore
and incorporates more complicated data structures. So it is impossible
to specify its size in sectors. For RAR 5.0 archives the parameter of
-rr[N] switch and rr[N] command is always treated as a percent of
archive size regardless of presence of % character. Typically N%
recovery record can repair up to N% of continuously damaged data
and increases the archive size by only slightly more than N%.
Ability to fix multiple damages is proportional to N.
We used “Screaming Fast Galois Field Arithmetic Using Intel
SIMD Instructions” paper by James S. Plank, Kevin M. Greenan
and Ethan L. Miller to improve Reed-Solomon coding performance.
Also we are grateful to Artem Drobanov and Bulat Ziganshin
for samples and ideas allowed to make Reed-Solomon coding
5. “Test” command verifies validity of RAR 5.0 recovery record.
Recovery record is tested after processing all archived files.
If corrupt archive contains the recovery record, it might be possible
to repair it even if recovery record validity test is failed.
“Repair” command attempts to utilize even a partially damaged
recovery record. So treat the negative recovery record test result
as a reason to re-create the archive if original files are still
available, but not as a reason to avoid “Repair” command.
6. Changes in RAR 5.0 encryption algorithm:
a) encryption algorithm is changed from AES-128 to AES-256 in CBC mode.
Key derivation function is based on PBKDF2 using HMAC-SHA256;
b) special password verification value allows to detect most of
wrong passwords without necessity to unpack the entire file;
c) if archive headers are not encrypted (“Encrypt file names” option
is off), file checksums for encrypted RAR 5.0 files are modified
using a special password dependent algorithm, to make impossible
guessing file contents based on checksums. Do not expect such
encrypted file checksums to match usual CRC32 and BLAKE2 values.
7. RAR 5.0 archives allow to utilize 256 bit length BLAKE2sp hash
( https://blake2.net ) instead of 32 bit CRC32 as a file checksum.
Enable “Use BLAKE2 file checksum” option in “Options” page of
archiving dialog or specify -htb command line switch to use BLAKE2
While producing slightly larger archives, BLAKE2 can be used
for file contents identification. If two files have the same
BLAKE2 value, it practically guarantees that file contents
is the same. BLAKE2 error detection property is also stronger
than in much shorter CRC32.
8. Features removed:
a) authenticity verification feature did not provide the required
level of reliability and was removed;
b) switch -en (do not add “end of archive” block) is not supported
by RAR 5.0 archives, which always have the end of archive block.
This block helps WinRAR to safely skip external data like
digital signatures appended to archive;
c) old style extension based arcname.rNN volume names are not
supported by RAR 5.0 archives, which use only arcname.partN.rar
d) file comments are not supported anymore both in RAR 4.x
and RAR 5.0 archives. Console RAR ‘cf’ command is removed.
It does not affect the archive comment support, which is present
in both versions of archive format and is not planned for removal.
9. “Set password” command and “Dictionary size” option are moved to
“General” page of archiving dialog.
10. You can use “Save symbolic links as links” option on “Advanced” page
of archiving dialog to save and restore NTFS symbolic links
and reparse points as links, so their contents is not archived.
Command line equivalent of this option is -ol switch.
Similar option for NTFS hard links is “Save hard links as links”.
Its command line equivalent is -oh switch.
Both options are available only for RAR 5.0 archive format.
11. Added extraction only support for XZ archive format.
12. Changes in recovery volume processing in RAR 5.0 archive format:
a) maximum number of RAR+REV volumes in RAR 5.0 format is 65535
instead of 255;
b) recovery volume operations are faster than in RAR 4.x;
c) additionally to recovery data, RAR 5.0 REV files also store
service information such as checksums of protected RAR files.
So they are slightly larger than RAR volumes which they protect.
If you plan to copy individual RAR and REV files to some removable
media, you need to take it into account and specify RAR volume
size by a few kilobytes smaller than media size.
13. Maximum path length for files in RAR and ZIP archives is increased
up to 2048 characters.
14. Command line RAR returns the exit code 11 if it can detect that
user entered a wrong password. This code can be returned only
for RAR 5.0 archives. It is impossible to distinguish a wrong
password and data damage for RAR 4.x archives.
15. ‘v’ and ‘l’ commands display archived file names in the end of line,
not in that beginning as before. Also some fields previously
available in ‘l’ and ‘v’ output are now shown only by ‘lt’ and ‘vt’.
‘vt’ and ‘lt’ commands provide the detailed multiline information
for every archived file.
‘vta’ and ‘lta’ also include service headers into list.
16. Now the default charset for filelists in commands like
’rar a arcname @filelist’ is ANSI for both WinRAR and console RAR.
In previous versions it was ANSI for WinRAR and OEM for console RAR.
You can use -sc<charset>l switch to override this default.
17. Internal WinRAR viewer can detect and display files in UTF-8
and UTF-16 little endian encodings.
18. UTF-16 little endian encoding is used in RAR and WinRAR log file
rar.log, so Unicode file names are stored in the log correctly.
WinRAR automatically truncates the old rar.log file in non-Unicode
format to avoid mixing different encoding in the same log file.
In case of console RAR you need to delete the old rar.log manually,
otherwide RAR will append UTF-16 messages to existing rar.log.
19. Command line ‘r’ (repair) command can include an optional destpath\
parameter defining the destination folder for repaired archive:
rar r archive.rar destpath\