Well, technically if you put fewer words in your word list it will get smaller but the chances of it being of any use are reduced. If storage is your main concern you could use the following approach:
- Split the whole word list into smaller lists
- Compress each of this list individually
- Send/get them each to the machine aircrack is running on
- Decompress the current word list and create a session for aircrack
- If a valid entry is found stop. If not continue retrieving compressed word lists
To split a large file you can use split:
split --bytes=10M /path/to/large_wordlist /path/to/small_wordlits/word_list_prefix
--bytes indicates the size of the new wordlists. and world_lists_prefix a prefix with which all smaller wordlists will start. The output of the above command will be similar to:
small_wordlits/word_list_prefix**aa**
small_wordlits/word_list_prefix**ab**
small_wordlits/word_list_prefix**ac**
...
small_wordlits/word_list_prefix**zz**
Alphabetical suffixes are added until there are enough files to reconstruct the original file that has been split. To compress them you can use tar:
cd /path/to/small_wordlists/
for i in *; do tar -czf $i.tar.gz $i; done
Next in order to send them to the machine running aircrack you can use scp and to launch aircrack you can use ssh:
for i in *.tar.gz
> do scp $i user@server:/path/to/wordlist/directory;
> ssh user@server "tar zxvf /path/to/wordlist/directory/$i"
> ssh user@server "nohup aircrack-ng <parameter list> $i &"
> sleep 10m
> ssh user@server "rm /path/to/wordlist/directory/*"
done
The first and second line copy the first archived split file to the host where aircrack is running in a specified directory and extract it.
The second line launches aircrack through ssh and uses nohup so that aircrack doesn't stop if the connection to the server is lost; this is specially the case when the server is accessible only through a wireless interface and running aircrack(setting it to run in promiscuous mode) blocks any inbound and outbound connections.
The third line gives enough time for aircrack to finish.
The fourth line reconnects to the server and removes the file to make room for the next.
Note that aircrack does not work by its own and needs airmon. The configuration of aircrack needs to be set-up prior to making the above calls. You could write a bash script and alias it as aircrack so that it also handles the adjacent steps.