# Obtaining a key that's using ice algorithm

I have a text file that has been processed by the SNOW steganography tool that uses ICE encryption. However, I do not know the key that would enable me to decrypt and retrieve the message hidden.

What tools are available, that are proven to have worked that would help me in retrieving the key?

Edited: instead of asking "what ways are there", I've changed to "what tools are there"

-

## 1 Answer

Brute forcing the password, since no useful cryptanalysis of ICE is known.

I'm really more of a theory guy, so I don't know of any tools for this, but there are some resources that I've found.

http://security.stackexchange.com/questions/1376/where-can-i-find-good-dictionaries-for-dictionary-attacks answers its title's question, and cryptospecs.googlecode.com/svn/trunk/symmetrical/specs/ice.pdf gives the details of the ICE algorithms. (It might be easier to pull the relevant code from SNOW rather than implementing ICE directly.) www.darkside.com.au/snow/description.html gives somewhat of a description of how passwords are converted into keys; I suspect that they then pad the right with zeros or with a one followed by zeroes, although it would be good to look at SNOW's code to be sure.

-

Thanks Ricky for the swift response! I appreciated it so much! What you said makes sense. And, I got my dictionaries from a link among the list of links in the link you provided and managed to obtain a key for a jpg that has encrypted files in it by using the stegbreak tool. However, for snow, there seems to be no known tools to perform a dictionary attack. It appears that it is impossible to detect when you have successfully retrieved the correct data. I am really at my wits end on how to resolve this issue of obtaining the 'iced' key... – user4981 Feb 8 at 6:56
– Ricky Demer Feb 8 at 8:52
Thanks Ricky! Unfortunately, I am really inexperienced with this. I don't see how cryptanalysis would help in obtaining the key. And it seems that the information provided is mostly theoretical and not applied in terms of running programs :\ Therefore, is there any existing tool that allows me to use a rainbow table or perhaps other means, to obtain the key on snow? Thanks! – user4981 Feb 10 at 17:42
Conceivably, a brilliant cryptanalysis could guarantee almost-instant recovery of the key from a guess of a specific two of the plaintext blocks for a known ciphertext such that the hamming distance between the guess for those blocks and the actual plaintext for those blocks in at most 15. $\:$ (I'm not aware of any actual result anywhere near that for any computer-era cipher that was ever thought useful. $\:$ Also, as I mentioned in my answer, no useful cryptanalysis of ICE is known.) $\;\;$ – Ricky Demer Feb 11 at 6:56
I'm pretty sure there aren't any exiting tools that will do what you want. $\:$ – Ricky Demer Feb 11 at 6:56
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 4, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.3, "absolute_threshold": 10, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9526179432868958, "perplexity_flag": "middle"}