O cheie de interfață de programare a aplicației (API) este un cod unic utilizat de un API pentru a identifica aplicația sau utilizatorul care face cererea. Cheile API sunt folosite pentru a urmări și controla cine folosește un API și modul în care îl utilizează, precum și pentru a autentifica și autoriza aplicațiile, similar cu modul în care funcționează numele de utilizator și parolele. O cheie API poate fi o singură cheie sau un set de chei. Utilizatorii ar trebui să urmeze cele mai bune practici pentru a-și îmbunătăți securitatea generală împotriva furtului de chei API și pentru a evita consecințele compromiterii cheii API.

API și cheie API

Pentru a înțelege ce este o cheie API, mai întâi trebuie să înțelegeți ce este o cheie API. O interfață de programare a aplicațiilor sau API este un intermediar software care permite două sau mai multe aplicații să partajeze informații. De exemplu, API-ul CoinMarketCap permite altor aplicații să preia și să utilizeze date cripto, cum ar fi prețul, volumul și capitalizarea.

O cheie API vine în diferite forme: poate fi o singură cheie sau un set de chei. Diferite sisteme folosesc aceste chei pentru a autentifica și autoriza o aplicație, similar cu un nume de utilizator și o parolă pentru o persoană. O cheie API este utilizată de un client API pentru a autentifica o aplicație care solicită API-ul.

De exemplu, dacă Binance Academy dorește să folosească API-ul CoinMarketCap, o cheie API va fi generată de CoinMarketCap și utilizată pentru a autentifica identitatea Binance Academy (clientul API), care solicită acces la API. Când Academia Binance accesează API-ul CoinMarketCap, această cheie API trebuie trimisă la CoinMarketCap împreună cu solicitarea.

Această cheie API ar trebui utilizată numai de Academia Binance și nu ar trebui să fie partajată sau trimisă altora. Partajarea acestei chei API ar permite unei terțe părți să acceseze CoinMarketCap ca Academia Binance, iar toate acțiunile acelei terțe părți vor apărea ca și cum ar fi provenite din Academia Binance.

Cheia API poate fi folosită și de API-ul CoinMarketCap pentru a confirma dacă aplicația este autorizată să acceseze resursa solicitată. În plus, proprietarii de API folosesc chei API pentru a monitoriza activitatea API, cum ar fi diferite tipuri de solicitări, trafic și volum de solicitări.

Ce este o cheie API?

O cheie API este folosită pentru a controla și urmări cine folosește un API și cum îl utilizează. Termenul „cheie API” poate avea semnificații diferite în diferite sisteme. Unele sisteme au un singur cod, dar altele pot avea mai multe coduri pentru o singură „cheie API”.

Ca atare, o „cheie API” este un cod unic sau un set de coduri unice utilizate de un API pentru a autentifica și autoriza utilizatorul sau aplicația care generează o solicitare. Unele coduri sunt folosite pentru autentificare, iar altele pentru crearea de semnături criptografice pentru a dovedi legitimitatea unei cereri.

Aceste coduri de autentificare sunt denumite în mod obișnuit „cheie API”, în timp ce codurile folosite pentru semnăturile criptografice au denumiri diferite, precum „cheie secretă”, „cheie publică” sau „cheie privată Autentificarea presupune identificarea entităților în cauză și confirmarea faptului că acestea”. sunt cine pretind a fi.

Autorizarea, pe de altă parte, specifică ce servicii API este permisă. Funcția unei chei API este similară cu cea a numelui de utilizator și a parolei unui cont. De asemenea, poate fi conectat la alte dispozitive de securitate pentru a îmbunătăți securitatea generală.

Fiecare cheie API este generată de obicei pentru o anumită entitate de către proprietarul API (mai multe detalii mai jos) și de fiecare dată când se face o solicitare către un punct final API, care necesită autentificare sau autorizare din partea utilizatorului API, sau ambele, se folosește cheia corespunzătoare .

Semnături criptografice

Unele chei API folosesc semnături criptografice ca un strat suplimentar de verificare. Când un utilizator dorește să trimită anumite date către un API, la cerere poate fi adăugată o semnătură digitală generată de o altă cheie. Utilizând criptografia, proprietarul API-ului poate verifica dacă această semnătură digitală se potrivește cu datele trimise.

Semnături simetrice și asimetrice

Datele partajate printr-un API pot fi semnate prin chei criptografice, care pot fi clasificate în următoarele categorii:

Taste simetrice

Acestea implică utilizarea unei chei secrete pentru a efectua atât semnarea datelor, cât și verificarea semnăturii. În cazul cheilor simetrice, cheia API și cheia secretă sunt de obicei generate de proprietarul API și aceeași cheie secretă trebuie utilizată de serviciul API pentru verificarea semnăturii. Principalul avantaj al utilizării unei singure chei este că este mai rapid de implementat și necesită mai puțină putere de calcul pentru generarea și verificarea semnăturilor. HMAC este un bun exemplu de cheie simetrică.

