RAR 아카이브 형식

데이터가 가장 중요하고 스토리지 효율성이 가장 중요한 디지털 시대에 RAR 아카이브는 파일 압축 및 구성을 위한 확고하고 유비쿼터스적인 솔루션으로 남아 있습니다.

RAR 아카이브 정보 정보

‘Roshal Archive’의 약자인 RAR 아카이브 형식은 무결성을 유지하면서 파일과 폴더의 크기를 줄이도록 설계된 널리 사용되고 잘 알려진 압축 형식입니다. Eugene Roshal이 개발한 RAR은 높은 압축률과 다양한 압축 방법 지원으로 유명합니다.

RAR 아카이브 파일 형식 기록 정보

RAR은 1990년대 초 Eugene Roshal에 의해 만들어졌습니다. 처음에는 효율적인 압축 및 오류 복구에 중점을 둔 독점 형식으로 도입되었습니다. 수년에 걸쳐 RAR은 탁월한 압축 기능과 강력한 기능으로 인해 인기를 얻었습니다. RAR은 처음에는 비공개 소스였지만 이후 부분적으로 공개되어 압축 해제 알고리즘이 대중에게 공개되었습니다. 2013년부터 버전 5 형식이 기본 옵션이 되었습니다. 최신 WinRAR을 사용하면 레거시 4 버전으로 압축하는 것이 여전히 가능합니다.

RAR 아카이브의 구조

RAR 아카이브는 압축된 파일과 폴더의 모음으로 구성됩니다. 일반적으로 일련의 블록으로 구성되며 각 블록은 아카이브 내에서 특정 목적을 수행합니다. 이러한 블록에는 손상된 아카이브를 복구하는 데 사용할 수 있는 파일 데이터, 헤더 및 선택적 복구 레코드가 포함됩니다. 대규모 아카이브는 더 작은 부분으로 분할하거나 다시 병합할 수 있습니다. 자동 추출 아카이브도 생성할 수 있습니다.

RAR 압축 방법

RAR에는 압축 알고리즘이 하나만 있습니다. 이 형식은 콘텐츠와 파일 이름 모두에 대해 강력한 AES 암호화를 지원합니다. WinRAR을 사용하면 여러 파일을 함께 분석하여 더 나은 압축률을 제공하는 “견고한” 아카이브를 만들 수 있습니다. 더 이상 사용되지 않는 버전인 RAR4는 선택적으로 텍스트, 오디오 및 이미지 데이터에 대한 전용 압축을 지원합니다.

RAR 아카이브 지원 작업

Aspose.ZIP 을 사용하면 사용자가 특정 항목 또는 전체 아카이브를 추출할 수 있습니다. RAR 아카이브 생성 및 수정은 지원되지 않습니다. Aspose.ZIP은 최신 RAR5 및 레거시 RAR4 버전의 아카이브를 추출할 수 있습니다.

RAR 파일 - 내부 구조

RAR 아카이브는 헤더, 압축 데이터 및 선택적 복구 기록으로 구성된 계층적 내부 구조를 가지고 있습니다. 이 구조를 사용하면 전체 아카이브의 압축을 풀지 않고도 특정 파일을 효율적으로 추출할 수 있습니다. 아카이브가 암호화된 경우 암호화 헤더가 포함됩니다. 기본 헤더에는 전체 아카이브를 스캔하지 않고도 다양한 서비스 블록의 위치에 빠르게 액세스할 수 있는 선택적 로케이터가 포함되어 있습니다. 각 항목에는 파일과 서비스 헤더가 있습니다. 이러한 헤더에는 체크섬, 시스템 시간, 이름 및 유사한 세부 정보를 포함한 파일 속성과 메타데이터가 포함되어 있습니다.

RAR 파일 - 내부 구조

RAR 아카이브 및 지원의 인기

RAR 아카이브는 뛰어난 압축률과 다양성으로 인해 파일 압축 및 공유에 널리 사용됩니다. Windows 및 macOS 생태계 모두에서 인기가 있으며 다양한 소프트웨어 도구의 강력한 지원을 받습니다. RAR은 완전한 오픈 소스는 아니지만 수많은 타사 애플리케이션과 라이브러리는 다양한 플랫폼에서 RAR 아카이브 생성, 추출 및 관리를 지원합니다.

RAR 사용 예

Aspose.ZIP API를 사용하면 다른 타사 애플리케이션 없이도 애플리케이션에서 아카이브를 추출할 수 있습니다. Aspose.ZIP API는 RAR 아카이브 작업을 위한 RarArchive 클래스를 제공합니다. PI는 RAR 아카이브 내의 단일 파일을 나타내기 위해 RarArchiveEntry 클래스를 제공합니다.

Extract an RAR Entry

The following code example demonstrates how to extract an entry using RarArchive instance.

    using (RarArchive archive = new RarArchive("archive.rar")))
    {
        using (var destination = File.Create(dataDir + "firstEntry.txt"))
        {
                using (var source = archive.Entries[0].Open())
                {
                    byte[] buffer = new byte[1024];
                    int bytesRead;
                    while ((bytesRead = source.Read(buffer, 0, buffer.Length)) > 0)                       
                        destination.Write(buffer, 0, bytesRead);
                            
                }                    
        }
    }

Extract an Encrypted Entry

The following code example demonstrates how to extract an encrypted entry using RarArchive instance.

    FileInfo fi = new FileInfo("encrypted.rar");
    using (RarArchive archive = new RarArchive(fi.OpenRead()))
    {
        using (var destination = File.Create(dataDir + "firstEntry.txt"))
        {
            archive.Entries[0].Extract(destination, "p@s$w0rd");                
        }
    }

Extracting Compressed Directory

The following code example demonstrates how to all the files from RarArchive instance.

    using (RarArchive archive = new RarArchive("archive.rar")))
    {
        archive.ExtractToDirectory("extracted");
    }

Zip 아카이브에 대한 추가 정보

사람들이 물어봤어

1. RAR이 ZIP보다 더 효율적인가요?

RAR이 ZIP 보다 효율적인지 여부는 특정 사용 사례와 압축되는 데이터 유형에 따라 다릅니다. RAR과 ZIP은 모두 널리 사용되는 아카이브 형식이지만 압축 효율성, 기능 및 호환성 측면에서 약간의 차이가 있습니다.

2. WinRAR은 어떤 알고리즘을 사용합니까?

WinRAR은 주로 WinRAR 창시자인 Eugene Roshal이 개발한 독점 압축 알고리즘인 AES-256 비트 암호화 기술을 사용합니다. RAR 알고리즘은 압축률이 높은 것으로 알려져 있어 다른 압축 알고리즘에 비해 아카이브 파일 크기가 더 작아질 수 있습니다.

3. 모든 RAR 파일은 안전합니까?

RAR 파일 자체는 ZIP 파일 과 유사하게 다양한 유형의 데이터를 보관할 수 있는 아카이브 컨테이너이므로 일반적으로 안전합니다. 그러나 RAR 파일의 안전성은 파일에 포함된 콘텐츠와 소스에 따라 달라집니다.