Exemplo n.º 1
0
        public void Setup()
        {
            using (var db = new PasswordManagerContext())
            {
                var selectedUser =
                    from u in db.Users
                    where u.EmailAddress == "*****@*****.**"
                    select u;

                db.Users.RemoveRange(selectedUser);
                db.SaveChanges();

                db.Users.Add(new User()
                {
                    FirstName = "Unit", LastName = "Test", EmailAddress = "*****@*****.**"
                });
                db.SaveChanges();

                _testUser = db.Users.Where(u => u.EmailAddress == "*****@*****.**").FirstOrDefault();


                var salt         = Hash.GenerateSalt(20);
                var hashPassword = Hash.GenerateHash(Encoding.ASCII.GetBytes("Password123"), salt, 1000, 16);

                db.MasterPasswords.Add(new MasterPassword()
                {
                    Hash = hashPassword, Salt = salt, Iterations = 1000, UserId = _testUser.Id
                });
                db.SaveChanges();
                _testMPassword = db.MasterPasswords.Where(mp => mp.UserId == _testUser.Id).FirstOrDefault();
            }
        }
        public HttpResponseMessage PutMasterPassword(int id, MasterPassword masterPassword)
        {
            if (!ModelState.IsValid)
            {
                return((HttpResponseMessage)Request.CreateResponse(HttpStatusCode.BadRequest, new { data = new { string.Empty }, success = false, error = string.Empty }));
            }

            if (id != masterPassword.Id)
            {
                return((HttpResponseMessage)Request.CreateResponse(HttpStatusCode.BadRequest, new { data = new { string.Empty }, success = false, error = string.Empty }));
            }

            db.Entry(masterPassword).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!MasterPasswordExists(id))
                {
                    return((HttpResponseMessage)Request.CreateResponse(HttpStatusCode.NotFound, new { data = new { string.Empty }, success = false, error = string.Empty }));
                }
                else
                {
                    throw;
                }
            }

            return((HttpResponseMessage)Request.CreateResponse(HttpStatusCode.OK, new { data = new { masterPassword }, success = true, error = string.Empty }));
        }
Exemplo n.º 3
0
 public static void AddNew(MasterPassword password)
 {
     using (var context = new ShedEntities())
     {
         context.MasterPasswords.InsertOnSubmit(password);
         context.SubmitChanges();
     }
 }
