Mis on API võti ja kuidas seda turvaliselt kasutada?
Avaleht
Artiklid
Mis on API võti ja kuidas seda turvaliselt kasutada?

Mis on API võti ja kuidas seda turvaliselt kasutada?

Keskmine
Avaldatud Jan 6, 2023Värskendatud Feb 21, 2023
7m


Rakendusliidese (API) võti on unikaalne kood, mida API kasutab rakenduse või kasutaja tuvastamiseks. API võtmeid kasutatakse selleks, et jälgida ja kontrollida, kes ja kuidas API‑sid kasutavad, samuti rakenduste autentimiseks ja autoriseerimiseks – sarnaselt kasutajanimede ja paroolide toimimisele. API võti võib olla üksikvõti või mitme võtme komplekt. Kasutajad peaksid järgima parimaid tavasid, et kaitsta ennast API võtmete varguse eest ja vältida kaasnevaid tagajärgi, kui nende API võtmeid kuritarvitatakse.

API vs API võti

Selleks, et mõista, mis on API võti, pead esmalt mõistma, mis on API. Rakendusliides ehk API (application programming interface) on tarkvaraline vahendaja, mis võimaldab kahel või enamal rakendusel omavahel teavet jagada. Näiteks CoinMarketCapi API võimaldab teistel rakendustel hankida ja kasutada krüptoga seotud teavet, nagu hind, maht ja turukapital.

API võtit on mitmel erineval kujul – see võib olla üks võti või mitme võtme komplekt. Erinevad süsteemid kasutavad neid võtmeid rakenduse autentimiseks ja autoriseerimiseks, sarnaselt kasutajanime ja parooli kasutamisele. API klient kasutab API võtit API poole pöörduva rakenduse autentimiseks. 

Näiteks kui Binance Academy soovib kasutada CoinMarketCapi API‑d, genereerib CoinMarketCap API võtme ja seda kasutatakse API juurdepääsu taotleva Binance Academy (API klient) identiteedi autentimiseks. Kui Binance Academy soovib CoinMarketCapi API‑le juurde pääseda, tuleb see API võti koos päringuga CoinMarketCapile saata. 

Seda API võtit peaks kasutama ainult Binance Academy ja seda ei tohiks jagada ega teistele saata. Selle API võtme järgi saab CoinMarketCap aru, et kolmas osapool on Binance Academy ja kõik kolmanda osapoole toimingud näivad olevat pärit Binance Academyst.

API võtit võib kasutada ka CoinMarketCap API, et kinnitada, kas rakendusel on õigus soovitud ressursile juurde pääseda. Lisaks kasutavad API omanikud API võtmeid API tegevuste jälgimiseks (nt päringute tüübid, liiklus ja maht). 

Mis on API võti? 

API võtit kasutatakse selleks, et kontrollida ja jälgida, kes API‑d kasutavad ja kuidas nad seda kasutavad. Mõiste „API võti" võib erinevate süsteemide jaoks tähendada erinevaid asju. Mõnel süsteemil on üks kood, kuid teistel võib üks „API võti" tähendada mitut koodi.   

Seega on „API võti" kordumatu kood või kordumatute koodide komplekt, mida API kasutab tema poole pöörduva kasutaja või rakenduse autentimiseks ja autoriseerimiseks. Mõnda koodi kasutatakse autentimiseks ja mõnda kasutatakse krüptograafiliste allkirjade loomiseks, et tõestada päringu õiguspärasust. 

Nende autentimiskoodide ühine nimetus on „API võti", samas kui krüptograafiliste allkirjade jaoks kasutatavad koodid kannavad erinevaid nimetusi, näiteks „salajane võti", „avalik võti" või „privaatne võti". Autentimine hõlmab asjaomaste üksuste tuvastamist ja kinnitamist, et nad on tõepoolest nemad ise.

Autoriseerimine aga määrab API teenused, millele lubatakse juurdepääs. API võtme funktsioon on sarnane konto kasutajanime ja parooli omaga; selle saab üldise turvalisuse parandamiseks ühendada ka muude turvafunktsioonidega. 

API omanik genereerib tavaliselt iga konkreetse üksuse jaoks eraldi API võtme (üksikasjad vt allpool) ja iga kord, kui API omaniku poole pöördutakse (mis nõuab kasutaja autentimist või autoriseerimist või mõlemat), kasutatakse vastavat võtit.

Krüptograafilised allkirjad

Mõned API võtmed kasutavad täiendava kinnituskihina krüptograafilisi allkirju. Kui kasutaja soovib teatud andmeid API‑le saata, saab päringule lisada teise võtmega genereeritud digitaalallkirja. Krüptograafia abil saab API omanik kontrollida, kas see digitaalallkiri vastab saadetud andmetele.

Sümmeetrilised ja asümmeetrilised allkirjad 

API kaudu jagatud andmeid saab allkirjastada krüptograafiliste võtmetega, mis kuuluvad järgmistesse kategooriatesse:

Sümmeetrilised võtmed

Need hõlmavad ühe salajase võtme kasutamist nii andmete allkirjastamiseks kui ka allkirja kontrollimiseks. Sümmeetriliste võtmete puhul genereerib API võtme ja salavõtme tavaliselt API omanik ning API teenus peab allkirja kontrollimiseks kasutama sama salajast võtit. Üksiku võtme kasutamise peamine eelis on, et see on kiirem ja nõuab allkirja genereerimiseks ja kontrollimiseks vähem arvutusvõimsust. Hea näide sümmeetrilisest võtmest on HMAC.

