Beispiel #1
0
        public PasswordManager()
        {
            DataProcessor dataProcessor = new DataProcessor();

            foreach (var rawData in dataProcessor.GetData())
            {
                Passwords.Add(new Password(rawData));
            }
        }
        public StorageModel(byte[] encryptedMasterKey, byte[] iv, IList <PasswordModel> passwords)
        {
            EncryptedMasterKey = encryptedMasterKey;
            Iv = iv;

            foreach (var item in passwords)
            {
                Passwords.Add(item);
            }
        }
Beispiel #3
0
        public void AddAccount(string username, byte[] passHash, byte[] salt)
        {
            var toAdd = new Password {
                Username = username, PassHash = passHash, Salt = salt
            };

            Passwords.Add(toAdd);

            SaveChanges();
        }
Beispiel #4
0
 public MainViewModel(IEventAggregator eventAggregator)
 {
     _eventAggregator = eventAggregator;
     rsa      = new MyRSA();
     dataList = new ListOfDatas();
     for (int i = 0; i < dataList.Size(); i++)
     {
         Data temp = dataList.Give(i);
         Passwords.Add(new PasswordModel {
             password = rsa.Decryption(temp.Password), login = rsa.Decryption(temp.Login),
             notes    = rsa.Decryption(temp.Notes), tag = rsa.Decryption(temp.Tag)
         });
     }
 }
Beispiel #5
0
        public MainViewModel()
        {
            var context        = DataAccess.PasswordsDbContext.Current;
            var queryPasswords = context.Passwords.ToList();

            foreach (var item in queryPasswords)
            {
                Passwords.Add(item);
            }
            var queryTags = context.Tags.ToList();

            foreach (var item in queryTags)
            {
                Tags.Add(item);
            }
            ShowUpdate       = false;
            SelectedPassword = new Password();
        }
Beispiel #6
0
        // Контекст настроен для использования строки подключения "ResourceDatabase" из файла конфигурации
        // приложения (App.config или Web.config). По умолчанию эта строка подключения указывает на базу данных
        // "ResourceDatabase.ResourceDatabase" в экземпляре LocalDb.
        //
        // Если требуется выбрать другую базу данных или поставщик базы данных, измените строку подключения "ResourceDatabase"
        // в файле конфигурации приложения.
        public ResourceModel()
            : base("name=ResourceDatabase")
        {
            if (Operators.Count() == 0)
            {
                AddOperator("admin", "admin", 0, "admin");
                AddDepartmentOrOrganization("Отдел Директора", "Department");
                AddDepartmentOrOrganization("ОРЛЗ", "Organization");
                AddPosition("Директор");
                AddWorking_Group("Группа директора");
                AddPeople("Алексей", "Петров", "Петрович", "89123456781", "241", 1, 1, 1);
                AddResource("Cisco", DateTime.Now, DateTime.Now.AddMonths(5), 1);
                AddComputer("12445121", "172.168.14.12", "Компьютер директора", "Director", "domen", 1, 1);

                Accounts.Add(new Account()
                {
                    LastNamePeople = "Петров",
                    Login          = "******",
                    Type_Account   = "Cisco"
                });
                Accounts.Add(new Account()
                {
                    LastNamePeople = "Иванов",
                    Login          = "******",
                    Type_Account   = "Cisco"
                });
                var pass = new Password()
                {
                    Passwords = Encryption.Encrypt("Petrov", Admins.FirstOrDefault(i => i.Title == "admin0").Key, Admins.FirstOrDefault(i => i.Title == "admin0").Sol),
                    Flag      = Admins.FirstOrDefault(i => i.Title == "admin0").Flag,
                    AccountID = 1
                };
                var pass1 = new Password()
                {
                    Passwords = Encryption.Encrypt("Ivanov", Admins.FirstOrDefault(i => i.Title == "admin0").Key, Admins.FirstOrDefault(i => i.Title == "admin0").Sol),
                    Flag      = Admins.FirstOrDefault(i => i.Title == "admin0").Flag,
                    AccountID = 2
                };
                Passwords.Add(pass);
                Passwords.Add(pass1);
                SaveChanges();
            }
        }
        private async Task LoadAsync()
        {
            Passwords.Clear();
            try
            {
                var json = await SecureStorage.GetAsync("passwords");

                var passwords = StorageService.Get(json);
                foreach (var password in passwords)
                {
                    Passwords.Add(password);
                }
            }
            catch
            {
                await DisplayAlert(
                    "Ops!",
                    "This device does not support secure storage",
                    "OK");
            }
        }
