예제 #1
0
 public void Create_Sha256_Verify()
 {
     Assert.True(CryptPassword.Verify("Test", "$5$SALT$hRDk2PDSQpm22hspBC9DW3wmKv58ZcIPLrTAI/PyBc9"));
     Assert.False(CryptPassword.Verify("Test", "$5$SALT$hRDk2PDSQpm22hspBC9DW3wmKv58ZcIPLrTAI/PyBc0"));
 }
예제 #2
0
 public void Create_Md5Apache_Verify2()
 {
     Assert.True(CryptPassword.Verify("myPassword", "$apr1$qHDFfhPC$nITSVHgYbDAK1Y0acGRnY0"));
 }
    /**
     * Salva o Fisioterapeuta no banco.
     */
    public void savePhysiotherapist()
    {
        List <InputField> allInputs = new List <InputField>();

        allInputs.Add(namePhysio);
        allInputs.Add(date);
        allInputs.Add(phone1);
        allInputs.Add(login);
        allInputs.Add(pass);
        allInputs.Add(confirmPass);
        allInputs.Add(crefito);
        allInputs.Add(regiao);
        allInputs.Add(phone2);

        List <Toggle> allToggles = new List <Toggle>();

        allToggles.Add(male);
        allToggles.Add(female);


        if (ValidInput(allInputs, allToggles) && ((crefito == null) == (regiao == null)))
        {
            foreach (var x in allInputs)
            {
                ApplyColor(x, 1);
            }

            string encryptedPassword = CryptPassword.Encrypt(pass.text, login.text);
            var    trip = outDate.text.Split('/');
            var    dateFormate = trip[2] + "/" + trip[1] + "/" + trip[0];
            string sex, _phone2, _crefito, _regiao;

            if (male.isOn)
            {
                sex = "m";
            }
            else
            {
                sex = "f";
            }

            if (phone2 == null || phone2.text == "")
            {
                _phone2 = null;
            }
            else
            {
                _phone2 = phone2.text;
            }

            if (crefito == null || crefito.text == "")
            {
                _crefito = null;
                _regiao  = null;
            }
            else
            {
                _crefito = crefito.text;
                _regiao  = regiao.text;
            }


            Pessoa.Insert(namePhysio.text, sex, dateFormate, phone1.text, _phone2);
            List <Pessoa> p = Pessoa.Read();

            Fisioterapeuta.Insert(p[p.Count - 1].idPessoa, login.text, encryptedPassword, _crefito, _regiao);

            CreateDirectoryPhysio(namePhysio.text, p[p.Count - 1].idPessoa);

            List <Fisioterapeuta> physios = Fisioterapeuta.Read();
            GlobalController.instance.admin = physios[physios.Count - 1];

            Flow.StaticLogin();
        }
    }
예제 #4
0
 public void Create_Md5_Verify2()
 {
     Assert.True(CryptPassword.Verify("password", "$1$3azHgidD$SrJPt7B.9rekpmwJwtON31"));
     Assert.False(CryptPassword.Verify("password", "$1$3azHgidD$SrJPt7B.9rekpmwJwtON30"));
 }
예제 #5
0
        public void Create_Md5Apache_NoSalt()
        {
            var hash = CryptPassword.Create("Test", CryptPasswordAlgorithm.MD5Apache, 0);

            Assert.Equal("$apr1$$zccNMO7jOau6cLaAIpdIp1", hash);
        }
예제 #6
0
 public void Input_NullHash()
 {
     Assert.False(CryptPassword.Verify("Test", null));
 }
예제 #7
0
        public void Create_Md5_16b()
        {
            var hash = CryptPassword.Create("1234567890123456", CryptPasswordAlgorithm.MD5, 0);

            Assert.Equal("$1$$RvxDspYl0hrlDuSmGR1fc/", hash);
        }
예제 #8
0
        public void Create_Sha512_64b()
        {
            var hash = CryptPassword.Create("1234567890123456789012345678901234567890123456789012345678901234", CryptPasswordAlgorithm.Sha512, 0);

            Assert.Equal("$6$$WnKefX4kEZjuyvYWY6Bf5.Us3GWgJCcwj8faQRpFtCg9/aJOhojZ1vpchMG6CmNRYbn.y/Z.l6WotGTVuFSFW0", hash);
        }
예제 #9
0
        public void Create_Sha512_ExplicitRounds()
        {
            var hash = CryptPassword.Create("Test", CryptPasswordAlgorithm.Sha512, 0, 7777);

            Assert.Equal("$6$rounds=7777$$UNBSSrJ9WQTbHqvso9.yDg0XdJAraq1dZir/V3SPvApoa.E0ilnLP.803MJqIHjOtTvuhxGv/cAXJ0ccTpYBP1", hash);
        }
