CRC-32C ਹੈਸ਼ ਕੋਡ ਕੈਲਕੁਲੇਟਰ
ਪ੍ਰਕਾਸ਼ਿਤ: 19 ਮਾਰਚ 2025 8:52:23 ਬਾ.ਦੁ. UTC
ਹੈਸ਼ ਕੋਡ ਕੈਲਕੁਲੇਟਰ ਜੋ ਟੈਕਸਟ ਇਨਪੁਟ ਜਾਂ ਫਾਈਲ ਅਪਲੋਡ ਦੇ ਅਧਾਰ ਤੇ ਹੈਸ਼ ਕੋਡ ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ CRC-32C (ਸਾਈਕਲਿਕ ਰਿਡੰਡੈਂਸੀ ਚੈੱਕ 32 ਬਿੱਟ, C ਵੇਰੀਐਂਟ) ਹੈਸ਼ ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ।CRC-32C Hash Code Calculator
ਸਾਈਕਲਿਕ ਰਿਡੰਡੈਂਸੀ ਚੈੱਕ (CRC) ਇੱਕ ਗਲਤੀ-ਖੋਜਣ ਵਾਲਾ ਕੋਡ ਹੈ ਜੋ ਆਮ ਤੌਰ 'ਤੇ ਕੱਚੇ ਡੇਟਾ ਵਿੱਚ ਅਚਾਨਕ ਤਬਦੀਲੀਆਂ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਹਾਲਾਂਕਿ ਤਕਨੀਕੀ ਤੌਰ 'ਤੇ ਇੱਕ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਹੈਸ਼ ਫੰਕਸ਼ਨ ਨਹੀਂ ਹੈ, ਪਰ CRC-32 ਨੂੰ ਅਕਸਰ ਵੇਰੀਏਬਲ-ਲੰਬਾਈ ਇਨਪੁਟ ਤੋਂ ਇੱਕ ਸਥਿਰ-ਆਕਾਰ ਆਉਟਪੁੱਟ (32 ਬਿੱਟ) ਪੈਦਾ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਦੇ ਕਾਰਨ ਹੈਸ਼ ਕਿਹਾ ਜਾਂਦਾ ਹੈ। ਇਸ ਪੰਨੇ 'ਤੇ ਪੇਸ਼ ਕੀਤਾ ਗਿਆ ਸੰਸਕਰਣ CRC-32C ਰੂਪ ਹੈ, ਜੋ ਕਿ ਇੱਕ ਨਵਾਂ, "ਸਮਾਰਟ" (ਬਿਹਤਰ ਗਲਤੀ ਖੋਜ) ਸੰਸਕਰਣ ਹੈ ਜੋ ਅਕਸਰ ਆਧੁਨਿਕ CPUs (SSE 4.2 ਰਾਹੀਂ) 'ਤੇ ਹਾਰਡਵੇਅਰ ਐਕਸਲਰੇਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਪੂਰਾ ਖੁਲਾਸਾ: ਮੈਂ ਇਸ ਪੰਨੇ 'ਤੇ ਵਰਤੇ ਗਏ ਹੈਸ਼ ਫੰਕਸ਼ਨ ਦੇ ਖਾਸ ਲਾਗੂਕਰਨ ਨੂੰ ਨਹੀਂ ਲਿਖਿਆ। ਇਹ PHP ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾ ਦੇ ਨਾਲ ਸ਼ਾਮਲ ਇੱਕ ਮਿਆਰੀ ਫੰਕਸ਼ਨ ਹੈ। ਮੈਂ ਸਿਰਫ਼ ਵੈੱਬ ਇੰਟਰਫੇਸ ਨੂੰ ਇੱਥੇ ਸਹੂਲਤ ਲਈ ਜਨਤਕ ਤੌਰ 'ਤੇ ਉਪਲਬਧ ਕਰਵਾਉਣ ਲਈ ਬਣਾਇਆ ਹੈ।
CRC-32C ਹੈਸ਼ ਐਲਗੋਰਿਦਮ ਬਾਰੇ
ਮੈਂ ਗਣਿਤਕਾਰ ਨਹੀਂ ਹਾਂ, ਪਰ ਮੈਂ ਇਸ ਹੈਸ਼ ਫੰਕਸ਼ਨ ਨੂੰ ਇੱਕ ਸਧਾਰਣ ਤੁਲਨਾ ਨਾਲ ਸਮਝਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਾਂਗਾ। ਬਹੁਤ ਸਾਰੀਆਂ ਕ੍ਰਿਪਟੋਗ੍ਰਾਫਿਕ ਹੈਸ਼ ਫੰਕਸ਼ਨਾਂ ਦੇ ਵਿਰੁੱਧ, ਇਹ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਤੌਰ 'ਤੇ ਜਟਿਲ ਐਲਗੋਰਿਦਮ ਨਹੀਂ ਹੈ, ਇਸ ਲਈ ਇਹ ਸ਼ਾਇਦ ਠੀਕ ਰਹੇਗਾ ;-)
ਕਲਪਨਾ ਕਰੋ ਕਿ ਤੁਸੀਂ ਇੱਕ ਚਿੱਠੀ ਡਾਕ ਵਿੱਚ ਭੇਜ ਰਹੇ ਹੋ, ਪਰ ਤੁਸੀਂ ਚਿੰਤਾ ਕਰ ਰਹੇ ਹੋ ਕਿ ਇਹ ਪ੍ਰਾਪਤ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਨੁਕਸਾਨ ਪਾ ਸਕਦੀ ਹੈ। ਚਿੱਠੀ ਦੀ ਸਮੱਗਰੀ ਦੇ ਆਧਾਰ 'ਤੇ, ਤੁਸੀਂ ਇੱਕ CRC-32 ਚੈਕਸਮ ਗਣਨਾ ਕਰਦੇ ਹੋ ਅਤੇ ਉਹ ਲਿਖ ਕੇ ਲਿਫਾਫੇ 'ਤੇ ਲਗਾ ਦਿੰਦੇ ਹੋ। ਜਦੋਂ ਪ੍ਰਾਪਤਕਰਤਾ ਨੂੰ ਚਿੱਠੀ ਮਿਲਦੀ ਹੈ, ਉਹ ਉਸੇ ਚੈਕਸਮ ਦੀ ਗਣਨਾ ਕਰ ਸਕਦਾ ਹੈ ਅਤੇ ਦੇਖ ਸਕਦਾ ਹੈ ਕਿ ਇਹ ਤੁਸੀਂ ਲਿਖੇ ਹੋਏ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ ਜਾਂ ਨਹੀਂ। ਜੇਕਰ ਇਹ ਮੇਲ ਖਾਂਦਾ ਹੈ, ਤਾਂ ਚਿੱਠੀ ਰਸਤੇ ਵਿੱਚ ਨੁਕਸਾਨ ਜਾਂ ਬਦਲਾਵ ਤੋਂ ਬਚੀ ਰਹੀ ਸੀ।
CRC-32 ਇਸ ਨੂੰ ਕਰਨ ਲਈ ਚਾਰ ਕਦਮਾਂ ਵਾਲੀ ਪ੍ਰਕਿਰਿਆ ਹੈ:
ਕਦਮ 1: ਕੁਝ ਵਾਧੂ ਸਥਾਨ ਜੋੜੋ (ਪੈਡਿੰਗ)
- CRC ਸੁਨੇਹੇ ਦੇ ਅੰਤ ਵਿੱਚ ਥੋੜਾ ਵਾਧੂ ਸਥਾਨ ਜੋੜਦਾ ਹੈ (ਜਿਵੇਂ ਕਿ ਬਕਸੇ ਵਿੱਚ ਪੈਕਿੰਗ ਪੀਨਟਾਂ)।
- ਇਹ ਇਸ ਨੂੰ ਗਲਤੀਆਂ ਨੂੰ ਜ਼ਿਆਦਾ ਅਸਾਨੀ ਨਾਲ ਪਛਾਣਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ।
ਕਦਮ 2: ਜਾਦੂਈ ਰੂਲਰ (ਪੋਲੀਨੋਮਿਯਲ)
- CRC-32 ਇੱਕ ਵਿਸ਼ੇਸ਼ "ਜਾਦੂਈ ਰੂਲਰ" ਨੂੰ ਡੇਟਾ ਮਾਪਣ ਲਈ ਵਰਤਦਾ ਹੈ।
- ਇਸ ਰੂਲਰ ਨੂੰ ਤੁਸੀਂ ਇਕ ਪੈਟਰਨ ਸਮਝੋ ਜੋ ਉੱਪਰੀ ਅਤੇ ਨਿੱਕੀ ਲਕੀਰਾਂ ਨਾਲ ਬਣਿਆ ਹੋਇਆ ਹੈ (ਇਹ ਪੋਲੀਨੋਮਿਯਲ ਹੈ, ਪਰ ਇਸ ਸ਼ਬਦ ਦੀ ਚਿੰਤਾ ਨਾ ਕਰੋ)।
- CRC-32 ਲਈ ਸਭ ਤੋਂ ਆਮ "ਰੂਲਰ" ਇੱਕ ਥੀਕ ਪੈਟਰਨ ਹੁੰਦਾ ਹੈ।
ਕਦਮ 3: ਰੂਲਰ ਨੂੰ ਸਲਾਈਡ ਕਰਨਾ (ਵਿਵਿਧਤਾ ਪ੍ਰਕਿਰਿਆ)
- ਹੁਣ CRC ਰੂਲਰ ਨੂੰ ਸੁਨੇਹੇ ਵਿੱਚ ਖਿਸਕਾਉਂਦਾ ਹੈ।
- ਹਰ ਥਾਂ 'ਤੇ, ਇਹ ਜਾਂਚਦਾ ਹੈ ਕਿ ਕੀ ਉੱਪਰੀ ਅਤੇ ਨਿੱਕੀ ਲਕੀਰਾਂ ਮਿਲ ਰਹੀਆਂ ਹਨ।
- ਜੇਕਰ ਉਹ ਮਿਲਦੀਆਂ ਨਹੀਂ ਹਨ, ਤਾਂ CRC ਇੱਕ ਨੋਟ ਬਣਾਉਂਦਾ ਹੈ (ਇਹ ਸਧਾਰਣ XOR ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਸਵਿਚ ਬੰਦ ਜਾਂ ਖੋਲ੍ਹ ਕੇ)।
- ਇਹ ਖਿਸਕਾਉਂਦਾ ਰਹਿੰਦਾ ਹੈ ਅਤੇ ਸਵਿਚ ਖੋਲ੍ਹਣ ਜਾਂ ਬੰਦ ਕਰਨ ਦਾ ਕਾਰਜ ਜਾਰੀ ਰੱਖਦਾ ਹੈ ਜਦ ਤੱਕ ਇਹ ਅੰਤ ਤੱਕ ਨਹੀਂ ਪਹੁੰਚਦਾ।
ਕਦਮ 4: ਆਖਰੀ ਨਤੀਜਾ (ਚੈਕਸਮ)
- ਪੂਰੇ ਸੁਨੇਹੇ 'ਤੇ ਰੂਲਰ ਨੂੰ ਖਿਸਕਾਉਣ ਦੇ ਬਾਅਦ, ਤੁਹਾਡੇ ਕੋਲ ਇੱਕ ਛੋਟਾ ਨੰਬਰ ਰਹਿ ਜਾਂਦਾ ਹੈ (32 ਬਿੱਟ ਲੰਬਾ) ਜੋ ਮੂਲ ਡੇਟਾ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ।
- ਇਹ ਨੰਬਰ ਸੁਨੇਹੇ ਲਈ ਇੱਕ ਵਿਲੱਖਣ ਫਿੰਗਰਪ੍ਰਿੰਟ ਵਾਂਗੂ ਹੁੰਦਾ ਹੈ।
- ਇਹ CRC-32 ਚੈਕਸਮ ਹੈ।
ਪੇਜ 'ਤੇ ਦਰਸਾਇਆ ਗਿਆ ਸੰਸਕਰਨ CRC-32C ਵਰਿਆੰਟ ਹੈ, ਜੋ ਕਿ ਪਸੰਦ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ, ਖਾਸ ਤੌਰ 'ਤੇ ਜੇਕਰ ਤੁਸੀਂ ਉਹ CPU ਵਰਤ ਰਹੇ ਹੋ ਜਿਸ ਵਿੱਚ ਇਹ ਹਾਰਡਵੇਅਰ ਐਕਸਲੇਰੇਟਡ ਹੈ (SSE 4.2 ਅਤੇ ਬਾਅਦ ਵਿੱਚ) ਅਤੇ ਤੁਹਾਨੂੰ ਹੋਰ ਵਰਿਆੰਟਾਂ ਨਾਲ ਸੰਗਤਤਾ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ।
ਮੇਰੇ ਕੋਲ ਹੋਰ ਵਰਿਆੰਟਾਂ ਲਈ ਵੀ ਕੈਲਕੂਲੇਟਰ ਹਨ: