Jump to content

WinRAR

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Win11EnterpriseFan (talk | contribs) at 23:10, 6 November 2024 (Operating systems support). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

WinRAR
Developer(s)
Initial release22 April 1995; 29 years ago (1995-04-22)
Stable release
7.01[3] Edit this on Wikidata / 15 May 2024
Written inC++
Operating systemWindows Vista or later
PlatformIA-32, x64
Size3.4 MB
Available in50+ languages[4]
List of languages
Arabic, Armenian, Azerbaijani, Basque, Belarusian, Bulgarian, Burmese, Catalan, Chinese Simplified, Chinese Traditional, Croatian, Czech, Danish, Dutch, English, Estonian, Finnish, French, Galician, Georgian, German, Greek, Hebrew, Hungarian, Indonesian, Italian, Japanese, Korean, Lithuanian, Mongolian, Norwegian, Persian, Polish, Portuguese, Brazilian Portuguese, Romanian, Russian, Serbian Cyrillic, Slovak, Slovenian, Spanish, Colombian Spanish, Swedish, Thai, Turkish, Ukrainian, Uzbek, Vietnamese
TypeFile archiver
LicenseTrialware[5]
Websiterarlab.com

WinRAR is a trialware file archiver utility, developed by Eugene Roshal of win.rar GmbH. It can create and view archives in RAR or ZIP file formats,[6] and unpack numerous archive file formats. To enable the user to test the integrity of archives, WinRAR embeds CRC32 or BLAKE2 checksums for each file in each archive. WinRAR supports creating encrypted, multi-part and self-extracting archives.

WinRAR is a Windows-only program. An Android application called "RAR for Android" is also available.[7] Related programs include the command-line utilities "RAR" and "UNRAR"[8] and versions for macOS,[4] Linux, FreeBSD, WinCE, and MS-DOS.

Evolution

RAR/DOS started as a mix of x86 assembler and C, with the amount of assembly code decreasing over time and moving to pure C/C++ later on. The first versions of WinRAR were written in C, modern versions are using C++. RAR for Android is written as a mixture of Java and C++.[1]

WinRAR and the RAR file format have evolved over time. Support for the archive format RAR5, using the same RAR file extension as earlier versions, was added in version 5.0;[9] the older RAR file format has since been referred to as RAR4. WinRAR versions before 5.0 do not support RAR5 archives;[10] only older versions of WinRAR run on older operating systems, and cannot open RAR5 archives.

The RAR5 file format - from version 7 on, referred to as "RAR" - increased the maximum dictionary size up to 64 GB, depending on the amount of available memory, with the default in version 5 increased from 4 MB to 32 MB, typically improving compression ratio. For dictionaries larger than 4 GB, the size can be specified if it is unequal to a power of 2. Thus, there are no restrictions to the range 4, 8, 16, 32, 64, allowing 5 GB or 22 GB to be chosen at will. Archives with dictionaries larger than 4 GB can only be extracted by WinRAR 7.0 or newer. AES encryption, when used, is in CBC mode and was increased in strength from 128- to 256-bit. Maximum path length for files in RAR and ZIP archives is increased from 2047 to 65535 characters.[10]

Options added in v5.0 include 256-bit BLAKE2 file-hashing algorithm instead of default 32-bit CRC32, duplicate file detection, NTFS hard and symbolic links, and Quick Open record to allow large archives to be opened faster.[10]

The RAR5 file format removed comments for each file (though archive comment still remains), authenticity verification, and specialized compression algorithms for text and multimedia files. RAR5 also changed the file name for split volumes from "archivename.rNN" to "archivename.partNN.rar".[10]

The RAR7 file format added support for 64GB compression dictionary and improved compression ratio by adding two extra algorithms. RAR7 archives with dictionary sizes up to 4GB can be unpacked by previous versions of WinRAR (5.0 and above) given there's enough RAM.

Features

