Changeset c48d843 in comparacioncriptosistemas for testVarieties/main.cpp


Ignore:
Timestamp:
Jan 21, 2016, 8:33:09 AM (8 years ago)
Author:
Fundación Cenditel <cenditel@…>
Branches:
master, interfaz
Children:
c7b52e9
Parents:
24aa974
Message:

Se agregaron los mensajes por tamaños y se incluyo la repeticion de la ejecucion

File:
1 edited

Legend:

Unmodified
Added
Removed
  • testVarieties/main.cpp

    re5b15b7 rc48d843  
    6464
    6565    int invalidCount = 0;
    66     int validCount = 0;
    67 
     66   
     67   
    6868
    6969    if (argc > 0 && argv) {
     
    8181            // repeticiones
    8282            //for (int i = 0; i < 50; i++){
    83             while ( true ) {
    84 
    85                 FILE *fout = fopen("encryptedMessage", "wb");
    86                 File in("message.txt", READ);
    87 
    88 
    89                 pol_t kx = get_rand_pol(KEY_DEG, false);
    90                 pol_t ky = get_rand_pol(KEY_DEG, false);
    91 
    92 
    93                 // generacion de clave?
    94                 timer.start();
    95                 pol3v_t D = get_open_key(kx, ky);
    96                 keyTime = timer.elapsed(); //gets the runtime in ms
    97 
    98                 // cifrado
    99                 timer.start();
    100                 encrypt(in, fout, D);
    101                 encryptionTime = timer.elapsed(); //gets the runtime in ms
    102 
    103                 fclose(fout);
    104                 in.~File();
    105 
    106                 FILE *fin = fopen("encryptedMessage", "rb");
    107                 File out("decryptedMessage.txt", WRITE);
    108 
    109                 // descifrado
    110                 timer.start();
    111                 decrypt(fin, out, kx, ky);
    112                 decryptionTime = timer.elapsed(); //gets the runtime in ms
    113 
    114                 fclose(fin);
    115                 out.close();
    116 
    117 
    118                 // verificacion
    119                 if (identicalFiles("message.txt", "decryptedMessage.txt")){
    120                     validCount++;
    121                     ExecutionResult * execution = new ExecutionResult(keyTime, encryptionTime, decryptionTime);
    122                     results.insert(validCount, execution);
    123 
    124                 }
    125                 else{
    126                     invalidCount++;
    127                 }
    128 
    129 
    130 
    131                 //validCount++;
    132                 if (validCount == 1){
    133 
    134                     qDebug("generar archivo...");
    135                     // generar registros en archivo de texto
    136                     QString fileName = "registro-";
    137                     fileName.append(QDateTime::currentDateTime().toString("dd.MM.yy.hh.mm.ss"));
    138                     fileName.append(".txt");
    139 
    140                     QFile registerFile(fileName);
    141                     if (registerFile.open(QFile::WriteOnly)) {
    142                         QTextStream out(&registerFile);
    143 
    144                         //out << "Result: " << qSetFieldWidth(10) << left << 3.14 << 2.7;
    145                         // writes "Result: 3.14      2.7       "
    146 
    147                         QString line;
    148                         for (int j = 1; j <= validCount; j++){
    149                             ExecutionResult * x = results.value(j);
    150                             int k = x->getKeyGenerationTime();
    151                             //qDebug("k: %d",k);
    152 
    153                             int e = x->getEncryptionTime();
    154                             //qDebug("e: %d",e);
    155 
    156                             int d = x->getDecryptionTime();
    157                             //qDebug("d: %d",d);
    158 
    159                             line = QString::number(k) + " " + QString::number(e) + " " + QString::number(d);
    160                             //qDebug(qPrintable(line));
    161                             out << line;
    162                             line.clear();
    163                         }
    164 
    165                     }
    166 
     83
     84            for(int i=1;i<=8;i++) {
     85
     86                                //qDebug(i);
     87                QString messageFile = "message";
     88                                QString textEncrip = "encryptedMessage";
     89                QString textDecrip = "decryptedMessage";
     90                                messageFile.append(QString::number(i));
     91                textEncrip.append(QString::number(i));
     92                textDecrip.append(QString::number(i)); 
     93
     94                        qDebug("generar archivo...");
     95                        // generar registros en archivo de texto
     96                        QString fileName = "registro-superficie-";
     97                        fileName.append(messageFile+"-");
     98                        fileName.append(QDateTime::currentDateTime().toString("dd.MM.yy.hh.mm.ss"));
     99                        fileName.append(".txt");
     100       
     101                        messageFile.append(".txt");
     102                textEncrip.append(".txt");
     103                                textDecrip.append(".txt");
     104                                //qDebug("antes del while");
     105                                int validCount = 0;
     106
     107                                while ( true ) {
     108                               
     109                                       
     110                        FILE *fout = fopen(qPrintable(textEncrip), "wb");
     111                                        //File in("message1.txt", READ);
     112                        //qDebug(qPrintable(messageFile));
     113                                        File in(qPrintable(messageFile), READ);
     114               
     115
     116
     117                        pol_t kx = get_rand_pol(KEY_DEG, false);
     118                        pol_t ky = get_rand_pol(KEY_DEG, false);
     119       
     120
     121                        // generacion de clave?
     122                        timer.start();
     123                        pol3v_t D = get_open_key(kx, ky);
     124                        keyTime = timer.elapsed(); //gets the runtime in ms
     125       
     126                        // cifrado
     127                        timer.start();
     128                        encrypt(in, fout, D);
     129                        encryptionTime = timer.elapsed(); //gets the runtime in ms
     130
     131                        fclose(fout);
     132                        in.~File();
     133
     134                        FILE *fin = fopen(qPrintable(textEncrip), "rb");
     135                        File out(qPrintable(textDecrip), WRITE);
     136
     137                        // descifrado
     138                        timer.start();
     139                        decrypt(fin, out, kx, ky);
     140                        decryptionTime = timer.elapsed(); //gets the runtime in ms
     141
     142                        fclose(fin);
     143                        out.close();
     144
     145
     146                        // verificacion
     147                        //if (identicalFiles("message1.txt", "decryptedMessage.txt")){
     148                        if (identicalFiles(qPrintable(messageFile), qPrintable(textDecrip))) {
     149                            validCount++;
     150                            ExecutionResult * execution = new ExecutionResult(keyTime, encryptionTime, decryptionTime);
     151                            results.insert(validCount, execution);
     152
     153                        }
     154                        else{
     155                        invalidCount++;
     156                        }
     157
     158
     159
     160                        //validCount++;
     161                        if (validCount == 50) {
     162
     163                        //qDebug("generar archivo...");
     164                        // generar registros en archivo de texto
     165                        //QString fileName = "registro-";
     166                        //fileName.append(QDateTime::currentDateTime().toString("dd.MM.yy.hh.mm.ss"));
     167                        //fileName.append(".txt");
     168                       
     169                        QFile registerFile(fileName);
     170                        if (registerFile.open(QFile::WriteOnly)) {
     171                            QTextStream out(&registerFile);
     172       
     173                            //out << "Result: " << qSetFieldWidth(10) << left << 3.14 << 2.7;
     174                            // writes "Result: 3.14      2.7       "
     175
     176                            QString line;
     177                            for (int j = 1; j <= validCount; j++) {
     178                                ExecutionResult * x = results.value(j);
     179                                int k = x->getKeyGenerationTime();
     180                                //qDebug("k: %d",k);
     181
     182                                int e = x->getEncryptionTime();
     183                                //qDebug("e: %d",e);
     184
     185                                int d = x->getDecryptionTime();
     186                                //qDebug("d: %d",d);
     187
     188                                line = QString::number(k) + " " + QString::number(e) + " " + QString::number(d) + "\n";
     189                                //qDebug(qPrintable(line));
     190                                out << line;
     191                                line.clear();
     192                            }
     193       
     194                        }
     195                                               
     196                                        qDebug("Salir");
    167197                    break;
    168198                }
     
    170200
    171201            }
     202
     203       }
     204           
    172205
    173206            /*
Note: See TracChangeset for help on using the changeset viewer.