Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

santans

Para que serve o comando md5 no php mysql e como usalo

Recommended Posts

Olá @santans, tudo bem?

 

31 minutos atrás, santans disse:

vi ele sendo usado em um tutorial

Apenas uma observação introdutória: Provavelmente não era um tutorial muito recente, pois o md5 é tido atualmente como uma função falha em termos de segurança e em desuso em aplicações mais recentes.

Uma boa substituta é a SHA-256.

 

33 minutos atrás, santans disse:

parece ser algum tipo de criptografia.

É, parece mesmo, mas não é!

Todo mundo confunde isso, mas é bom separarmos os conceitos de hash com criptografia:

1 - Hash não é utilizada exclusivamente para segurança. Um dos maiores usos é para a performance na consulta de informações.

O hash não é feito para ser recuperado. Quando você utiliza md5 para converter "teste" para "698dc19d489c4e4db73e28a713eab07b", por exemplo, você não está preocupado em como fazer o processo inverso.

 

2 - Criptografia é feito para "ofuscar" uma mensagem/informação, mas que depois deverá ser "desofuscada" pelo receptor, para que possa ser lida. Eram muito ligadas às guerras, para esconder mensagens dos inimigos enquanto se comunicam entre os aliados.

 

41 minutos atrás, santans disse:

gostaria de saber pra que serve e como usa-lo

Bom, você provavelmente viu seu uso em um tutorial de cadastro/login de usuários, certo?

É extremamente comum armazenarmos as senhas dos usuários em hashes pelos seguintes motivos:

1 - Você não quer saber qual a senha do usuário, apenas quer se certificar de que ele próprio saiba.

2 - Você não quer que mais ninguém saiba.

3 - Caso ainda assim alguém descubra, você não gostaria que ele pudesse descobrir o que aquela hash representa (a senha de fato), certo?

 

Bom, então você armazena todas as senhas no banco de dados pelas suas respectivas representações no determinado algoritmo HASH (no caso em questão md5).

Daí você me pergunta: bom... e como eu verifico a senha dele pra fazer o login? Simples: você converte a senha que ele informou no login para hash e verifica se esse hash é igual ao que está armazenado no banco.

 

Exemplo: usuário 123 possui a senha teste. A hash da senha teste armazenada no banco é "698dc19d489c4e4db73e28a713eab07b".

O usuário informou "test" como senha para fazer o login. Você converteu para md5 e verificou que o resultado disso é "098f6bcd4621d373cade4e832627b4f6". São completamente diferentes, certo? Então a senha informada está incorreta.

 

Veja alguns algoritmos e seus respectivos resultados de exemplo: http://php.net/manual/pt_BR/function.hash.php#104987

 

