Cryptonote ve Cryptonight Kavramları

irfan akarsu
UniChain
Published in
4 min readAug 1, 2018

Herkese merhaba. Bu yazıda Cryptonote Protokolü’nden ve Cryptonight Algoritması’ndan bahsedeceğim.

Bu iki terim Monero, Bytecoin gibi gizliliğin esas alındığı coinler sayesinde pek çok yerde karşımıza çıkıyor. Ben de karşımıza çıkan bu terimlerin ne olduğunu açıklamak adına bu yazıyı yazmak istedim.

Terimlerin daha iyi anlaşılabilmesi için öncelikle gizlilik alanında en popüler coinlerden biri olan Bytecoin’den biraz bahsedip burada geçen ifadeleri açıklayarak yazımı sizlere sunacağım.

Bytecoin

Bytecoin, başarıyla oluşturulan ilk CryptoNote tabanlı para birimidir. Ayrıca en popüler CryptoNote coinlerinden biridir ve CryptoNote ekibi ile yakın işbirliği içinde yaratılmıştır.

CryptoNote teknolojisinin ilk uygulaması geliştirilmeye başlandığı Temmuz 2012 tarihinden günümüze kadar Bytecoin geliştiricileri, CryptoNote teknolojisinin geliştirilmesine önemli katkılar sağlamaktadır.

Bytecoin dışındaki diğer CryptoNote projelerini de incelemek isterseniz bu adresten bakabilirsiniz.

Bytecoin’den forklanan diğer coinleri görebileceğiniz şema

CryptoNight

CryptoNight, sıradan bir bilgisayarın CPU’su ile uyumlu olarak çalışabilecek şekilde tasarlanmış bir iş kanıtlama algoritmasıdır. Ayrıca, CryptoNote’un arkasındaki teknolojidir ve çalışma şekli Bitcoin ve Ethereum ile kıyaslandığında oldukça farklıdır.

CryptoNight’ın en önemli özelliği, ASIC cihazlarını kullanarak madencilik gücünü arttırmanın daha zor olmasıdır. Bu sayede madenciliğin neredeyse merkezileştirilmiş sistemlerden ziyade dağınık biçimde yapılmasına yardımcı olacağı düşünülmektedir.

Algoritmanın teknik detaylarını incelemek isterseniz bu adresten yararlanabilirsiniz.

Cryptonote

CryptoNote, merkezi olmayan gizlilik odaklı dijital para birimlerini destekleyen bir uygulama katmanı protokolüdür.

CryptoNote para birimleri, Bitcoin gibi yerleşik para birimleri tüm bakiyelerini ve işlemlerini kaydeden dağıtılmış bir kayıt defteri kullanırlar. Fakat Bitcoin’den farklı olarak, CryptoNote işlemleri, parayı kimin gönderdiğini veya aldığını, tüm bunlar blok zinciri üzerinde şifreli olarak kaydedildiği için takip edilemez.

Şimdi Cryptonote sisteminde gizliliğin hangi yöntemlerle sağlandığını inceleyelim;

-Ring Signatures —Çember İmzalar:
Sıradan işlemlerde, dijital imza (ör. (EC) DSA, Schnorr, vs…) doğrulama işlemi için imzalayanın public keyini içerir. İmzalama aslında yazarın ilgili private keye sahip olduğunu kanıtladığı için gerekli bir şarttır.

Sıradan işlemlerde imzalama

Ring Signature (Çember İmza), doğrulama için birkaç farklı ortak anahtarın kullanılacağı daha karmaşık bir şemadır.

Çember imzada, her kullanıcının kendi private ve public keyi var. Diğer sistemlere göre farklılığı ise; kullanıcının işlemleri tekil olarak değil bir grubun üyesi olarak imzalamasıdır. Zaten ring signature ismi de buradan geliyor. Bu nedenle, aşağıdaki örnekteki gibi Alice, Bob ve Carol’un ortak anahtarlarıyla oluşturulmuş bir çember imza ile karşılaşırsanız, yalnızca bu kişilerin birisinin imzalayan olduğunu iddia edebileceksiniz, ancak onu tespit edemeyeceksiniz.

Halka İmza

