સામગ્રી પર જાઓ
Nymchat પર પાછા જાઓ

જ્ઞાનનો આધાર હૂડ હેઠળ

બિલ્ડની ચકાસણી કરી રહ્યા છીએ

ઓપન સોર્સ માત્ર ત્યારે જ મદદ કરે છે જો તમે જે કોડ ચલાવી રહ્યા છો તે કોડ છે પ્રકાશિત. Nymchat નિર્ધારિત રીતે બનાવવામાં આવ્યું છે જેથી તમે તેને અંદરથી જાતે જ ચકાસી શકો એપ્લિકેશન અથવા ટર્મિનલમાંથી.

પ્રજનનક્ષમ બિલ્ડ્સ

એપનું નિર્માણ એ ઉત્સર્જન કરે છે build-manifest.json સ્ત્રોત પ્રતિબદ્ધ, એ દરેક સર્વ કરેલ HTML, JavaScript અને CSS એસેટ અને એક સિંગલનો SHA-256 હેશ bundleHash તે સમગ્ર એસેટ સેટ ઉપર.

આઉટપુટ માત્ર સ્ત્રોત સામગ્રી પર આધાર રાખે છે — રેકોર્ડ બિલ્ડ સમય પણ છે બિલ્ડ ચાલ્યાની ક્ષણને બદલે કમિટનો ટાઈમસ્ટેમ્પ — જેથી કોઈપણ તે જ પુનઃબીલ્ડ કરે કમીટ બાઈટ-સમાન ફાઈલો મેળવે છે અને તે જ bundleHash.

GitHub એક્શન પછી દરેક કમિટને સ્વતંત્ર રીતે ફરીથી બનાવે છે અને બિલ્ડ-પ્રોવનન્સ પર સંકેત આપે છે હેશ અને મેનિફેસ્ટ માટે પ્રમાણપત્રો, તેથી ત્યાં એક સહી કરેલ રેકોર્ડ છે bundleHash રીપોઝીટરીમાં કમિટ કરવા માટે, સિવાયના કંઈક દ્વારા ઉત્પાદિત જમાવટ

વિશે સંવાદ શું તપાસે છે

વિશે હેડરમાં ચેક લાઇવ ચાલે છે, તમારા બ્રાઉઝરમાં.

Nymchat અબાઉટ ડાયલોગ, વર્ઝન દર્શાવે છે, અખંડિતતા અને વોરંટ કેનેરી સ્ટેટસ દર્શાવે છે.
આ વિશે સંવાદ: સંસ્કરણ, બિલ્ડ અખંડિતતા, વોરંટ કેનેરી અને વિકાસકર્તાને સીધી રેખા.

તે દરેક એસેટને ફરીથી મેળવે છે જે પૃષ્ઠ વાસ્તવમાં ચાલી રહ્યું છે, તેને વેબ ક્રિપ્ટો API સાથે હેશ કરે છે અને મેનિફેસ્ટ સામે સરખાવે છે. પછી - અને આ તે ભાગ છે જે મહત્વપૂર્ણ છે - તે ની પુનઃ ગણતરી કરે છે bundleHash હેશમાંથી તે માત્ર ગણતરી કરેલ છે, થી નહીં જે પણ મેનિફેસ્ટ દાવો કરે છે, અને તે રીપોઝીટરીના હસ્તાક્ષરિત પ્રમાણપત્રોમાં દેખાય છે GitHub API દ્વારા.

આ તે છે જે જમાવટને પોતાને માટે ખાતરી આપતા અટકાવે છે: સંશોધિત ફાઇલોને એકસાથે સેવા આપવી મેચિંગ મેનિફેસ્ટ હજુ પણ નિષ્ફળ જાય છે, કારણ કે પુનઃગણિત હેશ પાસે કોઈ પ્રમાણીકરણ નથી.

સ્થિતિઅર્થ
&તપાસ; ચકાસાયેલ સત્તાવાર એપ્લિકેશન (n/n)દરેક સંપત્તિ મેળ ખાય છે, પુનઃગણિત બંડલ હેશ રિપોઝીટરી દ્વારા પ્રમાણિત કરવામાં આવે છે, અને પૃષ્ઠ સત્તાવાર ડોમેનમાંથી પીરસવામાં આવે છે.
⚠ ચકાસાયેલ બિલ્ડ · સત્તાવાર એપ્લિકેશન નથીકોડ અસલી અને પ્રમાણિત છે, પરંતુ આ બીજા ડોમેન પરનો અરીસો છે. ચકાસણી નિષ્ફળ થયા વિના અરીસો આ ચેતવણીને દૂર કરી શકતો નથી.
✗ મેળ ખાતી નથીસંપત્તિ મેનિફેસ્ટ જે કહે છે તેની સાથે હેશ થતી નથી.
✗ બિનસત્તાવાર બિલ્ડપુનઃગણિત બંડલ હેશ પાસે રીપોઝીટરીમાંથી કોઈ પ્રમાણીકરણ નથી - એક સ્વ-નિર્મિત મેનિફેસ્ટ.
⚠ ઉત્પત્તિ અગમ્યGitHub API સુધી પહોંચી શકાયું નથી, તેથી પ્રમાણીકરણ કોઈપણ રીતે તપાસી શકાયું નથી.