Beispiel #8
0
        public void AddAdmin(string status)
        {
            string key  = Encryption.GetUniqueKey(8);
            string flag = Encryption.GetUniqueKey(16);
            string sol  = Encryption.GetUniqueKey(12);

            Admins.Add(new Admin()
            {
                Title = status,
                Key   = key,
                Sol   = sol,
                Flag  = flag
            });
            SaveChanges();
            if (Accounts.Count() != 0 && Admins.Count() != 1)
            {
                var account = Accounts.ToList();
                var admin   = Admins.ToList();
                for (int i = 0; i < account.Count(); i++)
                {
                    var      flags    = admin[0].Flag;
                    var      logins   = account[i].Login;
                    var      pass     = Passwords.FirstOrDefault(c => c.Flag == flags && c.AccountID == Accounts.FirstOrDefault(a => a.Login == logins).AccountID).Passwords;
                    var      keyA     = admin[0].Key;
                    var      solA     = admin[0].Sol;
                    Password password = new Password()
                    {
                        PasswordID = account.Count() + 1,
                        AccountID  = account[i].AccountID,
                        Flag       = flag,
                        Passwords  = Encryption.Encrypt(Encryption.Decrypt(pass, keyA, solA), key, sol)
                    };
                    account[i].Passwords.Add(password);
                    Passwords.Add(password);
                    SaveChanges();
                }
            }
        }
        private void generatePasswords(string doc, string duration, string country, int n)
        {
            stopWatch.Start();
            //List<string> passwords = new List<string> { };
            progressBar1.Value   = 0;
            progressBar1.Maximum = n;
            string psw;

            DataTable dt;

            if (dataGridView1.DataSource == null)
            {
                dt = new DataTable();
                dt.Columns.Add("#");
                dt.Columns.Add("Document");
                dt.Columns.Add("Password");
                dt.Columns.Add("Duration");
            }
            else
            {
                dt = (DataTable)dataGridView1.DataSource;
            }

            dataGridView1.UseWaitCursor = true;

            if (!ActualRow.ContainsKey(doc))
            {
                ActualRow.Add(doc, 0);
            }

            int db_row     = db.Count(doc);
            int actual_row = (ActualRow[doc] > db_row) ? ActualRow[doc] : db_row;

            int i;

            for (i = actual_row + 1; i <= actual_row + n; i++)
            {
                psw = sc.Generate(doc, duration, i);
                Passwords.Add(new Code(psw, country, doc, duration));
                // Update gridview
                DataRow dr = dt.NewRow();
                dr[0] = i.ToString();
                dr[1] = doc;
                dr[2] = psw;
                dr[3] = duration.ToString();
                dt.Rows.Add(dr);
                // update progress bar+
                progressBar1.Value = i - actual_row - 1;
            }
            ActualRow[doc]              = i - 1;
            dataGridView1.DataSource    = dt;
            dataGridView1.UseWaitCursor = false;

            stopWatch.Stop();

            TimeSpan ts = stopWatch.Elapsed;

            txtTimer.Text = String.Format("{0:00}:{1:00}:{2:00}.{3:00}",
                                          ts.Hours, ts.Minutes, ts.Seconds,
                                          ts.Milliseconds / 10);

            // NOW WE INSERT INTO THE DB
            DialogResult dialogResult = MessageBox.Show("Insert into the database?", "DB Conneciton", MessageBoxButtons.YesNo);

            if (dialogResult == DialogResult.Yes)
            {
                String creation_code = db.InsertCode(Passwords);
                if (!String.IsNullOrEmpty(creation_code))
                {
                    if (db.InsertJob(doc, country, n, creation_code))
                    {
                        MessageBox.Show("Serial codes inserted correctly");
                        // Clear the passwords
                        Passwords.Clear();
                        string title = bookComboBox.Text;
                        // And update the total number of codes generated for the book
                        countTextBox.Text      = db.Count(title).ToString() + " codes generated";
                        totalCountTextBox.Text = db.Count().ToString() + " codes generated";
                    }
                    else
                    {
                        MessageBox.Show("Error during the insertion of the serial codes");
                    }
                }
            }
            else if (dialogResult == DialogResult.No)
            {
                //do something else
            }

            return;
        }
Beispiel #10
0
 public void AddPassword(Password password)
 {
     Passwords.Add(password);
 }