Если длина ключа авна размеру архива, то вы его так просто не расшифруете. Если сильно меньше, скажем, 8-100 байт, то можно попытаться.
Для начала - возьмите известные байты zip-архива (заголовок, длинные последовательнности нулей и тд, сравните с любым незашифрованным архивом) и проксорьте на соответсвующие байты зашифрованного. Теперь вы знаете часть ключа. Если ключ представляет собой какую-то фразу, можно угадать или подобрать недостающие байты. Иначе если длина ключа известно можно проксорить архив на известные байты ключа, по расшифрованным байтам попытаться угадать соседние, получить благодаря им новые байты, начать сначала.
Как-то так.