VPN ਐਪਾਂ ਲਈ ਦੁਬਾਰਾ ਪੈਦਾ ਕਰਨ ਯੋਗ ਬਿਲਡ: ਮੇਲ ਕੀ ਸਾਬਤ ਕਰਦਾ ਹੈ
ਮੇਲ ਖਾਂਦਾ ਮੁੜ-ਨਿਰਮਾਣ ਵੰਡੇ ਹੋਏ ਬਾਈਨਰੀ ਨੂੰ ਐਲਾਨੇ ਸਰੋਤ ਅਤੇ ਸੰਦਾਂ ਨਾਲ ਜੋੜਦਾ ਹੈ। ਇਹ ਉਸ ਬਾਈਨਰੀ ਪਿੱਛੇ ਦੀ VPN ਸੇਵਾ ਜਾਂ ਉਸ ਦੇ ਲੌਗ ਬਾਰੇ ਕੁਝ ਨਹੀਂ ਕਹਿੰਦਾ।
ਦੁਬਾਰਾ ਪੈਦਾ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਸਪਲਾਈ ਚੇਨ ਦਾ ਗੁਣ ਹੈ: ਉਹੀ ਐਲਾਨੇ ਇਨਪੁੱਟ ਉਹੀ ਆਰਟੀਫੈਕਟ ਪੈਦਾ ਕਰਨੇ ਚਾਹੀਦੇ ਹਨ। VPN ਕਲਾਇੰਟ ਲਈ ਇਹ ਕਥਨ ਤੁਹਾਡੇ ਡਾਊਨਲੋਡ ਕੀਤੇ ਇੰਸਟਾਲਰ ਨੂੰ ਅਜਿਹੇ ਸਰੋਤ ਅਤੇ ਸੰਦ-ਚੇਨ ਨਾਲ ਬੰਨ੍ਹਦਾ ਹੈ ਜਿਸ ਨੂੰ ਕੋਈ ਵੀ ਦੁਬਾਰਾ ਬਣਾ ਸਕਦਾ ਹੈ। ਇਹ ਉਸ ਸੇਵਾ ਬਾਰੇ ਕੁਝ ਨਹੀਂ ਕਹਿੰਦਾ ਜਿਸ ਨਾਲ ਕਲਾਇੰਟ ਜੁੜਦਾ ਹੈ।
ਇਸ ਲਈ ਲਾਭਦਾਇਕ ਸਵਾਲ ਤੰਗ ਅਤੇ ਜਵਾਬਯੋਗ ਹੈ। ਕੀ ਪ੍ਰੋਜੈਕਟ ਕੋਈ ਪ੍ਰਕਿਰਿਆ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰਦਾ ਹੈ, ਅਤੇ ਕੀ ਤੁਹਾਡਾ ਖਾਸ ਆਰਟੀਫੈਕਟ ਉਸ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ?
ਬਿਲਡ ਕਿੱਥੇ ਨਿਰਧਾਰਕ ਰਹਿਣਾ ਬੰਦ ਕਰਦਾ ਹੈ
ਕੰਪਾਈਲਰ ਟਾਈਮਸਟੈਂਪ, ਪੂਰਨ ਪਾਥ ਅਤੇ ਬਿਲਡ ਹੋਸਟਾਂ ਦੇ ਨਾਮ ਅੰਦਰ ਪਾਉਂਦੇ ਹਨ, ਜਦ ਤੱਕ ਉਨ੍ਹਾਂ ਨੂੰ ਇਸ ਤੋਂ ਰੋਕਿਆ ਨਾ ਜਾਵੇ। ਆਰਕਾਈਵ ਫਾਈਲਾਂ ਦਾ ਕ੍ਰਮ ਅਤੇ ਬਦਲਾਅ ਦੇ ਸਮੇਂ ਦਰਜ ਕਰਦੇ ਹਨ, ਲਿੰਕਰ ਸੰਦ-ਚੇਨ ਦੇ ਸੰਸਕਰਣ ਨਾਲ ਆਪਣਾ ਆਉਟਪੁੱਟ ਬਦਲਦੇ ਹਨ, ਅਤੇ ਸਮਾਨਾਂਤਰ ਕੰਪਰੈਸ਼ਨ ਬਲਾਕਾਂ ਨੂੰ ਮੁੜ-ਕ੍ਰਮਬੱਧ ਕਰ ਸਕਦਾ ਹੈ। ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੋਈ ਵੀ ਇੱਕ ਇੱਕੋ ਸਰੋਤ ਦੇ ਦੋ ਬਿਲਡਾਂ ਨੂੰ ਬਾਈਟਾਂ ਵਿੱਚ ਵੱਖਰਾ ਕਰ ਦਿੰਦਾ ਹੈ, ਜਦ ਕਿ ਕੋਈ ਭਿਆਨਕ ਗੱਲ ਨਹੀਂ ਹੁੰਦੀ। ਨਿਰਧਾਰਕਤਾ ਬਿਲਡ ਵਿੱਚ ਇੰਜੀਨੀਅਰਿੰਗ ਰਾਹੀਂ ਪਾਈ ਜਾਂਦੀ ਹੈ, ਇਹ ਕਦੇ ਵੀ ਡਿਫਾਲਟ ਰੂਪ ਵਿੱਚ ਵਿਰਾਸਤ ਵਿੱਚ ਨਹੀਂ ਮਿਲਦੀ।
ਜੋ ਪ੍ਰੋਜੈਕਟ ਦੁਬਾਰਾ ਪੈਦਾ ਕਰਨ ਦਾ ਦਾਅਵਾ ਕਰਦਾ ਹੈ, ਉਸ ਨੂੰ ਲਾਗੂ ਕੀਤੇ ਸਧਾਰਣੀਕਰਨ ਦਾ ਨਾਮ ਦੇਣਾ ਚਾਹੀਦਾ ਹੈ: ਸਥਿਰ ਟਾਈਮਸਟੈਂਪ, ਮੈਪ ਕੀਤੇ ਪਾਥ, ਛਾਂਟੀਆਂ ਆਰਕਾਈਵ ਐਂਟਰੀਆਂ, ਸਥਿਰ ਕੰਪਾਈਲਰ ਅਤੇ ਨਿਰਭਰਤਾ ਸੰਸਕਰਣ। ਉਸ ਸੂਚੀ ਤੋਂ ਬਿਨਾਂ ਬੇਮੇਲ ਦੀ ਵਿਆਖਿਆ ਨਹੀਂ ਹੋ ਸਕਦੀ, ਕਿਉਂਕਿ ਜਾਇਜ਼ ਭਿੰਨਤਾ ਦਾ ਖੇਤਰ ਅਣ-ਪਰਿਭਾਸ਼ਿਤ ਹੈ।
ਐਲਾਨੇ ਇਨਪੁੱਟ ਵੀ ਪੂਰੇ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ। ਟੈਗ ਤੋਂ ਬਿਨਾਂ ਰਿਪੋਜ਼ਟਰੀ URL ਕੋਈ ਸੋਧ ਨਹੀਂ, hash ਤੋਂ ਬਿਨਾਂ ਲਾਕਫਾਈਲ ਨਿਰਭਰਤਾ-ਸਮੂਹ ਨਹੀਂ, ਅਤੇ ਰਨਟਾਈਮ ਤੇ ਸੰਦ ਡਾਊਨਲੋਡ ਕਰਨ ਵਾਲੀ ਬਿਲਡ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਅਜਿਹਾ ਇਨਪੁੱਟ ਹੁੰਦਾ ਹੈ ਜਿਸ ਨੂੰ ਕੋਈ ਸਥਿਰ ਨਹੀਂ ਕਰ ਸਕਦਾ। ਹਰ ਖਾਲੀ ਥਾਂ ਬਾਅਦ ਵਿੱਚ ਫ਼ਰਕ ਬਣ ਜਾਂਦੀ ਹੈ। ਕੁਝ ਵੀ ਤੁਲਨਾ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਸੂਚੀ ਪੂਰੀ ਕਰੋ, ਕਿਉਂਕਿ ਅਧੂਰੀ ਸੂਚੀ ਅਰਥਪੂਰਨ ਢੰਗ ਨਾਲ ਫੇਲ੍ਹ ਨਹੀਂ ਹੋ ਸਕਦੀ।
| Input | How it drifts | What pins it |
|---|---|---|
| Source | Branch moves after release | Commit hash in the build metadata |
| Toolchain | Compiler patch level differs | Container image digest |
| Packaging | Archive order and mtimes vary | Normalised archive settings |
ਤੁਲਨਾ ਅਸਲ ਵਿੱਚ ਕੀ ਜਾਂਚਦੀ ਹੈ
ਸੁਤੰਤਰ ਧਿਰ ਐਲਾਨੇ ਵਾਤਾਵਰਣ ਵਿੱਚ ਦੁਬਾਰਾ ਬਣਾਉਂਦੀ ਹੈ ਅਤੇ ਆਉਟਪੁੱਟ ਦੀ ਪ੍ਰਕਾਸ਼ਿਤ ਆਰਟੀਫੈਕਟ ਨਾਲ ਤੁਲਨਾ ਕਰਦੀ ਹੈ। ਬਿੱਟ-ਸਮਾਨਤਾ ਮਜ਼ਬੂਤ ਰੂਪ ਹੈ; ਦਰਜ ਕੀਤਾ ਫ਼ਰਕ ਉਲਟਾ ਕੇ ਨਤੀਜੇ ਫਿਰ ਮਿਲਣ ਵਾਲਾ ਦਸਤਾਵੇਜ਼ੀ ਸਧਾਰਣੀਕਰਨ ਕਦਮ ਕਮਜ਼ੋਰ ਪਰ ਫਿਰ ਵੀ ਲਾਭਦਾਇਕ ਰੂਪ ਹੈ।
ਤੁਲਨਾ ਬਾਈਨਰੀ ਬਾਰੇ ਹੈ। ਦਸਤਖ਼ਤ ਕਿਸੇ ਹੋਰ ਸਵਾਲ ਦਾ ਜਵਾਬ ਦਿੰਦਾ ਹੈ: ਇਹ ਰਿਲੀਜ਼ ਨੂੰ ਚਾਬੀ ਨਾਲ ਅਤੇ ਚਾਬੀ ਨੂੰ ਪਛਾਣ ਨਾਲ ਜੋੜਦਾ ਹੈ, ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਕੋਲ ਉਨ੍ਹਾਂ ਆਰਟੀਫੈਕਟਾਂ ਤੇ ਜਾਇਜ਼ ਦਸਤਖ਼ਤ ਹੋ ਸਕਦੇ ਹਨ ਜਿਨ੍ਹਾਂ ਨੂੰ ਕਿਸੇ ਨੇ ਦੁਬਾਰਾ ਨਹੀਂ ਬਣਾਇਆ। ਦੋਵੇਂ ਜਾਂਚਾਂ ਇੱਕ-ਦੂਜੇ ਨੂੰ ਬਦਲਣ ਦੀ ਥਾਂ ਉੱਤੇ ਉੱਤੇ ਜੁੜਦੀਆਂ ਹਨ।
sha256sum wireguard-installer.msi gpg --verify wireguard-installer.msi.sig wireguard-installer.msi
ਇੰਸਟਾਲ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਦੋਵੇਂ ਚਲਾਓ, ਅਤੇ ਉਸੇ ਰਿਲੀਜ਼ ਅਤੇ ਪਲੇਟਫਾਰਮ ਲਈ ਪ੍ਰਕਾਸ਼ਿਤ hash ਨਾਲ hash ਦੀ ਤੁਲਨਾ ਕਰੋ। ਵਿਕਰੇਤਾ ਦੇ ਪੰਨੇ ਨਾਲ ਮਿਲਦਾ hash ਸਾਬਤ ਕਰਦਾ ਹੈ ਕਿ ਡਾਊਨਲੋਡ ਅਖੰਡ ਪਹੁੰਚਿਆ; ਵਿਕਰੇਤਾ ਦੇ ਪ੍ਰਕਾਸ਼ਿਤ hash ਨਾਲ ਮਿਲਦੀ ਮੁੜ-ਨਿਰਮਿਤ ਬਾਈਨਰੀ ਇਸ ਬਾਰੇ ਵਧੇਰੇ ਮਜ਼ਬੂਤ ਗੱਲ ਸਾਬਤ ਕਰਦੀ ਹੈ ਕਿ ਇਹ ਕਿਵੇਂ ਬਣੀ।
ਬੇਮੇਲ ਛੇੜਛਾੜ ਦਾ ਸਬੂਤ ਕਿਉਂ ਨਹੀਂ
ਬਹੁਤੇ ਬੇਮੇਲ ਉਸ ਇਨਪੁੱਟ ਤੋਂ ਆਉਂਦੇ ਹਨ ਜਿਸ ਨੂੰ ਕਿਸੇ ਨੇ ਨਿਯੰਤਰਿਤ ਨਹੀਂ ਕੀਤਾ। ਵੱਖਰਾ ਕੰਪਾਈਲਰ ਪੈਚ ਰਿਲੀਜ਼, ਡੀਬੱਗ ਚਿੰਨ੍ਹਾਂ ਵਿੱਚ ਲੀਕ ਹੋਇਆ ਬਿਲਡ ਪਾਥ, ਕ੍ਰਮ ਬਦਲਣ ਵਾਲਾ ਲੋਕੇਲ, ਜਾਂ ਤੁਲਨਾ ਤੋਂ ਬਾਅਦ ਲਾਗੂ ਕੀਤਾ ਪੈਕੇਜਿੰਗ ਕਦਮ — ਸਭ ਇਮਾਨਦਾਰ ਕੰਮ ਤੋਂ ਵੱਖਰਾ hash ਪੈਦਾ ਕਰਦੇ ਹਨ।
ਇਸ ਲਈ ਬੇਮੇਲ ਨੂੰ ਕਹਾਣੀ ਬਣਨ ਤੋਂ ਪਹਿਲਾਂ ਦਸਤਾਵੇਜ਼ੀ ਪ੍ਰਕਿਰਿਆ ਦੇ ਸਾਹਮਣੇ ਪੜ੍ਹਨਾ ਚਾਹੀਦਾ ਹੈ। ਜੇ ਪ੍ਰਕਿਰਿਆ ਸਭ ਕੁਝ ਸਥਿਰ ਕਰਦੀ ਹੈ ਅਤੇ ਫ਼ਰਕ ਅਣ-ਵਿਆਖਿਅਤ ਰਹਿੰਦਾ ਹੈ, ਤਾਂ ਇਹ ਪ੍ਰੋਜੈਕਟ ਸਾਹਮਣੇ ਰੱਖਣ ਯੋਗ ਸੱਚੀ ਖੋਜ ਹੈ। ਜੇ ਪ੍ਰਕਿਰਿਆ ਪੈਕੇਜਿੰਗ ਬਾਰੇ ਚੁੱਪ ਹੈ, ਤਾਂ ਫ਼ਰਕ ਪੂਰੀ ਤਰ੍ਹਾਂ ਉਮੀਦਯੋਗ ਹੋ ਸਕਦਾ ਹੈ।
ਇੱਥੇ ਸਮਮਿਤੀ ਵੀ ਮਹੱਤਵਪੂਰਨ ਹੈ: ਮੇਲ ਸਾਬਤ ਨਹੀਂ ਕਰਦਾ ਕਿ ਸਰੋਤ ਦੋਸ਼-ਰਹਿਤ ਹੈ, ਸਿਰਫ਼ ਇਹ ਕਿ ਬਾਈਨਰੀ ਉਸ ਨਾਲ ਮੇਲ ਖਾਂਦੀ ਹੈ। ਚੰਗੀ ਤਰ੍ਹਾਂ ਆਡਿਟ ਕੀਤਾ ਕੋਡ ਅਤੇ ਦੁਬਾਰਾ ਪੈਦਾ ਕਰਨ ਯੋਗ ਕੋਡ ਵੱਖਰੇ ਗੁਣ ਹਨ, ਅਤੇ ਪ੍ਰੋਜੈਕਟ ਇੱਕ ਤੋਂ ਬਿਨਾਂ ਦੂਜਾ ਰੱਖ ਸਕਦਾ ਹੈ।
ਦਾਅਵਾ ਐਪ ਪਿੱਛੇ ਦੀ ਸੇਵਾ ਬਾਰੇ ਕੀ ਕਹਿੰਦਾ ਹੈ
ਕਲਾਇੰਟ ਤੁਹਾਡੇ ਡਿਵਾਈਸ ਤੇ ਇੱਕ ਪ੍ਰੋਗਰਾਮ ਹੈ; ਸੇਵਾ ਕਿਤੇ ਹੋਰ ਦੇ ਸਰਵਰ, ਖਾਤਾ ਪ੍ਰਣਾਲੀਆਂ ਅਤੇ ਰੱਖ-ਰਖਾਅ ਨੀਤੀਆਂ ਹੈ। ਦੁਬਾਰਾ ਪੈਦਾ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਪਹਿਲੇ ਨੂੰ ਸੀਮਿਤ ਕਰਦੀ ਹੈ ਅਤੇ ਦੂਜੇ ਬਾਰੇ ਕੁਝ ਨਹੀਂ ਕਹਿੰਦੀ, ਇੰਸਟਾਲਰ ਕਿੰਨੀ ਵੀ ਸਾਵਧਾਨੀ ਨਾਲ ਪ੍ਰਮਾਣਿਤ ਹੋਵੇ।
ਐਂਡਪੁਆਇੰਟ ਸੰਰਚਨਾ ਇੰਸਟਾਲ ਤੋਂ ਬਾਅਦ ਵੀ ਬਦਲ ਸਕਦੀ ਹੈ, ਦੂਰਸਥ ਸੈਟਿੰਗਾਂ ਜਾਂ ਪ੍ਰਦਾਤਾ ਵੱਲੋਂ ਨਿਯੰਤਰਿਤ ਪ੍ਰੋਫਾਈਲ ਰਾਹੀਂ। ਉਹ ਬਦਲਾਅ ਨੈੱਟਵਰਕ ਰਾਹੀਂ ਆਉਂਦੇ ਹਨ ਅਤੇ ਜੁੜਨ ਤੋਂ ਪਹਿਲਾਂ ਤੁਹਾਡੇ ਵੱਲੋਂ ਗਿਣੇ ਕਿਸੇ ਵੀ hash ਵਿੱਚ ਸ਼ਾਮਲ ਨਹੀਂ ਹੁੰਦੇ।
ਦਾਅਵੇ ਨੂੰ ਉਸ ਦੇ ਅਸਲ ਦਾਇਰੇ ਵਿੱਚ ਪੜ੍ਹੋ, ਫਿਰ ਨਾਲ ਵਾਲੇ ਸਵਾਲ ਨੂੰ ਵੱਖਰੇ ਤੌਰ ਤੇ ਜਾਂਚੋ: ਪ੍ਰਦਾਤਾ ਕੀ ਦਰਜ ਕਰਦਾ ਹੈ, ਅਤੇ ਕਿਸ ਅਧਿਕਾਰ-ਖੇਤਰ ਹੇਠ ਬੇਨਤੀਆਂ ਦਾ ਜਵਾਬ ਦਿੰਦਾ ਹੈ। ਪ੍ਰਮਾਣਿਤ ਬਾਈਨਰੀ ਅਤੇ ਅਪ੍ਰਮਾਣਿਤ ਸੇਵਾ ਇਕੱਠੇ ਰਹਿ ਸਕਦੇ ਹਨ, ਅਤੇ ਸਪਲਾਈ ਚੇਨ ਜਾਂਚ ਠੀਕ ਕਰਨ ਲਈ ਨਹੀਂ, ਦਿਸਣਯੋਗ ਬਣਾਉਣ ਲਈ ਬਣਾਈ ਗਈ ਹੈ — ਠੀਕ ਉਹੀ ਸਥਿਤੀ।