Ignore:
Timestamp:
Oct 7, 2009, 10:18:58 PM (12 years ago)
Author:
Sven Rech
Message:

KeySearcher is now saveable
new KeySearcher-Sample

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/KeySearcher/KeySearcher.cs

    r677 r682  
    173173    }
    174174   
    175     [Author("Thomas Schmid and Sven Rech", "thomas.schmid@cryptool.org and rech@cryptool.org", "Uni Siegen", "http://www.uni-siegen.de")]
     175    [Author("Thomas Schmid", "thomas.schmid@cryptool.org", "Uni Siegen", "http://www.uni-siegen.de")]
     176    //[Author("Sven Rech", "rech@cryptool.org", "Uni Duisburg-Essen", "http://www.uni-due.de")]
    176177    [PluginInfo(true, "KeySearcher", "Bruteforces a decryption algorithm.", null, "KeySearcher/Images/icon.png")]
    177178    public class KeySearcher : IAnalysisMisc
    178179    {
     180        private KeyPattern pattern = null;
     181        public KeyPattern Pattern
     182        {
     183            get
     184            {
     185                return pattern;
     186            }
     187            set
     188            {
     189                pattern = value;
     190                if (!pattern.testKey(settings.Key))
     191                    settings.Key = pattern.giveWildcardKey();
     192            }
     193        }
     194
    179195        private bool stop;
    180196
     
    218234            {
    219235                stop = false;
    220                 if (!settings.Pattern.testKey(settings.Key))
     236                if (!Pattern.testKey(settings.Key))
    221237                {
    222238                    GuiLogMessage("Wrong key pattern!", NotificationLevel.Error);
    223239                    return;
    224240                }
    225                 settings.Pattern.initKeyIteration(settings.Key);
     241                Pattern.initKeyIteration(settings.Key);
    226242                string key;
    227243                do
    228244                {
    229                     key = settings.Pattern.getKey();
     245                    key = Pattern.getKey();
    230246                    GuiLogMessage("Try key " + key, NotificationLevel.Debug);
    231247                    byte[] decryption = ControlMaster.Decrypt(ControlMaster.getKeyFromString(key));
    232248                    //TODO: Check cost function here
    233                 } while (settings.Pattern.nextKey() && !stop);
     249                } while (Pattern.nextKey() && !stop);
    234250            }
    235251        }
     
    274290        private void keyPatternChanged()
    275291        {
    276             settings.Pattern = new KeyPattern(controlMaster.getKeyPattern());
     292            Pattern = new KeyPattern(controlMaster.getKeyPattern());
    277293        }
    278294
     
    290306                if (value != null)
    291307                {
    292                     settings.Pattern = new KeyPattern(value.getKeyPattern());
     308                    Pattern = new KeyPattern(value.getKeyPattern());
    293309                    value.keyPatternChanged += keyPatternChanged;
    294310                    controlMaster = value;
Note: See TracChangeset for help on using the changeset viewer.