Exemplo n.º 4
0
 public void UpdateMasterPassword(MasterPassword masterPassword)
 {
     using (var db = new LiteDatabase(DatabasePath))
     {
         var masterPasswordCollection = db.GetCollection <MasterPassword>();
         masterPasswordCollection.Update(masterPassword);
     }
 }
        public HttpResponseMessage GetCurrentMasterPasswordAPP()
        {
            MasterPassword MasterPassword = db.MasterPasswords.Where(a => a.Active == true).FirstOrDefault();

            //where Password.Active == true
            //select new { Password.Id, Password.Password, Password.Active }).FirstOrDefault();
            return((HttpResponseMessage)Request.CreateResponse(HttpStatusCode.OK, new { data = new { MasterPassword = MasterPassword.Password }, success = true, error = string.Empty }));
        }
        public IHttpActionResult GetMasterPassword(int id)
        {
            MasterPassword masterPassword = db.MasterPasswords.Find(id);

            if (masterPassword == null)
            {
                return(NotFound());
            }

            return(Ok(masterPassword));
        }
        public HttpResponseMessage PostMasterPassword(MasterPassword masterPassword)
        {
            if (!ModelState.IsValid)
            {
                return((HttpResponseMessage)Request.CreateResponse(HttpStatusCode.BadRequest, new { data = new { string.Empty }, success = false, error = string.Empty }));
            }

            db.MasterPasswords.Add(masterPassword);
            db.SaveChanges();

            return((HttpResponseMessage)Request.CreateResponse(HttpStatusCode.OK, new { data = new { id = masterPassword.Id }, success = true, error = string.Empty }));
        }
        public IHttpActionResult DeleteMasterPassword(int id)
        {
            MasterPassword masterPassword = db.MasterPasswords.Find(id);

            if (masterPassword == null)
            {
                return(NotFound());
            }

            db.MasterPasswords.Remove(masterPassword);
            db.SaveChanges();

            return(Ok(masterPassword));
        }
        public ActionResult Index(ChangePassword chng)
        {
            GInfraEntities db = new GInfraEntities();

            if ((chng.OldPassword == "" || chng.OldPassword == null) && (chng.NewPassword == "" || chng.NewPassword == null) && (chng.ConfirmPassword == "" || chng.ConfirmPassword == null))
            {
                ViewBag.ErrorMsg = "Please Fill All the fields";
            }
            else
            {
                if (chng.NewPassword == chng.ConfirmPassword)
                {
                    string loginid = Session["LoginId"].ToString();
                    string userid  = db.MasterPasswords.Where(x => x.UserID == loginid && x.UserPassword == chng.OldPassword).OrderByDescending(z => z.UserID).Take(1).Select(b => b.UserID).DefaultIfEmpty("-").SingleOrDefault().ToString();


                    if (userid != "-")
                    {
                        MasterPassword updatedCustomer = (from c in db.MasterPasswords
                                                          where c.UserID == loginid
                                                          select c).FirstOrDefault();
                        updatedCustomer.UserPassword = chng.ConfirmPassword;



                        int insertedRecords = db.SaveChanges();
                        if (insertedRecords == 1)
                        {
                            ViewBag.ErrorMsg = "Your password has been changed sucecssfully ";
                            ModelState.Clear();
                        }
                        else
                        {
                            ViewBag.ErrorMsg = "Something wrong";
                        }
                    }
                    else
                    {
                        ViewBag.ErrorMsg = "Old Password is Incorrect";
                    }
                }
                else
                {
                    ViewBag.ErrorMsg = "Your Confirm Password Does not match";
                }
            }

            return(View());
        }
Exemplo n.º 10
0
        public ActionResult ChangeStatus(string id, string status)
        {
            bool stat = false;

            if (status == "true")
            {
                stat = true;
            }
            MasterPassword banner = db.MasterPasswords.Where(x => x.UserID == id).FirstOrDefault();

            banner.isactive = stat;

            db.Entry(banner).State = EntityState.Modified;
            db.SaveChanges();

            return(RedirectToAction("Index"));
        }
        private static MasterPassword ReadMasterPasswordConfig(XmlReader reader)
        {
            var tmpMasterPassword = new MasterPassword();

            if (SkipEmptyElement(reader))
            {
                return(tmpMasterPassword);
            }

            Debug.Assert(reader.NodeType == XmlNodeType.Element);
            reader.ReadStartElement();
            reader.MoveToContent();

            while (true)
            {
                var tmpNodeType = reader.NodeType;
                if (tmpNodeType == XmlNodeType.None || tmpNodeType == XmlNodeType.EndElement)
                {
                    break;
                }

                if (tmpNodeType == XmlNodeType.Element)
                {
                    switch (reader.LocalName)
                    {
                    default:
                        reader.Skip();
                        break;

                    case "MinimumLength":
                        tmpMasterPassword.MinimumLength = ReadUInt32(reader);
                        break;

                    case "MinimumQuality":
                        tmpMasterPassword.MinimumQuality = ReadUInt32(reader);
                        break;
                    }

                    reader.MoveToContent();
                }
            }

            reader.ReadEndElement();

            return(tmpMasterPassword);
        }
        private void nextButton_Click(object sender, RoutedEventArgs e)
        {
            if (!PasswordFormatCheck(passwordTextBox.Text))
            {
                MessageBox.Show("Неправильный формат пароля, попробуйте еще раз", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Information);
                passwordTextBox.Clear();
            }
            MasterPassword ms = new MasterPassword();

            ms.Hash   = passwordTextBox.Text;
            ms.Length = passwordTextBox.Text.Length;
            ms.Safe   = true;
            string     serialized = JsonConvert.SerializeObject(ms);
            DataWriter dw         = new DataWriter(serialized, "master_password.json");

            dw.WriteAsync();
        }
