ਐਮਡੀ5 ਹੈਸ਼ ਜਨਰੇਟਰ
ਸਾਡੇ ਵੈਬ-ਆਧਾਰਿਤ ਟੂਲ ਨਾਲ ਤੁਰੰਤ ਐਮਡੀ5 ਹੈਸ਼ ਬਣਾਓ। ਐਨਟਰ ਟੈਕਸਟ ਜਾਂ ਸਮੱਗਰੀ ਪੇਸਟ ਕਰੋ ਤਾਂ ਜੋ ਇਸਦਾ ਐਮਡੀ5 ਹੈਸ਼ ਗਣਨਾ ਕੀਤੀ ਜਾ ਸਕੇ। ਗਾਹਕ-ਪੱਖੀ ਪ੍ਰਕਿਰਿਆ ਲਈ ਗੋਪਨੀਯਤਾ, ਤੁਰੰਤ ਨਤੀਜੇ, ਅਤੇ ਆਸਾਨ ਕਾਪੀ-ਟੂ-ਕਲਿੱਪਬੋਰਡ ਕਾਰਜਸ਼ੀਲਤਾ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ। ਡੇਟਾ ਸਮਰਥਨ ਜਾਂਚਾਂ, ਫਾਈਲ ਦੀ ਪੁਸ਼ਟੀ, ਅਤੇ ਆਮ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਉਦੇਸ਼ਾਂ ਲਈ ਆਦਰਸ਼।
ਐਮਡੀ5 ਹੈਸ਼ ਜਨਰੇਟਰ
ਦਸਤਾਵੇਜ਼
MD5 ਹੈਸ਼ ਜਨਰੇਟਰ
ਜਾਣ-ਪਛਾਣ
MD5 (ਮੇਸੇਜ ਡਾਈਜੈਸਟ ਐਲਗੋਰੀਥਮ 5) ਹੈਸ਼ ਜਨਰੇਟਰ ਇੱਕ ਸਧਾਰਣ ਵੈਬ-ਆਧਾਰਿਤ ਟੂਲ ਹੈ ਜੋ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਕਿਸੇ ਵੀ ਇਨਪੁਟ ਟੈਕਸਟ ਦਾ MD5 ਹੈਸ਼ ਤੇਜ਼ੀ ਨਾਲ ਗਣਨਾ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। MD5 ਇੱਕ ਵਿਆਪਕ ਤੌਰ 'ਤੇ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਹੈਸ਼ ਫੰਕਸ਼ਨ ਹੈ ਜੋ 128-ਬਿੱਟ (16-ਬਾਈਟ) ਹੈਸ਼ ਮੁੱਲ ਉਤਪੰਨ ਕਰਦਾ ਹੈ, ਜੋ ਆਮ ਤੌਰ 'ਤੇ 32-ਅੰਕਾਂ ਦੇ ਹੈਕਸਾਡੇਜਿਟਲ ਨੰਬਰ ਦੇ ਰੂਪ ਵਿੱਚ ਪ੍ਰਗਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਇਹ ਟੂਲ MD5 ਹੈਸ਼ ਬਣਾਉਣ ਲਈ ਇੱਕ ਉਪਭੋਗਤਾ-ਮਿੱਤਰ ਇੰਟਰਫੇਸ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਜੋ ਕਿ ਡੇਟਾ ਦੀ ਸਹੀਤਾ ਦੀ ਜਾਂਚ, ਪਾਸਵਰਡ ਹੈਸ਼ਿੰਗ (ਹਾਲਾਂਕਿ ਸੁਰੱਖਿਆ-ਮਹੱਤਵਪੂਰਨ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਸੁਝਾਅ ਨਹੀਂ ਦਿੱਤਾ ਜਾਂਦਾ), ਅਤੇ ਫਾਈਲ ਦੀ ਪੁਸ਼ਟੀ ਕਰਨ ਵਰਗੀਆਂ ਵੱਖ-ਵੱਖ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਲਾਭਦਾਇਕ ਹੋ ਸਕਦਾ ਹੈ।
MD5 ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ
MD5 ਇੱਕ ਇਕ-ਪਾਸਾ ਫੰਕਸ਼ਨ ਹੈ ਜੋ ਕਿਸੇ ਵੀ ਲੰਬਾਈ ਦੇ ਇਨਪੁਟ (ਜਾਂ "ਸੁਨੇਹਾ") ਨੂੰ ਲੈਂਦਾ ਹੈ ਅਤੇ ਇੱਕ ਨਿਰਧਾਰਿਤ ਆਕਾਰ ਦੇ 128-ਬਿੱਟ ਹੈਸ਼ ਮੁੱਲ ਨੂੰ ਉਤਪੰਨ ਕਰਦਾ ਹੈ। ਐਲਗੋਰੀਥਮ ਇਸ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦਾ ਹੈ:
- ਇਨਪੁਟ ਸੁਨੇਹੇ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਪੈਡ ਕਰੋ ਕਿ ਇਸ ਦੀ ਲੰਬਾਈ 512 ਬਿੱਟਾਂ ਨਾਲ ਵੰਡਿਆ ਜਾ ਸਕੇ।
- ਚਾਰ 32-ਬਿੱਟ ਸ਼ਬਦਾਂ ਵਿੱਚ ਵੰਡਿਆ ਗਿਆ 128-ਬਿੱਟ ਸਟੇਟ ਸ਼ੁਰੂ ਕਰੋ।
- ਚਾਰ ਰਾਊਂਡਾਂ ਦੇ ਕਾਰਵਾਈਆਂ ਦੇ ਜ਼ਰੀਏ 512-ਬਿੱਟ ਬਲਾਕਾਂ ਵਿੱਚ ਇਨਪੁਟ ਨੂੰ ਪ੍ਰਕਿਰਿਆ ਕਰੋ।
- ਆਖਰੀ 128-ਬਿੱਟ ਸਟੇਟ ਨੂੰ MD5 ਹੈਸ਼ ਦੇ ਰੂਪ ਵਿੱਚ ਨਿਕਾਸ ਕਰੋ।
ਨਤੀਜਾ ਹੈਸ਼ ਦੇ ਕੁਝ ਮਹੱਤਵਪੂਰਨ ਗੁਣ ਹਨ:
- ਇਹ ਨਿਰਧਾਰਿਤ ਹੈ: ਇੱਕੋ ਇਨਪੁਟ ਹਮੇਸ਼ਾ ਇੱਕੋ ਹੈਸ਼ ਪੈਦਾ ਕਰਦਾ ਹੈ।
- ਕਿਸੇ ਵੀ ਦਿੱਤੇ ਗਏ ਇਨਪੁਟ ਲਈ ਇਸਨੂੰ ਗਣਨਾ ਕਰਨਾ ਤੇਜ਼ ਹੈ।
- ਕਿਸੇ ਦਿੱਤੇ ਗਏ ਹੈਸ਼ ਨੂੰ ਉਤਪੰਨ ਕਰਨ ਲਈ ਇਨਪੁਟ ਪੈਦਾ ਕਰਨਾ ਅਸੰਭਵ ਹੈ (ਪ੍ਰੀ-ਇਮੇਜ ਰੇਜ਼ਿਸਟੈਂਸ)।
- ਦੋ ਵੱਖਰੇ ਇਨਪੁਟਾਂ ਨਾਲ ਇੱਕੋ ਹੈਸ਼ ਪੈਦਾ ਕਰਨਾ ਅਸੰਭਵ ਹੈ (ਕੋਲੀਜ਼ਨ ਰੇਜ਼ਿਸਟੈਂਸ, ਹਾਲਾਂਕਿ MD5 ਦੀ ਕੋਲੀਜ਼ਨ ਰੇਜ਼ਿਸਟੈਂਸ ਤੋੜੀ ਗਈ ਹੈ)।
MD5 ਹੈਸ਼ ਜਨਰੇਟਰ ਦੀ ਵਰਤੋਂ ਕਰਨਾ
ਸਾਡਾ ਵੈਬ-ਆਧਾਰਿਤ MD5 ਹੈਸ਼ ਜਨਰੇਟਰ ਇੱਕ ਸਧਾਰਣ ਇੰਟਰਫੇਸ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ:
- ਟੈਕਸਟ ਇਨਪੁਟ ਫੀਲਡ: ਉਹ ਟੈਕਸਟ ਦਰਜ ਕਰੋ ਜਾਂ ਪੇਸਟ ਕਰੋ ਜਿਸਨੂੰ ਤੁਸੀਂ ਹੈਸ਼ ਕਰਨਾ ਹੈ।
- ਜਨਰੇਟ ਬਟਨ: ਇਸ ਨੂੰ ਕਲਿੱਕ ਕਰੋ ਤਾਂ ਜੋ ਇਨਪੁਟ ਟੈਕਸਟ ਦਾ MD5 ਹੈਸ਼ ਗਣਨਾ ਕੀਤਾ ਜਾ ਸਕੇ।
- ਨਤੀਜਾ ਫੀਲਡ: ਨਤੀਜਾ 32-ਅੰਕਾਂ ਦੇ ਹੈਕਸਾਡੇਜਿਟਲ MD5 ਹੈਸ਼ ਨੂੰ ਦਿਖਾਉਂਦਾ ਹੈ।
- ਕਾਪੀ ਬਟਨ: ਤੁਹਾਨੂੰ ਸਹੀ ਹੈਸ਼ ਨੂੰ ਆਪਣੇ ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਆਸਾਨੀ ਨਾਲ ਕਾਪੀ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ।
ਜਨਰੇਟਰ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ:
- ਆਪਣੇ ਟੈਕਸਟ ਨੂੰ ਇਨਪੁਟ ਫੀਲਡ ਵਿੱਚ ਟਾਈਪ ਕਰੋ ਜਾਂ ਪੇਸਟ ਕਰੋ।
- "ਜਨਰੇਟ" ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ (ਜਾਂ ਹੈਸ਼ ਤੁਹਾਡੇ ਟਾਈਪ ਕਰਦੇ ਹੀ ਆਪਣੇ ਆਪ ਬਣ ਜਾਵੇਗਾ)।
- MD5 ਹੈਸ਼ ਨਤੀਜਾ ਫੀਲਡ ਵਿੱਚ ਦਿਖਾਈ ਦੇਵੇਗਾ।
- ਹੈਸ਼ ਨੂੰ ਆਪਣੇ ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਕਰਨ ਲਈ "ਕਾਪੀ" ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
ਕਲਾਇੰਟ-ਸਾਈਡ ਅਮਲ
ਇਹ MD5 ਹੈਸ਼ ਜਨਰੇਟਰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਜਾਵਾਸਕ੍ਰਿਪਟ ਵਿੱਚ ਲਿਖਿਆ ਗਿਆ ਹੈ ਅਤੇ ਤੁਹਾਡੇ ਵੈਬ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਕਲਾਇੰਟ-ਸਾਈਡ 'ਤੇ ਚੱਲਦਾ ਹੈ। ਇਸ ਪਹੁੰਚ ਦੇ ਕਈ ਫਾਇਦੇ ਹਨ:
- ਗੋਪਨੀਯਤਾ: ਤੁਹਾਡਾ ਇਨਪੁਟ ਟੈਕਸਟ ਤੁਹਾਡੇ ਡਿਵਾਈਸ ਤੋਂ ਕਦੇ ਵੀ ਨਹੀਂ ਜਾਂਦਾ, ਤੁਹਾਡੇ ਡੇਟਾ ਦੀ ਗੋਪਨੀਯਤਾ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ।
- ਗਤੀ: ਹੈਸ਼ ਬਿਨਾਂ ਕਿਸੇ ਸਰਵਰ ਰਾਊਂਡ-ਟ੍ਰਿਪ ਦੇ ਤੁਰੰਤ ਬਣਾਏ ਜਾਂਦੇ ਹਨ।
- ਆਫਲਾਈਨ ਵਰਤੋਂ: ਜਦੋਂ ਪੇਜ ਲੋਡ ਹੋ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਟੂਲ ਬਿਨਾਂ ਇੰਟਰਨੈਟ ਕਨੈਕਸ਼ਨ ਦੇ ਕੰਮ ਕਰ ਸਕਦਾ ਹੈ।
ਇਹ ਅਮਲ ਵੈਬ ਕ੍ਰਿਪਟੋ ਏਪੀਆਈ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ, ਜੋ ਆਧੁਨਿਕ ਵੈਬ ਬ੍ਰਾਊਜ਼ਰਾਂ ਵਿੱਚ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਫੰਕਸ਼ਨਾਲਿਟੀ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ:
1async function generateMD5Hash(input) {
2 const encoder = new TextEncoder();
3 const data = encoder.encode(input);
4 const hashBuffer = await crypto.subtle.digest('MD5', data);
5 const hashArray = Array.from(new Uint8Array(hashBuffer));
6 const hashHex = hashArray.map(b => b.toString(16).padStart(2, '0')).join('');
7 return hashHex;
8}
9
ਵਰਤੋਂ ਦੇ ਕੇਸ
MD5 ਹੈਸ਼ਿੰਗ ਦੇ ਵੱਖਰੇ ਵੱਖਰੇ ਐਪਲੀਕੇਸ਼ਨ ਹਨ, ਜਿਸ ਵਿੱਚ ਸ਼ਾਮਲ ਹਨ:
- ਫਾਈਲ ਸਹੀਤਾ ਦੀ ਜਾਂਚ: ਇਹ ਪੁਸ਼ਟੀ ਕਰਨਾ ਕਿ ਫਾਈਲ ਪ੍ਰਸਾਰਣ ਜਾਂ ਸਟੋਰੇਜ ਦੌਰਾਨ ਬਦਲੀ ਨਹੀਂ ਹੋਈ।
- ਡੇਟਾਬੇਸ ਇੰਡੈਕਸਿੰਗ: ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਲਈ ਤੇਜ਼ ਲੁਕਾਅ ਕੁੰਜੀਆਂ ਬਣਾਉਣਾ।
- ਕੈਸ਼ਿੰਗ ਮਕੈਨਿਜ਼ਮ: ਕੈਸ਼ ਕੀਤੇ ਸਮੱਗਰੀ ਲਈ ਵਿਲੱਖਣ ਪਛਾਣ ਪੱਤਰ ਬਣਾਉਣਾ।
- ਡਿਜੀਟਲ ਦਸਤਖਤ: ਵਧੇਰੇ ਜਟਿਲ ਡਿਜੀਟਲ ਦਸਤਖਤ ਸਕੀਮਾਂ ਦੇ ਹਿੱਸੇ ਵਜੋਂ (ਹਾਲਾਂਕਿ ਹੋਰ ਸੁਰੱਖਿਅਤ ਐਲਗੋਰੀਥਮਾਂ ਨੂੰ ਤਰਜੀਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ)।
ਹਾਲਾਂਕਿ, ਇਹ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ MD5 ਹੁਣ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਤੌਰ 'ਤੇ ਸੁਰੱਖਿਅਤ ਨਹੀਂ ਮੰਨਿਆ ਜਾਂਦਾ ਅਤੇ ਸੁਰੱਖਿਆ-ਮਹੱਤਵਪੂਰਨ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ ਵਰਤਿਆ ਨਹੀਂ ਜਾਣਾ ਚਾਹੀਦਾ ਜਿਵੇਂ ਕਿ ਪਾਸਵਰਡ ਸਟੋਰੇਜ ਜਾਂ SSL ਸਰਟੀਫਿਕੇਟ।
ਇਤਿਹਾਸ
MD5 ਨੂੰ 1991 ਵਿੱਚ ਰੋਨਾਲਡ ਰਿਵੈਸਟ ਦੁਆਰਾ ਇੱਕ ਪੁਰਾਣੇ ਹੈਸ਼ ਫੰਕਸ਼ਨ MD4 ਨੂੰ ਬਦਲਣ ਲਈ ਡਿਜ਼ਾਈਨ ਕੀਤਾ ਗਿਆ ਸੀ। ਐਲਗੋਰੀਥਮ ਨੂੰ RFC 1321 ਵਿੱਚ ਇੱਕ ਹਵਾਲਾ ਅਮਲ ਵਜੋਂ ਲਿਖਿਆ ਗਿਆ, ਜੋ ਕਿ 1992 ਵਿੱਚ ਇੰਟਰਨੈਟ ਇੰਜੀਨੀਅਰਿੰਗ ਟਾਸਕ ਫੋਰਸ (IETF) ਦੁਆਰਾ ਪ੍ਰਕਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ।
ਸ਼ੁਰੂ ਵਿੱਚ, MD5 ਵੱਖ-ਵੱਖ ਸੁਰੱਖਿਆ ਐਪਲੀਕੇਸ਼ਨਾਂ ਅਤੇ ਫਾਈਲਾਂ ਦੀ ਸਹੀਤਾ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਵਿਆਪਕ ਤੌਰ 'ਤੇ ਵਰਤਿਆ ਗਿਆ ਸੀ। ਹਾਲਾਂਕਿ, ਸਮੇਂ ਦੇ ਨਾਲ, ਕਈ ਖਾਮੀਆਂ ਪਾਈਆਂ ਗਈਆਂ:
- 1996 ਵਿੱਚ, ਇੱਕ ਖਾਮੀ ਪਾਈ ਗਈ ਜੋ ਪੂਰੀ ਕੋਲੀਜ਼ਨ ਨਹੀਂ ਸੀ, ਪਰ ਚਿੰਤਾ ਕਰਨ ਲਈ ਕਾਫੀ ਸੀ।
- 2004 ਵਿੱਚ, ਹੋਰ ਗੰਭੀਰ ਖਾਮੀਆਂ ਪਾਈਆਂ ਗਈਆਂ, ਜੋ ਕੋਲੀਜ਼ਨ ਹਮਲੇ ਕਰਨ ਲਈ ਯੋਗ ਬਣਾਉਂਦੀਆਂ ਹਨ।
- 2006 ਵਿੱਚ, ਖੋਜਕਰਤਾਵਾਂ ਨੇ ਇੱਕੋ MD5 ਹੈਸ਼ ਨਾਲ ਦੋ ਵੱਖਰੇ ਫਾਈਲਾਂ ਬਣਾਉਣ ਵਿੱਚ ਸਮਰੱਥਾ ਹਾਸਲ ਕੀਤੀ।
ਇਹ ਖਾਮੀਆਂ ਦੇ ਕਾਰਨ, MD5 ਹੁਣ ਸੁਰੱਖਿਆ-ਮਹੱਤਵਪੂਰਨ ਐਪਲੀਕੇਸ਼ਨਾਂ ਵਿੱਚ ਵਰਤਣ ਲਈ ਸੁਝਾਅ ਨਹੀਂ ਦਿੱਤਾ ਜਾਂਦਾ। ਬਹੁਤ ਸਾਰੇ ਸੰਸਥਾਵਾਂ ਅਤੇ ਮਿਆਰੀਆਂ ਨੇ MD5 ਨੂੰ ਹੋਰ ਸੁਰੱਖਿਅਤ ਵਿਕਲਪਾਂ ਦੇ ਹੱਕ ਵਿੱਚ ਹਟਾ ਦਿੱਤਾ ਹੈ।
ਕੋਡ ਉਦਾਹਰਨਾਂ
ਇੱਥੇ ਵੱਖ-ਵੱਖ ਪ੍ਰੋਗ੍ਰਾਮਿੰਗ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ MD5 ਹੈਸ਼ ਬਣਾਉਣ ਦੇ ਉਦਾਹਰਨ ਹਨ:
1import hashlib
2
3def md5_hash(text):
4 return hashlib.md5(text.encode()).hexdigest()
5
6# ਉਦਾਹਰਨ ਵਰਤੋਂ
7input_text = "Hello, World!"
8hash_result = md5_hash(input_text)
9print(f"MD5 ਹੈਸ਼ '{input_text}' ਦਾ: {hash_result}")
10
1async function md5Hash(text) {
2 const encoder = new TextEncoder();
3 const data = encoder.encode(text);
4 const hashBuffer = await crypto.subtle.digest('MD5', data);
5 const hashArray = Array.from(new Uint8Array(hashBuffer));
6 return hashArray.map(b => b.toString(16).padStart(2, '0')).join('');
7}
8
9// ਉਦਾਹਰਨ ਵਰਤੋਂ
10const inputText = "Hello, World!";
11md5Hash(inputText).then(hash => {
12 console.log(`MD5 ਹੈਸ਼ '${inputText}' ਦਾ: ${hash}`);
13});
14
1import java.security.MessageDigest;
2import java.nio.charset.StandardCharsets;
3
4public class MD5Example {
5 public static String md5Hash(String text) throws Exception {
6 MessageDigest md = MessageDigest.getInstance("MD5");
7 byte[] hashBytes = md.digest(text.getBytes(StandardCharsets.UTF_8));
8
9 StringBuilder hexString = new StringBuilder();
10 for (byte b : hashBytes) {
11 String hex = Integer.toHexString(0xff & b);
12 if (hex.length() == 1) hexString.append('0');
13 hexString.append(hex);
14 }
15 return hexString.toString();
16 }
17
18 public static void main(String[] args) {
19 try {
20 String inputText = "Hello, World!";
21 String hashResult = md5Hash(inputText);
22 System.out.println("MD5 ਹੈਸ਼ '" + inputText + "' ਦਾ: " + hashResult);
23 } catch (Exception e) {
24 e.printStackTrace();
25 }
26 }
27}
28
ਸੁਰੱਖਿਆ ਸੰਬੰਧੀ ਵਿਚਾਰ
ਜਦੋਂ ਕਿ MD5 ਨੂੰ ਗੈਰ-ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਸੰਦਰਭਾਂ ਵਿੱਚ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਇਹ ਸਮਝਣਾ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ ਇਸ ਦੀਆਂ ਸੀਮਾਵਾਂ ਹਨ:
- ਕੋਲੀਜ਼ਨ ਰੇਜ਼ਿਸਟੈਂਸ: MD5 ਕੋਲੀਜ਼ਨ-ਰੋਧੀ ਨਹੀਂ ਹੈ। ਇਹ ਸਮਰੱਥਾ ਨਾਲ ਦੋ ਵੱਖਰੇ ਇਨਪੁਟਾਂ ਨੂੰ ਇੱਕੋ MD5 ਹੈਸ਼ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਪਾਈ ਜਾ ਸਕਦੀ ਹੈ।
- ਪ੍ਰੀ-ਇਮੇਜ ਰੇਜ਼ਿਸਟੈਂਸ: ਹਾਲਾਂਕਿ ਕੋਈ ਵਿਅਵਹਾਰਕ ਪ੍ਰੀ-ਇਮੇਜ ਹਮਲੇ ਪ੍ਰਗਟ ਨਹੀਂ ਹੋਏ ਹਨ, MD5 ਦੀ ਇਸ ਗੁਣ ਲਈ ਸੁਰੱਖਿਆ ਮਾਰਜ ਆਧੁਨਿਕ ਮਿਆਰਾਂ ਦੁਆਰਾ ਕਾਫੀ ਨਹੀਂ ਮੰਨੀ ਜਾਂਦੀ।
- ਗਤੀ: MD5 ਦੀ ਗਤੀ, ਜੋ ਇੱਕ ਵਾਰ ਫਾਇਦਾ ਸੀ, ਹੁਣ ਪਾਸਵਰਡ ਹੈਸ਼ਿੰਗ ਲਈ ਇੱਕ ਨੁਕਸਾਨ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਬ੍ਰੂਟ-ਫੋਰਸ ਹਮਲਿਆਂ ਨੂੰ ਆਸਾਨ ਬਣਾਉਂਦੀ ਹੈ।
ਇਹ ਮੁੱਦਿਆਂ ਦੇ ਕਾਰਨ, MD5 ਨੂੰ ਵਰਤਣਾ ਨਹੀਂ ਚਾਹੀਦਾ:
- ਪਾਸਵਰਡ ਸਟੋਰੇਜ
- ਡਿਜੀਟਲ ਦਸਤਖਤ
- SSL/TLS ਸਰਟੀਫਿਕੇਟ
- ਕਿਸੇ ਵੀ ਐਪਲੀਕੇਸ਼ਨ ਦੀ ਲੋੜ ਹੈ ਜੋ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਸੁਰੱਖਿਆ ਦੀ ਲੋੜ ਹੈ
ਵਿਕਲਪ
ਸੁਰੱਖਿਅਤ ਹੈਸ਼ਿੰਗ ਦੀ ਲੋੜ ਵਾਲੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਲਈ, ਇਹ ਵਿਕਲਪਾਂ ਨੂੰ ਵਿਚਾਰ ਕਰੋ:
- SHA-256: SHA-2 ਪਰਿਵਾਰ ਦਾ ਹਿੱਸਾ, ਵਿਆਪਕ ਤੌਰ 'ਤੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਸੁਰੱਖਿਅਤ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ।
- SHA-3: ਸੁਰੱਖਿਅਤ ਹੈਸ਼ ਐਲਗੋਰੀਥਮ ਪਰਿਵਾਰ ਦਾ ਨਵਾਂ ਮੈਂਬਰ, ਜੋ SHA-2 ਨਾਲ ਬੁਨਿਆਦੀ ਤੌਰ 'ਤੇ ਵੱਖਰਾ ਬਣਾਉਣ ਲਈ ਡਿਜ਼ਾਈਨ ਕੀਤਾ ਗਿਆ ਹੈ।
- BLAKE2: ਇੱਕ ਉੱਚ-ਗਤੀ, ਸੁਰੱਖਿਅਤ ਹੈਸ਼ ਫੰਕਸ਼ਨ, ਜੋ MD5 ਨਾਲੋਂ ਤੇਜ਼ ਹੈ ਪਰ SHA-3 ਦੇ ਸਮਾਨ ਸੁਰੱਖਿਆ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
- Bcrypt, Scrypt, ਜਾਂ Argon2: ਖਾਸ ਤੌਰ 'ਤੇ ਪਾਸਵਰਡ ਹੈਸ਼ਿੰਗ ਲਈ, ਇਹ ਐਲਗੋਰੀਥਮ ਗਣਨਾਤਮਕ ਤੌਰ 'ਤੇ ਬਹੁਤ ਮਿਹਨਤੀ ਅਤੇ ਹਾਰਡਵੇਅਰ-ਤੇਜ਼ ਹਮਲਿਆਂ ਦੇ ਖਿਲਾਫ ਰੋਧੀ ਹਨ।
ਹਵਾਲੇ
- ਰਿਵੈਸਟ, R. (1992). "MD5 ਮੇਸੇਜ-ਡਾਈਜੈਸਟ ਐਲਗੋਰੀਥਮ"। IETF। https://tools.ietf.org/html/rfc1321
- ਟਰਨਰ, S., ਚੇਨ, L. (2011). "MD5 ਮੇਸੇਜ-ਡਾਈਜੈਸਟ ਅਤੇ HMAC-MD5 ਐਲਗੋਰੀਥਮਾਂ ਲਈ ਅਪਡੇਟ ਕੀਤੇ ਸੁਰੱਖਿਆ ਵਿਚਾਰ"। IETF। https://tools.ietf.org/html/rfc6151
- ਵਾਂਗ, X., ਯੂ, H. (2005). "MD5 ਅਤੇ ਹੋਰ ਹੈਸ਼ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਕਿਵੇਂ ਤੋੜਨਾ"। ਐਡਵਾਂਸਿਜ਼ ਇਨ ਕ੍ਰਿਪਟੋਲੋਜੀ – ਯੂਰੋਕ੍ਰਿਪਟ 2005।
- ਕ੍ਰਿਪਟੋਗ੍ਰਾਫੀ ਸਟੈਕ ਐਕਸਚੇਂਜ। "MD5 ਨੂੰ ਕਿਉਂ ਤੋੜਿਆ ਗਿਆ ਹੈ?"। https://crypto.stackexchange.com/questions/1434/why-is-md5-considered-broken
- NIST। (2015). "SHA-3 ਮਿਆਰ: ਪੈਰਮੀਟੇਸ਼ਨ-ਅਧਾਰਿਤ ਹੈਸ਼ ਅਤੇ ਵਧਾਈ-ਆਉਟਪੁੱਟ ਫੰਕਸ਼ਨ"। https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf
ਫੀਡਬੈਕ
ਇਸ ਟੂਲ ਬਾਰੇ ਫੀਡਬੈਕ ਦੇਣ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਫੀਡਬੈਕ ਟੋਸਟ 'ਤੇ ਕਲਿੱਕ ਕਰੋ
ਸੰਬੰਧਿਤ ਟੂਲ
ਹੋਰ ਟੂਲਾਂ ਦੀ ਖੋਜ ਕਰੋ ਜੋ ਤੁਹਾਡੇ ਕੰਮ ਦੇ ਪ੍ਰਵਾਹ ਲਈ ਲਾਭਦਾਇਕ ਹੋ ਸਕਦੀਆਂ ਹਨ