When creating RAR 7.0 archives:

  • Support for maximum file size of 16 EiB, about 1.8 × 1019 bytes or 18 million TB
  • Compression dictionary from 1 MiB to 64 GiB (it is limited to 256 MiB on 32-bit editions, although 32-bit editions still can decompress archives with 1 GiB dictionary; default size is 32 MiB)[10]
  • Optional 256-bit BLAKE2 file hashing that can replace the default 32-bit CRC32 file checksum[10]
  • Optional encryption using AES with a 256-bit key[12] in CBC mode, using key derivation function based on PBKDF2 using HMAC-SHA256[10]
  • Optional data redundancy is provided in the form of Reed–Solomon recovery records and recovery volumes, allowing reconstruction of damaged archives (including reconstruction of entirely missed volumes)
  • Optional "quick open record" to open RAR files faster[10]
  • Ability to create multi-volume (split) archives[13]
  • Ability to create self-extracting files (multi-volume self-extracting archives are supported;[13] the self-extractor can execute commands, such as running a specified program before or after self-extraction[14])
  • Support for NTFS permissions, hard and symbolic links[10]
  • Support for maximum path length up to 65,535 characters (stored in the UTF-8 format)[10]
  • Optional archive comment (stored in the UTF-8 format)[10]
  • Optional file timestamps preservation: modification, creation, last access times with high precision[15]
  • Optional file deduplication
  • Advanced backup options, time-stamped files and previous file version retention.

License

The software is distributed as "try before you buy"; it may be used without charge for 40 days.[2] When the period expires, the non-enterprise functionalities remain available, a move intended to discourage piracy.[5] In China, a free-to-use personal edition has been provided officially since 2015.[16]

Although archiving with the RAR format is proprietary, RARLAB supplies as copyrighted freeware the C++ source code of the current UnRAR unpacker, with a license allowing it to be used in any software, thus enabling others to produce software capable of unpacking, but not creating, RAR archives.[17]

RAR for Android is free of charge. It displays advertisements; for a payment they can be disabled.[7] A license for WinRAR does not provide ad-suppression for RAR for Android.

Security

In February 2019, a major security vulnerability in the unacev2.dll library which is used by WinRAR to decompress ACE archives was discovered.[18][19] Consequently, WinRAR dropped the support for the ACE format from version 5.70.

Self-extracting archives created with versions before 5.31 (including the executable installer of WinRAR itself) are vulnerable to DLL hijacking: they may load and use DLLs named UXTheme.dll, RichEd32.dll and RichEd20.dll if they are in the same folder as the executable file.[10][20]

It was widely reported that WinRAR v5.21 and earlier had a remote code execution (RCE) vulnerability which could allow a remote attacker to insert malicious code into a self-extracting executable (SFX) file being created by a user, "putting over 500 million users of the software at risk".[21] However, examination of the claim revealed that, while the vulnerability existed, the result was merely an SFX which delivered its payload when executed; published responses dismissed the threat, one saying "If you can find suckers who will trust a .exe labelled as self-extracting archive ... then you can trick them into running your smuggled JavaScript".[22][23]

WinRAR 6.23 fixes a critical security vulnerability which allowed the hacker to automatically execute malware distributed in archives under some circumstances.[24]

History

