VPN માં nonce શું છે, અને તેનો પુનઃઉપયોગ ટનલને કેમ તોડે છે
nonce એ દરેક સંદેશ માટેનું મૂલ્ય છે જે એક કી હેઠળ ક્યારેય પુનરાવર્તિત ન થવું જોઈએ, અને તે સામાન્ય રીતે ખુલ્લામાં મુસાફરી કરે છે. તેને હાથથી સંપાદિત કરવી એ ટાળવાની ભૂલ છે.
મોટાભાગના લોકો VPN પ્રોફાઇલમાં nonce શબ્દ જુએ છે અને માને છે કે તે પીઅર વચ્ચે કોપી કરવાનું બીજું શેર્ડ સિક્રેટ છે. એવું નથી. nonce એ એક મૂલ્ય છે જે સમાન કી હેઠળ ક્યારેય પુનરાવર્તિત ન થવું જોઈએ, અને મોટાભાગના nonce-આધારિત એન્ક્રિપ્શનમાં તે ખુલ્લામાં મુસાફરી કરે છે. મૂંઝવણ ત્યાં સુધી નિરુપદ્રવી રહે છે જ્યાં સુધી કોઈ તેને હાથથી સંપાદિત કરે, અને ત્યાંથી જ ખરી તૂટ શરૂ થાય છે.
nonce ખરેખર ક્યાંથી આવે છે
પ્રમાણિત એન્ક્રિપ્શનને કી હેઠળ એન્ક્રિપ્ટ થયેલા દરેક સંદેશ માટે અલગ nonceની જરૂર પડે છે. પ્રોટોકોલ આ આવશ્યકતાને જુદી જુદી રીતે પૂરી કરે છે: એકરૂપ રીતે વધતું કાઉન્ટર, પેકેટ ઓળખકર્તા સાથે જોડાયેલું સોલ્ટ, અથવા પૂરતું લાંબું રેન્ડમ મૂલ્ય. IKEv2 પ્રારંભિક વિનિમય દરમિયાન nonceનું વિનિમય કરે છે, અને તે રહસ્યો નહીં પણ કી ડેરિવેશન માટે જાહેર ઇનપુટ છે.
અનન્યતા માળખાકીય અથવા સંભાવનાત્મક હોઈ શકે છે. કાઉન્ટર રેપ ન થાય ત્યાં સુધી પુનરાવર્તિત થઈ શકતું નથી, તેથી પ્રોટોકોલ તેના ઘણા પહેલાં કી રિન્યુઅલ પોઈન્ટ વ્યાખ્યાયિત કરે છે. રેન્ડમ મૂલ્ય પૂરતા બિટ્સ પર આધાર રાખે છે જેથી સંદેશ મર્યાદામાં ટકરાવ અસંભવિત હોય, જે જુદી નિષ્ફળતાની રીત સાથેની જુદી દલીલ છે. પ્રોટોકોલ દસ્તાવેજીકરણ જણાવે છે કે કઈ પદ્ધતિ લાગુ પડે છે, અને બંને ફક્ત ત્યારે જ સુરક્ષિત છે જ્યારે જાહેર કરેલી મર્યાદાનું પાલન થાય.
| Design | Where uniqueness comes from | Exhaustion is handled by |
|---|---|---|
| AES-GCM records | An IV, typically a counter | Rekey before the counter wraps |
| ChaCha20-Poly1305 | A 96-bit nonce from a counter or generator | A message limit per key |
| WireGuard | A per-key 64-bit counter | Rekey at a message cap |
| OpenVPN AEAD | Packet identifier plus implicit key material | Rekey on the packet-id limit |
| IKEv2 | Fresh nonces per exchange | A new security association |
પુનઃઉપયોગની ખરી કિંમત
એક કી હેઠળ nonceનો પુનઃઉપયોગ કરવો એ નાની કાર્યક્ષમતાની બાબત નથી. GCM સાથે, એક IV વહેંચતા બે સંદેશા નિરીક્ષકને પ્રમાણીકરણ કી પુનઃપ્રાપ્ત કરવા અને બે સ્પષ્ટ લખાણોના વિશિષ્ટ-અથવા ગણતરી કરવા દે છે. સ્ટ્રીમ-આધારિત રચનાઓ એ જ રીતે કીસ્ટ્રીમનો પુનઃઉપયોગ કરે છે, જે સાયફરટેક્સ્ટને રહસ્યને બદલે કોયડામાં ફેરવે છે.
તેથી જ અમલીકરણો કાઉન્ટર રેપ થાય તે પહેલાં કી રિન્યુ કરે છે, અને તેથી જ તેમની સ્થિતિ અનિશ્ચિત હોય ત્યારે તેઓ ચાલુ રાખવાને બદલે અટકી જાય છે. કાઉન્ટર રીસેટ કરતું રીબૂટ જ્યારે પીઅર હજુ જૂની કી ધરાવે છે, અથવા સત્રની મધ્યમાં લીધેલા સ્નેપશોટમાંથી પુનઃસ્થાપિત વર્ચ્યુઅલ મશીન, તે બરાબર એ જ પરિસ્થિતિ છે જે મર્યાદાઓ અટકાવવા માટે અસ્તિત્વમાં છે. કોઈ હુમલાખોરની જરૂર નથી; સામાન્ય કામગીરી પૂરતી છે.
હાથથી સંપાદન કેમ ખોટો ઉપાય છે
કાઉન્ટર, સોલ્ટ અને પેકેટ ઓળખકર્તા બંને છેડા વચ્ચે વહેંચાયેલી સ્થિતિ મશીનો છે. એક બાજુ બદલવાથી બીજી બાજુ અસિંક્રોનાઇઝ થાય છે, અને ટનલ રૂટિંગ સમસ્યા જેવી રીતે નિષ્ફળ જાય છે. સમર્થિત લિવર તાજી કી વિનિમય છે, જે એક સાથે બંને છેડાની સ્થિતિ રીસેટ કરે છે.
પાસવર્ડ અને nonce પણ જુદી ભૂમિકાઓ ભજવે છે. પાસવર્ડ કી ડેરિવેશન માટેનું ગુપ્ત ઇનપુટ છે; nonce દરેક સંદેશ માટેનું જાહેર ઇનપુટ છે. nonce લેબલવાળું પ્રોફાઇલ ફીલ્ડ જે લાંબું રહસ્ય માંગે છે તે સામાન્ય રીતે બીજા નામ હેઠળની સ્થિર કી અથવા પૂર્વ-વહેંચાયેલું રહસ્ય હોય છે, તેથી ધારવાને બદલે તે ફીલ્ડનું દસ્તાવેજીકરણ વાંચો.
જ્યારે સલાહ nonce હેન્ડલિંગ વિશે હોય, ત્યારે સુધારો જાળવણીકર્તાનું સુધારેલું સંસ્કરણ છે, અલગ સાયફર કે ટૂંકી કી નહીં. nonce શબ્દ ટાળવા સાયફર બદલવો સમસ્યાને ઉકેલવાને બદલે ખસેડે છે.
અનુમાન કર્યા વિના ચેતવણી વાંચવી
કાઉન્ટર કે nonce વિશેની લોગ લાઇન સામાન્ય રીતે હુમલાને બદલે ગુમાવેલી સ્થિતિનું વર્ણન કરે છે. તપાસો કે એક પીઅર ફરી શરૂ થયું છે કે નહીં, ક્લોન કરેલા વર્ચ્યુઅલ મશીને એ જ ઓળખનો પુનઃઉપયોગ કર્યો છે કે નહીં, અને બંને છેડા કી રિન્યુઅલ સેટિંગ્સ પર સહમત છે કે નહીં. પછી નવું સત્ર સ્થાપિત કરો અને જુઓ કે સંદેશ પાછો આવે છે કે નહીં.
નિદાનને અસંબંધિત નિષ્ફળતાઓથી અલગ રાખો. લોડ ન થતું પૃષ્ઠ, અથવા લૂપમાં ફરતું ક્રેડેન્શિયલ પ્રોમ્પ્ટ, nonce પુનઃઉપયોગનો પુરાવો નથી, અને તેને એમ ગણવાથી તમે ક્રિપ્ટોગ્રાફિક સ્તરે જાઓ છો જ્યારે સમસ્યા તેની ઉપર છે.
સામાન્ય ઉપયોગ માટે, સુરક્ષિત નિયમ ટૂંકો છે: અમલીકરણને nonce સંભાળવા દો, બંને છેડાને સમર્થિત સંસ્કરણો પર રાખો, અને કોઈપણ સ્થિતિ રીસેટને મૂલ્ય સંપાદિત કરવાને બદલે કી રિન્યુ કરવાનું કારણ ગણો. જો પ્રોફાઇલ ફીલ્ડ વેન્ડરના દસ્તાવેજીકરણમાં ન હોય, તો તેના માટે મૂલ્ય શોધી ન કાઢો. ટનલ સુધારવી એ જાણવાથી શરૂ થાય છે કે તમે કયું સ્તર જોઈ રહ્યા છો.