Kısa cevap: API anahtarı, bir yazılımın bir servise kendini tanıtmak için gönderdiği benzersiz bir değerdir; servis bu değerle isteğin kime ait olduğunu ve hangi işlemlere izinli olduğunu belirler. Kripto platform hesaplarında anahtar genellikle bir gizli anahtarla (API secret) birlikte verilir ve özel istekler bu gizli anahtarla imzalanır. Yetki, izin kapsamı ve IP kısıtıyla daraltılır; sızan anahtar silinip yenisi oluşturulur.
API anahtarı, hesap şifresinden farklı olarak bir yazılıma verilen ve kapsamı daraltılabilen bir erişim yoludur. Harita, ödeme, yapay zeka veya kripto platformu gibi birçok serviste aynı mantıkla çalışır; yapay zeka ve benzeri ücretli servislerde sızan anahtar başkasının o hesap adına kullanım yapmasına yol açabilir. Kripto platform hesaplarında ise anahtarın yetkisine göre risk hesabın bakiyesine kadar uzanır.
Bu yazı genel eğitim amaçlıdır; platform veya ayar önermez. Doküman örnekleri alfabetik sırayla verilir, gerçek anahtar içermez ve 3 Kasım 2026'da kontrol edilmiştir.
API anahtarı ne işe yarar?
API anahtarı, isteği gönderen yazılımı tanımlar ve servisin yetki ile kota kurallarını o yazılıma uygulamasını sağlar. API anahtarı (API key), bir uygulamanın bir servise erişirken kendini tanıtmak için kullandığı benzersiz bir değer demektir. Üç temel işlevi vardır:
- Tanıma: İsteğin hangi hesaba veya projeye ait olduğu belirlenir.
- Yetkilendirme: Anahtara tanımlanan izinlere göre işlem kabul edilir veya reddedilir.
- Takip ve sınır: Kullanım kaydedilir ve kota uygulanır.
OWASP'ın API Security Top 10 (2023) listesi, API anahtarlarının kullanıcı kimlik doğrulaması için değil, API istemcilerini tanımak için kullanılması gerektiğini belirtir. Bu ayrım önemlidir: anahtar bir kişinin kim olduğunu değil, bir yazılımın neye izinli olduğunu anlatır. Hesap şifresinden farkı da buradadır: şifre hesabın tamamını açar, anahtar ise kapsamı daraltılarak tek bir yazılıma verilebilir ve diğerlerine dokunulmadan iptal edilebilir. Hesap şifresi hiçbir yazılıma verilmez. Anahtarın hangi API türlerinde gerektiği kripto API yazısında açıklanıyor.
API key ile API secret arasındaki fark nedir?
API key isteğin hangi anahtara ait olduğunu söyler ve istekle gönderilir; API secret (gizli anahtar) ise imzayı üretir ve istekle gönderilmez. Gizli anahtar, yalnızca anahtar sahibinin ve servisin bildiği, imza üretmekte kullanılan değer demektir.
| Doküman | Anahtarın adı ve başlığı | Gizli anahtarın adı | Dokümandaki not |
|---|---|---|---|
| Binance TR | API-key; X-MBX-APIKEY | secretKey | İkisi de büyük-küçük harfe duyarlıdır |
| BtcTurk | Public key; X-PCK | Private key | Paylaşılırsa silinip yenisi oluşturulması istenir |
| Paribu | API Key; Authorization | API Secret | Gizli anahtar yalnızca oluşturma anında gösterilir |
İmzalı istek nasıl çalışır?
İmzalı istekte yazılım, isteğin belirli bir bölümünü gizli anahtarla HMAC yöntemine sokar ve çıkan değeri istekle birlikte gönderir; servis aynı hesabı yapıp sonuçları karşılaştırır. HMAC, RFC 2104'te tanımlanan, bir özet fonksiyonunu paylaşılan gizli anahtarla kullanarak mesajın doğrulanmasını sağlayan yöntem demektir.
Aşağıdaki kod ağa bağlanmaz; yalnızca imzanın nasıl değiştiğini gösterir. Değerler uydurmadır ve kod 3 Kasım 2026'da çalıştırılmıştır.
import hashlib
import hmac
# Uydurma değerler: gerçek bir hesaba ait değildir
gizli = b"ornek-gizli-anahtar"
mesaj = b"symbol=XYZ_TRY&side=0&type=1×tamp=1700000000000"
print(hmac.new(gizli, mesaj, hashlib.sha256).hexdigest())
print(hmac.new(gizli, mesaj + b"0", hashlib.sha256).hexdigest())Çıktı:
339d282c3f98c10ea9eaa64761d3095662e512f748d5115d2bf9d9ed1363545e
39f968bf55002b13c3fce6ac37a0b2d233041275033c7c45adf208509cce7c6dMesajın sonuna tek bir karakter eklenmesi imzayı tümüyle değiştirir. Hangi metnin imzalandığı ise servise göre farklıdır: BtcTurk dokümanında genel anahtar ile zaman damgası, Binance TR dokümanında sorgu metni ile istek gövdesi, Paribu dokümanında zaman damgası, sorgu metni ve gövde imzalanır. Zaman damgası eski isteğin yeniden kullanılmasını zorlaştırır: BtcTurk ve Paribu dokümanları ±5 saniyelik tolerans tanımlar, Binance TR dokümanında recvWindow varsayılan 5.000 milisaniyedir ve 60.000'i geçemez. Platforma özgü imza ayrıntıları Binance TR API ve BtcTurk API yazılarında yer alıyor. İmzalı isteklerin saat senkronu REST ve WebSocket yazısında yer alıyor.
API anahtarı izinleri: okuma, işlem ve çekim
İzin kapsamı, anahtarın hangi işlemleri yapabileceğini belirler ve anahtar sızarsa oluşacak zararın üst sınırını çizer. En az yetki ilkesi, bir anahtara yalnızca işin gerektirdiği izinlerin verilmesi demektir; OWASP'ın Secrets Management rehberi ve Paribu dokümanı bu ilkeyi açıkça ister.
| İzin düzeyi | Sağladığı erişim | Sızıntıda olası sonuç |
|---|---|---|
| Okuma | Bakiye, emir ve işlem geçmişi | Finansal bilgilerin açığa çıkması |
| İşlem | Emir gönderme ve iptal | İstenmeyen emirler, hesap değerinde kayıp |
| Çekim | Varlığın hesap dışına gönderilmesi | Varlığın geri alınamayacak biçimde çıkması |
İzin adları dokümana göre değişir. BtcTurk'ün izin tablosu Toplam Varlık, Al-Sat, Hesap ve WebSocket başlıklarını içerir. Paribu'nun anahtar oluşturma sayfası salt okunur, işlem, tam erişim ve özel kapsam seçeneklerini sayar; aynı dokümanın Scopes and Permissions sayfası ise uç nokta kapsamlarının anahtar oluşturulurken özelleştirilemeyeceğini yazar, bu yüzden güncel seçenekler hesap ekranından okunur. Binance TR dokümanı, anahtarların varsayılan olarak tüm güvenli yollara erişebildiğini ve belirli uç nokta türleriyle sınırlandırılabildiğini yazar; Travel Rule uç noktaları için withdrawEnable iznini ister. Varsayılanın geniş olabildiği bir yerde izinler anahtar oluşturulduktan sonra da kontrol edilir.
IP whitelist nedir?
IP whitelist, bir anahtarın yalnızca önceden tanımlanan IP adreslerinden kabul edilmesi demektir; anahtar sızsa bile başka bir adresten kullanılamaz. Paribu dokümanı listede olmayan IP'den gelen isteğin 403 alacağını, BtcTurk SSS'si IP ile sınırlanmış anahtarın farklı adresli sunucudan 401 alacağını belirtir. Binance TR'nin 7 Mart 2024 tarihli güvenlik yazısı da listede olmayan adreslerden gelen API erişiminin reddedildiğini söyler.
IP kısıtının bir bedeli vardır: sabit adresi olmayan ev bağlantısında veya adresi değişen bulut servisinde yazılım aniden yetkisiz hataları almaya başlar. Bu nedenle yazılım sabit çıkış adresli bir sunucuda çalıştırılır ve adres değişikliği önceden planlanır. IP kısıtı imzanın, izin kapsamının veya güvenli saklamanın yerine geçmez; onlara eklenen bir katmandır.
API anahtarı nasıl saklanır ve kullanılır?
Gizli anahtar kaynak koda, tarayıcı tarafı koda veya kayıt dosyalarına yazılmaz; yetkisi sınırlı, erişimi denetlenen bir yerde tutulur.
- Kod deposu: Paribu dokümanı anahtarın koda gömülmemesini, ön yüzde açığa çıkmamasını, git'e eklenmemesini ve düz metin kaydedilmemesini ister.
- Ortam değişkeni: Paribu dokümanı ortam değişkenini ve gizli bilgi yöneticilerini birlikte sayar. OWASP rehberi ise ortam değişkenlerinin süreçlere ve döküm dosyalarına yansıyabileceğini belirtir ve başka yöntem varsa onları önerir.
- Adres satırı: OWASP, kimlik bilgilerinin URL'de gönderilmesini açık olarak listeler; sorgu metni sunucu kayıtlarına ve tarayıcı geçmişine düşebilir.
- Ayrı anahtar: Her uygulama ve ortam için ayrı anahtar, sızıntıda yalnızca ilgili anahtarın iptal edilmesini sağlar.
- Yenileme: OWASP, gizli bilgilerin düzenli olarak değiştirilmesini önerir; böylece çalınan değer kısa süre işe yarar.
- Ekran paylaşımı: Ekran görüntüsü, destek talebi ve sohbet mesajları da sızıntı kanalıdır.
Webhook adresleri ve gizli değerleri farklı bir konudur; TradingView webhook yazısında ele alınıyor.
API anahtarı sızarsa ne yapılır?
Sızan veya sızdığından şüphelenilen anahtar beklemeden silinir; BtcTurk dokümanı da paylaşılan anahtarın hemen silinip yenisinin oluşturulmasını ister. Anahtar kod deposundan silinmekle geçersiz olmaz, çünkü değer geçmiş kayıtlarda kalır.
Varsayımsal senaryo: Okuma ve işlem izni açık, IP kısıtı olmayan bir anahtar herkese açık bir kod deposuna yüklensin. Çekim izni kapalı olduğu için varlık bu anahtarla hesap dışına gönderilemez; ancak üçüncü kişi hesaptaki bakiyeyle emir gönderebilir. IP kısıtı tanımlı olsaydı aynı istekler listede olmayan adresten reddedilirdi.
- Anahtar platformun anahtar yönetimi ekranından silinir.
- Açık emirler, işlem geçmişi ve transferler kontrol edilir.
- Hesap şifresi ve iki aşamalı doğrulama gözden geçirilir.
- Yetkisiz işlem görülürse platformun destek kanalına bildirilir.
- Yeni anahtar yalnızca gereken izinler ve IP kısıtıyla oluşturulur.
- Sızıntının kaynağı kapatılır: depo geçmişi, kayıt dosyası veya paylaşılan belge temizlenir.
API anahtarı başkasına verilir mi?
Anahtarın başkasına verilmesi hem güvenlik hem de sözleşme sorusudur; emir yetkisi taşıyan bir anahtar, hesabın o kişi tarafından kullanılabilmesi anlamına gelir.
- Binance TR sözleşmesi: Madde 8.1 hesabın onaysız üçüncü kişilere kullandırılmasını yasaklar. Madde 8.3 temsilci atanmasını noter vekaletnamesi ve platformun ön iznine bağlar. Sözleşmede API kelimesi geçmez.
- BtcTurk sözleşmesi: Madde 2.3 hesabın yalnızca kullanıcının kendi adına kullanıldığına ilişkin beyan içerir. Madde 1.2 hesabın kişisel olduğunu ve devredilemeyeceğini belirtir. Madde 4.2 güvenlik unsurlarının paylaşılmamasını ve üçüncü kişilere kullandırılmamasını düzenler; API anahtarı bu unsurların tanımında adıyla sayılmaz, ancak tanım sınırlı değildir. Madde 3.1 API ile yapılan işlemlere sözleşme hükümlerinin uygulanacağını yazar.
- III-35/B.2 sayılı Tebliğ: Madde 15/3, müşteri portföylerinin doğrudan veya dolaylı menfaat sağlamak üzere vekil sıfatıyla veya bu sonucu doğuracak şekilde sözlü yetkiye dayanarak yönetilmesini yasaklar.
Anahtar isteyen sinyal grupları, kâr paylaşımı teklifleri ve hesabı yönetme vaatleri bu nedenle ayrıca dikkat gerektirir; riskler copy trade ve izinsiz yatırım faaliyeti yazılarında anlatılıyor. Platform durumu SPK'nın geçici Faaliyette Bulunanlar Listesi'nden kontrol edilir; liste 3 Kasım 2026'da 49 satır içeriyordu (40 platform, 9 saklama başvurusu). SPK, listede yer almanın yetkilendirme anlamına gelmediğini belirtir. Yazı hukuki görüş değildir.
Sık sorulan sorular
API anahtarı nedir?
API anahtarı, bir yazılımın bir servise kendini tanıtmak için kullandığı benzersiz bir değerdir. Servis bu değerle isteğin kime ait olduğunu ve hangi işlemlere izinli olduğunu belirler.
API secret nedir?
API secret, yalnızca anahtar sahibinin ve servisin bildiği gizli değerdir. İstekle birlikte gönderilmez; isteğin imzasını üretmekte kullanılır. Bu nedenle kod deposuna, kayıt dosyasına veya sohbet mesajına yazılmaz.
API anahtarı nasıl kullanılır?
Anahtar, servisin dokümanında yazan başlıkla istekle birlikte gönderilir; imza isteyen serviste gizli anahtarla üretilen imza da eklenir. Başlık adları ve imzalanan metin her dokümanda farklıdır.
IP whitelist zorunlu mu?
Bu, servisin kuralına bağlıdır. Zorunlu olmadığı yerde de anahtarın yalnızca tanımlı adreslerden kabul edilmesini sağladığı için sızıntının etkisini azaltır. Yazılımın sabit bir çıkış adresi olması gerekir.
Salt okunur API anahtarı tamamen güvenli midir?
Hayır. Salt okunur anahtar emir gönderemese de bakiye ve işlem geçmişi gibi bilgileri açığa çıkarabilir. Riski azaltır, ortadan kaldırmaz; bu anahtarlar da saklanır ve gerektiğinde iptal edilir.
Kaynaklar
- OWASP API Security Top 10 (2023): API2 Broken Authentication (yeni sekmede açılır)
- OWASP Cheat Sheet Series: Secrets Management (yeni sekmede açılır)
- RFC 2104: HMAC (yeni sekmede açılır)
- Binance TR API dokümanı (yeni sekmede açılır)
- Binance TR: Hesabınızı 5 Basit Adımda Güvenceye Alın (7 Mart 2024) (yeni sekmede açılır)
- Binance Türkiye Çerçeve Müşteri Sözleşmesi (yeni sekmede açılır)
- BtcTurk API dokümanı: API Access Permissions (yeni sekmede açılır)
- BtcTurk API dokümanı: Authentication V1 (yeni sekmede açılır)
- BtcTurk API dokümanı: FAQ (yeni sekmede açılır)
- BtcTurk Kripto Kullanım Sözleşmesi (yeni sekmede açılır)
- Paribu API dokümanı: Obtaining API Keys (yeni sekmede açılır)
- Paribu API dokümanı: Authentication and Signing (yeni sekmede açılır)
- Paribu API dokümanı: Security Recommendations (yeni sekmede açılır)
- SPK: Faaliyette Bulunanlar Listesi (Geçici Liste, 3 Kasım 2026'da kontrol edildi) (yeni sekmede açılır)
- III-35/B.2 sayılı Tebliğ, Resmî Gazete 13 Mart 2025, 32840 (yeni sekmede açılır)
Burada yer alan yatırım bilgi, yorum ve tavsiyeleri yatırım danışmanlığı kapsamında değildir. Yatırım danışmanlığı hizmeti, yetkili kuruluşlar tarafından kişilerin risk ve getiri tercihleri dikkate alınarak kişiye özel sunulmaktadır. Burada yer alan yorum ve tavsiyeler ise genel niteliktedir. Bu tavsiyeler mali durumunuz ile risk ve getiri tercihlerinize uygun olmayabilir. Bu nedenle, sadece burada yer alan bilgilere dayanılarak yatırım kararı verilmesi beklentilerinize uygun sonuçlar doğurmayabilir.