તે જાતે ચકાસી રહ્યા છીએ

સંવાદ નામો વિશે કમિટ ફરીથી બનાવો અને સરખામણી કરો:

git clone https://github.com/Spl0itable/NYM
cd NYM
git checkout <commit shown in the About dialog>
npm ci
npm run build   # prints "Build hash: <bundleHash>"

મુદ્રિત હેશ એ અબાઉટ ડાયલોગ અને તે કમિટમાંના એક સાથે મેળ ખાતી હોવી જોઈએ બિલ્ડ-પ્રોવનન્સ રન સારાંશ. તમે GitHub CLI સાથે સીધા હસ્તાક્ષર પણ ચકાસી શકો છો:

gh attestation verify dist/build-manifest.json --repo Spl0itable/NYM

Android અને iOS એપ

ઉપરોક્ત ચેક વેબ-એપ ચેક છે, અને તેનું કારણ સ્પષ્ટપણે જણાવવા યોગ્ય છે: એક મૂળ એપ્લિકેશન પોતાની સાથે સમાન વસ્તુ કરી શકતા નથી. તમારા ફોન પર જે ચાલે છે તે સંકલિત મશીન કોડ છે, નહીં રીપોઝીટરીમાં સ્ત્રોત, અને ઉપકરણ પર એપ્લિકેશન ગણતરી કરી શકે તેવું કંઈપણ એક સાથે સંબંધિત નથી અન્ય

Android આગામી શ્રેષ્ઠ વસ્તુ કરી શકે છે. ઇન્સ્ટોલ કરેલ .apk એપ્લિકેશન વાંચી શકે તેવી ફાઇલ છે અને હેશ, અને દરેક પ્રકાશિત રીલીઝની હેશ પહેલાથી જ સાર્વજનિક છે: પર પ્રકાશન Zapstore APK ના SHA-256 અને તેના હસ્તાક્ષર પ્રમાણપત્રનું SHA-256 ધરાવતું Nostr ઇવેન્ટ પર સહી કરે છે. તેથી ધ એન્ડ્રોઇડ વિશે સંવાદ એ APKને હેશ કરે છે જેનાથી તે ચાલી રહ્યું છે, તે સહી કરેલું મેળવે છે ઇવેન્ટ્સ, ફક્ત ડેવલપરની કી દ્વારા હસ્તાક્ષરિતને જ રાખે છે અને સરખામણી કરે છે. તે બે બતાવે છે હેશ પણ છે, જેથી તમે ઉપકરણની તપાસનું પુનરાવર્તન કરી શકો: પ્રકાશિત APK ડાઉનલોડ કરો, ચલાવો sha256sum તેના પર, અને તે જ ઘટના જાતે જુઓ.

Google Play પરથી ઇન્સ્ટોલ કરેલી એપને આ રીતે ચેક કરી શકાતી નથી, અને તે કંઈપણ ખોટું છે તેનો સંકેત નથી. ગૂગલ દરેક અપલોડને તેની પોતાની કી સાથે ફરીથી સાઇન કરે છે અને દરેક ઉપકરણ માટે એક અલગ APK બનાવે છે, જેથી તમારા ફોન પર જે આવે છે તે વિકાસકર્તાએ બનાવેલી ફાઇલ નથી અને તેનું હેશ પ્રકાશિત કરી શકાય તેવી કોઈ વસ્તુ સાથે મેળ ખાતું નથી. એપ્લિકેશન પ્લે ઇન્સ્ટોલને ઓળખે છે અને નિષ્ફળતાની જાણ કરવાને બદલે કહે છે. બિલ્ડ જાતે તપાસવા માટે, સીધા પ્રકાશિત APK ઇન્સ્ટોલ કરો.