Versions

  • Command line RAR and UNRAR were first released in autumn 1993.[8]
  • Early development version WinRAR 1.54b was released in 1995.
  • 3.00 (2002-05): the new RAR3 archive format is implemented. The new archives cannot be managed by older versions of WinRAR. Solid compression and WAV audio lossless compression features are added.[25]
  • 3.41 (2004-12): adds support for Linux .Z archives like GZIP and BZIP2. New options include storing entire file paths and restoring compressed NTFS files.[26]
  • 3.50 (2005-08): adds support for interface skins.[26]
  • 3.60 (2006-08): adds multithreaded version of the compression algorithm, which improves compression speed on systems with multiple dual-core or hyper-threading-enabled CPUs.
  • 3.80 (2008-09): adds support for ZIP archives, which contain Unicode file names in UTF-8.[27]
  • 3.90 (2009-05): adds support for the x86-64 architecture. Multithreaded support is enhanced.[10]
  • 3.91 is the last release that supports Valencian.
  • 3.92 is the last release that supports Serbian Cyrillic and Serbian Latin.
  • 4.00 (2011-03): decompression is sped up by up to 30%.[10]
  • 4.10 (2012-01): removes all ZIP limitations now allowing unlimited number of files and archive size. WinRAR now also allows creation of multivolume ZIP files. ZIP archives now include Unicode file names.[10]
  • 4.20 (2012-06): compression speed in SMP mode is increased significantly, but this improvement was made at the expense of increased memory usage. ZIP compression now uses SMP as well. The default SMP mode cannot handle text; text compression is significantly worse unless additional switches are used.[10]
  • 5.00 (2013-09): the RAR5 archive format is implemented. RAR5 compressed archives cannot be managed by old versions of WinRAR. The RAR 5 format improves multi-core processor utilization, and adds a larger dictionary size of up to 1 GiB with 64-bit WinRAR. Special optional compression algorithms optimized for RGB bitmaps, raw audio files, Itanium executables, and plain text, which were supported by earlier versions, are supported only in the older RAR format, not RAR5.[10] Optional optimized compression of x86 executables and delta compression (for structured table data) are supported in both file formats.
  • 5.50 (2017-08): adds support for a master password which can be used to encrypt passwords stored in WinRAR. The default RAR format is changed to version 5. Adds support for decompressing Lzip archives; adds support for high precision file dates, longer file names and larger file sizes for TAR archives.[10]
  • 5.60 (2018-06): repairing of protected RAR5 archives was improved. Automatic detection of the encoding of ZIP archive comments. Recognition of GZIP files with arbitrary preceding data as an actual GZIP archive.[10]
  • 5.70 (2019-02): removes support for ACE archive decompression due to major security vulnerabilities[28] in the unacev2.dll library.[10]
  • 6.00 (2020-12): "Ignore" and "Ignore All" options are added to read error prompt. "Ignore" allows to continue processing with already read file part only and "Ignore All" does it for all future read errors.
  • 6.10 (2022-01): Added support for unpacking ZST archives. Maximum recovery record is increased to 1000% of protected data size.
  • 6.11 (2022-03): Support of Gzip archives with large archive comments has been added; In command line mode, the switch -mes can also be used to suppress the password prompt and abort when adding new files to an encrypted solid archive.
  • 6.12 (2022-05): CVE-2022-30333 security vulnerability is fixed in Unix RAR versions. WinRAR and Android RAR are not affected.
  • 6.23 (2023-08): CVE-2023-40477 and CVE-2023-38831 critical security vulnerabilities are fixed in WinRAR. Unix and Android versions are not affected.
  • 7.00 (2024-02): drops support for creating RAR 4.x format archives. Maximum path length limit increased to 65535 characters. Maximum RAR dictionary size up to 64 GB for the 64-bit version (limited by available RAM). Command line RAR filters out control character 27 from screen output for security reasons.
  • 7.10 (2024-TBA): drops support for 32bit editions of Windows and Windows Vista. Adds support for Large Memory Pages which increases compression and decompression speed specially when using a large compression dictionary. Adds dark mode.

Operating systems support

More recent versions do not support many older operating systems. Versions supporting older operating systems may still be available, but not maintained:

See also

