argon2.online Open in urlscan Pro
2a06:98c1:3121::7  Public Scan

Submitted URL: http://argon2.online/
Effective URL: https://argon2.online/
Submission: On February 18 via manual from FR — Scanned from FR

Form analysis 2 forms found in the DOM

<form id="generate_form" class="needs-validation" novalidate="">
  <div class="container-fluid">
    <div class="row mb-5">
      <div class="col-12">
        <label for="plain_text" class="h5 mb-2">Plain Text Input</label>
        <input type="text" id="plain_text" name="plain_text" class="mb-2 form-control form-control-lg" autofocus="" required="">
        <div class="invalid-feedback"></div>
      </div>
    </div>
    <div class="row mb-5">
      <div class="col-sm-3">
        <label for="salt" class="h5 mb-2">Salt</label>
        <div class="input-icon input-icon--right">
          <i class="material-icons generate-salt-icn" title="Generate Random Salt" id="generate_salt">settings</i>
          <input type="text" id="salt" name="salt" class="mb-2 form-control form-control-lg" required="">
          <div class="invalid-feedback"></div>
        </div>
      </div>
      <div class="col-sm-3">
        <label for="parallelism" class="h5 mb-2">Parallelism Factor</label>
        <input type="number" id="parallelism" name="parallelism" value="1" class="mb-2 form-control form-control-lg">
        <div class="invalid-feedback"></div>
      </div>
      <div class="col-sm-2">
        <label for="memory" class="h5 mb-2">Memory Cost</label>
        <input type="number" id="memory" name="memory" value="16" class="mb-2 form-control form-control-lg">
        <div class="invalid-feedback"></div>
      </div>
      <div class="col-sm-2">
        <label for="iterations" class="h5 mb-2">Iterations</label>
        <input type="number" id="iterations" name="iterations" value="2" class="mb-2 form-control form-control-lg">
        <div class="invalid-feedback"></div>
      </div>
      <div class="col-sm-2">
        <label for="hash_length" class="h5 mb-2">Hash Length</label>
        <input type="number" id="hash_length" name="hash_length" value="16" class="mb-2 form-control form-control-lg">
        <div class="invalid-feedback"></div>
      </div>
    </div>
    <div class="row mb-5">
      <div class="col-sm-6">
        <div class="input-radio input-radio--innerlabel">
          <input id="argon2i" type="radio" name="radio" value="1" checked="">
          <label for="argon2i">Argon2i</label>
        </div>
        <div class="input-radio input-radio--innerlabel">
          <input id="argon2d" type="radio" name="radio" value="2">
          <label for="argon2d">Argon2d</label>
        </div>
        <div class="input-radio input-radio--innerlabel">
          <input id="argon2id" type="radio" name="radio" value="3">
          <label for="argon2id">Argon2id</label>
        </div>
      </div>
      <div class="col-sm-6">
        <a href="https://www.twelve21.io/how-to-choose-the-right-parameters-for-argon2/" target="_blank" rel="noopener noreferrer" title="How to Choose the Right Parameters for Argon2" class="learn-more-lnk">How to Choose the Right Parameters for Argon2 »</a>
      </div>
    </div>
    <div class="row">
      <div class="col">
        <hr>
        <div class="row">
          <div class="col-12 mb-5">
            <h5 class="mb-2"> Output in HEX Form <a class="btn btn--sm type--uppercase" id="copy_hex_btn" data-clipboard-target="#output_hex" title="Copy the hash to the clipboard" role="button">
<span class="btn__text">Copy</span>
</a>
            </h5>
            <span id="output_hex" data-toggle="tooltip" data-container="body"> -- </span>
          </div>
        </div>
        <div class="row">
          <div class="col-12 mb-5">
            <h5 class="mb-2"> Output in Encoded Form <a class="btn btn--sm type--uppercase" id="copy_hash_btn" data-clipboard-target="#output_hash" title="Copy the hash to the clipboard" role="button">
<span class="btn__text">Copy</span>
</a>
            </h5>
            <span id="output_hash" data-toggle="tooltip" data-container="body"> -- </span>
          </div>
        </div>
      </div>
    </div>
    <div class="row">
      <div class="col-sm-8">
        <a class="btn btn-block btn--lg btn--primary-2 type--uppercase mt-3" id="calculate_btn" role="button" title="Generate Argon2 Hash" data-loading-text="<i class='fa fa-spinner fa-spin'></i> Generating Hash" data-original-text="Generate Hash">
<span class="btn__text">
Generate Hash
</span>
</a>
      </div>
      <div class="col-sm-4">
        <a class="btn btn-block btn--lg type--uppercase mt-3" id="clear_btn" role="button">
<span class="btn__text">Reset Form</span>
</a>
      </div>
    </div>
  </div>
</form>