Bu kavram, işlem için geçerli olan çember imzada diğer üyelerin ortak anahtarlarını kullanarak ağa gönderilen dijital işlemlerin izlenememesi için kullanılabilir. Bu yaklaşım, işlemin yaratıcısının işlemde belirtilen tutarı harcamaya uygun olduğunu, ancak kimliğinin çember imzalarında kendi çember imzalarında kullandığı kullanıcılardan ayırt edilemeyeceğini kanıtlar.

Untraceable transactions

Diğer işlemlerin, sizin işlemlerinizi kısıtlamadığı unutulmamalıdır. İşlem sırasında kimliklerin gizli kalması adına sizin public keyiniz birçok başka kişinin çember imzası içinde görünebilir. Ayrıca,(aynı private keyler kullanılmadığı sürece) iki kullanıcı aynı ortak anahtar kümesiyle çember imza oluşturuyorsa, oluşan imzalar farklı olacaktır.

Unlinkible Transactions — Kaynağı Bilinmeyen İşlemler:
Normalde, public adresinizi gönderdiğiniz zaman, bir Ring Signature’nin içinde gizlenmiş olsa bile tüm işlemleriniz herkes tarafından kontrol edebilir, bu yöntemde gizliliği sağlamak için yüzlerce anahtar oluşturabilir ve bunları ödeme yapan kişilere özel olarak gönderebilirsiniz. Ancak bunlar işlem fazlalığı olur ve tek bir genel adrese sahip olmanın kolaylığını ortadan kaldırır.

Sıradan Takip Edilebilen İşlemler

CryptoNote, bu ikilemi, her bir p2p ödemesi için tek bir ortak anahtardan türetilen, birden çok benzersiz tek seferlik anahtarın otomatik olarak oluşturulmasıyla çözmektedir.

Çözüm, Diffie-Hellman anahtar değişim algoritmasının akıllıca değiştirilmesinde yatmaktadır. Başlangıçta iki tarafın, ortak anahtarlarından türetilen ortak bir gizli anahtar(secret key) üretmesine izin verilir. Cryptonote’da gönderici, ödemenin bir kerelik anahtarını hesaplamak için alıcının genel adresini ve kendi rastgele verilerini kullanır.

Gönderen anahtarın sadece public kısmını üretebilir, sadece alıcı özel parçayı hesaplayabilir, dolayısıyla alıcı, işlemin gerçekleşmesinden sonra fonları serbest bırakabilen tek kişidir. Her bir işlemin kendisine ait olup olmadığını belirlemek için tek bir kontrol yapması gerekir. Bu işlem kendi özel anahtarını içerir, dolayısıyla üçüncü taraflar bu kontrolü gerçekleştiremez ve gönderenin oluşturduğu tek seferlik anahtar ile alıcının eşsiz(unique) public adresi arasındaki bağlantıyı keşfedemez.

Unlinkable transactions

Protokolün önemli bir kısmı, gönderici tarafından rastgele verilerin kullanılmasıdır. Gönderici ve alıcının her ikisi de tüm işlemler için aynı kalsa bile, her zaman farklı tek seferlik(one-time) anahtarla sonuçlanır (bu nedenle anahtara “tek seferlik” denir). Dahası, her ikisi de aynı kişi olsalar bile, tek seferlik anahtarlar da tamamen benzersiz olacaktır.

Cryptonote protokolünün güvenliği sağlama adına uyguladığı ana işlemler bunlardı.

Ayrıca kendi cryptonote coininizi oluşturmak için bu linkten faydalanabilirsiniz.

cryptonote bölümdeki yazılar bu adresten faydalanılarak yazılmıştır.

Ek olarak,

Cryptonote protokolünü incelerken beni heyecanlandıran bir projeden de kısaca bahsetmek istiyorum:

Dero,tıpkı diğer cryptonote projeleri gibi Bytecoin’den forklanarak başlatıldı. DERO cryptonote protokolünü kullanarak gizliliği ve ekstra olarak geliştiricilere akıllı sözleşmelerle bu alanda yeni şeyler üretme imkanı sağlıyor.

Akıllı Sözleşmeleri ve Güvenliği İfade Ediyor

Eğer bu hedeflerini gerçekleştirebilirlerse, gizlilik alanında projeler üretmek isteyen geliştiriciler için oldukça faydalı bir proje olacağına inanıyorum.

Umarım Cryptonote ve Cryptonight terimleri ile ilgili bilgilenmenize yardımcı olmuşumdur, görüşmek üzere :)

--

--