Ignore:
Timestamp:
Oct 16, 2009, 3:31:46 PM (12 years ago)
Author:
kopal
Message:
  • KeySearcher now can brute force SDES
  • added KeySearcher Sample with SDES
File:
1 edited

Legend:

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

    r717 r733  
    251251            {
    252252                int maxInList = 10;
    253 
    254253                LinkedList<ValueKey> costList = new LinkedList<ValueKey>();
     254                ValueKey valueKey = new ValueKey();               
     255                if (this.costMaster.getRelationOperator() == RelationOperator.LessThen)
     256                    valueKey.value = double.MaxValue;
     257                else
     258                    valueKey.value = double.MinValue;
     259                valueKey.key = "dummykey";
     260                LinkedListNode<ValueKey> node = costList.AddFirst(valueKey);
     261                for (int i = 1; i < maxInList; i++)
     262                {
     263                    node = costList.AddAfter(node, valueKey);
     264                }
    255265
    256266                stop = false;
     
    265275                do
    266276                {
    267                     key = Pattern.getKey();
    268                     GuiLogMessage("Try key " + key, NotificationLevel.Debug);
     277                    key = Pattern.getKey();                   
    269278                    byte[] decryption = sender.Decrypt(ControlMaster.getKeyFromString(key), blocksize);
    270279
    271                     ValueKey valueKey = new ValueKey();
     280                    valueKey = new ValueKey();
    272281                    valueKey.value = CostMaster.calculateCost(decryption);
    273282                    valueKey.key = key;
    274283
     284                    GuiLogMessage("Tried key " + valueKey.key + " = " + valueKey.value, NotificationLevel.Debug);
     285
    275286                    if (this.costMaster.getRelationOperator() == RelationOperator.LargerThen)
    276287                    {
    277288
    278                         LinkedListNode<ValueKey> node = costList.First;
     289                       node = costList.First;
    279290
    280291                        while (node != null)
     
    291302                    else
    292303                    {
    293                         LinkedListNode<ValueKey> node = costList.First;
     304                        node = costList.First;
    294305
    295306                        while (node != null)
Note: See TracChangeset for help on using the changeset viewer.