Exemplo n.º 13
0
        public ActionResult Login(LoginPortalModel _login)
        {
            if (ModelState.IsValid) //validating the user inputs
            {
                bool isExist = false;
                using (GInfraEntities _entity = new GInfraEntities())                                                                                                       // out Entity name is "EventManagementDB_Entities"
                {
                    isExist = _entity.MasterPasswords.Where(x => x.UserID.Trim() == _login.UserId.Trim() && x.UserPassword == _login.password && x.isactive == true).Any(); //validating the user name in tblLogin table whether the user name is exist or not
                    if (isExist)
                    {
                        MasterPassword masterPassword = _entity.MasterPasswords.Where(x => x.UserID.Trim() == _login.UserId.Trim() && x.UserPassword == _login.password).FirstOrDefault();
                        //Get the Menu details from entity and bind it in MenuModels list.
                        FormsAuthentication.SetAuthCookie(_login.UserId.Trim(), false); // set the formauthentication cookie
                        Session["LoginId"] = _login.UserId;

                        if (masterPassword.Super == true)
                        {
                            Session["Role"] = "RL01";
                        }
                        else
                        {
                            if (masterPassword.Role == "RL04")
                            {
                                ViewBag.ErrorMsg = "UnAuthorized Credentials! Contact Super Admin";
                                return(View());
                            }
                            Session["Role"] = masterPassword.Role;
                        }


                        return(RedirectToAction("DashBoard", "DashBoard"));
                    }
                    else
                    {
                        ViewBag.ErrorMsg = "Please enter the Valid Credentials!...";
                        return(View());
                    }
                }
            }
            return(View());
        }
Exemplo n.º 14
0
        public MasterPassword GetMasterPassword()
        {
            using (var db = new LiteDatabase(DatabasePath))
            {
                var masterPasswordCollection = db.GetCollection <MasterPassword>();
                var password = masterPasswordCollection.FindAll().FirstOrDefault();

                if (password == null)
                {
                    password = new MasterPassword
                    {
                        Id       = 1,
                        Password = "******"
                    };

                    masterPasswordCollection.Insert(password);
                }

                return(password);
            }
        }
Exemplo n.º 15
0
        public ActionResult ChangeStatus(string id, string status)
        {
            string LoginId = Session["LoginId"].ToString();

            if (LoginId == "" || LoginId == null)
            {
                return(RedirectToAction("LogOut", "LoginPortal"));
            }
            bool stat = false;

            if (status == "true")
            {
                stat = true;
            }
            MasterPassword banner = db.MasterPasswords.Where(x => x.UserID == id).FirstOrDefault();

            banner.Super = stat;

            db.Entry(banner).State = EntityState.Modified;
            db.SaveChanges();

            return(RedirectToAction("Index"));
        }
 private void button1_Click(object sender, EventArgs e)
 {
     if (true)
     {
         //TODO: Добавить проверку ввода и редактирование мастеров
         using (var context = new ServiceCenterDbContext())
         {
             var master = new MasterPassword(NameTextBox.Text, PasswordTextBox.Text, double.Parse(PercentTextBox.Text));
             context.MasterPasswords.Add(master);
             try
             {
                 context.SaveChanges();
             }
             catch (DbEntityValidationException ex)
             {
                 MessageBox.Show(ex.Message);
             }
             NameTextBox.Text     = "";
             PasswordTextBox.Text = "";
             PercentTextBox.Text  = "";
             MessageBox.Show("Мастер добавлен");
         }
     }
 }
        private void BtnUpdateMasterPassword_Click(object sender, RoutedEventArgs e)
        {
            if (string.IsNullOrEmpty(tbxMasterPassword.Password))
            {
                MessageBox.Show("Master Password is mandatory!", "Master Password Error");
                return;
            }

            try
            {
                var masterPassword = new MasterPassword
                {
                    Id       = 1,
                    Password = tbxMasterPassword.Password
                };

                databaseService.UpdateMasterPassword(masterPassword);
                MessageBox.Show("Master Password Updated", "Master Password Success");
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Issue while updating Master Password: {ex.Message}", "Master Password Error");
            }
        }