예제 #10
0
        public void Create_Md5_NoSalt()
        {
            var hash = CryptPassword.Create("Test", CryptPasswordAlgorithm.MD5, 0);

            Assert.Equal("$1$$smLce1bQjZePWXbJ5eh58/", hash);
        }
예제 #11
0
        public void Create_Sha512_NoSalt()
        {
            var hash = CryptPassword.Create("Test", CryptPasswordAlgorithm.Sha512, 0);

            Assert.Equal("$6$$A2vGKWUkCCh28GOsloAzFlH9OgSh8Kv37fsIgM/FmwIPpmZXE/Rx6h6Fdjw7bEasMtpE/e9QQL9Te0d1pUJk./", hash);
        }
예제 #12
0
 public void Create_Sha256_ExtraLongPassword()
 {
     Assert.True(CryptPassword.Verify("we have a short salt string but not a short password", "$5$rounds=77777$short$JiO1O3ZpDAxGJeaDIuqCoEFysAe1mZNJRs3pw0KQRd/"));
 }
예제 #13
0
 public void Create_Sha256_SaltTooLong()
 {
     Assert.True(CryptPassword.Verify("Hello world!", "$5$rounds=10000$saltstringsaltst$3xv.VbSHBb41AL9AvLeujZkZRBAwqFMz2.opqey6IcA"));
 }
예제 #14
0
 public void Create_Sha256_Verify_NoSalt()
 {
     Assert.True(CryptPassword.Verify("Test", "$5$$HznmDc1T0z.rHKK6lKLl06rT2QuK1hhSbA09Zur2KsD"));
     Assert.False(CryptPassword.Verify("Test", "$5$$HznmDc1T0z.rHKK6lKLl06rT2QuK1hhSbA09Zur2Ks0"));
 }
예제 #15
0
 public void Validate_Salt_ArgumentNullException()
 {
     Assert.Throws <ArgumentNullException>(() => {
         CryptPassword.Create(Array.Empty <byte>(), CryptPasswordAlgorithm.Sha256, null);
     });
 }
예제 #16
0
 public void Create_Sha512_Verify()
 {
     Assert.True(CryptPassword.Verify("Test", "$6$SALT$8GXK57PY.bq4j7Ng3f0LF6NcPXxUXqmmseKtw1ugn8uoKXiPJWG8Ub6bxJcHAPBL2y0ppLmQJcpR8mYJbdjVF1"));
     Assert.False(CryptPassword.Verify("Test", "$6$SALT$8GXK57PY.bq4j7Ng3f0LF6NcPXxUXqmmseKtw1ugn8uoKXiPJWG8Ub6bxJcHAPBL2y0ppLmQJcpR8mYJbdjVF0"));
 }
예제 #17
0
 public void Input_UnknownAlgorithm()
 {
     Assert.False(CryptPassword.Verify("Test", "$XXX$SALT$8GXK57PY.bq4j7Ng3f0LF6NcPXxUXqmmseKtw1ugn8uoKXiPJWG8Ub6bxJcHAPBL2y0ppLmQJcpR8mYJbdjVF1"));
 }
예제 #18
0
 public void Create_Sha512_Verify_NoSalt()
 {
     Assert.True(CryptPassword.Verify("Test", "$6$$A2vGKWUkCCh28GOsloAzFlH9OgSh8Kv37fsIgM/FmwIPpmZXE/Rx6h6Fdjw7bEasMtpE/e9QQL9Te0d1pUJk./"));
     Assert.False(CryptPassword.Verify("Test", "$6$$A2vGKWUkCCh28GOsloAzFlH9OgSh8Kv37fsIgM/FmwIPpmZXE/Rx6h6Fdjw7bEasMtpE/e9QQL9Te0d1pUJk.0"));
 }
예제 #19
0
 public void Input_EmptyHash()
 {
     Assert.False(CryptPassword.Verify("Test", ""));
 }
예제 #20
0
 public void Create_Sha512_Verify_SaltTooLong()
 {
     Assert.True(CryptPassword.Verify("Hello world!", "$6$rounds=10000$saltstringsaltst$OW1/O6BYHV6BcXZu8QVeXbDWra3Oeqh0sbHbbMCVNSnCM/UrjmM0Dp8vOuZeHBy/YTBmSK6H9qs/y3RnOaw5v."));
 }
예제 #21
0
 public void Create_Md5_Verify1()
 {
     Assert.True(CryptPassword.Verify("Test", "$1$SALT$iYTuv61EcPDadxVotGguH0"));
     Assert.False(CryptPassword.Verify("Test", "$1$SALT$iYTuv61EcPDadxVotGguHF"));
 }
