Kimlik v2.0
Kimlik kavramının blockchain üzerinde uygulanabilirliğini incelemeden önce ilk olarak “dijital devrim” olarak adlandırılan içinde bulunduğumuz bu yeni dönem için “kimlik” daha doğrusu “dijital kimlik” kavramının (ben buna “kimlik v2.0” diyorum) ne anlama geldiğini sorgulamanın doğru olacağını düşünüyorum. Bu tarz “dijital x” tanımlamalarında sıklıkla fiziksel dünyadaki kavramların dijital kopyalarını oluşturma şeklinde bir çözümün tercih edilmesi ile karşılaşıyorum (mesela pazardaki çoğu mobil ödeme çözümlerinde bunu gözlemlememiz mümkün, fiziksel dünyadaki “cüzdanı aç — bir kart seç — doğrulama yap — ödemeyi tamamlama” akışının aynen korunup sadece kullanım kolaylığı üzerinde geliştirilmeler ile karşılaşıyoruz), oysa kavramları dijital dünyanın ihtiyaçları, gereksinimleri, kullanım modelleri, değer yargıları, kullanıcı alışkanlıkları gibi açılardan inceleyip değerlendirerek yeniden tanımlayıp oluşturmamız gerekiyor.
Kimlik kavramı temel olarak bireyin kendisini, kendisi ile ilgili tüm özelliklerini ve bu bütünün dünyaya yansıtılması olarak tanımlanır. Bu noktada sevdiğim yaklaşımlardan bir tanesi kimlik kavramını “kişinin kendisi ile ilgili veriler bütünü” olarak tanımlamaktadır. Bu şekilde yeni açılardan konuyu değerlendirmeye başladığımızda ise karşımıza aniden yeni sorular, soru işaretleri çıkmaya başlar; kimlik bize ait ise bu kimlik ile dünya arasındaki etkileşimden doğan veri kime aittir? Facebook, Twitter, LinkedIn gibi platformlara mı? Yoksa veriyi oluşturan bize mi?
Dijital dünyada kimlik kavramı üzerinde düşünmeye devam ettiğimizde çeşitli özellikleri, tanımları içermesi gerektiğini görmeye başlarız, bunlardan bazılarına değinmek gerekirse:
- Kısmi ama yeterli bilgi paylaşımı: Burada çok kullanılan, bar örneği üzerinden ilerleyelim. Bar tarzı içki satılan bir mekana girdiğinizde genelde size yasal nedenlerden dolayı 18 yaşından büyük olup olmadığınız sorulur ve bu durumlarda yeterliliğinizi göstermek için üzerinizdeki fiziksel kimliği (nüfus cüzdanı, ehliyet, pasaport gibi) paylaşırsınız. Bu senaryoda sizden talep edilen sadece belirli bir yaşın üzerinde olup olmadığınıza dair bir evet/hayır bilgisi iken aniden kendimizi ait bulunduğumuz durum ile ilişkisi olmayan, duruma herhangi bir katkı sunmayan diğer kişisel bilgilerimizi (doğum tarihi, doğum yeri, kan grubu, anne adı gibi) paylaştığımız bir an içerisinde buluruz. Yeni dünyanın kimlik yaklaşımında ise sadece yeterli bilgiyi, sadece gerekli olan durumlarda paylaşabilir olmalıdır.
- Akıllı bir şekilde aksiyon alma: Yine bar örneği üzerinde devam edelim, gördüğünüz gibi olayın diğer tarafında kimlik bilgisini talep eden kişinin kim olduğunu bilmeden aksiyon alıyoruz, halbuki “Yaşımı soran kişi kim?”, “Benden bu bilgiyi talep etme hakkına sahip mi?” gibi soruları sorup, cevaplarına ulaşabiliyor olmamız gerekir. Yeni dünyanın kimlik yaklaşımında belirli bir seviyede mantıksal yaklaşımlar sergileyebilecek bir yetkinlik olmalıdır.
- Bilgi doğrulayıcılar, sağlayıcılar: Bar örneğini kullanarak ilerlemeye devam edelim, varsayalım kişisel dijital imzanızı (dünya ile paylaştığınız açık dijital anahtarınıza karşılık gelen sadece sizin bildiğiniz özel dijital anahtarınızı) kullanarak gerekli kimlik bilgisini sundunuz, bu durumda paylaştığınız verinin sahipliğinin size ait olduğunu göstermiş oldunuz, peki gerçekten 18 yaşından büyük müsünüz? Bu verinin doğruluğunu sağlayabilecek, garanti edebilecek ilgili taraflarca kabul edilen güvenilir bir kaynak, kurum olmadan bundan nasıl emin olabilirsiniz? Böyle bir kurumun olması durumunda bu kurum tarafından sağlanan doğruluk onayına engelsiz bir şekilde erişebiliyor musunuz? Yeni dünyanın kimlik çözümleri anlık, açık, erişilebilir bu tarz yapıları içermelidir.
Yukarıda belirtilenler gibi ihtiyaçları ve senaryoları değerlendirdiğimizde yeni dünyada kimlik kavramını basitçe iki temel kısımdan oluşan bir model ile tasarlayabiliriz:
- Kasa: Bu merkezi yapı kişiye ait tüm verilerin saklandığı bir ortamı tanımlama için kullanılır; devlet tarafından sağlanan kimlik, tıp geçmişimiz, eğitim bilgilerimiz gibi tüm veriler burada tutulur.
- Alt kimlik (persona): Alt kimlikler dış dünya ile olan etkileşimi kontrol eder, içinde bulunulan duruma göre gerekli seviyedeki bilgiyi paylaşır, verdiğimiz yetkiler kapsamında temel aksiyonları gerçekleştirir. Burada çoklu bir yapı söz konusudur, kişinin ihtiyaçlarına ve etkileşime geçtiği ortama göre devreye giren çeşitli alt kimlikler mevcuttur (sosyal ağları kullanırken devrede olan alt kimlik, bankacılık işlemlerinde devrede olan alt kimlik gibi). Alt kimlikler ayrıca bu dijital dünyada bıraktığımız izlerinde toplanmasından sorumludurlar.
Yazının ilk başına geri dönersek bu şekilde tasarlanmış bir kimlik yapısı blockchain üzerinde nasıl yönetilebilir?
Burada ilk olarak akla gelen yaklaşım “kasa” olarak adlandırdığımız yapının içerisindeki bilgilerin blockchain üzerinde tutulması olabilir ancak kişisel olarak bu tarz bir davranışın hem blockchain’i yanlış anlama (bu sıklıkla karşılaştığım bir durum, blockchain’i dağınık bir veri tabanı olarak düşünüp olayı sadece bir veri saklama problemi şeklinde değerlendirme) hem de soruya sadece teknoloji açısından yaklaşma (bu da benzer şekilde sıklıkla karşılaştığım ve “elimizde bir teknoloji var, haydi bunu her yerde uygulayalım” olarak özetlenebilecek bir durum) olduğunu düşünüyorum.
Kasa içerisinde tutulacak veriler için temel problemlerden bir tanesi sahiplik (ilgili kişiye aitlik) ve doğruluk (karşı tarafın kabul ettiği bir otorite, kurum vb. tarafından içeriğin onaylanması) ilişkisinin sağlanması olacaktır, bu noktada kasa içerisindeki tutulan bu verilere ait hareketlerin (yaratım, değişiklik yapma, iptal etme gibi) blockchain üzerinde tutulması bir çözüm olabilir.
Bu konuda bir senaryo şu şekilde olabilir:
- İlgili doküman verisi(örneğin ehliyet) kasa yapısı içerisinde blockchain’den bağımsız bir şekilde tutulur.
- Veri kümesine özet bilgisi (hash) kişinin açık dijital anahtarı (public key) ile birlikte ilgili yetkili kurumun (bu durumda Emniyet Genel Müdürlüğü) gizli dijital anahtarı (private key) ile imzalanmış şekilde blockchain üzerinde tutulur.
- Blockchain’e erişebilen herhangi bir sistem yukarıda belirtilen kayıta ulaşarak, ilgili verinin (özet bilgisinin tek yönlü bir fonksiyon olmasından dolayı) yetkili bir kurum tarafından (yetkili kurumun açık dijital anahtarını kullanarak) verildiğini ve ilgili kişiye ait olduğunu (kişinin sadece kendisinde bulunan dijital gizli anahtarı imzalama yapmasını sağlanarak) kontrol edebilir.
- Bu şekilde ilgili kimlik bilgisinin sahiplik ve doğruluk ilişkisi blockchain’in sunduğu diğer özellikler ile birlikte sağlanmış olur.
Yukarıda bahsettiğim yeni kimlik yapısındaki temel iki kavramından birisi olan “alt kimlik” yapısının ise yükümlülükler (belirli isteklere, durumlara özel etkileşime geçme) ve yetenekler (temel mantık akışlarını bağımsız, otomatik olarak yönetebilme) açısından “akıllı sözleşme / smart contract” yapısı ile oldukça örtüştüğünü düşünüyorum (akıllı sözleşmeler hakkında daha fazla bilgi almak için bir önceki yazımı buradan okuyabilirsiniz). Bu yapılar kendilerine gelen mesajları (etkileşim isteklerini) otomatik olarak çeşitli mantıksal akışlardan geçirip (mesela gelen mesajın kimlik doğrulamasının yapılması gibi) içlerinde tanımlı çeşitli kural ve karar ağacı yapılarını kullanarak cevap dönebilirler yada yönlendirme yapabilirler. Herhangi bir veri ihtiyacı olduğunda ise bunu “oracle” adı verilen yapılar üzerinden gerçekleştirebilirler (bu şekilde kasa sistemine yada herhangi bir dış sisteme çift yönlü erişim sağlanabilir).
Akıllı sözleşme tabanlı bir “alt kimlik”, kendisine bir istek geldiğinde:
- Gelen isteği kontrol ederek yetkisiz olduğuna karar verip bu şekilde geri dönüş yapabilir.
- İstek doğrulaması ve yetkilendirmesi için başka bir sisteme (başka bir akıllı sözleşme gibi) yönlendirebilir.
- İstek içeriği ve istek yapanın yetkisine göre kişinin kasa yapısına erişip gerekli verileri alıp paylaşabilir.
Ancak bu yaklaşım bu hali ile kısmi bilgi paylaşımı gereksinimine tam olarak cevap verememektedir, bu şekilde kasa içerisindeki veriler ancak bütünlükleri bozulmadan dış dünyaya sunulabilir (“18 yaşından büyük müsünüz?” sorusuna nüfus cüzdanı ile cevap vermek gibi). Burada alternatif bir yaklaşım, bilgi sağlayıcı/doğrulayıcı kurumların sağlayacakları çeşitli ara yüzlerle kısmi doğrulama istekleri hizmet sunması olabilir. Bu durumda “18 yaşından büyük müsünüz?” sorusu geldiğinde alt kimlik bu soruya cevap sağlayabilecek veri kümesini bulur (örneğin nüfus cüzdanı), kendisine bu veriyi sağlayan yetkili kurumun (bu durumda nüfus genel müdürlüğü) servisine erişerek paylaşmak istediği kısmi bilgi için onay talep eder (“x gizli-açık anahtar ikilisine sahip bana sağladığın y özet değeri ile eşleşmiş nüfus cüzdanı kapsamında z tarihi itibari ile 18 yaşından büyük olduğumu doğrular mısın?”), yetkili kurum tarafından sağlanan onaylı cevabı kendisine gelen isteğe cevap olarak iletir (ayrıca ileride kullanmak üzere bu kısmi bilgiyi isterse kasa yada blockchain üzerinde tutmayı tercih edebilir).
Yazımı dijital kimlik ve dijital para konularında önde gelen fikir önderlerinden David Birch’in sevdiğim bir cümlesi ile bitirmek istiyorum:
“Gelecekte bankalar para saklamayacaklar, kimlik saklayacaklar”