Exemplo n.º 18
0
        static void Main(string[] args)
        {
            #region Config
            MasterPassword          = new MasterPassword();
            AllStoredUserPasswords  = new List <StoredUserPassword>();
            AllStoredEncryptedFiles = new List <StoredEncryptedFile>();
            Cryptography     newCrypto = new Cryptography();
            DigitalSignature newDigSig = new DigitalSignature();

            var keyPassword = newCrypto.GenerateRandomNumber(32);                                       // Generer et ny key med random numbers til passwords.
            var keyFile     = newCrypto.GenerateRandomNumber(32);                                       // Generer et ny key med random numbers til filer.

            string currentUserPath = System.Environment.GetEnvironmentVariable("USERPROFILE");
            #endregion Config


            GenerateMasterPassword(ref newCrypto);

            string insertedMasterPasswordConsole;
            do
            {
                Console.Write("Insert master password:"******"Vaultproject\n\n");
                Console.WriteLine(" =======================================");
                Console.WriteLine(" | 1 - Create new ecrypted password    | \n | 2 - Show all my passwords           | \n | 3 - Encrypt a file                  | \n | 4 - Decrypt file                    | \n | 5 - Hash document and sign the data | \n | 6 - Verify signature                |");
                Console.WriteLine(" =======================================");

                Console.Write("\n Indtast: ");

                int indtastedNr = Convert.ToInt32(Console.ReadLine());
                switch (indtastedNr)
                {
                case 1:
                    Console.Write("Indtast side:");
                    string site = Console.ReadLine();
                    Console.Write("Indtast brugernavn:");
                    string username = Console.ReadLine();
                    Console.Write("Indtast password:"******"Dit krypterede password er: {Convert.ToBase64String(encryptedPassword)}");
                    break;

                case 2:
                    foreach (StoredUserPassword userPassword in AllStoredUserPasswords)
                    {
                        string decryptedPassword = DecryptPasswordOfUser(ref newCrypto, keyPassword, userPassword.IV, userPassword.EncryptedPassword);
                        Console.WriteLine($"URL: {userPassword.Site} | Username: {userPassword.Username} | Password: {decryptedPassword}");
                        Console.WriteLine();
                    }
                    break;

                case 3:
                    Console.WriteLine("Placer din fil på DESKTOP og indtast filens navn nedenunder");
                    Console.Write("Filens navn: ");
                    string filNavnENC = Console.ReadLine();

                    var encResult = EncryptFile(ref newCrypto, keyFile, 16, currentUserPath + @"\Desktop\" + filNavnENC);
                    Console.WriteLine(encResult);
                    break;

                case 4:
                    Console.WriteLine("Indtast den encrypteret filnavn nedenunder");
                    Console.Write("Filens navn: ");
                    string filNavnDEC = Console.ReadLine();

                    var decResult = DecryptFile(ref newCrypto, keyFile, currentUserPath + @"\Desktop\" + filNavnDEC);
                    Console.WriteLine(decResult);
                    break;

                case 5:
                    Console.WriteLine("Indtast din document nedunder");
                    Console.Write("Document: ");
                    string document = Console.ReadLine();

                    var docResult = HashDocumentAndSignData(ref newDigSig, document);
                    Console.WriteLine(docResult);
                    break;

                case 6:
                    var verifiedResult = VerifySignature(ref newDigSig);
                    Console.WriteLine(verifiedResult);
                    break;

                default:
                    Console.WriteLine("Du indtastede forkert!");
                    break;
                }

                Console.ReadKey();
                Console.Clear();
            }
        }
Exemplo n.º 19
0
 private VaultHeader(MasterPassword masterPassword)
 {
     MasterPassword = masterPassword;
 }