Password   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 46
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 18
dl 0
loc 46
rs 10
c 0
b 0
f 0
wmc 6

3 Methods

Rating   Name   Duplication   Size   Complexity  
A VerifyPass() 0 7 2
A CreatePass() 0 7 2
A GeneratePass() 0 9 2
1
<?php
2
/*
3
    ***********************************************
4
   Password .PHP -
5
   Class responsible for handling, verifying and generating passwords through the native PHP function called: Bcrypt.
6
   Classe responsável pelo tratar, verificar e gerar senhas através da função nativa do PHP chamada: Bcrypt.
7
8
   With this class you can generate a random password automatically, just by calling the GeneratePass method.
9
   Com esta classe você pode gerar uma senha aleatória automaticamente, apenas chamando o método GeneratePass.
10
    ***********************************************
11
12
    Copyright (c) 2020, Jeferson L. Souza INTERLIG SOLUÇÕES INTELIGENTES
13
    E-mail: [email protected]
14
    Site: http://interligsolucoes.com.br/
15
*/
16
17
namespace Developers;
18
19
class Password
20
{
21
    /**
22
     * Criptografa Uma Senha (String)
23
     * @param $pass
24
     * @return bool|false|string
25
     */
26
    public function CreatePass ($pass)
27
    {
28
        $hash = password_hash($pass, PASSWORD_DEFAULT);
29
        if($hash){
30
            return $hash;
31
        }else{
32
            return false;
33
        }
34
    }
35
36
    /**
37
     * Verifica a Criptografia e a String Inserida Pelo Usuário
38
     * @param $pass
39
     * @param $hash
40
     * @return bool
41
     */
42
    public function VerifyPass ($pass, $hash)
43
    {
44
        $verify = password_verify($pass, $hash);
45
        if($verify){
46
            return true;
47
        }else{
48
            return false;
49
        }
50
    }
51
52
    /**
53
     * Gera Automaticamente Uma Senha
54
     * @return bool|false|string
55
     */
56
    public function GeneratePass ()
57
    {
58
        $pass = substr(str_shuffle("ABCDEFGHIJKLMNOPQRSTUVYXWZabcdefghijklmnopqrstuvyxwz0123456789!@#$%¨&*()_+="),
59
            0, 10);
60
        $hash = password_hash($pass, PASSWORD_DEFAULT);
61
        if($hash){
62
            return $pass;
63
        }else{
64
            return false;
65
        }
66
67
    }
68
}