Changeset 682


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

KeySearcher is now saveable
new KeySearcher-Sample

Location:
trunk
Files:
3 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;
  • trunk/CrypPlugins/KeySearcher/KeySearcherSettings.cs

    r676 r682  
    1111    {
    1212        private KeySearcher keysearcher;
    13         private KeyPattern pattern = null;
    1413
    1514        public KeySearcherSettings(KeySearcher ks)
     
    1817        }
    1918
    20         public KeyPattern Pattern
    21         {
    22             get
    23             {
    24                 return pattern;
    25             }
    26             set
    27             {
    28                 pattern = value;
    29                 Key = pattern.giveWildcardKey();
    30             }
    31         }
    32 
    3319        private string key;
    34         [TaskPane("Key", "Key", null, 1, false, DisplayLevel.Beginner, ControlType.TextBox)]
     20        [TaskPane("Key", "Key pattern used to bruteforce", null, 1, false, DisplayLevel.Beginner, ControlType.TextBox)]
    3521        public String Key
    3622        {
     
    4228            {               
    4329                key = value;
    44                 OnPropertyChanged("Key");               
    45                 if (!(Pattern != null && Pattern.testKey(value)))               
     30                OnPropertyChanged("Key");
     31                if (!(keysearcher.Pattern != null && keysearcher.Pattern.testKey(value)))               
    4632                    keysearcher.GuiLogMessage("Wrong key pattern!", NotificationLevel.Error);               
    4733            }
     
    5137        public void Reset()
    5238        {
    53             Key = Pattern.giveWildcardKey();
     39            Key = keysearcher.Pattern.giveWildcardKey();
    5440        }
    5541
Note: See TracChangeset for help on using the changeset viewer.