Example #1
0
        public static Boolean CheckLicense()
        {
            _signature = SignatureHandler.GetSignature();

            const string fileName = @"License\license.lic";

            try
            {
                // Create the reader for data.
                var fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
                var r = new BinaryReader(fs);

                // Read data from Test.data.

                SignatureStored = r.ReadString();
                LicenseOwnerName = r.ReadString();
                LicenseCreationTime = r.ReadString();
                _personalSignatureStored = r.ReadString();

                r.Close();
                fs.Close();
            }
            catch (Exception)
            {
                Logger.Log("License file does not exist");
                MessageBox.Show("License file does not exist", "License ");
                return false;
            }

            _blowFishEncryptor = new BlowFish(HexKey.PersonalSignatureValue);
            _personalSignatureStored = _blowFishEncryptor.Decrypt_CTR(_personalSignatureStored);

            _blowFishEncryptor = new BlowFish(HexKey.SignatureValue);
            if (Equals(LicenseOwnerName + LicenseCreationTime, _blowFishEncryptor.Decrypt_CTR(_personalSignatureStored)))
            {
                if (Equals(_signature, _blowFishEncryptor.Decrypt_CTR(SignatureStored)))
                {
                    Logger.Log("License verified. License owner: " + LicenseOwnerName + ", date: " + LicenseCreationTime);
                    return true;
                }
            }
            Logger.Log("License is not valid");
            MessageBox.Show("License is not valid", "License ");
            return false;
        }
Example #2
0
        private void SaveConfiguration(object sender, RoutedEventArgs e)
        {
            var dlg = new SaveFileDialog
            {
                FileName = "configuration",
                DefaultExt = ".ttac",
                Filter = "ttAgent Configuration (.ttac)|*.ttac"
            };

            var result = dlg.ShowDialog();
            if (result == true)
            {
                Logger.Log("Saveing configuration to file: " + dlg.FileName);
                var projectData = RegistryContext.Registry.SaveConfiguration();

                IFormatter formatter = new BinaryFormatter();

                var memoryStream = new MemoryStream();
                formatter.Serialize(memoryStream, projectData);

                var serializationString = new BlowFish(HexKey.ConfigurationSignatureValue).Encrypt_CTR(Convert.ToBase64String(memoryStream.ToArray()));

                Stream stream = new FileStream(dlg.FileName,
                                         FileMode.Create,
                                         FileAccess.Write, FileShare.None);
                formatter.Serialize(stream, serializationString);
                stream.Close();
            }
            Logger.Log("Configuration saved");
        }
Example #3
0
        private void LoadConfiguration(object sender, RoutedEventArgs e)
        {
            var dlg = new OpenFileDialog
            {
                DefaultExt = ".ttac",
                Filter = "ttAgent Configuration (.ttac)|*.ttac"
            };

            var result = dlg.ShowDialog();
            if (result == true)
            {
                Logger.Log("Loading configuration from file: " + dlg.FileName);
                IFormatter formatter = new BinaryFormatter();
                Stream stream = new FileStream(dlg.FileName,
                                          FileMode.Open,
                                          FileAccess.Read,
                                          FileShare.Read);
                var serializationString = (string)formatter.Deserialize(stream);
                stream.Close();

                serializationString = new BlowFish(HexKey.ConfigurationSignatureValue).Decrypt_CTR(serializationString);

                // convert string to stream
                var byteArray = Convert.FromBase64String(serializationString);
                //byte[] byteArray = Encoding.ASCII.GetBytes(contents);
                var memoryStream = new MemoryStream(byteArray);

                var projectData = (ProjectFileStruture.ProjectSavedData)new BinaryFormatter().Deserialize(memoryStream);

                RegistryContext.Registry.LoadConfiguration(projectData);
            }
            Logger.Log("Configuration loaded");
        }