References

  1. ^ (Russia, Chelyabinsk) WinRAR 3.40 release notes by Eugene Roshal (in Russian)
  2. ^ a b "RAR and WinRAR End User License Agreement (EULA)", rarlab.com, RARLAB, archived from the original on 2014-01-04, retrieved 2019-03-11
  3. ^ "WinRAR archiver, a powerful tool to process RAR and ZIP files". Retrieved 29 July 2024.
  4. ^ a b "RAR download page". rarlab.com. RARLAB. Archived from the original on 2020-06-09. Retrieved 2020-06-10.
  5. ^ a b CHM Tech. "WinRAR And The Infinite 40-Day Trial". YouTube. Archived from the original on 2021-12-22.
  6. ^ Manuel Masiero (18 March 2013)"Compression Performance: 7-Zip, MagicRAR, WinRAR, WinZip" Tom's Hardware. Retrieved 27 November 2013.
  7. ^ a b "RAR for Android; RARsoft". Archived from the original on 2014-12-22. Retrieved 2014-11-04.
  8. ^ a b Voloshin, Kirill (2011-03-10). Интервью по переписке [Interview by correspondence] (in Russian). Archived from the original on 2015-08-16. Retrieved 2014-10-27.
  9. ^ Martin Brinkmann (29 April 2013)"WinRAR 5.0 introduces the new RAR 5 format. What you need to know" Archived 2018-09-01 at the Wayback Machine Ghacks. Retrieved 27 November 2013.
  10. ^ a b c d e f g h i j k l m n o p q r s t u v w x y "Latest changes in WinRAR (cumulative release notes for all versions)". rarlab.com. RARLAB. Archived from the original on 2010-08-06. Retrieved 2018-09-01. Updated with each new beta test or released version. Current page has versions 4.00 and higher; archived page linked here has versions 3.70–3.93; older archived versions go back to 3.00
  11. ^ "Best Archive Tool". DonationCoder.com. 2005-09-05. Archived from the original on 2009-06-02. Retrieved 2009-07-01.
  12. ^ "WinRAR 5 Final Released" Archived 2013-12-02 at the Wayback Machine Techno360.in. Retrieved 27 November 2013.
  13. ^ a b Martin Brinkmann (7 September 2011). "How To Split Large Files Into Multiple Smaller Ones". gHacks Tech News. Archived from the original on 2017-04-16. Retrieved 15 April 2017.
  14. ^ WinRAR Help – GUI SFX modules: setup commands
  15. ^ stevewhims (2021-01-07). "File Times - Win32 apps". learn.microsoft.com. Retrieved 2024-04-07.
  16. ^ "软众信息-WinRAR独家总代理商 最新官方简体中文版下载 支持64位非破解版压缩软件:软件介绍-致用户的一封信". www.winrar.com.cn. Archived from the original on 2016-10-15. Retrieved 2016-10-18.
  17. ^ "WinRAR and RAR archiver addons (downloads, UnRAR for various platforms, and source code)". rarlab.com. RARLAB. Archived from the original on 2018-09-01. Retrieved 2020-06-10. License says "The source code of UnRAR utility is freeware"
  18. ^ "Extracting a 19 Year Old Code Execution from WinRAR". Check Point Research. 2019-02-20. Retrieved 2019-03-13.
  19. ^ "WinRAR Multiple Security Vulnerabilities". www.securityfocus.com. Retrieved 2019-03-13.
  20. ^ Kanthak, Stefan (7 February 2016). "Executable installers are vulnerable^WEVIL (case 25): WinRAR's installer and self-extractors allow arbitrary (remote) code execution and escalation of privilege". SecLists.org. Archived from the original on 2016-02-18. Retrieved 2016-02-20.
  21. ^ Shaikh Rafia (September 2015). "WinRAR Exploit Could Put 500 Million Users at Risk". Wccftech.com. Archived from the original on 2016-10-01. Retrieved 29 September 2016.
  22. ^ Darren Pauli (30 September 2015). "Smuggle mischievous JavaScript into WinRAR archives? Sure, why not". The Register. Archived from the original on 2016-09-27. Retrieved 29 September 2016.
  23. ^ "WinRAR Vulnerability Is Complete Bullshit". Darknet. 1 October 2015. Archived from the original on 2016-10-02. Retrieved 29 September 2016.
  24. ^ Goodin, Dan (2023-08-23). "WinRAR 0-day that uses poisoned JPG and TXT files under exploit since April". Ars Technica. Retrieved 2023-08-23.
  25. ^ "RAR - What's new in the latest version (v3.00 to v3.11)". rarlab.com. Archived from the original on January 17, 2003.
  26. ^ a b "RAR - What's new in the latest version (v3.40 to v3.50)". rarlab.com. Archived from the original on September 7, 2005.
  27. ^ "WinRAR archiver, a powerful tool to process RAR and ZIP files". rarlab.com. RARLAB. Archived from the original on 2009-06-28. Retrieved 2009-07-01.
  28. ^ Nichols, Shaun (2019-02-20). "Behold… a WinRAR security bug that's older than your child's favorite YouTuber. And yes, you should patch this hole". www.theregister.co.uk. Retrieved 2019-02-26.
  29. ^ "RAR 2.50 – Stats, Downloads and Screenshots". WinWorld. Archived from the original on 2017-08-15. Retrieved 14 August 2017.
  30. ^ "Downloads for: WinRAR, RAR for Mac OS X, RAR for Linux, RAR for DOS & OS/2, RAR for FreeBSD, with 40 days free trial". Winrar.co.nz. Archived from the original on 2017-08-15. Retrieved 15 August 2017.

Further reading