1990 年代初期,主流的無損壓縮方法 LZW(用於 Unix compress 和 GIF)受到 Unisys 專利 US 4,558,302 的保護。基於 LZW 的 compress 甚至從許多 Unix 發行版中消失,原因既是該專利,也是因為 gzip 在壓縮率上勝過它。

Phil Katz 的 Deflate 於 1990 年隨 PKZIP 2 推出,將 LZ77 字串回溯引用與熵編碼的 Huffman 樹結合。他為自己的編碼器申請了專利,但將 Deflate 格式作為 RFC 1951 公開,描述了一種任何實作者都能產生的資料流。

這種分離很重要:Deflate 格式可以在無需授權的情況下使用。1993 至 1994 年,Unisys 開始對 GIF 中的 LZW 強制收取授權費,這推動市場轉向不受專利束縛的格式,並促成了使用 Deflate 的 PNG 的誕生。

結果是,Deflate 而非 LZW 成為網路的預設壓縮方式,並延續於 ZIP、gzip、zlib、PNG 和 PDF 之中,其中 PDF 的預設是 Deflate 而非 LZW。

免費公開格式;將專利保留在編碼器上

LZW 壓縮被 Unisys 的專利圈住,而其所有者後來強制執行了該專利

將 Deflate 格式作為 RFC 公開,使實作它無需授權

對於在專利亂局中摸索的開發者而言,免費格式是安全的預設選擇

gzip 在壓縮率上也勝過 compress,因此切換是有益的,而不僅僅是安全

如果你能將格式與編碼器分離,就把格式免費送出:免權利金的規格能拿下整個市場,同時將專利保留在你特定的實作上。

Deflate 成為 gzip、zlib、PNG 和 ZIP 封存格式的基礎,也是 PDF 內部用於大量文字資料的預設壓縮方式。Unisys 的 LZW 專利於 2003 年 6 月在美國到期,但到那時,免費的 Deflate 格式早已贏得預設位置。

追溯依據

參考來源

  1. DEFLATE Compressed Data Format Specification (RFC 1951) IETF / rfc-editor.org · rfc-editor.org
  2. Deflate — Wikipedia Wikipedia · en.wikipedia.org
  3. LZW — Wikipedia (patents) Wikipedia · en.wikipedia.org