¿Cómo crear hash a partir de una string en JavaScript?

Para crear un hash único a partir de una string específica, se puede implementar utilizando su propia función de conversión de string a hash. Devolverá el equivalente hash de una string. Además, se puede usar una biblioteca llamada Crypto para generar varios tipos de hash como SHA1, MD5, SHA256 y muchos más.

Nota: El valor hash de una string vacía siempre es cero.

Ejemplo 1:

<!DOCTYPE html>
<html>
  
<head>
    <title>
        How to convert hash from
        string in JavaScript ?
    </title>
      
    <style>
        h1 {
            color: green;
        }
    </style>
</head>
  
<body>
    <center>
        <h1>GeeksforGeeks</h1>
  
        <h3>Creating hash from string in JavaScript?</h3>
  
        <p>The hash value of string "GeeksforGeeks" is .</p>
  
        <p id="geek"></p>
  
        <script>
          
            // Convert to 32bit integer
            function stringToHash(string) {
                  
                var hash = 0;
                  
                if (string.length == 0) return hash;
                  
                for (i = 0; i < string.length; i++) {
                    char = string.charCodeAt(i);
                    hash = ((hash << 5) - hash) + char;
                    hash = hash & hash;
                }
                  
                return hash;
            }
              
            // String printing in hash
            var gfg = "GeeksforGeeks"
              
            document.getElementById("geek").innerHTML
                        = stringToHash(gfg);
        </script>
    </center>
</body>
  
</html>

Salida:

Ejemplo 2:

<script>
  
    // Importing 'crypto' module
    const crypto = require('crypto'),
  
    // Returns the names of supported hash algorithms 
    // such as SHA1,MD5
    hash = crypto.getHashes();
  
    // Create hash of SHA1 type
    x = "Geek"
  
    // 'digest' is the output of hash function containing 
    // only hexadecimal digits
    hashPwd = crypto.createHash('sha1').update(x).digest('hex');
  
    console.log(hash); 
</script>

Producción:

321cca8846c784b6f2d6ba628f8502a5fb0683ae

Publicación traducida automáticamente

Artículo escrito por Abhishek7 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *