<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Russian Password Crackers blog</title>
	<atom:link href="http://www.password-crackers.com/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.password-crackers.com/blog</link>
	<description>All about password recovery and practical cryptography</description>
	<lastBuildDate>Mon, 03 May 2010 11:48:21 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Testing of MS Office password recovery programs with GPU support</title>
		<link>http://www.password-crackers.com/blog/?p=53</link>
		<comments>http://www.password-crackers.com/blog/?p=53#comments</comments>
		<pubDate>Mon, 03 May 2010 11:41:36 +0000</pubDate>
		<dc:creator>Pavel Semjanov</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[GPU]]></category>
		<category><![CDATA[Rate]]></category>
		<category><![CDATA[ATI streams]]></category>
		<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Microsoft Office]]></category>
		<category><![CDATA[MS Office passwords]]></category>

		<guid isPermaLink="false">http://www.password-crackers.com/blog/?p=53</guid>
		<description><![CDATA[Password recovery software developers actively introduce general purpose computations on GPU (GPGPU) into their products. Today I will test three products, which already have support of NVIDIA and/or ATI cards for password recovery of Microsoft Office files.
Thus, here are three products:

Accent Office Password Recovery v. 3.50, which supports both      NVIDIA [...]]]></description>
			<content:encoded><![CDATA[<p>Password recovery software developers actively introduce general purpose computations on GPU (GPGPU) into their products. Today I will test three products, which already have support of NVIDIA and/or ATI cards for password recovery of Microsoft Office files.<span id="more-53"></span></p>
<p>Thus, here are three products:</p>
<ol>
<li><a href="http://www.passwordrecoverytools.com/fastest-office-password-recovery.asp">Accent Office Password Recovery</a> v. 3.50, which supports both      NVIDIA and ATI cards;</li>
<li><a href="http://parallelrecovery.com/office-password.html">Parallel Password Recovery (Office module)</a> v. 1.5.1 (supports only NVIDIA      GPU);</li>
<li><a href="http://www.elcomsoft.com/edpr.html">Elcomsoft Distributed Password Recovery</a> v. 2.90 with NVIDIA card      support (Elcomsoft company has special product for password recovery of MS      Office &#8211; AOPR, but it doesn&#8217;t have GPU support yet).</li>
</ol>
<p>And three Office versions widely-distributed today: MS Office XP, 2007 and 2010.</p>
<p>It was taken two files for test of each version &#8211; one with standard key length (128 bit for all Office version) and one with non-standard key length (RC4 algorithm with 120 bit key for Office XP and AES with 256 bit key for Office 2007 and 2010).</p>
<p>Testing was made on typical modern computers, two of them were desktops and one was laptop:</p>
<ol>
<li><span style="background-color: #9ECCFF">Intel Core i5-750 (2.66 GHz, 4 cores), NVIDIA GeForce GTX 260 (216 SP), 4 GB RAM, Windows 7 64-bit</span></li>
<li><span style="background-color: #AE9AFF">Intel Core 2 E6300 (1.8 GHz, 2 cores), NVIDIA GeForce 9800GT (112 SP),2 GB RAM, Windows XP 32-bit</span></li>
<li><span style="background-color: #de9aff;">AMD Athlon II M300 (2.00 GHz, 2 cores), ATI Mobility Radeon HD 4300 (80 SP), 2 GB RAM, 64-ÂÉÔÎÁŃ Windows 7</span></li>
</ol>
<p>Testing results are given below in the table (different computers are shown with different colors; in case where the test was made till the end it is shown both time and speed, in other case only speed is shown). Only brute force method was testing using lower-case letters and starting from one-symbol passwords.</p>
<table style="width: 100%; border-style: solid; border-width: 1px;" border="1">
<tbody>
<tr>
<td></td>
<td>Accent Office PR</td>
<td>Parallel PR</td>
<td>Elcomsoft Distributed PR</td>
</tr>
<tr>
<td rowspan="3">Office XP, 128 bit</td>
<td style="background-color: #9ECCFF">2.200.000 p/s, time &#8211; 2:25 (4 CPU,  GPU not used)</td>
<td style="background-color: #9ECCFF">9.000.000 p/s, time &#8211; 0:45 (3 CPU+1 GPU)</td>
<td style="background-color: #9ECCFF">1.800.000 p/s, time &#8211; 3:00 (4 CPU,  GPU not used)</td>
</tr>
<tr>
<td style="background-color: #AE9AFF">not tested</td>
<td style="background-color: #AE9AFF">5.600.000 p/s, time &#8211; 0:55 (1 CPU+1 GPU)</td>
<td style="background-color: #AE9AFF">600.000 p/s, time &#8211; 8:20 (2 CPU,  GPU not used)</td>
</tr>
<tr>
<td style="background-color: #DE9AFF">600.000 p/s, time &#8211; 8:40 (2 CPU,  GPU not used)</td>
<td style="background-color: #DE9AFF">1.400.000 p/s, time &#8211; 4:06 (2 CPU, GPU not supported)</td>
<td style="background-color: #DE9AFF">600.000 p/s, time &#8211; 8:32 (2 CPU,  GPU not supported)</td>
</tr>
<tr>
<td rowspan="3">Office XP, 120 bit</td>
<td rowspan="3">has stopped working</td>
<td style="background-color: #9ECCFF">5.000.000 p/s (4 CPU, GPU not used)</td>
<td rowspan="3">password not found</td>
</tr>
<tr>
<td style="background-color: #AE9AFF">3.600.000 p/s (2 CPU, GPU not used)</td>
</tr>
<tr>
<td style="background-color: #DE9AFF">1.200.000 p/s<br />
(2 CPU, GPU not supported)</td>
</tr>
<tr>
<td rowspan="3">Office 2007, 128 bit</td>
<td style="background-color: #9ECCFF">4600  p/s, time &#8211; 1:43 (3 CPU + 1 GPU)</td>
<td style="background-color: #9ECCFF">4600  p/s, time &#8211; 1:42 (3 CPU + 1 GPU)</td>
<td style="background-color: #9ECCFF">3600  p/s, time &#8211; 2:12 (1 GPU, CPU not used)</td>
</tr>
<tr>
<td style="background-color: #AE9AFF">2900 p/s, time &#8211; 2:41 (1 CPU + 1 GPU)</td>
<td style="background-color: #AE9AFF">2800 p/s, time &#8211; 2:48 (1 CPU + 1 GPU)</td>
<td style="background-color: #AE9AFF">2600 p/s, time &#8211; 2:57 (1 GPU,  CPU not used)</td>
</tr>
<tr>
<td style="background-color: #DE9AFF">600  p/s, time &#8211; 13:43 (1 CPU + 1 GPU)</td>
<td style="background-color: #DE9AFF">200  p/s, time &#8211; 40:00 (2 CPU, GPU not used)</td>
<td style="background-color: #DE9AFF">140  p/s, time &#8211; 1 hour (2 CPU, GPU not used)</td>
</tr>
<tr>
<td>Office 2007, 256 bit</td>
<td>file not recognized</td>
<td style="background-color: #9ECCFF">4600  p/s (3 CPU + 1 GPU)</td>
<td>password not found</td>
</tr>
<tr>
<td rowspan="3">Office 2010, 128 bit</td>
<td style="background-color: #9ECCFF">2300  p/s (3 CPU + 1 GPU)</td>
<td style="background-color: #9ECCFF">2300  p/s (3 CPU + 1 GPU)</td>
<td style="background-color: #9ECCFF">1800  p/s, time &#8211; 4:24 (1 GPU, CPU not used)</td>
</tr>
<tr>
<td style="background-color: #AE9AFF">1500 p/s (1 CPU + 1 GPU)</td>
<td style="background-color: #AE9AFF">1400 p/s (1 CPU + 1 GPU)</td>
<td style="background-color: #AE9AFF">1300 p/s (1 GPU,  CPU not used)</td>
</tr>
<tr>
<td style="background-color: #DE9AFF">300 p/s, time &#8211; 27:23 (1 CPU + 1 GPU)</td>
<td style="background-color: #DE9AFF">100 p/s (2 CPU, GPU not used)</td>
<td style="background-color: #DE9AFF">70 p/s (2 CPU, GPU not used)</td>
</tr>
<tr>
<td>Office 2010, 256 bit</td>
<td>file not recognized</td>
<td style="background-color: #9ECCFF">2300  p/s (3 CPU + 1 GPU)</td>
<td>password not found</td>
</tr>
</tbody>
</table>
<p>Table. Password recovery speed of MS Office files on different CPU and GPU, passwords per second.</p>
<p>According to this empiric data it is possible to make several conclusions:</p>
<ol>
<li>MS Office password recovery utilities badly cope with non-standard encryption (non-standard key length) &#8211; file non-recognition and even  program hang-up was mentioned. Even Parallel Password Recovery &#8211; the decisive leader, that found the right password of the all examples, in one of the cases did not use GPU at non standard 120-bit key length.</li>
<li>Parallel Password Recovery software is also the leader on speed at password recovery of MS Office XP/2003 files, as it is the only one program that uses GPU in that case, but its speeds on CPU are impressive as well.</li>
<li>In the case of standard MS Office 2007 and 2010 files all program speeds became nearly identical (EDPR lag connects with the fact that it didn&#8217;t use CPU and the recovery speed at GPU it has the same as the others). Such equality comes from the fact that these Office versions use special slow-down key derivation procedure (more specifically, 50.000 and 100.000 calls of SHA-1 hashing function), and all developers optimized this function up to the maximum long ago.</li>
<li>Office 2010 password recovery speed is exactly two times smaller in all programs and any processing units (CPU and GPU) than Office 2007. It is directly connected with doubled count of SHA-1 calls. It is safe to say that  encrypted Office 2010 files set new record in password recovery speed and provide with most strong encryption, decrown previous leader &#8211; encrypted RAR 3.x archives</li>
<li>Accent Office Password Recovery program though badly copes with non-standard files,  nevertheless excels with literate use of graphics processor: that is the only one program enabling more or less comfortably work on computer during password recovery on GPU (other programs hang up on few seconds before every screen refresh), also it is the only program that supports ATI, even such low-power as ATI Mobility Radeon HD 4300. By using GPU on third laptop AOFPR shows three times speed-up compared with other competitors.</li>
</ol>
<p>Thank you to all companies providing me with registration keys for their products &#8211; true speed testing would have been impossible without them. In future I plan to continue password recovery programs testing &#8211; all concerned developers please contact me by e-mail.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.password-crackers.com/blog/?feed=rss2&amp;p=53</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MS Office encryption: keep making the old mistake</title>
		<link>http://www.password-crackers.com/blog/?p=48</link>
		<comments>http://www.password-crackers.com/blog/?p=48#comments</comments>
		<pubDate>Wed, 27 Jan 2010 20:12:36 +0000</pubDate>
		<dc:creator>Pavel Semjanov</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Vulnerabilities]]></category>
		<category><![CDATA[AES]]></category>
		<category><![CDATA[cryptosystem weakness]]></category>
		<category><![CDATA[MD5]]></category>
		<category><![CDATA[MS Office passwords]]></category>
		<category><![CDATA[RC4]]></category>
		<category><![CDATA[SHA1]]></category>

		<guid isPermaLink="false">http://www.password-crackers.com/blog/?p=48</guid>
		<description><![CDATA[In one of the last articles I considered in details the process of the encryption evolution in different MS Office versions and concluded that it became better and better with every next version. However, as it is often happens in a updating of a software version, the new problems can appear unexpectadly, proving that the [...]]]></description>
			<content:encoded><![CDATA[<p>In one of the last articles I considered in details the process of the <a href="http://www.password-crackers.com/blog/?p=16">encryption evolution</a> in different MS Office versions and concluded that it became better and better with every next version. However, as it is often happens in a updating of a software version, the new problems can appear unexpectadly, proving that the best is the enemy of the good.<span id="more-48"></span>Lets consider the generalized process of password verification in MS Office, that has been invented in early MS Office versions and essentially had not been changed till now.</p>
<div class="wp-caption alignnone" style="width: 506px"><img title="MS Office encryption" src="http://www.password-crackers.com/blog/img/msoffice_encryption.gif " alt="MS Office encryption" width="496" height="281" /><p class="wp-caption-text">MS Office encryption</p></div>
<ul>
<li> Step 1. The password and random salt are hashed one or multiple times, resulting in a bit string.</li>
<li> Step 2. The first several bit from this string are used for the key generation (from 40 up to 256 bit in different versions).</li>
<li> Step 3. One more random 128-bit string (<strong>Verifier</strong>) is encrypted using this key and the result (<strong>EncryptedVerifier</strong>) is stored in the Office file.</li>
<li> Step 4. The same <strong>Verifier</strong> is hashed once.</li>
<li> Step 5. The hash value is encrypted  on the key obtained in step 2 and stored in the file as <strong>EncryptedVerifierHash</strong>.</li>
</ul>
<p>Then, on developer&#8217;s intention, to verify the password it was necessary to generate the key, decrypt <strong>EncryptedVerifier</strong>, obtaining the initial <strong>Verifier</strong>, hash and encrypt it according to the steps 4, 5 and compare the result with <strong>EncryptedVerifierHash</strong>. When the MD5 was the hashing algorithm and RC4 was the encryption algorithm in Office XP, everything was running quite so. However in Office 2007 developers replaced MD5 with SHA1, and RC4 with AES.</p>
<p>It would seem everything became better: SHA1 is obviously more secure than MD5, and AES is the modern encryption standard. But,</p>
<ol>
<li> MD5 generates 128-bit hash, and SHA1 &#8211; 160-bit one. AES, however, uses blocks with 128 bits long.</li>
<li> RC4 is the stream cipher, but AES is the block one.</li>
</ol>
<p>The first led to the result that on step 5<strong> VerifierHash</strong> has ceased to be a multiple of the AES block length, that is why it had to use two 128-bit blocks for its encryption. Without pausing to thing, extra 96 bits was filled with zeros. And that destroyed the whole estimated scheme of password verification. Indeed, now step 5 can be run in reverse order by decryption of<strong> EncryptedVerifierHash</strong>, and if the resulted last 96 bits are zeros, so the password is correct!  There is no more necessity to take steps 3 and 4!</p>
<p>If the RC4 had remained as the encryption algorithm, so this trick wouldn&#8217;t have succeeded, as the internal key state was changing in it at each RC4 encryption round, and that is why we would have needed to make the encryption on the 3rd step in any case.  But the replacement of RC4 with AES solved this problem.</p>
<p>Of course, that is not a severe vulnerability, and it doesn&#8217;t influence on password recovery speed because its main complexity is the Step 2, where 50.000 (Office 2007) or 10.000 (Office 2010) SHA1 transformations are executed. Interestingly that in Office 2010 the developers offered some new improvements, but ignored the described problem. It is amusing that the similar problem was in the old version of MS Office 97, when MS Word password verification could be speeded up using the same trick (it was not necessary to execute some steps suggested by Microsoft). That is why the password recovery of Word 97 occurs faster then Excel 97.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.password-crackers.com/blog/?feed=rss2&amp;p=48</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>About CPU and GPU usage for password recovery</title>
		<link>http://www.password-crackers.com/blog/?p=44</link>
		<comments>http://www.password-crackers.com/blog/?p=44#comments</comments>
		<pubDate>Wed, 30 Sep 2009 18:56:03 +0000</pubDate>
		<dc:creator>Pavel Semjanov</dc:creator>
				<category><![CDATA[GPU]]></category>
		<category><![CDATA[AMD Stream]]></category>
		<category><![CDATA[CUDA]]></category>

		<guid isPermaLink="false">http://www.password-crackers.com/blog/?p=44</guid>
		<description><![CDATA[Ivan Golubev, the author of very fast programs ighashgpu and igrargpu, which were mentioned in my block, wrote an interesting article &#8220;About CPU and GPU usage for password recovery&#8220;.
]]></description>
			<content:encoded><![CDATA[<p>Ivan Golubev, the author of very fast programs ighashgpu and igrargpu, which were mentioned in my block, wrote an interesting article &#8220;<a href="http://www.golubev.com/about_cpu_and_gpu_2_en.htm">About CPU and GPU usage for password recovery</a>&#8220;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.password-crackers.com/blog/?feed=rss2&amp;p=44</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MS Office 40-bit key searching on GPU</title>
		<link>http://www.password-crackers.com/blog/?p=34</link>
		<comments>http://www.password-crackers.com/blog/?p=34#comments</comments>
		<pubDate>Tue, 18 Aug 2009 14:15:28 +0000</pubDate>
		<dc:creator>Pavel Semjanov</dc:creator>
				<category><![CDATA[GPU]]></category>
		<category><![CDATA[Optimization]]></category>
		<category><![CDATA[Rate]]></category>
		<category><![CDATA[40-bit keys]]></category>
		<category><![CDATA[CUDA]]></category>
		<category><![CDATA[GuaExcel]]></category>
		<category><![CDATA[GuaWord]]></category>
		<category><![CDATA[MS Office]]></category>
		<category><![CDATA[RC4]]></category>

		<guid isPermaLink="false">http://www.password-crackers.com/blog/?p=34</guid>
		<description><![CDATA[In one of the first notes in this blog I have already spoken about the encryption details used in different versions of Microsoft Office. Certainly it was interesting for me whether it is possible to apply technology of general-purpose computations on video cards (CUDA) to speed up the process of key recovery for MS Office. [...]]]></description>
			<content:encoded><![CDATA[<p>In one of the<a href="http://www.password-crackers.com/blog/?p=16"> first notes</a> in this blog I have already spoken about the encryption details used in different versions of Microsoft Office. Certainly it was interesting for me whether it is possible to apply technology of general-purpose computations on video cards (CUDA) to speed up the process of key recovery for MS Office. The most important bottleneck was the RC4 algorithm which is basic in almost all Office versions encryption. In the Internet I saw responses that RC4 implementation on CUDA was almost more slowly than on CPU which meant that RC4 algorithm did not fit for optimized GPU implementation.<span id="more-34"></span></p>
<p>Really, the key characteristic of RC4 is the permutation table of 256 bytes which actively mixes up during key scheduling and at the encryption itself. As the operations with CUDA&#8217;s global and local memory take in hundreds times more time than with registers, so &#8216;naive&#8217; GPU realization has really appeared more slowly, than CPU (the pseudo-code of RC4 key scheduling is shown below):</p>
<pre><strong>byte </strong>S[256]<strong></strong></pre>
<pre><strong>for</strong> i <strong>from</strong> 0 <strong>to</strong> 255</pre>
<pre>ššš S[i] := i</pre>
<pre><strong>endfor</strong></pre>
<pre>j := 0</pre>
<pre><strong>for</strong> i <strong>from</strong> 0 <strong>to</strong> 255</pre>
<pre>ššš j := (j + S[i] + key[i <a title="Modulo operation" href="http://en.wikipedia.org/wiki/Modulo_operation">mod</a> keylength]) mod 256</pre>
<pre>ššš swap(&amp;S[i],&amp;S[j])</pre>
<pre><strong>endfor</strong></pre>
<p>But the idea on RC4 algorithm optimizing is obvious and came to many researchers&#8217; mind. As Adrian Boeing writes in the <a href="http://scissec.scis.ecu.edu.au/confs/proceedings/2008/forensics/Boeing%20Survey%20and%20Future%20Trends%20GPGPUs.pdf">article</a>, &#8216;The largest performance gain came from placing the RC4 permutation array into the GPU&#8217;s shared memory&#8217;. Really, shared memory is very fast and its use is recommended in CUDA programs optimization. Mr. Boeing has received speed up in about 8 times, I have received similar results:</p>
<table border="1" cellspacing="3" cellpadding="0" width="100%">
<tbody>
<tr>
<td>CPU (Core 2 Duo, 1.86 GHz, one core)</td>
<td>GPU (NVIDIA GTX 260, 1.35 GHz, 216 SP)</td>
</tr>
<tr>
<td>2.000.000</td>
<td>15.000.000</td>
</tr>
</tbody>
</table>
<p>Table. Key scheduling speed of RC4 algorithm on CPU and GPU, key/sec</p>
<p>Surely, the CPU code has been also strongly optimized (nearly of 900 clock ticks/keys), therefore if to take the &#8220;naive&#8221; RC4 realization (about 2.500 ticks/keys) it is possible to receive not in 8, but in 25 times speed-up that is not accurately.</p>
<p>Thus, it is possible with the use of modern GPU to find 40-bit key of MS Office files (i.e. to crack any password, regadless of its length and complexity) less than for 1 day (and it is shown in the new versions of <a href="http://www.password-crackers.com/crack/guaword.html">GuaWord</a> and <a href="http://www.password-crackers.com/crack/guaexcel.html">GuaExcel</a> programs, searching a key for MS Word and MS Excel files accordingly). For the comparison, the first versions of these programs working on Pentuim II/333, spent for about 70 days for a 40-bit key, and last version on Core 2 Duo will spend about 8 days on one core and, accordingly, 4 and 2 days on 2- and the 4-core machine. On GPU we will receive the speed equal to the 8-core processor!</p>
<p>So, RC4 algorithm can be speed up almost in 8 times with using the power of graphic cards with CUDA technology though it ranks below leaders on speed up factor &#8211; MD-like hashes.</p>
<p>UPD. Another utility that uses GPU acceleration for 40-bit RC4 key searching is the new version of <a href="http://www.guapdf.com">GuaPDF</a> software which is designed to decrypt PDF files.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.password-crackers.com/blog/?feed=rss2&amp;p=34</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RAR Password Recovery on GPU</title>
		<link>http://www.password-crackers.com/blog/?p=25</link>
		<comments>http://www.password-crackers.com/blog/?p=25#comments</comments>
		<pubDate>Wed, 08 Jul 2009 18:25:11 +0000</pubDate>
		<dc:creator>Pavel Semjanov</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[GPU]]></category>
		<category><![CDATA[Rate]]></category>
		<category><![CDATA[ATI streams]]></category>
		<category><![CDATA[cRARk]]></category>
		<category><![CDATA[CUDA]]></category>
		<category><![CDATA[igrargpu]]></category>
		<category><![CDATA[RAR password]]></category>

		<guid isPermaLink="false">http://www.password-crackers.com/blog/?p=25</guid>
		<description><![CDATA[Recently at least two RAR password recovery programs with GPU acceleration were released. The first was new 3.2 version of cRARk supporting CUDA technology. The second was a new igrargpu program written by Ivan Golubev.
At first igrargpu supported only šAMD/ATI HD 47xx-48xx video cards, but from 0.3 version šNVIDIA CUDA support was added. Also, first [...]]]></description>
			<content:encoded><![CDATA[<p>Recently at least two RAR password recovery programs with GPU acceleration were released. The first was new 3.2 version of <a href="http://crark.net">cRARk</a> supporting CUDA technology. The second was a new <a href="http://www.golubev.com/rargpu.htm">igrargpu</a> program written by Ivan Golubev.<span id="more-25"></span></p>
<p>At first igrargpu supported only šAMD/ATI HD 47xx-48xx video cards, but from 0.3 version šNVIDIA CUDA support was added. Also, first versions supported only RAR 3.x archives with the encrypted headers and only dictionary attack, but now it has more functionality.</p>
<p>cRARk is the program of mine, with the first release in late 1995, and now, I hope, is the best and professional solution for RAR password recovery with a lot of features and special password definition language.</p>
<p>The most important thing that these programs show the unprecedented for today speed on RAR password recovery &#8211; thousand passwords per second. Till now the most perfect programs with multi-core search, had a speed nearer 1.000 passwords per second (and please remember that some years ago, when new 3<sup>rd</sup> versions RAR were released, assumptions of the recovery speed were &#8216;few passwords per a second&#8217;).</p>
<table border="1" width="100%">
<tbody>
<tr>
<td style="text-align: center;" height="28"></td>
<td style="text-align: center;" height="28">CPU (on one core)</td>
<td style="text-align: center;" height="28">NVIDIA 8600GTS</p>
<p>(32 SP, $50)</td>
<td style="text-align: center;" height="28">NVIDIA GTX 260</p>
<p>(216 SP, $200)</td>
<td style="text-align: center;" height="28">ATI HD 4850</p>
<p>(800 SP, $130)</td>
</tr>
<tr>
<td>cRARk</td>
<td style="text-align: center;">140</td>
<td style="text-align: center;">360</td>
<td style="text-align: center;">2400</td>
<td style="text-align: center;">-</td>
</tr>
<tr>
<td>igrargpu</td>
<td style="text-align: center;">-</td>
<td style="text-align: center;">400</td>
<td style="text-align: center;">2500</td>
<td style="text-align: center;">3100</td>
</tr>
</tbody>
</table>
<p>Table. Speed of 4-character RAR passwords search on CPU and GPU, passwords/sec</p>
<p><strong>UPD.</strong> Ivan Golubev has just released 0.1 version of his<a href="http://golubev.com/hashgpu.htm"> ighashgpu</a> program, which as he claims, is the fastest MD5/SHA hash cracker on ATI cards.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.password-crackers.com/blog/?feed=rss2&amp;p=25</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Encryption evolution in  Microsoft Office</title>
		<link>http://www.password-crackers.com/blog/?p=16</link>
		<comments>http://www.password-crackers.com/blog/?p=16#comments</comments>
		<pubDate>Fri, 26 Jun 2009 14:01:06 +0000</pubDate>
		<dc:creator>Pavel Semjanov</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Rate]]></category>
		<category><![CDATA[40-bit keys]]></category>
		<category><![CDATA[encryption algorithms]]></category>
		<category><![CDATA[Microsoft Office]]></category>
		<category><![CDATA[passwords]]></category>

		<guid isPermaLink="false">http://www.password-crackers.com/blog/?p=16</guid>
		<description><![CDATA[In the conclusion of my article &#8216;On cryptosystems untrustworthiness&#8217;, written in 1998, I specified that the using the strong cryptography in application is gradually changing for the better. Lets consider evolution of cryptographic capabilities used by the one of the most popular applications for personal computers &#8211; MS Office, šespecially because recently Microsoft has officially [...]]]></description>
			<content:encoded><![CDATA[<p>In the conclusion of my article &#8216;On cryptosystems untrustworthiness&#8217;, written in 1998, I specified that the using the strong cryptography in application is gradually changing for the better. Lets consider evolution of cryptographic capabilities used by the one of the most popular applications for personal computers &#8211; MS Office, šespecially because recently Microsoft has officially opened<a href="http://msdn.microsoft.com/en-us/library/cc313118.aspx"> specifications</a> of this software, including encryption algorithms used. Here below I will speak only about passwords for file opening, because when using any other passwords (read-only access etc.) the text of the document is not encrypted and that is why they can be easily bypassed.<span id="more-16"></span></p>
<p>The first encryption applied in MS Office up to version 6.0 inclusive, was the usual XOR. It is clear that such elementary encryption does not provide any security (and now is called bashfully in specification by the word &#8216;obfuscation&#8217;), and any passwords were recovered instantly. Such obfuscation has not obfuscated cryptography experts, and compliant programs for breaking of šMS Word and Excel have appeared very quickly. As marked one of its authors Marc Thibault, &#8216;A false sense of security is much worse than none at all&#8217; and asked Microsoft to improve protection in Office.</p>
<p>It has been made in the following versions MS Office &#8211; &#8216;97 and 2000. The verified and strong cryptographic algorithms MD5 and RC4 were already used there, that is why it was necessary to forget about instant breaking of any passwords (for a while, as it has turned out later). But there was other factor &#8211; so-called &#8216;export regulations of strong cryptography&#8217; operated at that time in USA. Generally speaking, undoubtedly there is a reasonable grain in the access restriction to modern cryptographic algorithms to undesirable persons. Another matter that it couldn&#8217;t really limit the access &#8211; for example, source code of PGP program which could not be taken out from the USA in electronic form, have been taken out as printed book according to the first amendment to the constitution, then scanned and converted back to the electronic form.</p>
<p>U.S. export regulations ordered not to have crypto algorithms with a key of more than 40 bit in the programs used outside of USA. It has led to the situation that keys in algorithm RC4 which in MS Office 97/2000 potentially could be up to 128 bit, were artificially reduced up to 40 bit. So out of 16 byte of MD5 digest, 11 bytes were set to zero, and out of 5 meaning bytes and 11 zeros the RC4 key was formed.</p>
<p>It made exhaustive search attack possible. To recover the Word/Excel 97/2000 file, it is necessary to searchš 2<sup>40</sup> keys at most and then we will certainly find the necessary key, irrespective of the length and complexity of the password used. (If it&#8217;s unclear for you the difference between a key and a password, please read the <a href="http://www.password-crackers.com/en/articles/12/#II">FAQ</a>). I was engaged in a writing of such program in 2000 too, and after all optimizations (where replacement of the instruction<span style="color: #ff0000;"> mov eax, 0</span> on <span style="color: #ff0000;">xor eax, eax</span> was one of the most essential &#8211; I will speak about it in this blog later) on Pentium II/333 of that time it should be running about 70 days. Today search of 2<sup>40</sup> keys out of Microsoft Office takes 3 days on dual core Core 2 Duo/2 GHz.</p>
<p>The authors of špassword recovery programs for Office 97/2000 have not stopped there. The matter is that if to create a huge database of the precalculated values and to apply so-called Rainbow-attack the necessary key can be found for some seconds. Essentially, we replace complicated and long calculations by search in calculated table (in optimization it is called &#8216;time-memory tradeoff&#8217;). The more the table, the more probability we will find a key there. Usually this probability makes more than 99%. The first, as I remember, there was online service <a href="http://ref.decryptum.com/?196072">Decryptum</a> offering instant decrypting of Office 97/2000 files. Then there were other services and programs which can be found<a href="http://www.password-crackers.com/category_108/"> here</a>.</p>
<p>In Office XP/2003 encryption evolution has proceeded. By then export restrictions were cancelled, and Microsoft has developed the CryptoAPI which was used in new version of Office. But, inexplicably, it was used by default the same algorithm with 40 bit keys, considered above. It means that for many files created in Office XP/2003, the guaranteed recovery also is possible. As to the new encryption through CryptoAPI following changes have been made:</p>
<ul>
<li>SHA1 is used instead of MD5 hashing algorithm;</li>
<li>keys in RC4 algorithm can be now up to 128 bits;</li>
<li>the password length has been increased from 16 up to 255 symbols.</li>
</ul>
<p>In the rest the encryption scheme is standard enough &#8211; password is hashed into the key, on this key the document is encrypted. Thus, the guaranteed recovery of the šOffice XP/2003 files is not possible anymore for the keys more than 64 bit for the single user or for the small company, which has few hundreds of computers. To the tenth version MS Office encryption became appropriate enough at last.</p>
<p>Other matter is that the used scheme of encryption and password verification allows high enough recovery speed &#8211; up to 1.000.000 passwords per second on one core (so much is shown by the fastest program known to me for MS Office XP/2003 password recovery &#8211; <a href="http://www.parallelrecovery.com/office-password.html">Parallel Password Recovery</a>) that means that it is possible to search all passwords in Latin letters and figures up to 8 symbols on the modern quad core computer in a week!</p>
<p>The new encryption scheme used in last version Office 2007 has been urged to struggle with a high-speed search. Three principal differences were made in it unlike the previous version:</p>
<ul>
<li> The encryption standard AES is used instead of good, but repeatedly incorrectly applied (including in <a href="http://eprint.iacr.org/2005/007.pdf">Office itself</a>) RC4 stream cipher.</li>
<li>Instead of single password hashing, šresult is hashed cyclically 50.000 times</li>
<li>Implementation of third-party encryption algorithms is possible.</li>
</ul>
<p>As a result the passwords testing speed in Office 2007 has fallen from one million up to 200 passwords per second (in 50.000 times which is logical because this hashing cycle is most &#8216;ticks-hungry&#8217;), and now it is possible to pick up passwords not longer than 5-6 symbols for reasonable time.</p>
<p>Thus, the applied scheme of encryption in the last version of Microsoft Office 2007 has no known vulnerabilities, does not allow any attacks, except brute force, and the speed of this attack is considerably limited&#8230;</p>
<p>&#8230; was until recently, while the possibility of passwords recovery on modern graphic cards (GPU),š particularly technology CUDA from NVIDIA has appeared. But let&#8217;s speak about it next time.</p>
<p>Additional references:</p>
<ul>
<li> <a href="http://blogs.msdn.com/david_leblanc/default.aspx">The first-hand information about encryption in Microsoft Office</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.password-crackers.com/blog/?feed=rss2&amp;p=16</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>In the beginning there was the word</title>
		<link>http://www.password-crackers.com/blog/?p=4</link>
		<comments>http://www.password-crackers.com/blog/?p=4#comments</comments>
		<pubDate>Sun, 21 Jun 2009 21:50:53 +0000</pubDate>
		<dc:creator>Pavel Semjanov</dc:creator>
				<category><![CDATA[History]]></category>
		<category><![CDATA[Processors]]></category>
		<category><![CDATA[cryptosystem weakness]]></category>
		<category><![CDATA[processors rate]]></category>
		<category><![CDATA[YAAC]]></category>

		<guid isPermaLink="false">http://www.password-crackers.com/blog/?p=4</guid>
		<description><![CDATA[&#8230; and the word was 4 bits, because the first microprocessor Intel 4004, produced in 1971, was 4-bit. We will repeatedly return to the processors, its characteristics and evolution in this blog, but let me introduce myself.
My name is Pavel Semjanov and more than 15 years I practice the computer security and work at St. [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230; and the word was 4 bits, because the first microprocessor Intel 4004, produced in 1971, was 4-bit. We will repeatedly return to the processors, its characteristics and evolution in this blog, but let me introduce myself.</p>
<p>My name is Pavel Semjanov and more than 15 years I practice the computer security and work at St. Petersburg  Technical University. šThe cryptography, particularly its practical application in various computer systems, became one of my hobbies from the very beginning. Another my hobby closely connected with work became the software developing for analysis of cryptographic system vulnerability and mainly password cracking (or in other words, password recovery).</p>
<p><span id="more-4"></span>I will necessarily concern the differences in terms &#8216;password cracking&#8217; and &#8216;password recovery&#8217;, including legal difference, in one of the following articles. Therefore I hope that first-hand knowledge about practical cryptography, which I have, will be reasonably interesting to a wide range of readers.</p>
<p>As a result of my hobbies, in 1998 I created website &#8216;Cryptographic literacy&#8217; (in Russian only), which is still one of the most mentioned resources of cryptography in Russia, and the website &#8216;Russian Password Crackers&#8217;, which was only<a href="http://web.archive.org/web/19990221023853/http://www.ssl.stu.neva.ru/psw/crack.html"> one page</a> at that time. The website developed gradually and then has moved on the domain <a href="http://www.password-crackers.com">www.password-crackers.com</a>, and since 2006 there was its Russian language analog. Here from February, 2009 the blog issues in Russian firstly, and today I&#8217;m starting its translation to English that sometimes may be slightly different from Russian version.</p>
<p>Concerning website name &#8211; it appears spontaneously. Firstly, most of the well-known to me crackers have been written in Russia that is why my pride for our compatriot came out in the site name. (By the way, and today, I suppose, about 80% of all companies offering their services on password recovery is Russian or was set up by Russian).</p>
<p>Secondly more neutral term &#8211; &#8216;password recovery&#8217; &#8211; was apparently unknown to me, and then its appears more ill-intentioned term &#8216;crackers&#8217;. Later on this word as a part of the site name caused me troubles, but it&#8217;s late to change something. By the way, in the website description it was always emphasized that it posts the programs applying this or that vulnerability in cryptographic systems, but doesn&#8217;t have anything common with all other crackers of programs, mailboxes, etc.</p>
<p>At that time I have uploaded and classified all well-known and quality, to my point of view, crackers, and it&#8217;s became website characteristic &#8211; I do not add there programs that are <em>not better</em> for all intents than already posted. As it turned out the most popular categories for password cracking are passwords of archivers, BIOS, Microsoft Office, Windows &#8211; in general, the same as now. On the basis of these programs and vulnerability that they are used, I made classification of cryptographic system vulnerabilities, which was included into the article <a href="http://www.password-crackers.com/en/articles/15/">&#8216;On cryptosystems untrustworthiness&#8217;</a>. It is clear that this article is substantially obsolete for the past 10 years, but classification bases remain the same. šTo clear the current stay of cryptographic security in applied programs is one of the purposes of the given blog.</p>
<p>In the conclusion of the first notes, I would like to come back to the processors, and namely to computer facilities progress. I perfectly remember that during the test of the program for breaking ARJ passwords (<a href="http://www.password-crackers.com/category_100/program_16.html">YACC</a>)š using very powerful processor of that time Intel 386DX-40, I could left it and have a dinner &#8211; it considered for about a half an hour. Recently I have made this test using present-day Core 2 Duo.š The result is 1 second and 61 the 100th! Speed is more than 10 millions of passwords in a minute! This test file has kept the date of its creation &#8211; 2004/07/21, total during more than 15 years the speed of processors in PCs has increased in more than 1000 times!</p>
<p>At what expense? Firstly, clock frequency. 1.86 GHz are 50 times more than 40 MHz. šReduction of the clock ticks consumed by each operation increased it in another 2-3 times. Hereafter, execution of several instructions simultaneously using the pipelinešis yet more three times faster. Caching,ša branch prediction, prefetching of instructions, faster memory &#8211; in 2 times. Total converges almost about 1000 times. It besides that the program does not support multithreading, differently on dual-core would be still twice faster!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.password-crackers.com/blog/?feed=rss2&amp;p=4</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
