Yazılım geliştiriciler, AI ve kripto projelerinde karşılaştıkları teknik gereksinimleri belgelediklerinde, bazen en basit kelimelerin bile neden olduğu karmaşaları fark ederler. Örneğin, "Ajan, fonları hareket ettirmeden önce token kanıtını bağlam içinde doğrulamalıdır" gibi bir gereksinim, teknik olarak doğru görünse de aslında birden fazla yoruma açıktır. Bu belirsizlikler, AI destekli kripto sistemlerinde ciddi güvenlik risklerine dönüşebilir.
Belirsiz Gereksinimler: Geliştiriciyi Bekleyen Tehlike
Bu tür gereksinimler, AI ajanlarına ve cüzdan katmanlarına farklı anlamlar yükleyebilir. AI akışında bir "görev" olarak algılanan bir gereksinim, aynı zamanda bir "varlık işlemi" olarak da yorumlanabilir. Bu durumda, sistem doğrudan fon transferine izin verebilir — sadece cümledeki teknik terimler güvenilir bir izlenim yarattığı için. Oysa bu, hem AI hem de kripto dünyasında kabul edilemez bir risktir.
Geliştiricilerin ilk adımı, bu belirsizlikleri erkenden yakalamak olmalıdır. Gereksinimler, bir namespace (isim alanı) ve net eylem tanımları içermedikçe, sistem otomatik olarak engellenmelidir. Örneğin, "token" kelimesinin hangi anlamda kullanıldığı netleştirilmelidir: bir metin tokeni mi, yoksa bir ERC-20 varlığı mı?
Token: Metin Parçası mı, Kripto Varlığı mı?
"Token" kelimesi, AI ve kripto dünyasında tamamen farklı anlamlara gelebilir. AI modellerinde, tiktoken gibi araçlar metinleri tokenize ederken, Ethereum standartlarında (EIP-20 ve EIP-721) tokenler, varlıkları temsil eder. Bu durumda, gereksinimdeki "token" kelimesinin hangi anlamda kullanıldığı kritiktir:
- AI tokeni: Model girdisini oluşturan metin birimleri (örneğin, kelimeler veya alt kelimeler).
- Kripto tokeni: Blokzincir üzerinde tanımlanan varlıklar (örneğin, ERC-20 veya NFT’ler).
Geliştiriciler, gereksinimleri incelerken bu ayrımı netleştirmelidir. Aksi takdirde, sistem yanlış bir şekilde metin tokenlerini varlık olarak işleyebilir ve fon kaybına yol açabilir.
Kanıt: Resmi Bir Belge mi, Yoksa Geçici Bir Kanıt mı?
"Kanıt" kelimesi de benzer şekilde farklı anlamlara gelebilir. W3C’nin Doğrulanabilir Kimlik Bilgileri Modeli (Verifiable Credentials Data Model 2.0) ve RFC 8785 gibi standartlar, kimlik doğrulama ve veri bütünlüğü için kullanılabilir. Ancak gereksinimdeki "kanıt" kelimesi netleştirilmelidir:
- AI modelinde kanıt: Model çıktısının doğruluğunu destekleyen veriler.
- Kripto dünyasında kanıt: İmza, hash veya sertifika yoluyla doğrulanan işlemler.
Örneğin, bir gereksinimdeki "token kanıtını doğrula" ifadesi, hangi kanıt türünün kastedildiğine bağlı olarak farklı eylemler gerektirebilir. Sistem, bu belirsizlikleri gidermek için gereksinimleri yeniden yazmalı ve net tanımlar sunmalıdır.
Bağlam: AI Modelinin Bağlamı mı, Cüzdanın Bağlamı mı?
"Bağlam" kelimesi de AI ve kripto sistemlerinde farklı anlamlara sahiptir. AI modelleri için bağlam, modelin girdi aldığı verileri (örneğin, MCP protokolüyle sağlanan kaynaklar) temsil ederken, kripto cüzdanları için bağlam, cüzdan durumu, blokzincir durumu ve işlem nihaiyetini içerir. Gereksinimlerdeki "bağlam" kelimesi netleştirilmelidir:
- AI bağlamı: Modelin kullandığı veri kaynakları ve araçlar.
- Cüzdan bağlamı: Cüzdanın sahip olduğu varlıklar, yetkiler ve işlem geçmişi.
Örneğin, bir gereksinimdeki "token kanıtını bağlam içinde doğrula" ifadesi, hangi bağlamın kastedildiğine bağlı olarak farklı eylemler gerektirebilir. Sistem, bu belirsizlikleri gidermek için gereksinimleri yeniden yazmalıdır.
Ajan: AI Akışı mı, Yetkili Kullanıcı mı?
"Ajan" kelimesi de AI ve kripto dünyasında farklı anlamlara gelebilir. AI dünyasında ajan, araçlarla etkileşime giren ve görevleri yerine getiren bir sistemdir. Kripto dünyasında ise ajan, fonları yönetme yetkisine sahip bir kullanıcı veya akıllı sözleşme olabilir. Gereksinimlerdeki "ajan" kelimesi netleştirilmelidir:
- AI ajanı: Modelin kullandığı bir araç veya workflow.
- Kripto ajanı: Fonları yönetme yetkisine sahip bir kullanıcı veya akıllı sözleşme.
Örneğin, bir gereksinimdeki "ajan token kanıtını doğrulamalıdır" ifadesi, hangi ajanın kastedildiğine bağlı olarak farklı eylemler gerektirebilir. Sistem, bu belirsizlikleri gidermek için gereksinimleri yeniden yazmalıdır.
Pratik Çözüm: Gereksinimleri Yeniden Yazmak
Bu belirsizlikleri gidermek için geliştiriciler, gereksinimleri yeniden yazmalı ve net tanımlar sunmalıdır. Örneğin, aşağıdaki gereksinimler daha net hale getirilebilir:
Orijinal gereksinim:
Ajan, fonları hareket ettirmeden önce token kanıtını bağlam içinde doğrulamalıdır.Yeniden yazılmış gereksinim:
Ajan, ERC-20 tokeninin miktarını ve sahibini doğrulamalıdır. Fonlar sadece token sahibi tarafından onaylandıktan sonra hareket ettirilmelidir.
Kanıt, token miktarını ve sahibini doğrulayan bir imza olmalıdır. Bu imza, W3C Doğrulanabilir Kimlik Bilgileri Modeli 2.0’ye göre doğrulanmalıdır.Bu yaklaşım, sistemin belirsizliklerden kaynaklanan hataları önlemesine yardımcı olur ve güvenliği artırır.
Sonuç: Belirsizlikleri Önlemek İçin Net Tanımlar Gerekiyor
AI ve kripto projelerinde karşılaşılan en büyük risklerden biri, gereksinimlerdeki belirsizliklerdir. Bu belirsizlikler, sistemin yanlış anlaşılmasına ve ciddi güvenlik açıklarına yol açabilir. Geliştiriciler, gereksinimleri incelerken ve yeniden yazarken, net tanımlar kullanmalı ve belirsizlikleri önlemek için gerekli adımları atmalıdır. Bu sayede, hem AI hem de kripto sistemleri daha güvenilir ve güvenli hale gelecektir.
Yapay zeka özeti
AI destekli kripto sistemlerdeki belirsiz terimler, cüzdan ajanlarına yetki vermeye kadar gidebilen ciddi hatalara yol açıyor. Bu dört kelimenin doğru anlaşılması, güvenlik açıklarını önlemek için kritik önem taşıyor.