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

લક્ષણ: ધીમું એ એન્ક્રિપ્ટેડ પ્રોફાઇલ નથી

ધારો કે એક જૂનું પરીક્ષણ AEAD સાઇફરની સરખામણી „એન્ક્રિપ્શન વગર“ મોડ સાથે કરે છે જે હજી પણ દરેક પેકેટ માટે અલગ પ્રમાણીકરણ કોડ ગણે છે. બીજું પ્રોફાઇલ પેલોડનો સમાવિષ્ટ છુપાવે છે પણ પેકેટ દીઠ હેશ રાખે છે, અને તે હેશ માટે પ્રવેગ ન હોય તેવા પ્રોસેસર પર તે સંકલિત રચના કરતાં વધુ ખર્ચી શકે છે જેને તેણે હરાવવાનું હતું.

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

આ આખી સમજૂતી છે, અને તેને કોઈ આદિમ પદ્ધતિ સાર્વત્રિક રીતે ઝડપી છે તેવા દાવાની જરૂર નથી. બંને ઝડપી હોઈ શકે, બંને ધીમા હોઈ શકે, અને ક્રમ મશીન અને કોડ પર આધાર રાખે છે.

લેબલ નહીં, ક્રિયાઓ ગણો

AEAD રચના, જેમ RFC 5116 વર્ણવે છે, અમલીકરણને એક જ ઇન્ટરફેસ આપે છે જે સાઇફરટેક્સ્ટ અને ટેગ સાથે પરત કરે છે. AES-GCM એક ઉદાહરણ છે: કાઉન્ટર-મોડ એન્ક્રિપ્શન ગેલોઇસ પ્રમાણકર્તા સાથે સંયુક્ત. ઇન્ટરફેસ અખંડિતતાને મફત બનાવતું નથી; તે સંયોજનને સુવ્યાખ્યાયિત બનાવે છે, અને એ જ અમલીકરણને જોડીને એક એકમ તરીકે અનુકૂળ કરવા દે છે.

Separate authentication path:
  payload -> independent HMAC -> framed packet

AEAD path:
  payload -> authenticated encryption with tag -> framed packet

આ પ્રક્રિયા રેખાચિત્રો છે, રૂપરેખાંકન સલાહ નહીં. પ્રથમમાં ગોપનીયતા નથી પણ તેમ છતાં પ્રમાણીકરણમાં CPU ખર્ચે છે, અને એટલે જ „એન્ક્રિપ્શન બંધ કરો“ એ „ક્રિપ્ટોગ્રાફિક કામ બંધ કરો“ નો સમાનાર્થી નથી.

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

સંમત મોડ ખરેખર શું સક્ષમ કરે છે

Community OpenVPN સાથે, AEAD ડેટા સાઇફરનો અર્થ છે કે auth વિકલ્પ હવે પોતાનું અલગ ડેટા-ચેનલ HMAC આપતું નથી. એન્ક્રિપ્શન વિકલ્પનો સંદર્ભ તે વ્યાપ્તિ વર્ણવે છે, અને એટલે જ ટેક્સ્ટ ફાઇલમાં સરખા દેખાતા બે રૂપરેખાંકનો પેકેટ દીઠ કામમાં ભિન્ન હોઈ શકે છે.

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

openvpn --show-ciphers | head -20
sudo grep -E 'cipher|auth' /etc/openvpn/server.conf

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

તમે ખરેખર જે ભાર ચલાવો છો તે માપો

ક્રિપ્ટોગ્રાફિક માઇક્રો-માપ એક આદિમ પદ્ધતિને તેની પોતાની શરતોમાં માપે છે. VPN સ્થાનાંતરણ બફર પણ નકલ કરે છે, થ્રેડ કે વિક્ષેપ ગોઠવે છે, નીતિ તપાસે છે અને નેટવર્ક પાર કરે છે. તે ભાગો ઘણી વાર પ્રભુત્વ ધરાવે છે, અને એટલે જ ઝડપી આદિમ પદ્ધતિ હંમેશા ઝડપી ટનલ આપતી નથી.

openssl speed -evp aes-256-gcm
openssl speed -evp sha1

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

પછી બાકીનું બધું સ્થિર રાખીને જે ભાર મહત્ત્વનો છે તે માપો: એ જ અંતિમ બિંદુ, એ જ પેકેટ માપ, એ જ પરિવહન, એ જ સંકોચન નીતિ. જો પ્રોફાઇલ ફેરફારે પરિવહન કે પ્રક્રિયા સ્થાન પણ બદલ્યું હોય, તો પરિણામ તે બંડલ વર્ણવે છે, ક્રિપ્ટોગ્રાફી નહીં.

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

સંબંધિત લેખો