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