コード例 #1
0
        public DistributedBruteForceManager(KeySearcher keySearcher, KeyPattern.KeyPattern keyPattern, KeySearcherSettings settings,
                                            KeyQualityHelper keyQualityHelper, P2PQuickWatchPresentation quickWatch, KeyPoolTreePresentation keyPoolTreePresentation)
        {
            this.keySearcher         = keySearcher;
            this.settings            = settings;
            this.keyQualityHelper    = keyQualityHelper;
            this.quickWatch          = quickWatch;
            _keyPoolTreePresentation = keyPoolTreePresentation;

            // TODO when setting is still default (21), it is only displayed as 21 - but the settings-instance contains 0 for that key!
            if (settings.ChunkSize == 0)
            {
                settings.ChunkSize = 21;
            }

            StopWatch = new Stopwatch();
            status    = new StatusContainer(keySearcher);
            status.IsCurrentProgressIndeterminate = true;

            keyGenerator        = new StorageKeyGenerator(keySearcher, settings);
            patternPool         = new KeyPatternPool(keyPattern, new BigInteger(Math.Pow(2, settings.ChunkSize)));
            StatisticsGenerator = new StatisticsGenerator(status, quickWatch, keySearcher, settings, this);
            quickWatch.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(UpdateStatusContainerInQuickWatch));

            _keyPoolTreePresentation.PatternPool      = patternPool;
            _keyPoolTreePresentation.KeyQualityHelper = keyQualityHelper;
            _keyPoolTreePresentation.KeyGenerator     = keyGenerator;
            _keyPoolTreePresentation.StatusContainer  = status;
        }
コード例 #2
0
        protected NodeBase(KeyQualityHelper keyQualityHelper, Node parentNode, BigInteger @from, BigInteger to, string distributedJobIdentifier)
        {
            KeyQualityHelper = keyQualityHelper;
            ParentNode       = parentNode;
            From             = @from;
            To = to;
            DistributedJobIdentifier = distributedJobIdentifier;

            LastUpdate = DateTime.MinValue;
            Result     = new LinkedList <KeySearcher.ValueKey>();

            Activity   = new Dictionary <string, Dictionary <long, Information> >();
            integrated = false;
        }
コード例 #3
0
        public KeyPoolTree(BigInteger length, KeySearcher keySearcher, KeyQualityHelper keyQualityHelper, StorageKeyGenerator identifierGenerator, StatusContainer statusContainer, StatisticsGenerator statisticsGenerator)
        {
            this.keySearcher         = keySearcher;
            this.statusContainer     = statusContainer;
            this.statisticsGenerator = statisticsGenerator;
            Identifier = identifierGenerator.Generate();

            statusUpdater        = new StatusUpdater(statusContainer, identifierGenerator.GenerateStatusKey());
            skippedReservedNodes = false;
            updateIntervalMod    = 5;

            if (statisticsGenerator != null)
            {
                statisticsGenerator.MarkStartOfNodeSearch();
            }
            rootNode = NodeFactory.CreateNode(keyQualityHelper, null, 0, length - 1,
                                              Identifier);
            if (statisticsGenerator != null)
            {
                statisticsGenerator.MarkEndOfNodeSearch();
            }

            currentNode = rootNode;
        }
コード例 #4
0
 public static NodeBase CreateNode(KeyQualityHelper keyQualityHelper,
                                   Node parentNode, BigInteger from, BigInteger to,
                                   string distributedJobIdentifier)
 {
     return(null);
 }
コード例 #5
0
 public KeyPoolTree(KeyPatternPool patternPool, KeySearcher keySearcher, KeyQualityHelper keyQualityHelper, StorageKeyGenerator identifierGenerator, StatusContainer statusContainer, StatisticsGenerator statisticsGenerator)
     : this(patternPool.Length, keySearcher, keyQualityHelper, identifierGenerator, statusContainer, statisticsGenerator)
 {
 }
コード例 #6
0
ファイル: Leaf.cs プロジェクト: xgalv/Cryptool2
 public Leaf(KeyQualityHelper keyQualityHelper, Node parentNode, BigInteger id, string distributedJobIdentifier)
     : base(keyQualityHelper, parentNode, id, id, distributedJobIdentifier)
 {
 }
コード例 #7
0
 public Node(KeyQualityHelper keyQualityHelper, Node parentNode, BigInteger @from, BigInteger to, string distributedJobIdentifier)
     : base(keyQualityHelper, parentNode, @from, to, distributedJobIdentifier)
 {
 }