Changeset 8892


Ignore:
Timestamp:
Sep 16, 2020, 3:08:15 PM (16 months ago)
Author:
kopal
Message:

EnigmaAnalyzerLib:

  • added checks to avoid division by 0 at time and speed calculations
Location:
trunk/LibSource/EnigmaAnalyzerLib/EnigmaAnalyzer
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/LibSource/EnigmaAnalyzerLib/EnigmaAnalyzer/BombeSearch.cs

    r8883 r8892  
    389389            }
    390390            long elapsed = (long)(DateTime.Now - start).TotalMilliseconds + 1;
     391            if(elapsed <= 0)
     392            {
     393                elapsed = 1;
     394            }
    391395
    392396            if (nMenus == 1)
     
    476480                    }
    477481                }
    478 
    479482            }
    480483
     
    484487            plains = EnigmaUtils.getstring(plaintext, len);
    485488            long elapsed = (long)(DateTime.Now - startTime).TotalMilliseconds;
    486             string desc = String.Format("BOMBE [Pos: {0}][{1}K/{2}K][{3}K/sec][{4} Sec]",
     489            if(elapsed <= 0)
     490            {
     491                elapsed = 1;
     492            }
     493            string desc = string.Format("BOMBE [Pos: {0}][{1}K/{2}K][{3}K/sec][{4} Sec]",
    487494                    bombeMenu.cribStartPos, counterKeys / 1000, totalKeys / 1000, counterKeys / elapsed, elapsed / 1000);
    488495
  • trunk/LibSource/EnigmaAnalyzerLib/EnigmaAnalyzer/Common/Stats.cs

    r8888 r8892  
    101101        }
    102102
    103         public static string evaluationsSummary() {
     103        public static string evaluationsSummary()
     104        {
    104105            long elapsed = Utils.getElapsedMillis();
     106            if(elapsed <= 0)
     107            {
     108                elapsed = 1;
     109            }
    105110            return string.Format("[{0} sec.][{1} decryptions ({2}/sec.)]", elapsed / 1000, Stats.evaluations / 1000, Stats.evaluations / elapsed);
    106111        }
  • trunk/LibSource/EnigmaAnalyzerLib/EnigmaAnalyzer/GilloglyAttack.cs

    r8886 r8892  
    115115
    116116                                                        long elapsed = (long)(DateTime.Now - startTime).TotalMilliseconds;
     117                                                        if(elapsed <= 0)
     118                                                        {
     119                                                            elapsed = 1;
     120                                                        }
    117121                                                        string desc = string.Format("{0} [{1}K/{2}K][{3}K/sec][{4} Sec]",
    118                                                                 "IC", counter / 1000, totalKeys / 1000, counter / (elapsed + 1), elapsed / 1000);
     122                                                                "IC", counter / 1000, totalKeys / 1000, counter / elapsed, elapsed / 1000);
    119123
    120124                                                        resultReporter.reportResult(ckey, ckey.score, plains, desc);
     
    216220
    217221                                                    long elapsed = (long)(DateTime.Now - startTime).TotalMilliseconds;
     222                                                    if(elapsed <= 0)
     223                                                    {
     224                                                        elapsed = 1;
     225                                                    }
    218226                                                    string desc = string.Format("{0} [{1}K/{2}K][{3}K/sec][{4} Sec]",
    219                                                             "TRIGRAMS", counter / 1000, totalKeys / 1000, counter / (elapsed + 1), elapsed / 1000);
     227                                                            "TRIGRAMS", counter / 1000, totalKeys / 1000, counter / elapsed, elapsed / 1000);
    220228
    221229                                                    resultReporter.reportResult(ckey, ckey.score, plains, desc);
  • trunk/LibSource/EnigmaAnalyzerLib/EnigmaAnalyzer/HillClimb.cs

    r8886 r8892  
    214214
    215215                                                                        long elapsed = (long)(DateTime.Now - startTime).TotalMilliseconds;
     216                                                                        if(elapsed <= 0)
     217                                                                        {
     218                                                                            elapsed = 1;
     219                                                                        }
    216220                                                                        string desc = string.Format("{0} [{1}][{2}: {3}/{4}][{5}/sec][{6}/sec][{7} Sec][{8}][Offset: {9}]", modestring,
    217221                                                                                count / 1000, cycle + 1, keyCountInCycle / 1000, totalKeysPerCycle / 1000, count * 1000 / elapsed, (count + rejected) * 1000 / elapsed, elapsed / 1000, DateTime.Now, processes[k].bestOffset);
     
    325329
    326330                                long elapsed = (long)(DateTime.Now - startTime).TotalMilliseconds;
     331                                if(elapsed <= 0)
     332                                {
     333                                    elapsed = 1;
     334                                }
    327335                                string desc = string.Format("HILLCLIMBING TOP [{0}][{1}: {2}/{3}][{4} Sec][{5}/sec]][{6}]",
    328336                                        count / 1000, pass + 1, countInPass, nKeys, elapsed / 1000, count * 1000 / elapsed, DateTime.Now);
  • trunk/LibSource/EnigmaAnalyzerLib/EnigmaAnalyzer/TrigramICSearch.cs

    r8886 r8892  
    187187
    188188                                                                    long elapsed = (long)(DateTime.Now - startTime).TotalMilliseconds;
     189                                                                    if(elapsed <= 0)
     190                                                                    {
     191                                                                        elapsed = 1;
     192                                                                    }
    189193                                                                    string desc = string.Format("{0} [{1}K/{2}K][{3}K/sec][{4} Sec]",
    190                                                                             findSettingsIc ? "IC" : "TRIGRAMS", counter / 1000, totalKeys / 1000, counter / (elapsed + 1), elapsed / 1000);
     194                                                                            findSettingsIc ? "IC" : "TRIGRAMS", counter / 1000, totalKeys / 1000, counter / elapsed, elapsed / 1000);
    191195
    192196                                                                    resultReporter.reportResult(ckey, ckey.score, plains, desc);
Note: See TracChangeset for help on using the changeset viewer.