Veja também como utilizar hash de forma mais eficiente e segura (atente para o termo SALT. Ele é importante): https://pt.stackoverflow.com/questions/2402/como-fazer-hash-de-senhas-de-forma-segura

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por belann
      Olá!
       
      Como faço para conseguir retirar de uma variável PHP $_FILES os nomes e tamanho dos arquivos estou fazendo dessa forma e não dá certo. É o upload de vários arquivos ao mesmo tempo com multiple.
      for ($i = 0; $i < $numeroCampos; $i++) {
          
          $Arquivo = $_FILES["file"]["name"][$i][0];
          $tamanhoArquivo = $_FILES["file"]["size"][$i][3];
          $nomeTemporario = $_FILES["file"]["tmp_name"][$i][2];
      }
    • Por miltonmmjr
      Quero mostrar os campos de uma tabela do DB em HTML5 PHP com colunas de tamanho varável para facilitar estou colocando uma foto, pois não descobri na internet como fazer isso.
    • Por Laysilva
      Boa tarde , gostaria de uma ajuda , meu formulário está em HTML , porém eu preciso colocar o if else no meio dele , pro caso If a pessoa for física , aparece o formulário "A' SE FOR JURÍDICA O FORMULÁRIO "b" , mas não tô conseguindo fazer essa adaptação . 
      Meu formulário tá assim : 

       
      <div class="form-check form-check-inline"> <input class="form-check-input" type="radio" name="tipo_empresa" id="pj" value="pj"> <label class="form-check-label" for="pj">Pessoa Jurídica</label> </div> <div class="form-check form-check-inline"> <input class="form-check-input" type="radio" name="tipo_empresa" id="pf" value="pf"> <label class="form-check-label" for="pf">Pessoa Física</label> </div> </div> </div> <div class="row"> <div class="col"> <div class="form-check form-check-inline"> <input class="form-check-input" type="radio" name="responsavel" id="socio" value="socio"> <label class="form-check-label" for="socio">Sócio</label> </div> <div class="form-check form-check-inline"> <input class="form-check-input" type="radio" name="responsavel" id="procurador" value="procurador"> <label class="form-check-label" for="procurador">Procurador</label> </div> </div> </div> <br> <div> <div class="row"> <div class="col"> <label for="cnpj">CNPJ/CPF</label > <input id="cnpj" name="cnpj" type="String" placeholder="Digite seu CNPJ/CPF" class="form-control input-md" required> </div> <div class="col"> <label for="doc_empresa">Dados da Empresa</label > <div class="form-group"> <input type="file" name="img" multiple class="form-control-file" accept=".pdf"> </div> </div> </div> <div class="row"> <div class="col"> <label for="cpf">CPF</label> <input id="cpf" name="cpf" type="String" placeholder="Digite o CPF" class="form-control input-md" required> </div> <div class="col"> <label for="email">E-mail</label> <input id="email" name="email" type="email" placeholder="Digite o seu E-amil" class="form-control input-md" required> </div> </div> <div class="row"> <div class="col"> <label for="inputPassword3">Data e Hora</label> <input type="date" class="form-control" name="data" placeholder="Data"> </div> <div class="col"> <label for="nome">Nome</label> <input id="nome" name="nome" type="text" placeholder="Digite o Nome do Respnsável Legal" class="form-control input-md" required> </div> </div> <div class="row"> <div class="col"> <label for="tel">Telefone</label> <input id="tel" name="tel" type="double" placeholder="Digite o seu Telefone" class="form-control input-md" required> </div> <div class="col"> <label for="endereco">Bairro</label> <input id="endereco" name="endereco" type="String" placeholder="Digite o Bairro" class="form-control input-md" required> </div> </div> <div class="row"> <div class="col"> <label for="rua">Rua</label> <input id="rua" name="rua" type="String" placeholder="Digite o nome da rua" class="form-control input-md" required> </div> <div class="col"> <label for="cep">CEP</label> <input id="cep" name="cep" type="double" placeholder="Digite o cep" class="form-control input-md" required> </div> </div> <br><br><br><br> <div class= "offset-md-5 col-md-12"> <button type="submit" class="btn btn-dark col-md-1">Cadastrar</button>  
    • Por thaless94
      <?php
      include_once("conexao.php");
      $filtro = isset($_GET['filtro'])?$_GET['filtro']:"";
      $sql = "select * from usuarios where profissao like'%$filtro%' order by nome";
      $consulta = mysqli_query($conexao,$sql);
      $registros = mysqli_num_rows($consulta);

      ?>
      <!DOCTYPE html>
      <html lang="pt-br">
          <head>
              <meta charset="utf-8">
              <title>Sistema de Cadastro</title>
              <link rel="stylesheet" href="_css/estilo.css">
          </head>
          <body>
              <div class="container">
                  <nav>
                      <ul class="menu">
                          <a href="index.php"><li>Cadastro</li>
                          <a href="consulta.php"><li>Consultar</li></a>
                      </ul>
                  </nav>
                  <section>
                      <h1>Consultar</h1>
                      <hr><br><br>
                      <form method="get" action="">
                          Filtrar profissão: <input type="text" name="filtro" class="campo" required autofocus>
                          <input type="submit" value="Pesquisar" class="btn">
                      </form>    
                      <?php
                      echo "<br>Resultado da pesquisa com a palavra: $filtro <br><br>";
                      echo "<br>$registros Registros encontrados.";
                      while($exibirRegistros = mysqli_fetch_array($consulta)){
                          $codigo = $exibirRegistros[0];
                          $nome = $exibirRegistros[1];
                          $email = $exibirRegistros[2];
                          $profissao = $exibirRegistros[3];

                          echo "<article>";
                          echo "$codigo<br>";
                          echo "$nome<br>";
                          echo "$email<br>";
                          echo "$profissao<br>";    

      ---->             echo "<input type='submit' name='filtro' class='btn_alterar' value='Excluir' href='excluir.php'/> ";
                          echo "</article>";
                      }
                      mysqli_close($conexao);
                      ?>
                  </section>
              </div>
          </body>
      </html>
       
      -------------------------------------------------------------------------------------
       
      querendo puxar de outra página "excluir.php", para aquele botão
       
      <?php
      include_once("conexao.php");
      $codigo = 6;
      $id = "delete from usuarios where codigo = '$codigo'";
      $resultado = mysqli_query($conexao,$id);

      //mysqli_close($conexao);
      ?>
    • Por FabianoBSB
      Bom dia pessoal.
      Preciso de uma ajuda para realizar uma busca em uma chave de um array que tem um href e um src.
      A linha é essa:
      [description] => <div class="separator" style="clear: both; text-align: center;"><a href="https://2.bp.blogspot.com/-SqGrd2c9OBU/WeX5PvXWMuI/AAAAAAAAqhQ/hez3wcpKMQQOKAIjEEugOAvI2tLrwC0WwCLcBGAs/s1600/17102017%25283%2529.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="266" data-original-width="400" height="265" src="https://2.bp.blogspot.com/-SqGrd2c9OBU/WeX5PvXWMuI/AAAAAAAAqhQ/hez3wcpKMQQOKAIjEEugOAvI2tLrwC0WwCLcBGAs/s400/17102017%25283%2529.jpg" width="400" /></a> o que quero é só pegar o link dessas duas tags.
      Obrigado
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.