public async Task PasswordManager_Load()
        {
            var owner    = new LongPasswordOwner(1000);
            var password = _passwordManager.FromOwner("bobsyouruncle", owner);

            var passwordManager = CreateManager(password);

            var password2 = await passwordManager.Load(owner);

            Assert.IsTrue(password.IsEqual(password2));
        }
示例#2
0
        public void PasswordHasher_Hash_Fails_WrongOwner()
        {
            var hasher   = new PasswordHasher(11528);
            var owner1   = new LongPasswordOwner(1000);
            var owner2   = new LongPasswordOwner(1001);
            var salt     = hasher.GenerateSalt(32);
            var password = hasher.GenerateSalt(32);
            var hash     = hasher.Hash(password, salt, owner1.ToArray);

            // Do it a 2nd time with wrong owner and make sure they're not equal
            var hash2 = hasher.Hash(password, salt, owner2.ToArray);

            Assert.IsFalse(hash2.IsEqual(hash));
        }
示例#3
0
        public void PasswordHasher_Hash_Succeeds()
        {
            var hasher   = new PasswordHasher(11528);
            var owner    = new LongPasswordOwner(1000);
            var salt     = hasher.GenerateSalt(32);
            var password = hasher.GenerateSalt(32);
            var hash     = hasher.Hash(password, salt, owner.ToArray);

            Assert.IsNotNull(hash);
            Assert.IsFalse(hash.IsEqual(password));

            // Do it a 2nd time and make sure they're equal
            var hash2 = hasher.Hash(password, salt, owner.ToArray);

            Assert.IsTrue(hash2.IsEqual(hash));
        }