O cheie de interfață de programare a aplicației (API) este un cod unic utilizat de un API pentru a identifica utilizatorul sau aplicația care apelează. Cheile API sunt folosite pentru a urmări și controla cine folosește API-ul și cum î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 veni sub forma unei singure chei sau a unui set de chei multiple. Utilizatorii ar trebui să folosească cheile API în mod corespunzător pentru a-și îmbunătăți securitatea generală împotriva furtului de chei API și pentru a evita consecințele legate de compromiterea cheilor API.
Distingeți între API și cheia API
Pentru a înțelege ce este o cheie API, trebuie mai întâi să înțelegeți ce este o cheie API. O interfață de programare a aplicațiilor sau API (Interfață de programare a aplicației) este un middleware 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 criptomonede, cum ar fi prețul, volumul și capitalizarea pieței.
O cheie API vine în multe forme diferite - poate fi o singură cheie sau un set de chei. Diferite sisteme folosesc aceste chei pentru a autentifica și autoriza o aplicație, similar modului în care sunt utilizate numele de utilizator și parolele. O cheie API este utilizată de clientul API pentru a autentifica aplicația de apelare API.
De exemplu, dacă Binance Academy dorește să folosească API-ul CoinMarketCap, CoinMarketCap va genera o cheie API și va fi folosită pentru a autentifica identitatea Academiei Binance (aplicația API) care solicită acces API. Când Academia Binance accesează API-ul CoinMarketCap, această cheie API este 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 va permite terților să acceseze CoinMarketCap ca Academia Binance, iar orice acțiuni ale terților vor apărea ca și cum ar proveni de la 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 urmări activitatea API, cum ar fi tipul solicitării, traficul și volumul.
Ce este o cheie API?
Cheile API sunt folosite pentru a controla și urmări cine utilizează API-ul și cum îl utilizează. Termenul „cheie API” poate însemna lucruri diferite pentru sisteme diferite. Unele sisteme au un singur cod, dar altele pot avea mai multe coduri pentru o singură „cheie API”.
Astfel, 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 apelează. Unele coduri sunt folosite pentru autentificare, iar altele sunt folosite pentru a crea o semnătură criptografică pentru a dovedi legitimitatea cererii.
Aceste chei de autentificare sunt adesea denumite în mod colectiv „chei API”, în timp ce codurile utilizate pentru semnăturile criptografice au o varietate de nume, cum ar fi „chei private”, „chei publice” sau „chei private”. Autentificarea necesită identificarea entităților implicate și confirmarea că acestea sunt cine spun că sunt.
Pe de altă parte, autorizează specificarea serviciilor API care pot fi accesate. Funcționalitatea unei chei API este similară cu cea a numelui de utilizator și a parolei unui cont; poate fi, de asemenea, conectat la alte caracteristici de securitate pentru a îmbunătăți securitatea generală.
Fiecare cheie API este generată de obicei de proprietarul API pentru o anumită entitate (mai multe detalii mai jos) și de fiecare dată când se efectuează un apel către un punct final API - care necesită autentificarea sau autorizarea utilizatorului, sau ambele - atunci cheia relevantă va fi utilizată.
Semnătură criptografică
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 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 prin API pot fi semnate cu chei criptografice, care se încadrează î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. Cu cheile simetrice, cheia API și cheia secretă sunt de obicei generate de proprietarul API, iar serviciul API trebuie să folosească aceeași cheie secretă pentru a verifica semnătura. Principalul avantaj al utilizării unei chei singulare este că acest lucru este mai rapid și necesită mai puțină putere de calcul pentru a genera și verifica semnătura. Un bun exemplu de cheie simetrică este HMAC.
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 a crea semnătura, iar cheia publică este folosită pentru a verifica semnătura. Cheia API este generată de proprietarul API, dar perechea de chei private și publice este generată de utilizator. Proprietarul API-ului trebuie să folosească doar cheia publică pentru a verifica semnătura, astfel încât cheia privată poate rămâne locală și secretă.
Principalul avantaj al folosirii cheilor asimetrice este securitatea mai mare a separării cheii de generare a semnăturii și cheii de verificare. Acest lucru permite sistemelor externe să verifice semnătura fără a putea genera semnătura. Un alt avantaj este că unele sisteme de criptare asimetrică acceptă adăugarea unei parole la cheia privată. Un exemplu tipic este o pereche de chei RSA.
Cheile API sunt sigure?
Responsabilitatea pentru păstrarea în siguranță a cheilor API revine utilizatorului. Cheile API sunt similare cu parolele și ar trebui să fie tratate cu grijă. Partajarea unei chei API este similară cu partajarea unei parole și, prin urmare, nu este recomandată, deoarece acest lucru pune în pericol contul utilizatorului.
Cheile API sunt adesea vizate în atacurile cibernetice, deoarece pot fi utilizate pentru a efectua operațiuni critice asupra sistemului, cum ar fi solicitarea de informații personale sau efectuarea de tranzacții financiare. De fapt, au existat cazuri de crawlere și atacuri de baze de date online pentru a fura chei API.
Consecințele furtului cheilor API pot fi grave și pot duce la pierderi financiare semnificative. În plus, deoarece unele chei API nu expiră, atacatorii le pot folosi pe termen nelimitat după ce au fost furate până când cheile în sine sunt revocate.
Cum să utilizați corect cheile API
Deoarece oferă acces la date sensibile, utilizarea în siguranță a cheilor API este esențială. Puteți urma aceste instrucțiuni de cele mai bune practici pentru utilizarea cheilor API pentru a îmbunătăți securitatea generală:
Actualizează-ți cheile API cât mai des posibil. Aceasta înseamnă că ar trebui să ștergeți cheia API actuală și să creați una nouă. Cu multe sisteme, este ușor să creați și să ștergeți chei API. La fel ca unele sisteme vă cer să vă schimbați parola la fiecare 30 până la 90 de zile, ar trebui să rotiți cheile API la o frecvență similară, dacă este posibil.
Utilizați o listă albă de IP: când creați o cheie API, creați o listă de IP-uri cărora li se permite să utilizeze cheia (lista albă de IP). De asemenea, puteți specifica o listă de IP-uri blocate (lista neagră de IP). În acest fel, chiar dacă cheia dvs. API este furată, ea nu poate fi accesată de un IP nerecunoscut.
Utilizați mai multe chei API: a avea mai multe chei și împărțirea responsabilităților între ele reduce riscurile de securitate, deoarece securitatea dvs. nu va depinde de o singură cheie cu mai multe permisiuni. De asemenea, puteți seta liste albe IP diferite pentru fiecare cheie, reducând și mai mult riscurile de securitate.
Stocați cheile API în siguranță: nu stocați cheile în locuri publice, pe computere partajate sau în formatul lor original de text simplu. În schimb, stocați fiecare cu criptare sau un manager secret pentru o mai bună securitate și aveți grijă să nu le expuneți accidental.
Nu partajați cheile dvs. API. Partajarea cheilor API este similară cu partajarea parolei. Procedând astfel, acordați celeilalte părți aceleași drepturi de autentificare și autorizare ca și dvs. Dacă sunt compromise, cheia dvs. API poate fi furată și utilizată pentru a pătrunde în contul dvs. O cheie API ar trebui utilizată numai între dvs. și sistemul care a generat-o.
Dacă cheia dvs. API este compromisă, trebuie să o dezactivați mai întâi pentru a evita alte daune. Dacă există vreo pierdere financiară, faceți o captură de ecran cu informații cheie legate de incident, contactați unitățile relevante și trimiteți un raport poliției. Acesta este cel mai bun mod de a vă crește șansele de a recupera orice fonduri pierdute.
Rezumat
Cheile API oferă funcții de bază de autentificare și autorizare, iar utilizatorii trebuie să își gestioneze și să-și protejeze cheile cu atenție. Există mulți pași și aspecte pentru a asigura utilizarea în siguranță a cheilor API. În general, ar trebui să vă gândiți la cheia dvs. API ca la o parolă pentru contul dvs.
Citeşte mai mult:
Principii generale de securitate
5 escrocherii comune cu criptomonede și cum să le evitați