<form id="verifier_form" novalidate="" class="needs-validation">
  <div class="container-fluid">
    <div class="row mb-5">
      <div class="col">
        <label for="verify_plain_text" class="h5 mb-2">Plain Text</label>
        <input type="text" id="verify_plain_text" name="verify_plain_text" class="form-control form-control-lg" required="">
        <div class="invalid-feedback"></div>
      </div>
    </div>
    <div class="row mb-5">
      <div class="col">
        <label for="verify_hash" class="h5 mb-2">Hash</label>
        <input type="text" id="verify_hash" name="verify_hash" class="form-control form-control-lg" autofocus="" required="">
        <div class="invalid-feedback"></div>
      </div>
    </div>
    <div class="row mb-2 text-center" id="validation_result_block">
      <div class="col">
        <span class="h3 validation-result text-success d-none" id="verified"> The supplied hash matches with supplied plain text </span>
        <span class="h3 validation-result text-danger" id="not_verified"></span>
      </div>
    </div>
    <div class="row">
      <div class="col">
        <a class="btn btn-block btn--lg btn--primary-2 type--uppercase" id="verify_btn" role="button" title="Verify Argon2 Hash" data-loading-text="<i class='fa fa-spinner fa-spin'></i> Verifying Hash" data-original-text="Verify Hash">
<span class="btn__text">Verify Hash</span>
</a>
      </div>
    </div>
  </div>
</form>

Text Content

ARGON2 HASH GENERATOR & VERIFIER


GENERATE PASSWORD HASHES WITH ARGON2 ALGORITHM, THE WINNER OF THE PASSWORD
HASHING COMPETITION


ARGON2 HASH GENERATOR

Plain Text Input

Salt
settings

Parallelism Factor

Memory Cost

Iterations

Hash Length

Argon2i
Argon2d
Argon2id
How to Choose the Right Parameters for Argon2 »

--------------------------------------------------------------------------------

OUTPUT IN HEX FORM COPY

--

OUTPUT IN ENCODED FORM COPY

--
Generate Hash
Reset Form


WHAT IS ARGON2?

Argon2 is cryptographic hashing algorithm, most recommended for password
hashing.

It is designed by Alex Biryukov, Daniel Dinu, and Dmitry Khovratovich from
University of Luxembourg.

Argon2 has 3 variants:
Argon2d, Argon2i and Argon2id. Argon2i is optimized for password hashing. Argon2
has 6 input parameters: password, salt, memory cost (the memory usage of the
algorithm), time cost (the execution time of the algorithm and the number of
iterations), parallelism factor (the number of parallel threads), hash length.

Learn more »


ARGON2 HASH VALIDATOR / VERIFIER

Plain Text

Hash

The supplied hash matches with supplied plain text
Verify Hash


FREQUENTLY ASKED QUESTIONS


WHAT IS PASSWORD HASHING?

Password hashing is a one-way process of securing plain text password by
creating a bit string of a fixed size called hash using cryptographic hash
function. Cryptographic hash functions designed to be a one-way function, that
is, a function which is infeasible to invert.


WHAT IS PASSWORD HASHING COMPETITION?

Password Hashing Competition, organized by cryptography and security experts, is
an open competition to raise awareness of the need of strong password hashing
algorithms and to identify hash functions that can be recognized as a
recommended standard. Argon2 was selected as the final PHC winner on 20 July
2015.


RESOURCES, ARTICLES AND TUTORIALS

ARGON2 SPECIFICATIONS PDF

Argon2 Specifications PDF on GitHub

ARGON2 SOURCE CODE

Reference C Implementation of Argon2

SECURE PASSWORD GENERATOR

Strong Random Password Generator

SECURE PASSWORD HASHING IN 2019

Password Hashing: Scrypt, Bcrypt and ARGON2


ARGON2 LIBRARIES (ARGON2 PHP, ARGON2 JAVA, ARGON2 NODEJS)

HOW TO USE ARGON2 FOR PASSWORD HASHING IN JAVA

Read More

PROTECTING PASSWORDS WITH ARGON2 IN PHP 7.2

Read More

ZERO TO HASHING IN UNDER 10 MINUTES: ARGON2 IN NODEJS

Read More


NOTES

Note #1: We do not store any passwords, never.

Note #2: Always choose a strong password, containing special characters,
lowercase and uppercase letters and numbers.

Note #3: Always use trusted libraries for creating password hashes.

Note #4: Stop using weak hashing algorithms such as md5, sha1, sha256, etc.

All Tools of ESSE.TOOLS Network
 * CRC-32 Checksum Calculator
 * CRC-64 Checksum Calculator
 * SHA-512 Hash Generator
 * SHA-256 Hash Generator
 * URL Slug Generator
 * Image to Base64 Converter
 * RGB to HEX Converter
 * HEX to RGB Converter
 * Color Contrast Checker
 * Color Relative Luminance Calculator
 * URL Encoder/Decoder
 * Campaign URL Builder
 * Bcrypt Hash Generator
 * Cron Expression Generator & Editor