If you're seeing this message, it means we're having trouble loading external resources on our website.

Bağlandığınız bilgisayar bir web filtresi kullanıyorsa, *.kastatic.org ve *.kasandbox.org adreslerinin engellerini kaldırmayı unutmayın.

Ana içerik

Bitcoin: İşlem Protokolleri

Değişik şifreleme uygulamalarında ve bitcoin işlemlerinde kullanılan şifreleme protokollerinin açıklanması. Orijinal video Zulfikar Ramzan tarafından hazırlanmıştır.

Tartışmaya katılmak ister misiniz?

İngilizce biliyor musunuz? Khan Academy'nin İngilizce sitesinde neler olduğunu görmek için buraya tıklayın.

Video açıklaması

Arkadaşlar merhaba iş ispatı protokolü birilerinin önemli miktarda bilişimsel çaba gösterdiklerini ispat etmek için kullanılan bir araçtır. İş ispatı protokolleri genelde bulmacalara benzerler. Bir taraftan bu bulmacaların çözümü zor olmakla beraber, ciddi bilişimsel çaba gerektirirler Diğer taraftan bu çaba aslen kolaylıkla doğrulanabilir. Bu gayretin doğrulanma süreci ilk baştaki gerçekleştirilme sürecinden çok daha az zaman alır Bu tip protokollerin birkaç uygulaması söz konusudur. Örneğin, belki daha önce duymuş olabileceğiniz Bitcoin elektronik ödeme sistemi. Bu sistemde işlem öbeği zincirlerinin yaratılması bağlamında iş ispatı projesinden yararlanılır. Bu tip iş ispatı protokolleri çok yeni kullanıcısı olan Bitcoinin dışında, geçmişte başka uygulamalar içinde önerilmişti. Mesela bu projeler DoS (dos) saldırıları olarak bilinen Servis Reddetme saldırılarının caydırılması gibi konular için önerilmişti Buradaki temel fikir belirli bir servisi kullanım müsaadesinin alınabilmesi için Çok özellikli bir bilişimsel problemin, bir iş ispatı bulmacasının çözülmesi zorunluluğuydu. Burada amaç bu iş için harcanacak çabanın etkin olarak istemciyi boğmasıdır. Yanıtlayıcı istemcinin zorunlu işi yerine getirip getirmediğini kolayca kontrol edebilir. Ve sadece bu işlem yerine getirilmiş ise hizmet talebine yanıt verir Ben bu tip iş ispatı protokollerinin spam mailleri, yani istenmeyen e-postaların tespitinde kullanıldığını gördüm. Şüphesiz hepimiz istenmeyen e-postanın ne olduğunu biliyoruz. Gelen kutunuzda görmek istemediğiniz, isteğiniz dışında hesabınıza düşen mesajlar. İş ispatı protokolü belirli bir elektronik postaya bağlanabilir. Bu kavramsal olarak bir mesaja Pul yapıştırmaya benzer fakat pulun karşılığını parayla ödemek yerine CPU döngüleri aracılığıyla yapmış olursunuz Sadece az sayılarda mesaj gönderen yasal bir merkeze bu tip bir iş ispatı protokolü çok da yüksek tutarda olmaz. Çok az sayıda yürütüldükleri sürece çok küçük karşılıkları olacaktır. Gayet makul bir çeşit engel teşkil edecektir Yüz binlerce, milyonlarca istenmeyen e-mesaj gönderen biri için Her bir mesajın ve gönderilenin ardından sürekli CPU döngüleri yaymak engelleyici derecede pahalıya mal olacaktır. Şu ana kadar sizlere bu iş ispatı protokollerinin uygulamaları hakkında genel bilgi verdim. Şimdi pratikte nasıl çalıştıklarını irdeleyelim İlk olarak bu protokollerin verilen bir sınama dizesiyle bağıntılı çalıştıklarını düşünelim Bu sınama dizesini “c” ile ifade edelim. Bu protokolle çalışmayı deneyen birisi ne yapar? sorusunu düşünelim şimdi İş ispatçısı temelde bu sınama dizesine bağlı olan ilişkili ispatı ortaya çıkarmaya çalışır Bu sınamaya ilişkin belirli matematiksel özelliği olan bir karşılık olacaktır Fark ettiğiniz üzere, sınama dizesinden bahsederken, örneğin istenmeyen e-posta bağlamında bu sınama dizesinin bir maildeki mesajı ifade edebilir. Yani eldeki işe çok özgü bir şey olmalıdır. İspatçı bir yanıt dizesi ile gelecektir. Yanıt dizesini de “r” ile ifade edelim Yok, p diyelim. Bu kullanılan bir kısaltma çünkü. Yanıt kanıtı. İspatçı bir yanıt kanıtı dizesi ile gelecektir. Siz bu sınama ve kanıt dizelerini alarak eş güdüm uygular ve SHA (şa)-256 ya da benzeri bir şifrelemeli özet fonksiyonuna tabi tutarsınız. Bu sınama ve kanıt dizesini alıp, birleştirip bunlara şifrelemeli özetleme fonksiyonunu temsil eden bir dizi matematiksel dönüştürücü uygularsam çok belirli özelliği olan bir çıktı elde ederim. Çıktının ilk sayısal bitleri çok fazla sıfırdan oluşacaktır. Diyelim ki ilk otuz ya da kırk bit sıfır olsun. Ve diğer bitler normalde olması gereken değerler olsun. Bizim burada yapmaya çalıştığımız şey kanıt dizesi ile sınama dizesini bitiştirdiğimizde özet fonksiyonundan elde edilecek çıktının ne olacağı. Şayet elinizde iyi bir şifrelemeli özetleme fonksiyonu varsa bu tip bir kanıt dizesini bulabilmenin tek yolu mümkün olduğu kadar çok ihtimali fiilen denemektir. Uygun olanı bulana kadar birçok kanıt dizesini denemek Eğer içerisinde ardışık olarak yaklaşık kırk sıfır bulunan bir çıktı elde etmek istiyorsanız bu hemen hemen iki üzeri kırk deneme yapmanızı gerektirir. Yani İki üzeri kırk adet farklı özetfonksiyonu talebi olucaktır Eğer bu miktarda dize deneyebilirseniz biri büyük ihtimalle işe yarayacaktır. Sizde bir kanı oluşturması için söylüyorum. Bu yaklaşık bir trilyon eder. Dolayısıyla eğer bir trilyon farklı dizeyi dener ve her birini özetlerseniz bir ihtimal kırk biti sıfırdan oluşan bir sayı dizesi elde edebilirsiniz Bazen bu bir trilyon denemeden daha az sürebileceği gibi bazen de biraz daha fazla deneme gerektirebilir Çok şanslı ya da çok şanssız olabilirsiniz. İlk kırk biti sıfır olan bir dize bulmanız ortalama bir trilyon deneme gerektirir Bu çok kolay olmamakla birlikte olasılıklar dâhilindedir Bu tip iş ispatı projelerini çözümlemek deneme yanılma yoluyla daha zor olduğu için sanırım daha verimli olan şifrelemeli özet fonksiyonlarıdır. Hatırlayalım, şifrelemeli özet fonksiyonlarında elde edilen çıktı yaklaşık olarak daha gelişi güzel seçimlerden oluşur. Nitekim her bir bit çıktısı birçok yazı tura atışından sonra ortaya çıkmış gibi görünür Yazı tura atıp tura gelirse sıfır, yazı gelirse bir diye düşünülmüş gibi görünmektedir Gerçekte ne yaptığınızın ifadesi şöyle olacaktır “Şayet kırk yazı tura atışı yaparsam bunların kırk defa art arda tura gelme olasılığı ne olacaktır?” Bu çok küçük bir ihtimal olmakla beraber olasılık dışı bir durum değildir Eğer kırk adet bozuk parayı bir trilyon kez yazı tura atarsanız Kırkının da bir kez tura gelebileceğini umabilirsiniz.Bir trilyon deneme sonucunda Bu iş ispatı projelerinin ilginç bir özelliği ise arttırılabilir veya azaltılabilir olmalarıdır Mesela, diyelim ki doğru kanıt dizesini ortaya çıkarmak için daha fazla bilişimsel ağırlık kaldırılmasını istiyorsunuz. İspatlanmak istenen işi arttırmak istiyorsunuz Bu durumda yapabileceğiniz en verimli hareket öndeki sıfırların sayısını arttırmak olur Ekleyeceğiniz her sıfır sarf edilecek bilişimsel gayreti ortalama olarak ikiye katlar. Çünkü tura gelmesi gereken bir başka yazı tura atışını talep etmiş olursunuz. Bu da yazı tura atışlarının ikiye katlanmasını gerektir.Şayet kırk bir adet bozuk param varsa ve aralıksız kırk bir tura gelmesini istiyorsam bu aralıksız kırk tura gelme olasılığı için gerekenin iki katı gayret gerektirecektir Aynı şekilde eksilttiğiniz her sıfır sonucunda gereken bilişimsel gayret bir öncekine göre yarıya inecektir Dolayısıyla eğer ilk otuz dokuz bitin sıfır olmasını istiyorsam kırk bitin sıfır olmasında gereken yazı tura atışının yarısı kadar atış gerekecektir İşin iyi yanı ise, diyelim ki birisi tüm olasılıkları denedi ve nihayet işe yarar bir kanıt dizesiyle ortaya çıktı Bu kanıt dizesinin doğru iş ispatı olduğunu tasdik etmek çok kolaydır. Tüm yapmanız gereken sınama dizesi ile bunu birleştirip özetlemektir. Mesela birisi bu dizeyi sundu. “P ilk” diye adlandıralım. Tüm yapmanız gereken p-ilk ile sınama dizesini birleştirip özetleme fonksiyonuna girmek olacaktır. İlk kırk bitin sıfır olup, olmadığını görürsünüz. Tüm yapmanız gereken c ile p-ilk’i bitiştirmek ve bir kereye mahsus olmak üzere özetleme fonksiyonunu uygulamak Böylece çıktının önünde olması gereken sıfır adedini teyit edebilirsiniz. Şayet çıktı gerekli sıfır adedine sahipse o zaman iş ispatını geçerli olarak değerlendirebilirsiniz Çünkü birilerinin bu p-ilk dizesine ulaşmak için gerçekten çok fazla zaman harcadığını ve birçok deneme yaptığını biliyorsunuz. Öyle ki c ile bitiştirildiğinde uygulanan şifrelemeli özetleme fonksiyonun sonucu size gerekli sıfır adedini verebilen bir p-ilk’e ulaşılmış. Gördüğünüz gibi bunlar epey kolay fakat aynı zamanda epey beceri gerektiren projeler. Umarım bu video sizlere bu iş ispatı protokollerinin çalışma mekanikleri hakkında bir fikir verebilmiştir Tekrar görüşmek dileğiyle hoşça kalın