| | |
need someone familiar with MD4 and SSE2
Please support our C++ advertiser: Intel Parallel Studio Home
![]() |
•
•
Join Date: Jun 2009
Posts: 33
Reputation:
Solved Threads: 0
hello. I need help implementing an SSE2-accelerated MD4 implementation. I found one that I think may work at http://www.freerainbowtables.com/php...t=904&start=30
it is the post by Corni: but need help implementing it. It is a little over my head. All I want to do is conduct 4 MD4 encryptions simultaneously using SSE2.
I have this, for example:
I believe I need to pad them and append the length, or whatever the MD4 algorithm requires, before feeding them into the compressSse() function which will do the rest of the work to turn them into 4 MD4 hashes.
Maybe somebody knows of a better SSE2-accelerated MD4 routine? Easier/ faster? I also plan to use this for NTLM and MSCACHE, so I would like to retain the flexibility to use or not to use UNICODE conversion. I think the implementation above might include UNICODE conversion. I would like to keep that separate, so I can use it for NTLM and MD4.
here is pseudocode for my planned future implementation in a password brute forcer:
I generate one candidate at a time, and then wait until I have collected 4 candidates and then encrypt them all simultaneously. Then I check the results one-by-one, again.
I think once I can get an SSE2-accelerated MD4 implementation up and running, I should be able to modify it to turn it into an SSE2-accelerated MD5 implementation
it is the post by Corni:
•
•
•
•
“So, I took a crashcourse in how to implement MD4 and in what the hell is SSE2 and how do you use it, and implemented the reference implementation in SSE…”
I have this, for example:
C++ Syntax (Toggle Plain Text)
char candidate0[]="password0"; char candidate1[]="password1"; char candidate2[]="password2"; char candidate3[]="password3";
I believe I need to pad them and append the length, or whatever the MD4 algorithm requires, before feeding them into the compressSse() function which will do the rest of the work to turn them into 4 MD4 hashes.
Maybe somebody knows of a better SSE2-accelerated MD4 routine? Easier/ faster? I also plan to use this for NTLM and MSCACHE, so I would like to retain the flexibility to use or not to use UNICODE conversion. I think the implementation above might include UNICODE conversion. I would like to keep that separate, so I can use it for NTLM and MD4.
here is pseudocode for my planned future implementation in a password brute forcer:
C++ Syntax (Toggle Plain Text)
int cached_hashes=0;//counts how many plaintexts are ready, when 4, compute char candidate[];//the candidate password char plaintexts[4][];//stores all 4 plaintexts unsigned char ready_candidate[16];//plaintexts prepared for the compressSse() function unsigned char encrypted[16];//the encrypted password we are trying to recover while(bruteforcing) { candidate++; memcpy(plaintexts[cached_hashes],candidate,strlen(candidate)); //possibly UNICODE conversion here, depending on hash type prepare candidate- padding, whatever- store in ready_candidate memcpy(input[cached_hashes],ready_candidate,16); cached_hashes++; if(cached_hashes==4)//if 4 candidates ready and stored... { //MD4 encrypt them all simultaneously compressSse(); cached_hashes=0; //I'm assuming that compressSse() writes the MD4 hashes //back into input[] elements, respectively for(int i=0;i<4;i++) if(!memcmp(input[i],encrypted,16) cout<<"plaintext is "<<plaintext[i]<<"!\n"; } }
I generate one candidate at a time, and then wait until I have collected 4 candidates and then encrypt them all simultaneously. Then I check the results one-by-one, again.
I think once I can get an SSE2-accelerated MD4 implementation up and running, I should be able to modify it to turn it into an SSE2-accelerated MD5 implementation
![]() |
Similar Threads
- Partially reverse MD4 (Computer Science)
- MD1 ,MD4 Hash Code,Tiger-192 (VB.NET)
- learning php (PHP)
- I need to read a website. familiar with CA infogetter ?? (C)
- Familiar with language translation & artificial intelligent? (C#)
- Anyone familiar with Website tonight? (Site Layout and Usability)
- Add Familiar Icons Back to Your Desktop (Windows tips 'n' tweaks)
Other Threads in the C++ Forum
- Previous Thread: Trying to read a txt file in c++
- Next Thread: learn MFC
| Thread Tools | Search this Thread |
api array arrays based binary c++ c/c++ calculator char char* class classes code coding compile compiler console conversion convert count database delete deploy desktop developer directshow dll download dynamic dynamiccharacterarray email encryption error file forms fstream function functions game generator givemetehcodez google graph gui homeworkhelp iamthwee ifstream input int java lib linkedlist linker list loop looping loops map math matrix memory multiple news number numbertoword output pointer problem program programming project python random read recursion recursive reference rpg sorting string strings temperature template templates test text text-file tree unix url variable vector video visual visualstudio win32 windows winsock wordfrequency wxwidgets





