Ejemplo n.º 1
0
        private void Decrypt()
        {
            HandleJobController.Progress(() =>
            {
                //TODO Compression
                var algorithm = ViewModel.CryptionModel.Algorithm as RsaAlgorithm;
                DecodeModel model;
                if (algorithm != null)
                {
                    string key;
                    using (var sr = new StreamReader(ViewModel.CryptionModel.KeyFilePath))
                    {
                        key = sr.ReadToEnd();
                    }

                    model = new DecodeModel(ViewModel.ImagePath, ViewModel.CryptionModel.Algorithm,
                                            key, ViewModel.SteganographicModel.Algorithm,
                                            ViewModel.SteganographicModel.Compression, ViewModel.SteganographicModel.LsbIndicator);
                }
                else
                {
                    model = new DecodeModel(ViewModel.ImagePath, ViewModel.CryptionModel.Algorithm,
                                            ViewModel.CryptionModel.Password, ViewModel.SteganographicModel.Algorithm,
                                            ViewModel.SteganographicModel.Compression, ViewModel.SteganographicModel.LsbIndicator);
                }


                ViewModel.Result = model.Decode();
            });
        }
Ejemplo n.º 2
0
 private void Analysis()
 {
     HandleJobController.Progress(() =>
     {
         var analyser = new StegAnalyser(ViewModel.RsAnalysis, ViewModel.SamplePairs, ViewModel.LaplaceGraph);
         var path     = SelectImage();
         if (!string.IsNullOrEmpty(path))
         {
             using (var bitmap = new Bitmap(path))
             {
                 ViewModel.Result = analyser.Run(bitmap);
             }
         }
     });
 }
Ejemplo n.º 3
0
 private void Benchmark()
 {
     HandleJobController.Progress(() =>
     {
         var benchmarker = new Benchmarker(ViewModel.AverageAbsoluteDifference, ViewModel.MeanSquaredError,
                                           ViewModel.LpNorm, ViewModel.LaplacianMeanSquaredError,
                                           ViewModel.SignalToNoiseRatio, ViewModel.PeakSignalToNoiseRatio, ViewModel.NormalizedCrossCorrelation,
                                           ViewModel.CorrelationQuality);
         var original = SelectImage("Select Original Image");
         var stegano  = SelectImage("Select Steganogramm");
         if (!string.IsNullOrEmpty(original) || !string.IsNullOrEmpty(stegano))
         {
             using (var orig = new Bitmap(original))
             {
                 using (var steg = new Bitmap(stegano))
                 {
                     ViewModel.Result = benchmarker.Run(orig, steg);
                 }
             }
         }
     });
 }
Ejemplo n.º 4
0
 private void CancelAction()
 {
     HandleJobController.Cancel();
 }