Chei asimetrice

Acestea implică utilizarea a două chei: o cheie privată și o cheie publică, care sunt diferite, dar legate criptografic. Cheia privată este folosită pentru generarea semnăturii, iar cheia publică este folosită pentru verificarea semnăturii. Cheia API este generată de proprietarul API, dar perechea de chei private și publice este generată de utilizator. Doar cheia publică ar trebui să fie folosită de proprietarul API-ului pentru verificarea semnăturii, astfel încât cheia privată poate rămâne locală și secretă.

Principalul avantaj al utilizării cheilor asimetrice este securitatea sporită a separării cheilor de generare a semnăturii și de verificare. Acest lucru permite sistemelor externe să verifice semnăturile fără a le putea genera. Un alt avantaj este că unele sisteme de criptare asimetrică permit adăugarea unei parole la cheile private. Perechile de chei RSA sunt un bun exemplu.

Cheile API sunt sigure?

Responsabilitatea pentru o cheie API revine utilizatorului. Cheile API sunt similare cu parolele și trebuie tratate cu aceeași grijă. Partajarea unei chei API este similară cu partajarea unei parole și, ca atare, nu ar trebui să aibă loc, deoarece va pune în pericol contul utilizatorului.

Cheile API sunt în mod obișnuit vizate de atacurile cibernetice, deoarece pot fi utilizate pentru a efectua operațiuni la scară largă pe sisteme, cum ar fi solicitarea de informații personale sau executarea de tranzacții financiare. Au existat într-adevăr cazuri în care crawlerele web au scanat cu succes bazele de date cu coduri online pentru a fura cheile API.

Consecințele furtului unei chei API pot fi dramatice și pot duce la pierderi financiare semnificative. În plus, deoarece unele chei API nu expiră, ele pot fi folosite pe termen nelimitat de către atacatori odată furate, până când cheile în sine sunt revocate.

Cele mai bune practici pentru utilizarea cheilor API

Datorită accesului lor la date sensibile și a vulnerabilității generale, utilizarea în siguranță a cheilor API este de o importanță capitală. Puteți urma aceste bune practici atunci când utilizați cheile API pentru a le îmbunătăți securitatea generală:

  1. Schimbați-vă cheile API des. Aceasta înseamnă că ar trebui să ștergeți cheia API actuală și să creați una nouă. Cu mai multe sisteme, este de obicei ușor să generați și să ștergeți cheile API. Așa cum unele sisteme vă cer să vă schimbați parola la fiecare 30-90 de zile, ar trebui să vă schimbați cheile API cu o frecvență similară.

  2. Utilizați lista albă IP: când creați o cheie API, stabiliți o listă de IP-uri autorizate să utilizeze cheia (o listă albă IP). De asemenea, puteți specifica o listă de IP-uri blocate (o listă neagră de IP-uri). În acest fel, chiar dacă cheia dvs. API este furată, ea nu poate fi accesată de un IP nerecunoscut.

  3. Utilizați mai multe chei API: dacă aveți mai multe chei și împărțiți responsabilitățile între ele, va reduce riscul de securitate, deoarece securitatea dvs. nu va depinde de o singură cheie cu permisiuni largi. De asemenea, puteți seta liste albe de adrese IP diferite pentru fiecare cheie, reducând și mai mult riscul de securitate.

  4. Stocați cheile API în siguranță: nu stocați cheile în locații accesibile, pe computere publice sau în formatul lor original de text simplu. În schimb, stocați-le utilizând criptare sau un manager de parole pentru securitate sporită și aveți grijă să nu le expuneți accidental.

  5. Nu partajați cheile dvs. API. Puteți compara partajarea unei chei API cu partajarea unei parole. Procedând astfel, o altă parte oferă aceleași privilegii de autentificare și autorizare ca și dvs. Dacă este compromisă, cheia dvs. API poate fi furată și utilizată pentru a vă sparge contul. O cheie API ar trebui utilizată numai între dvs. și sistemul care o generează.

Dacă cheia dvs. API este compromisă, trebuie mai întâi să o dezactivați pentru a evita deteriorarea ulterioară. În cazul unei pierderi financiare, faceți capturi de ecran ale informațiilor cheie legate de incident, contactați entitățile relevante și depuneți o plângere. Acesta este cel mai bun mod de a vă crește șansele de a recupera fondurile pierdute.

Concluzie

Cheile API oferă funcții esențiale de autentificare și autorizare, iar utilizatorii ar trebui să-și gestioneze și să-și protejeze cheile cu atenție. Există multe niveluri și aspecte care pot asigura utilizarea în siguranță a cheilor API. În general, o cheie API ar trebui tratată ca parola contului dvs.

Mai multe informatii

  • Principii generale de securitate

  • 5 escrocherii comune cu criptomonede și cum să le evitați.