Asümmeetrilised võtmed

Need hõlmavad kahe võtme kasutamist: privaatset ja avalikku võtit, mis on erinevad, kuid krüptograafiliselt seotud. Privaatset võtit kasutatakse allkirja genereerimiseks ja avalikku võtit allkirja kontrollimiseks. API võtme genereerib API omanik, kuid privaatse võtme ja avaliku võtme paari genereerib kasutaja. API omanik peab allkirja kontrollimiseks kasutama ainult avalikku võtit, seega privaatne võti võib jääda kohalikuks ja salajaseks. 

Asümmeetriliste võtmete kasutamise peamine eelis on allkirja suurem turvalisus, kuna genereerimise ja kontrollimise võtmed on eraldatud. See võimaldab välistel süsteemidel kontrollida allkirju ilma neid genereerimata. Teine eelis on, et mõned asümmeetrilised krüpteerimissüsteemid toetavad parooli lisamist privaatvõtmetele. Hea näide on RSA võtmepaar. 

Kas API võtmed on turvalised? 

Vastutus API võtme eest lasub kasutajal. API‑võtmed sarnanevad paroolidega ja neid tuleb käsitleda sama hoolikalt. API‑võtme jagamine sarnaneb parooli jagamisele ja seetõttu ei tohiks seda teha, kuna võib seada kasutaja konto ohtu. 

Küberründajad isegi jahivad API võtmeid, kuna neid saab kasutada süsteemides oluliste toimingute jaoks, näiteks isikuandmete küsimiseks või finantstehingute tegemiseks. On esinenud juhtumeid, kus küberrobotid on edukalt rünnanud võrgus koodide andmebaase, et varastada API võtmeid.

API võtmete varguse tagajärjed võivad olla drastilised ja põhjustada märkimisväärset rahalist kahju. Lisaks, kuna mõned API‑võtmed ei aegu, saavad ründajad neid varastamise korral kasutada lõputult, kuni võtmed ise tühistatakse.

API võtmete kasutamise hea tava

API‑võtmete turvaline kasutamine on ülimalt tähtis, kuna need annavad juurdepääsu tundlikele andmetele, mis on kergesti haavatavad. API võtmete kasutamisel saad nende üldise turvalisuse parandamiseks järgida alltoodud hea tava juhiseid: 

  1. Võimalusel vaheta API võtmeid sageli. See tähendab, et peaksid oma praeguse API võtme kustutama ja tegema uue. Mitme süsteemiga on API võtmete loomine ja kustutamine lihtne. Sarnaselt sellele, kuidas mõned süsteemid nõuavad parooli muutmist iga 30–90 päeva tagant, peaksid võimalusel API võtmeid vahetama sarnase sagedusega.

  2. Kasuta IP‑aadresside valget nimekirja: API võtme loomisel koosta võtme kasutamiseks volitatud IP‑de loend (IP‑de valge nimekiri). Samuti saad määrata blokeeritud IP‑de loendi (IP-de must nimekiri). Sel viisil ei saa tundmatu IP‑aadress juurdepääsu isegi siis, kui sinu API võti on varastatud.

  3. Kasuta mitut API võtit: mitme võtme omamine ja nende vahel juurdepääsude jagamine vähendab turvariski, kuna sinu turvalisus ei sõltu enam ühest kõikide sinu õigustega võtmest. Samuti saad määrata igale võtmele erinevad IP‑aadresside valged nimekirjad, mis vähendab veelgi turvariski. 

  4. Hoia API võtmeid turvaliselt: ära säilita oma võtmeid avalikult juurdepääsetavates kohtades, avalikes arvutites ega nende võtmete algses lihttekstivormingus. Selle asemel kasuta nende kõikide puhul parema turvalisuse tagamiseks krüptimist või salahaldurit ja ole ettevaatlik, et neid kogemata ei paljastaks. 

  5. Ära jaga oma API võtmeid. API võtme jagamine on sarnane parooli jagamisele. Seda tehes annad teisele osapoolele samad autentimis- ja autoriseerimisõigused kui on sinul endal. Kui keegi neile juurde pääseb, võidakse sinu API‑võti varastada ja kasutada seda sinu kontole sissemurdmiseks. API võtit tuleks kasutada ainult sinu ja selle genereerinud süsteemi poolt.

Kui sinu API võti on ohus, peaksid selle kasutamise koheselt keelama, et vältida edasist kahju. Kui tekib rahaline kahju, tee vahejuhtumiga seotud olulisemast teabest ekraanipildid, võta ühendust seotud asutusega ja esita politseile avaldus. See on parim viis suurendada oma võimalust kaotatud raha tagasi saada. 

Lõppmärkused

API võtmed pakuvad peamisi autentimise ja autoriseerimise funktsioone ning kasutajad peavad oma võtmeid hoolikalt haldama ja kaitsma. API võtmete turvaliseks kasutamiseks on palju võimalusi ja aspekte. Üldiselt peaksid oma API võtmesse suhtuma samamoodi, nagu oma konto parooli.

Lisalugemist

Teeni TASUTA krüptot uurides plokiahela teadmistekogu
Binance Sensei
I am powered by ChatGPT and trained with 1,000+ articles and glossary entries from Binance Academy. My responses are provided on an “as is” basis for general information only, without any representation, warranty or guarantee of completeness or accuracy. See full terms and conditions here