예제 #22
0
 public void Create_Sha512_Verify_ExtraLongPassword()
 {
     Assert.True(CryptPassword.Verify("a very much longer text to encrypt.  This one even stretches over morethan one line.", "$6$rounds=1400$anotherlongsalts$POfYwTEok97VWcjxIiSOjiykti.o/pQs.wPvMxQ6Fm7I6IoYN3CmLs66x9t0oSwbtEW7o7UmJEiDwGqd8p4ur1"));
 }
예제 #23
0
 public void Create_Md5_Verify_NoSalt()
 {
     Assert.True(CryptPassword.Verify("Test", "$1$$smLce1bQjZePWXbJ5eh58/"));
     Assert.False(CryptPassword.Verify("Test", "$1$$smLce1bQjZePWXbJ5eh580"));
 }
예제 #24
0
 public void Validate_PasswordString_ArgumentNullException()
 {
     Assert.Throws <ArgumentNullException>(() => {
         CryptPassword.Create(default(string));
     });
 }
예제 #25
0
 public void Create_Md5Apache_Verify1()
 {
     Assert.True(CryptPassword.Verify("Test", "$apr1$8fNPKrzo$LMfFH4wsbetnSxVk8zvnL/"));
     Assert.False(CryptPassword.Verify("Test", "$apr1$8fNPKrzo$LMfFH4wsbetnSxVk8zvnL0"));
 }
예제 #26
0
        public void Create_Md5_Long()
        {
            var hash = CryptPassword.Create("ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ", CryptPasswordAlgorithm.MD5);

            Assert.True(CryptPassword.Verify("ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ", hash));
        }
예제 #27
0
 public void Create_Md5Apache_Verify_NoSalt()
 {
     Assert.True(CryptPassword.Verify("Test", "$apr1$$zccNMO7jOau6cLaAIpdIp1"));
     Assert.False(CryptPassword.Verify("Test", "$apr1$$zccNMO7jOau6cLaAIpdIp0"));
 }
예제 #28
0
 public void Validate_Algorithm_ArgumentOutOfRangeException()
 {
     Assert.Throws <ArgumentOutOfRangeException>(() => {
         CryptPassword.Create(Array.Empty <byte>(), 0);
     });
 }
    /**
     * Salva o Fisioterapeuta no banco.
     */
    public void savePhysiotherapist()
    {
        List <InputField> allInputs = new List <InputField>();

        allInputs.Add(namePhysio);
        allInputs.Add(date);
        allInputs.Add(phone1);
        allInputs.Add(login);
        allInputs.Add(pass);
        allInputs.Add(confirmPass);
        allInputs.Add(crefito);
        allInputs.Add(regiao);
        allInputs.Add(phone2);

        List <Toggle> allToggles = new List <Toggle>();

        allToggles.Add(male);
        allToggles.Add(female);


        if (ValidInput(allInputs, allToggles) && ((crefito == null) == (regiao == null)))
        {
            foreach (var x in allInputs)
            {
                ApplyColor(x, 1);
            }

            string encryptedPassword = CryptPassword.Encrypt(pass.text, login.text);
            var    trip = outDate.text.Split('/');
            var    dateFormate = trip[2] + "/" + trip[1] + "/" + trip[0];
            string sex, _phone2, _crefito, _regiao;

            if (male.isOn)
            {
                sex = "m";
            }
            else
            {
                sex = "f";
            }

            if (phone2 == null || phone2.text == "")
            {
                _phone2 = null;
            }
            else
            {
                _phone2 = phone2.text;
            }

            if (crefito == null || crefito.text == "")
            {
                _crefito = null;
                _regiao  = null;
            }
            else
            {
                _crefito = crefito.text;
                _regiao  = regiao.text;
            }


            Pessoa.Insert(namePhysio.text, sex, dateFormate, phone1.text, _phone2);
            var lastPerson = Pessoa.GetLast();

            Fisioterapeuta.Insert(lastPerson.idPessoa, login.text, encryptedPassword, _regiao, _crefito);

            CreateDirectoryPhysio(namePhysio.text, lastPerson.idPessoa);

            var lastPhysio = Fisioterapeuta.GetLast();
            GlobalController.instance.admin = lastPhysio;

            Scene scene = SceneManager.GetActiveScene();

            if (scene.name == "NewPhysiotherapist Common")
            {
                Flow.StaticLogin();
            }
            else
            {
                SceneManager.LoadScene(scene.name);
            }
        }
    }
예제 #30
0
        public void Create_Sha256_ExplicitRounds()
        {
            var hash = CryptPassword.Create("Test", CryptPasswordAlgorithm.Sha256, 0, 7777);

            Assert.Equal("$5$rounds=7777$$Z7sdS/EnisPsr1uK7pcVGQACIOOtoEREEqXJUHY.ja3", hash);
        }