C#에서 LZ4로 압축한 데이터를 다른 언어와 주고 받을 때

C#에서 LZ4 압축 라이브러리로 유명한 것으로 lz4net 이라는 것이 있음.
이 라이브러리를 사용하여 압축을 한 데이터를 python에서 압축을 풀 때 압축이 제대로 풀리지 않음.
(파이썬에서는 python-lz4 사용. )
이유는 lz4 라이브러리를 사용할 때 Frame Format나 Block Format을 사용하는데 타 언어와 상호운용성을 가지기 위해서는 Frame Format를 사용해야 함.
lz4net는 Frame Format을 사용하지 않고 있음.

해결 방법은 IonKiwi.lz4.net을 사용하면 된다.
IonKiwi.lz4.net은 내부적으로 lz4의 C 언어 라이브러리를 사용하고 있음.

출처


이 글은 2018-08-09에 작성되었습니다.