iOS બિલકુલ ચેક કરી શકાતું નથી. Apple દરેક ડાઉનલોડને એન્ક્રિપ્ટ કરે છે અને ફરીથી સાઇન કરે છે વ્યક્તિગત રીતે, તેથી તમારા iPhone પર ગણતરી કરેલ હેશ તમારા iPhone માટે અનન્ય છે અને કંઈપણ મેળ ખાતું નથી ગમે ત્યાં પ્રકાશિત. અબાઉટ ડાયલોગ આશ્વાસન આપવાને બદલે આ સ્પષ્ટપણે કહે છે સ્થિતિ જેનો કોઈ અર્થ નથી. જો તમે Nymchat ઇચ્છતા હોવ તો તમે Apple હાર્ડવેર પર ચકાસી શકો છો, વેબનો ઉપયોગ કરો એપ્લિકેશન, જે તે ચાલી રહી છે તે દરેક ફાઇલને તપાસે છે.

આમાંથી શું સાબિત થતું નથી

એપ પોતે જ ચાલે છે તે ચેક એ એપ પ્રમાણિક છે તે સાબિત કરી શકતું નથી - જેણે પણ તેમાં ફેરફાર કર્યો છે ચેક પણ દૂર કરી શકે છે. તે શું સાબિત કરે છે તે સામાન્ય કેસ છે: કે તમે નકલ કરો છો ઇન્સ્ટોલ કરેલી એ નકલ છે જે પ્રકાશિત કરવામાં આવી હતી. તે હોવા વર્થ છે કારણ કે તેનું મૂલ્ય છે સરખામણીઓ સાર્વજનિક છે, તેથી તમારા સિવાય અન્ય કોઈ તેમને તપાસી શકે છે અને અસંમત થઈ શકે છે.

વોરંટ કેનેરી

વોરંટ કેનેરી એ એક નિવેદન છે, જે નિશ્ચિત સમયપત્રક પર પ્રકાશિત થાય છે, જે વિકાસકર્તા પાસે છે નથી એક ગુપ્ત સરકારી આદેશ પ્રાપ્ત થયો છે જેને તેઓ જાહેર કરવા માટે પ્રતિબંધિત છે — એ રાષ્ટ્રીય સુરક્ષા પત્ર, FISA ઓર્ડર. વિકાસકર્તાને મૌન રહેવા માટે મજબૂર કરી શકાય છે આવો આદેશ, પરંતુ જૂઠું બોલવાની ફરજ પાડી શકાતી નથી, તેથી કેનેરી વાસી થઈ રહી છે અથવા અદૃશ્ય થઈ રહી છે પોતે જ સિગ્નલ.

તે રહે છે canary.json રીપોઝીટરીના રુટ પર અને સીધું મેળવવામાં આવે છે GitHub માંથી, તેથી તેનો ઈતિહાસ તૈનાત કરેલ સાઇટ જે પણ કહે છે તેનાથી સ્વતંત્ર રીતે ઓડિટ કરી શકાય છે. અબાઉટ ડાયલોગ તેને કલર-કોડ કરે છે:

રંગઅર્થ
લીલા - બધું સ્પષ્ટસહી કરેલ, વર્તમાન અને સહી વિકાસકર્તાની કી સાથે મેળ ખાય છે. કોઈ ગુપ્ત આદેશ મળ્યો નથી.
પીળો - મુદતવીતી, અથવા બધું સ્પષ્ટ નથીતે તેની જણાવેલ તારીખ દ્વારા તાજું કરવામાં આવ્યું ન હતું, અથવા તેના allClear ધ્વજ ખોટો છે. મૌન ઓર્ડરને નકારી શકાય નહીં.
લાલ - અમાન્ય હસ્તાક્ષર, અથવા ગયાસહી વિકાસકર્તાની કી સાથે મેળ ખાતી નથી, અથવા ફાઇલ સંપૂર્ણપણે દૂર કરવામાં આવી છે. આને ગંભીર ચેતવણી તરીકે માનો.

તાજગી એન્કર

હસ્તાક્ષરિત કેનેરી હસ્તાક્ષર કરવાની ક્ષણે નવીનતમ બિટકોઇન બ્લોક ઊંચાઈ અને હેશને એમ્બેડ કરે છે. બ્લોક અસ્તિત્વમાં છે તે પહેલાં તે હેશ જાણી શકાયું ન હતું, જે સાબિત કરે છે કે કેનેરી હતી હસ્તાક્ષર કર્યા પછી જથ્થાબંધ મહિનાઓ અગાઉ પૂર્વ હસ્તાક્ષર કરવાને બદલે સમયનો ચોક્કસ મુદ્દો. વિશે સંવાદ એન્કરને બ્લોક એક્સપ્લોરર સાથે લિંક કરે છે જેથી તમે તેને ચકાસી શકો.