Sobes.tech
Junior

Ի՞նչ է SSL-ը և ինչպես է այն օգտագործվում ցանցում տվյալների անվտանգությունը ապահովելու համար։

sobes.tech AI

Պատասխան AI-ից

SSL (Secure Sockets Layer) — դա կրիպտոգրաֆիկ պրոտոկոլ է, որը ապահովում է տվյալների անվտանգ փոխանցում հաճախորդի (օրինակ՝ վեբ բրաուզեր) և սերվերի (օրինակ՝ վեբ կայք) միջև։ Այն օգտագործում է անհամաչափ կոդավորումը՝ ապահովված կապի համար, իսկ հետո symmetrically կոդավորումը՝ տվյալների փոխանցման համար:

Հիմնական փուլերը SSL-ի օգտագործման:

  1. Handshake (Համբույր):

    • Հաճախորդը ուղարկում է սերվերին "ClientHello" հաղորդագրություն, որը պարունակում է աջակցվող SSL տարբերակների և կոդավորումների հավաքածու:
    • Սերվերը պատասխանում է "ServerHello"-ով՝ ընտրելով օպտիմալ SSL տարբերակ և կոդավորումների հավաքածու, ինչպես նաև ուղարկում իր սերտիֆիկատը:
    • Հաճախորդը ստուգում է սերվերի սերտիֆիկատի օրինականությունը՝ օգտագործելով վստահված հիմնական կենտրոնների ցանկը:
    • Հաճախորդը ստեղծում է գաղտնի սեսիայի բանալի և կոդավորում է այն սերվերի բացասական բանալով:
    • Հաճախորդը ուղարկում է կոդավորված սեսիայի բանալին սերվերին:
    • Սերվերը դեկոդավորում է սեսիայի բանալին՝ օգտագործելով իր մասնավոր բանալին:
    • Երկու կողմերն էլ ստեղծում են անհրաժեշտ բանալիներ՝ կոդավորման և հաստատման համար՝ օգտագործելով սեսիայի բանալին:
    • Հաճախորդը և սերվերը ուղարկում են "Finished" հաղորդագրություններ՝ կոդավորված՝ հաստատելու համար կապի հաստատումը:
  2. Տվյալների կոդավորումը: Հաջորդում է՝ բոլոր փոխանցվող տվյալները կոդավորվում են համաձայնեցված symmetrically ալգորիթմով և բանալիներով:

SSL սերտիֆիկատի օրինակ՝

// Սերտիֆիկատի նույնականացուցիչ
Serial Number: ...
// Սերտիֆիկատի ստորագրության ալգորիթմ
Signature Algorithm: sha256WithRSAEncryption
// Սերտիֆիկատի տպավորիչ (Certificate Authority)
Issuer: C = US, O = Google Trust Services LLC, CN = GTS CA 1C3
// Վավերության ժամկետ
Validity
    Not Before: ...
    Not After : ...
// Սերտիֆիկատի ենթակա (դոմեյն անուն)
Subject: CN = www.example.com
// Սուբյեկտի բացասական բանալին
Subject Public Key Info
    Public Key Algorithm: rsaEncryption
    Public-Key: (2048 bit)

SSL կամ ավելի ճիշտ՝ նրա արդիական տարբերակը TLS (Transport Layer Security) ապահովում է՝

  • Գաղտնիություն: Պահպանում է տվյալների գաղտնագրման և ընթերցման հնարավորությունը՝ չարամիտների կողմից:
  • Տվյալների ամբողջականություն: Համոզվում է, որ տվյալները չեն փոխվել փոխանցման ժամանակ:
  • Հաստատում: Պարզապես հաստատում է սերվերի իսկությունը (և ըստ ցանկության՝ հաճախորդի)՝ սերտիֆիկատների միջոցով:

SSL/TLS օգտագործումը լայնորեն տարածված է՝ վեբ բրաուզերներում (HTTPS պրոտոկոլ), էլեկտրոնային փոստում (STARTTLS), VPN-ներում և այլ ծրագրերում, որոնք պահանջում են անվտանգ տվյալների փոխանցում։