7Z là gì? Định dạng lưu trữ siêu nén
7Z thực chất là gì
7Z (hay .7z) là một định dạng lưu trữ mã nguồn mở được xây dựng từ đầu cho một mục đích duy nhất: nén tối đa. Được tạo ra bởi Igor Pavlov cho dự án 7-Zip của ông vào năm 1999, nó được thiết kế để thu nhỏ file nhiều hơn hẳn các định dạng tiền nhiệm. Không giống như ZIP hay RAR, vốn phải cân bằng giữa nén, tốc độ và khả năng tương thích, mục tiêu chính của 7Z là hiệu quả. Nó sử dụng các thuật toán mạnh mẽ như LZMA và LZMA2 để thường xuyên làm cho file nhỏ hơn 30–70% so với một file lưu trữ ZIP tiêu chuẩn chứa cùng một dữ liệu. Bản thân cái tên này là một sự gợi nhắc về lịch sử của nó, xuất phát từ phiên bản 7-Zip 0.07, bản phát hành đầu tiên hỗ trợ định dạng này. Bởi vì đặc tả kỹ thuật được công bố mở, một hệ sinh thái khổng lồ các công cụ—PeaZip, WinRAR, Archive Utility tích hợp sẵn của macOS, và nhiều tiện ích dòng lệnh—đều có thể đọc và ghi file .7z mà không gặp rắc rối nào về bản quyền. Về cơ bản, một file .7z là một bộ chứa, lưu giữ các file cùng với siêu dữ liệu của chúng như tên và dấu thời gian. Vũ khí bí mật của nó là nén đặc (solid compression). Kỹ thuật này coi nhiều file như một khối dữ liệu duy nhất, liên tục trước khi nén chúng. Đó là lý do tại sao 7Z vượt trội hơn hẳn ZIP khi lưu trữ các thư mục chứa đầy các file tương tự nhau, như một thư mục mã nguồn hoặc các file nhật ký hàng ngày nơi các mẫu lặp lại xuất hiện trên nhiều tài liệu.
Cách hoạt động của nén 7Z: Giải thích về LZMA và LZMA2
Tỷ lệ nén ấn tượng của 7Z đến từ Thuật toán chuỗi Lempel–Ziv–Markov, hay LZMA. Nó cùng họ với các thuật toán được ZIP sử dụng (LZ77), nhưng nó đã được cải tiến rất nhiều với bộ mã hóa dải hiệu quả hơn và quan trọng nhất là kích thước từ điển khổng lồ. Kích thước từ điển rất quan trọng. Cực kỳ quan trọng. Thuật toán DEFLATE của ZIP sử dụng một từ điển 32 KB nhỏ bé để tìm kiếm dữ liệu lặp lại. LZMA bắt đầu với mặc định là 16 MB và có thể được cấu hình để sử dụng 1 GB hoặc hơn. Điều này cho phép bộ nén tìm và thay thế các chuỗi dữ liệu lặp lại từ rất xa trong file, đây là một yếu tố thay đổi cuộc chơi đối với các file lớn. Nếu bạn nén một file dump cơ sở dữ liệu SQL 500 MB, file ZIP có thể là 120 MB, nhưng file 7Z có thể dễ dàng chỉ còn 80 MB. Đó là một sự khác biệt thực sự khi bạn phải trả tiền cho lưu trữ đám mây hoặc đẩy các bản sao lưu qua một mạng chậm. 7-Zip hiện đại mặc định sử dụng LZMA2, về cơ bản là LZMA có hỗ trợ đa luồng. Trên một bộ xử lý đa lõi, LZMA2 có thể nén nhanh hơn từ hai đến bốn lần so với LZMA ban đầu mà gần như không làm giảm tỷ lệ nén. Bạn thậm chí có thể kiểm soát số lượng luồng CPU mà nó sử dụng trong giao diện đồ họa của 7-Zip dưới hộp thoại 'Add to Archive'. 7Z cũng rất linh hoạt. Nó có thể sử dụng BZip2, PPMd (rất tuyệt vời cho văn bản thuần), và thậm chí cả thuật toán Deflate cũ làm phương án dự phòng. Nó cũng hỗ trợ bộ lọc Delta có thể cải thiện khả năng nén trên các file có các mẫu ở cấp độ byte, như âm thanh WAV hoặc hình ảnh bitmap không nén. Khả năng thích ứng này làm cho nó trở thành một lựa chọn vững chắc ngay cả khi LZMA không phải là lựa chọn hoàn hảo.
7Z vs. ZIP vs. RAR: Một so sánh thực tế
Việc chọn một định dạng lưu trữ là một hành động cân bằng giữa khả năng nén, tốc độ và khả năng tương thích. Không có định dạng nào là 'tốt nhất' duy nhất, chỉ có định dạng tốt nhất cho một công việc cụ thể. Về khả năng nén thuần túy, 7Z là nhà vô địch không thể tranh cãi. Trên một thư mục tài liệu và mã nguồn thông thường, 7Z với LZMA2 sẽ thu nhỏ file khoảng 60–65%. Một file ZIP có cùng nội dung thường chỉ đạt được khoảng 45–50%, trong khi RAR5 nằm ở giữa với 55–60%. Sự khác biệt trở nên rõ rệt hơn nữa với dữ liệu có tính lặp lại cao như nhật ký văn bản hoặc các file xuất XML. Khả năng nén đó phải trả giá bằng tốc độ. LZMA đòi hỏi tính toán cao, vì vậy việc tạo một file lưu trữ 7Z chậm hơn đáng kể so với tạo file ZIP. Tuy nhiên, việc giải nén lại nhanh một cách đáng ngạc nhiên và ngang bằng với ZIP. Nếu bạn tạo một file lưu trữ một lần để được download nhiều lần, thời gian ban đầu bỏ ra để nén là một sự đầu tư đáng giá. Nếu bạn cần nhanh chóng đóng gói các file nhật ký xoay vòng mỗi năm phút, tốc độ của ZIP hoặc gzip sẽ thực tế hơn. Khả năng tương thích là lợi thế sân nhà của ZIP. Nó được tích hợp sẵn trong mọi hệ điều hành lớn—Windows, macOS, iOS, Android—mà không cần phần mềm bổ sung. Các file RAR có thể được giải nén trên hầu hết các nền tảng, nhưng để tạo chúng cần có WinRAR hoặc một công cụ tương thích. 7Z được hỗ trợ tốt trên máy tính để bàn, nhưng nó có thể là một điểm gây khó khăn trên các thiết bị di động hoặc trong môi trường doanh nghiệp bị khóa chặt nơi người dùng không thể tự cài đặt 7-Zip. Về mặt tính năng, 7Z cung cấp mã hóa AES-256 mạnh mẽ (bao gồm cả tên file), chia nhỏ file lưu trữ và nén đặc. Tính năng độc đáo của RAR là bản ghi phục hồi (recovery record), có thể sửa chữa các lỗi hỏng nhỏ trong file lưu trữ; 7Z không có tính năng tương đương trực tiếp. ZIP, mặc dù phổ biến, lại thiếu khả năng nén đặc và mã hóa tên file an toàn khi mới cài đặt. Lời khuyên của tôi rất đơn giản: hãy dùng 7Z khi kích thước file cuối cùng là ưu tiên hàng đầu của bạn và bạn biết người nhận có thể xử lý nó. Đối với mọi thứ khác, đặc biệt là khi bạn cần đảm bảo người khác có thể mở được file, cứ dùng ZIP.
Khi nào nên dùng 7Z (và khi nào không)
Vậy 7Z thực sự tỏa sáng ở đâu? Nó hoàn hảo để lưu trữ các bản phát hành phần mềm lớn, sao lưu kho mã nguồn, và phân phối các file lớn như mod game. Trong những kịch bản này, khả năng nén vượt trội mang lại lợi ích rõ rệt. Một bản mod game dung lượng 800 MB dưới dạng ZIP có thể thu nhỏ xuống còn 520 MB dưới dạng 7Z. Đối với người dùng có kết nối internet chậm hoặc bị giới hạn dung lượng, đó là một cải tiến rất lớn. Tính năng lưu trữ đặc (solid archive) đặc biệt mạnh mẽ khi bạn có nhiều file nhỏ với nội dung tương tự. Hãy tưởng tượng một dự án với 10.000 file JavaScript nhỏ. Nén chúng từng cái một là không hiệu quả. Trong một file lưu trữ 7Z đặc, thuật toán LZMA có thể tìm và loại bỏ sự dư thừa trên tất cả các file cùng một lúc, dẫn đến một file lưu trữ nhỏ hơn nhiều. Chỉ cần lưu ý rằng việc giải nén một file duy nhất từ một kho lưu trữ đặc lớn có thể chậm, vì bộ giải nén có thể cần xử lý dữ liệu từ đầu khối. Đừng lãng phí chu kỳ CPU của bạn để cố nén lại các file đã được nén sẵn. Việc đưa các video MP4, hình ảnh JPEG, hay âm thanh MP3 qua 7Z sẽ hầu như không làm giảm kích thước của chúng—và đôi khi còn có thể làm chúng lớn hơn một chút. Điều tương tự cũng áp dụng cho các định dạng mà bản thân chúng thực chất là file lưu trữ ZIP, như các file DOCX, XLSX, và EPUB. Và hãy thành thật: nếu bạn đang gửi email một file cho người không rành công nghệ, việc đính kèm một file .7z chẳng khác nào tự rước lấy một cuộc điện thoại bối rối. Nhiều bộ lọc email của công ty cũng chặn .7z theo mặc định, xếp chúng vào nhóm các file thực thi. Trong những tình huống đó, ZIP luôn là con đường ít trở ngại nhất, bất kể khả năng nén yếu hơn của nó.
Mã hóa và Bảo mật trong File lưu trữ 7Z
7Z cung cấp mã hóa AES-256 mạnh mẽ, cùng tiêu chuẩn được các ngân hàng và chính phủ tin dùng. Khi bạn đặt mật khẩu bảo vệ cho một file lưu trữ .7z, nội dung file sẽ được mã hóa an toàn. Tuy nhiên, lợi thế bảo mật thực sự đến từ việc đánh dấu vào ô 'Encrypt file names'. Thao tác này sẽ mã hóa toàn bộ cấu trúc thư mục của file lưu trữ. Kẻ tấn công có file nhưng không có mật khẩu thậm chí không thể xem được bên trong có những file gì, chứ đừng nói đến việc mở chúng. Đây là một bước tiến đáng kể so với ZIP. Mặc dù ZIP hiện đại hỗ trợ AES-256, nó vẫn để lộ tên file theo mặc định. Thuật toán ZipCrypto gốc của định dạng này nổi tiếng là yếu và không bao giờ nên được sử dụng cho dữ liệu nhạy cảm. Để bảo mật thực sự, 7Z là người chiến thắng rõ ràng. Tất nhiên, mã hóa đẳng cấp thế giới cũng chẳng có ý nghĩa gì nếu bạn sử dụng một mật khẩu tồi tệ như 'password123'. Sức mạnh bảo mật của file lưu trữ hoàn toàn phụ thuộc vào mật khẩu bạn chọn. Luôn sử dụng một cụm mật khẩu dài, được tạo ngẫu nhiên. 7-Zip sẽ không bắt buộc bạn phải sử dụng mật khẩu mạnh, vì vậy trách nhiệm hoàn toàn thuộc về bạn. Các file lưu trữ 7Z không có hỗ trợ tích hợp cho chữ ký số để chứng minh tính xác thực. Nếu bạn cần xác minh rằng một file lưu trữ không bị can thiệp trong quá trình truyền tải, phương pháp tiêu chuẩn là tạo một file checksum (tổng kiểm tra) riêng. Bạn có thể tạo một mã băm SHA-256 trong vài giây bằng các công cụ như CertUtil trên Windows (`certutil -hashfile archive.7z SHA256`) hoặc `shasum -a 256` trên macOS và Linux.
Chuyển đổi và Giải nén File 7Z với CocoConvert
Nếu bạn cần làm việc với một file lưu trữ .7z mà không cần cài đặt bất kỳ phần mềm nào, CocoConvert có thể xử lý công việc trực tiếp từ trình duyệt web của bạn. Bạn có thể tải lên một file .7z để giải nén nội dung của nó, hoặc tạo một file lưu trữ .7z mới bằng cách chuyển đổi từ các định dạng khác như ZIP, TAR, GZ và RAR. Quá trình này được thiết kế đơn giản: tải file lên, chọn đầu ra của bạn, và download kết quả. Đối với các tác vụ thông thường—như biến một file ZIP bạn nhận được thành một file 7Z nhỏ hơn để lưu trữ, hoặc chỉ đơn giản là mở một file .7z khi bạn chưa cài đặt 7-Zip—CocoConvert là một lựa chọn hoàn hảo. Chúng tôi có giới hạn kích thước file là 2 GB cho mỗi lần tải lên, và mọi quá trình chuyển đổi đều diễn ra trên các máy chủ bảo mật của chúng tôi. Các file của bạn sẽ tự động bị xóa một giờ sau khi xử lý. Chúng tôi cũng tin vào việc thẳng thắn về những hạn chế của công cụ của chúng tôi. CocoConvert được xây dựng để mang lại sự tiện lợi, không phải cho người dùng chuyên sâu (power users). Bạn sẽ không tìm thấy các điều khiển chi tiết cho các cài đặt LZMA như kích thước từ điển, cấu hình khối đặc, hay số luồng. Nếu mục tiêu của bạn là vắt kiệt từng kilobyte cuối cùng từ một bộ dữ liệu khổng lồ hoặc tạo các file lưu trữ chia nhỏ phức tạp, bạn vẫn sẽ cần ứng dụng 7-Zip miễn phí cho máy tính để bàn (có tại 7-zip.org) hoặc một công cụ dòng lệnh như p7zip. Tương tự, CocoConvert không hỗ trợ tạo các file lưu trữ 7Z được bảo vệ bằng mật khẩu, cũng như không thể giải nén các file từ một kho lưu trữ đã được mã hóa mà bạn tải lên. Đây là những lựa chọn thiết kế có chủ đích liên quan đến bảo mật trong việc xử lý thông tin nhạy cảm trên một dịch vụ web, chứ không phải là thiếu sót kỹ thuật. Đối với bất kỳ tác vụ nào liên quan đến mã hóa, bạn nên sử dụng một công cụ cục bộ như 7-Zip.
Mẹo thực tế khi làm việc với File 7Z
Một vài thói quen tốt sẽ giúp cuộc sống của bạn với các file lưu trữ .7z dễ dàng hơn nhiều. Đầu tiên, hãy chọn mức độ nén của bạn một cách khôn ngoan. 7-Zip cung cấp cho bạn một dải từ 'Store' (không nén) đến 'Ultra'. Thành thật mà nói, đối với hầu hết mọi thứ, 'Normal' hoặc 'Maximum' là lựa chọn tối ưu. Cài đặt 'Ultra' mất nhiều thời gian hơn đáng kể để chạy và thường chỉ tiết kiệm thêm cho bạn 3–5% kích thước file. Nó hiếm khi đáng để chờ đợi trừ khi bạn là một nhà phát triển phân phối một file cho hàng triệu người, nơi mỗi megabyte đều có giá trị. Sử dụng các file lưu trữ được chia nhỏ để xử lý các file khổng lồ. Nếu bạn có một file 4 GB nhưng cần gửi nó qua một dịch vụ có giới hạn tải lên 2 GB, 7-Zip có thể cắt nó ra. Trong hộp thoại 'Add to Archive', chỉ cần đến mục 'Split to volumes, bytes' và nhập kích thước như '2000m' cho các phần 2.000 MB. Người nhận chỉ cần mở phần đầu tiên (.7z.001) và 7-Zip sẽ xử lý việc ghép nối lại toàn bộ. Hãy tập thói quen kiểm tra các file lưu trữ trước khi bạn xóa các file gốc. Nhấp chuột phải vào file lưu trữ, đi đến '7-Zip', và chọn 'Test Archive'. Nó sẽ chạy một kiểm tra CRC nhanh để xác minh rằng mọi file đều nguyên vẹn. Việc này chỉ mất vài giây và có thể cứu bạn khỏi một thảm họa trong tương lai. Hãy cẩn thận với đường dẫn file dài trên Windows. Một file lưu trữ được tạo trên Linux có thể dễ dàng chứa các đường dẫn file vượt quá giới hạn 260 ký tự kinh điển của Windows. Nếu bạn cố gắng giải nén nó trên một phiên bản Windows cũ, nó sẽ thất bại. Trên Windows 10/11, bạn có thể khắc phục điều này bằng cách bật hỗ trợ đường dẫn dài trong Registry hoặc sử dụng một phiên bản 7-Zip gần đây (22.00+) thường có thể tự động xử lý nó. Cuối cùng, hãy giữ cho ứng dụng 7-Zip của bạn được cập nhật. Dự án này phát hành các bản vá bảo mật khi cần thiết, và các phiên bản cũ hơn đã có những lỗ hổng bảo mật đã biết. Bản phát hành ổn định mới nhất luôn có sẵn tại 7-zip.org.