Browse Source

refactoring

master
Piotr Dergun 7 years ago
parent
commit
4af904d6f7
2 changed files with 8 additions and 8 deletions
  1. +2
    -2
      DergunPiotr-WaskoDominik/projekt/genSha1.cpp
  2. +6
    -6
      DergunPiotr-WaskoDominik/projekt/sha1breaker.cpp

+ 2
- 2
DergunPiotr-WaskoDominik/projekt/genSha1.cpp View File

@ -13,8 +13,8 @@ void sha1(unsigned char* message,unsigned short messageLength,char *result){
//////przygotowanie bloku
int size = 64; //rozmiar jednego bloku musi być 512bit
unsigned char block[size] = {0};
unsigned char block[size];// = {0};
memset(block, 0, size * sizeof(unsigned char));
for(int i = 0;i<messageLength;i++)block[i] = message[i];
block[messageLength] = 0x80;//tuż po zakończeniu wiadomości dodaje bity 10000000
messageLength =messageLength<<3; //rozmiar wiadomości w bitach

+ 6
- 6
DergunPiotr-WaskoDominik/projekt/sha1breaker.cpp View File

@ -54,9 +54,10 @@ int main(int argc, char** argv) {
str = new char[maxStrSize];
if (!rank) czasomierzacz.Begin();
success = 0;
maxKomb = pow(lexSize,minStrSize-1);
for(strSize = minStrSize;strSize<=maxStrSize;strSize++){ //petla generujaca jaka ma być długość hasła z którego bedzie generowany hash
maxKomb = pow(lexSize,strSize);//tak, wiem że potega ale w całym programie wykona się maksymalnie tyle razy: ilość porcesów *(maxStrSize - minStrSize)
maxKomb *= lexSize;
i = rank;
while(i<maxKomb){//generowanie różnych haseł
@ -67,14 +68,13 @@ int main(int argc, char** argv) {
sha1((unsigned char*)str,strSize,result); //obliczanie hash z wygenerowanego wcześniej hasła
if(strcasecmp(argv[1],result) == 0){ //znalazłem odpowiedz 109
success = 0; //ustwaiem zmienna success na 0
success = 1; //ustwaiem zmienna success na 0
cout<<endl<<" Złamałem hasha: ";
for(int l=0;l<strSize;l++) cout<<str[l];
cout<<endl;
}
MPI_Allreduce(&success,&sumSuccess,1,MPI::SHORT,MPI::BAND,MPI_COMM_WORLD); //robię bitowe AND na zmiennej 'success'. wyjdzie 0 gdy 'success' z któregokolwiek procesu jest równy 0
if(!sumSuccess) goto stop; //sumSuccess = 0 wiec ten proces się kończy.
MPI_Allreduce(&success,&sumSuccess,1,MPI::SHORT,MPI::SUM,MPI_COMM_WORLD); //robię bitowe AND na zmiennej 'success'. wyjdzie 0 gdy 'success' z któregokolwiek procesu jest równy 0
if(sumSuccess) goto stop; //sumSuccess = 0 wiec ten proces się kończy.
i+=size;
}

Loading…
Cancel
Save