Partnumber

Partnumber t1_itrfukf wrote

At a very basic level, compression just takes the existing data and finds a shorter way of writing it. Let's say I had a list like:

Apple

Apple

Apple

Banana

I could compress the list, rewriting it as

3 Apple

1 Banana

And the same amount of data takes up less space. But it still takes up some amount of space. And the amount of space it takes up is directly related to the format of the list.

Apple

Apple

Banana

Apple

For instance would have to be compressed into

2 Apple

1 Banana

1 Apple

Which takes up more space, even compressed. So any meaningful data you have has a lower limit on how small it can be and still be useful. A zip bomb would be like sitting down and maliciously making a list that, when compressed, says

99999 Apple

The compression is very small but the output is very large.

TLDR: You can construct a file that compresses into a miniscule file size, but most real files that contain usable information won't.

11