DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

Açık ağlarda veri koruması olmadan yaygın olarak kullanılan yardımcı araçlardan birinin dijital sertifika teknolojisi olduğu bir sır değil. Ancak teknolojinin en büyük dezavantajının dijital sertifika veren merkezlere koşulsuz güven olduğu bir sır değil. ENCRY Teknoloji ve Yenilik Direktörü Andrey Chmora, organizasyona yeni bir yaklaşım önerdi Açık Anahtar Altyapısı (Açık Anahtar Altyapısı, PKI), mevcut eksikliklerin giderilmesine yardımcı olacak ve dağıtılmış defter (blockchain) teknolojisini kullanan. Ama önce ilk şeyler.

Mevcut genel anahtar altyapınızın nasıl çalıştığını biliyorsanız ve temel eksikliklerini biliyorsanız aşağıda değiştirmeyi önerdiğimiz şeye geçebilirsiniz.

Dijital imzalar ve sertifikalar nedir?İnternetteki etkileşim her zaman veri aktarımını içerir. Verilerin güvenli bir şekilde iletilmesini sağlamak hepimizin çıkarınadır. Peki güvenlik nedir? En çok aranan güvenlik hizmetleri gizlilik, bütünlük ve özgünlüktür. Bu amaçla şu anda asimetrik kriptografi veya genel anahtarlı kriptografi yöntemleri kullanılmaktadır.

Bu yöntemleri kullanmak için, etkileşim konularının iki ayrı eşleştirilmiş anahtarın (genel ve gizli) olması gerektiği gerçeğiyle başlayalım. Onların yardımıyla yukarıda bahsettiğimiz güvenlik hizmetleri sağlanmaktadır.

Bilgi aktarımının gizliliği nasıl sağlanır? Verileri göndermeden önce, gönderen abone, alıcının genel anahtarını kullanarak açık verileri şifreler (kriptografik olarak dönüştürür) ve alıcı, eşleştirilmiş gizli anahtarı kullanarak alınan şifreli metnin şifresini çözer.

DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

İletilen bilginin bütünlüğü ve gerçekliği nasıl sağlanır? Bu sorunu çözmek için başka bir mekanizma oluşturuldu. Açık veriler şifrelenmez, ancak kriptografik karma işlevinin uygulanmasının sonucu - giriş veri dizisinin "sıkıştırılmış" görüntüsü - şifrelenmiş biçimde iletilir. Bu tür karma işleminin sonucuna "özet" adı verilir ve gönderen abonenin ("tanık") gizli anahtarı kullanılarak şifrelenir. Özetin şifrelenmesi sonucunda dijital bir imza elde edilir. Açık metinle birlikte alıcı aboneye (“doğrulayıcı”) iletilir. Tanığın genel anahtarındaki dijital imzanın şifresini çözer ve bunu, doğrulayıcının alınan açık verilere dayanarak bağımsız olarak hesapladığı kriptografik karma işlevinin uygulanmasının sonucuyla karşılaştırır. Eşleşirlerse bu, verilerin gönderen abone tarafından orijinal ve eksiksiz bir biçimde iletildiğini ve bir saldırgan tarafından değiştirilmediğini gösterir.

DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

Kişisel veriler ve ödeme bilgileriyle çalışan kaynakların çoğu (bankalar, sigorta şirketleri, havayolları, ödeme sistemleri ve ayrıca vergi hizmeti gibi devlet portalları) aktif olarak asimetrik şifreleme yöntemlerini kullanır.

Dijital sertifikanın bununla ne alakası var? Basit. Hem birinci hem de ikinci süreçler genel anahtarları içerir ve merkezi bir rol oynadıkları için anahtarların gerçekten gönderene (imza doğrulama durumunda tanığa) veya alıcıya ait olduğundan ve başkaları tarafından kullanılmadığından emin olmak çok önemlidir. saldırganların anahtarlarıyla değiştirildi. Bu nedenle, genel anahtarın orijinalliğini ve bütünlüğünü sağlamak için dijital sertifikalar mevcuttur.

Not: Genel anahtarın gerçekliği ve bütünlüğü, genel verilerin gerçekliği ve bütünlüğü ile tamamen aynı şekilde, yani elektronik dijital imza (EDS) kullanılarak doğrulanır.
Dijital sertifikalar nereden geliyor?Güvenilir sertifika yetkilileri veya Sertifika Yetkilileri (CA'lar), dijital sertifikaların verilmesinden ve sürdürülmesinden sorumludur. Başvuru sahibi, CA'dan bir sertifika verilmesini talep eder, Kayıt Merkezinde (CR) kimlik doğrulamasından geçer ve CA'dan bir sertifika alır. CA, sertifikadaki genel anahtarın tam olarak adına verildiği kuruluşa ait olduğunu garanti eder.

Genel anahtarın gerçekliğini onaylamazsanız, bu anahtarın aktarımı/saklanması sırasında saldırgan onu kendi anahtarıyla değiştirebilir. Değiştirme gerçekleşmişse, saldırgan gönderen abonenin alıcı aboneye ilettiği her şeyin şifresini çözebilecek veya açık verileri kendi takdirine göre değiştirebilecektir.

Asimetrik kriptografinin mevcut olduğu her yerde dijital sertifikalar kullanılır. En yaygın dijital sertifikalardan biri, HTTPS protokolü üzerinden güvenli iletişim sağlayan SSL sertifikalarıdır. Çeşitli yargı bölgelerinde kayıtlı yüzlerce şirket, SSL sertifikalarının verilmesinde yer almaktadır. Ana pay beş ila on büyük güvenilir merkeze düşüyor: IdenTrust, Comodo, GoDaddy, GlobalSign, DigiCert, CERTUM, Actalis, Secom, Trustwave.

CA ve CR, aşağıdakileri de içeren PKI bileşenleridir:

  • Açık sözlük – dijital sertifikaların güvenli bir şekilde saklanmasını sağlayan, halka açık bir veritabanı.
  • İptal edilen sertifikaların listesi – iptal edilen genel anahtarların dijital sertifikalarının güvenli bir şekilde saklanmasını sağlayan bir genel veritabanı (örneğin, eşleştirilmiş bir özel anahtarın tehlikeye atılması nedeniyle). Altyapı özneleri bu veritabanına bağımsız olarak erişebilir veya doğrulama sürecini basitleştiren özel Çevrimiçi Sertifikasyon Durum Protokolünü (OCSP) kullanabilir.
  • Sertifika kullanıcıları – CA ile bir kullanıcı sözleşmesi imzalayan ve dijital imzayı doğrulayan ve/veya verileri sertifikadaki genel anahtara dayalı olarak şifreleyen hizmet verilen PKI özneleri.
  • İzleyiciler – sertifikadaki genel anahtarla eşleştirilmiş gizli bir anahtara sahip olan ve CA ile bir abone sözleşmesi imzalamış olan PKI deneklerine hizmet etti. Abone aynı anda sertifikanın kullanıcısı olabilir.

Bu nedenle, CA'ları, CR'leri ve açık dizinleri içeren ortak anahtar altyapısının güvenilir varlıkları aşağıdakilerden sorumludur:

1. Başvuru sahibinin kimliğinin doğruluğunun doğrulanması.
2. Ortak anahtar sertifikasının profilini oluşturma.
3. Kimliği güvenilir bir şekilde doğrulanan başvuru sahibine açık anahtar sertifikası verilmesi.
4. Ortak anahtar sertifikasının durumunu değiştirin.
5. Ortak anahtar sertifikasının güncel durumu hakkında bilgi verilmesi.

PKI'nın dezavantajları nelerdir?PKI'nın temel kusuru güvenilir varlıkların varlığıdır.
Kullanıcılar CA ve CR'ye koşulsuz olarak güvenmelidir. Ancak uygulamanın gösterdiği gibi, koşulsuz güven ciddi sonuçlarla doludur.

Son on yılda bu alanda altyapının zayıflığıyla ilgili birçok büyük skandal yaşandı.

— 2010 yılında RealTek ve JMicron'dan çalınan dijital sertifikalar kullanılarak imzalanan Stuxnet kötü amaçlı yazılımı çevrimiçi ortamda yayılmaya başladı.

- 2017 yılında Google, Symantec'i çok sayıda sahte sertifika vermekle suçlamıştı. O zamanlar Symantec, üretim hacimleri açısından en büyük CA'lardan biriydi. Google Chrome 70 tarayıcısında, bu şirket ve bağlı merkezleri GeoTrust ve Thawte tarafından verilen sertifikalara yönelik destek, 1 Aralık 2017'den önce durduruldu.

CA'ların güvenliği ihlal edildi ve bunun sonucunda herkes zarar gördü; CA'ların kendisi, kullanıcılar ve aboneler. Altyapıya olan güven sarsıldı. Ayrıca siyasi çatışmalar bağlamında dijital sertifikalar bloke edilebilir ve bu da birçok kaynağın işleyişini etkileyecektir. Birkaç yıl önce Rusya başkanlık yönetiminde korkulan şey tam olarak buydu; 2016'da RuNet'teki sitelere SSL sertifikaları verecek bir devlet sertifikasyon merkezi oluşturma olasılığını tartıştılar. Mevcut durum öyle ki, Rusya'daki devlet portalları bile Kullanılmış Amerikan şirketleri Comodo veya Thawte (Symantec'in bir yan kuruluşu) tarafından verilen dijital sertifikalar.

Başka bir sorun daha var: soru kullanıcıların birincil kimlik doğrulaması (kimlik doğrulama). Doğrudan kişisel temas olmadan dijital sertifika verme talebiyle CA ile iletişime geçen bir kullanıcı nasıl belirlenir? Artık bu durum altyapının imkanlarına göre durumsal olarak çözülüyor. Açık kayıtlardan bir şeyler alınır (örneğin, sertifika talep eden tüzel kişilere ilişkin bilgiler); başvuru sahiplerinin şahıs olduğu durumlarda, kimliklerinin pasaport gibi kimlik belgeleri kullanılarak doğrulandığı banka ofisleri veya postaneler kullanılabilir.

Kimliğe bürünme amacıyla kimlik bilgilerinin tahrif edilmesi sorunu temel bir sorundur. Bilgi-teorik nedenlerden dolayı bu sorunun tam bir çözümünün olmadığını belirtelim: a priori güvenilir bilgiye sahip olmadan, belirli bir konunun gerçekliğini onaylamak veya reddetmek imkansızdır. Kural olarak, doğrulama için başvuru sahibinin kimliğini kanıtlayan bir dizi belgenin ibraz edilmesi gerekmektedir. Pek çok farklı doğrulama yöntemi vardır ancak bunların hiçbiri belgelerin orijinalliği konusunda tam bir garanti vermez. Buna göre başvuru sahibinin kimliğinin gerçekliği de garanti edilemez.

Bu eksiklikler nasıl giderilebilir?PKI'nın mevcut durumundaki sorunları merkezileşme ile açıklanabiliyorsa, o zaman ademi merkeziyetçiliğin belirlenen eksikliklerin kısmen giderilmesine yardımcı olacağını varsaymak mantıklı olacaktır.

Merkezi olmayan yönetim, güvenilir varlıkların varlığı anlamına gelmez; merkezi olmayan genel anahtar altyapısı (Merkezi Olmayan Açık Anahtar Altyapısı, DPKI), o zaman ne CA'ya ne de CR'ye gerek yoktur. Dijital sertifika kavramını bir kenara bırakalım ve genel anahtarlarla ilgili bilgileri depolamak için dağıtılmış bir kayıt defteri kullanalım. Bizim durumumuzda, blockchain teknolojisi kullanılarak birbirine bağlanan bireysel kayıtlardan (bloklardan) oluşan doğrusal bir veritabanına kayıt adını veriyoruz. Dijital sertifika yerine “bildirim” kavramını devreye sokacağız.

Önerilen DPKI'de bildirim alma, doğrulama ve iptal etme süreci nasıl görünecek:

1. Her başvuru sahibi, kayıt sırasında bir form doldurarak bağımsız olarak bildirim başvurusunda bulunur ve ardından özel bir havuzda saklanan bir işlem oluşturur.

2. Sahibin ayrıntıları ve diğer meta verilerle birlikte genel anahtarla ilgili bilgiler, merkezi bir PKI'da verilmesinden CA'nın sorumlu olduğu dijital sertifikada değil, dağıtılmış bir kayıt defterinde saklanır.

3. Başvuru sahibinin kimliğinin doğruluğunun doğrulanması, olay gerçekleştikten sonra CR tarafından değil, DPKI kullanıcı topluluğunun ortak çabaları ile gerçekleştirilir.

4. Ortak anahtarın durumunu yalnızca böyle bir bildirimin sahibi değiştirebilir.

5. Herkes dağıtılmış deftere erişebilir ve genel anahtarın mevcut durumunu kontrol edebilir.

Not: Başvuru sahibinin kimliğinin topluluk tarafından doğrulanması ilk bakışta güvenilmez görünebilir. Ancak günümüzde tüm dijital hizmet kullanıcılarının kaçınılmaz olarak dijital bir ayak izi bıraktığını ve bu sürecin ivme kazanmaya devam edeceğini unutmamalıyız. Tüzel kişilerin açık elektronik kayıtları, haritalar, arazi görüntülerinin dijitalleştirilmesi, sosyal ağlar - bunların hepsi kamuya açık araçlardır. Hem gazeteciler hem de kolluk kuvvetleri tarafından soruşturmalar sırasında başarıyla kullanılıyorlar. Örneğin, Bellingcat'in veya Malezya Boeing'in kazasının koşullarını inceleyen ortak araştırma ekibi JIT'in soruşturmalarını hatırlamak yeterli.

Peki merkezi olmayan bir açık anahtar altyapısı pratikte nasıl çalışır? Teknolojinin kendisinin tanımı üzerinde duralım. 2018'de patentlendi ve bunu haklı olarak bilgi birikimimiz olarak görüyoruz.

Birçok genel anahtara sahip olan bir sahibin olduğunu ve her anahtarın kayıt defterinde saklanan belirli bir işlem olduğunu hayal edin. CA'nın yokluğunda tüm anahtarların bu özel sahibine ait olduğunu nasıl anlayabilirsiniz? Bu sorunu çözmek için, sahibi ve cüzdanı hakkında bilgi içeren (işlemin kayıt defterine yerleştirilmesi komisyonunun tahsil edildiği) sıfır bir işlem oluşturulur. Boş işlem, genel anahtarlarla ilgili verileri içeren aşağıdaki işlemlerin ekleneceği bir tür "çapadır". Bu tür işlemlerin her biri özel bir veri yapısı, yani bir bildirim içerir.

Bildirim, işlevsel alanlardan oluşan ve sahibinin genel anahtarı hakkındaki bilgileri içeren, kalıcılığı dağıtılmış kayıt defterinin ilgili kayıtlarından birine yerleştirilerek garanti edilen yapılandırılmış bir veri kümesidir.

Bir sonraki mantıksal soru sıfır işlemin nasıl oluştuğudur? Boş işlem (daha sonraki işlemler gibi) altı veri alanının toplamıdır. Sıfır işlemin oluşumu sırasında cüzdanın anahtar çifti (genel ve eşleştirilmiş gizli anahtarlar) devreye girer. Bu anahtar çifti, kullanıcının cüzdanını kaydettiği anda görünür; kayıt defterine sıfır işlem yapma komisyonu ve ardından bildirimlerle yapılan işlemler borçlandırılacaktır.

DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

Şekilde gösterildiği gibi, SHA256 ve RIPEMD160 karma fonksiyonlarının sırayla uygulanmasıyla bir cüzdan ortak anahtar özeti oluşturulur. Burada RIPEMD160, genişliği 160 bit'i aşmayan verilerin kompakt temsilinden sorumludur. Bu önemlidir çünkü kayıt defteri ucuz bir veritabanı değildir. Açık anahtarın kendisi beşinci alana girilir. İlk alan, önceki işlemle bağlantı kuran verileri içerir. Sıfır işlem için bu alan, onu sonraki işlemlerden ayıran hiçbir şey içermez. İkinci alan, işlemlerin bağlantısını kontrol etmeye yönelik verilerdir. Kısaca anlatmak gerekirse, birinci ve ikinci alanlardaki verilere sırasıyla "bağlantı" ve "kontrol" adını vereceğiz. Bu alanların içerikleri, aşağıdaki şekilde ikinci ve üçüncü işlemlerin bağlanmasıyla gösterildiği gibi yinelemeli karma işlemiyle oluşturulur.

DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

İlk beş alandaki veriler, cüzdanın gizli anahtarı kullanılarak oluşturulan elektronik imzayla onaylanır.

İşte bu, boş işlem havuza gönderilir ve başarılı doğrulamanın ardından kayıt defterine girilir. Artık aşağıdaki işlemleri buna “bağlayabilirsiniz”. Sıfır dışındaki işlemlerin nasıl oluştuğunu ele alalım.

DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

Muhtemelen gözünüze çarpan ilk şey, anahtar çiftlerinin bolluğudur. Zaten tanıdık olan cüzdan anahtar çiftine ek olarak, sıradan ve hizmet anahtar çiftleri de kullanılır.

Sıradan bir genel anahtar, her şeyin başlatıldığı şeydir. Bu anahtar, dış dünyada ortaya çıkan çeşitli prosedür ve süreçlerde (bankacılık ve diğer işlemler, belge akışı vb.) yer alır. Örneğin, sıradan bir çiftten gizli bir anahtar, çeşitli belgeler - ödeme emirleri vb. için dijital imzalar oluşturmak için kullanılabilir ve bir genel anahtar, bu dijital imzayı, bu talimatların daha sonra yürütülmesiyle doğrulamak için kullanılabilir; geçerlidir.

Hizmet çifti kayıtlı DPKI konusuna verilir. Bu çiftin adı amacına karşılık gelir. Sıfır işlemi oluştururken/kontrol ederken servis anahtarlarının kullanılmadığını unutmayın.

Tuşların amacını tekrar açıklayalım:

  1. Cüzdan anahtarları, hem boş bir işlemi hem de boş olmayan herhangi bir işlemi oluşturmak/doğrulamak için kullanılır. Bir cüzdanın özel anahtarı yalnızca cüzdanın sahibi tarafından bilinir ve bu kişi aynı zamanda birçok sıradan anahtarın da sahibidir.
  2. Sıradan bir genel anahtar, amacı açısından merkezi bir PKI'da sertifikanın verildiği bir genel anahtara benzer.
  3. Hizmet anahtarı çifti DPKI'ye aittir. Gizli anahtar kayıtlı kuruluşlara verilir ve işlemler için dijital imzalar oluşturulurken kullanılır (sıfır işlemler hariç). Public, bir işlemin kayıt defterine yerleştirilmeden önce elektronik dijital imzasını doğrulamak için kullanılır.

Böylece iki grup anahtar vardır. İlki, hizmet anahtarlarını ve cüzdan anahtarlarını içerir; bunlar yalnızca DPKI bağlamında anlamlıdır. İkinci grup sıradan anahtarları içerir; kapsamları değişebilir ve kullanıldıkları uygulama görevlerine göre belirlenir. DPKI aynı zamanda sıradan genel anahtarların bütünlüğünü ve orijinalliğini de sağlar.

Not: Hizmet anahtarı çifti farklı DPKI varlıkları tarafından biliniyor olabilir. Mesela bu herkes için aynı olabilir. Bu nedenle, sıfır olmayan her işlemin imzasını oluştururken, biri cüzdan anahtarı olan iki gizli anahtar kullanılır; bu anahtar yalnızca cüzdanın sahibi tarafından bilinir, aynı zamanda birçok sıradan anahtarın da sahibidir. ortak anahtarlar. Tüm tuşların kendi anlamları vardır. Örneğin, imzanın da bir gizli servis anahtarı üzerinde oluşturulduğundan, işlemin kayıt defterine kayıtlı bir DPKI konusu tarafından girildiğini kanıtlamak her zaman mümkündür. Ve DOS saldırıları gibi herhangi bir suiistimal olamaz çünkü her işlemin sahibi ödeme yapar.

Sıfırı takip eden tüm işlemler benzer şekilde oluşturulur: genel anahtar (sıfır işlemde olduğu gibi cüzdandan değil, sıradan bir anahtar çiftinden) iki karma işlevi SHA256 ve RIPEMD160 aracılığıyla çalıştırılır. Üçüncü alanın verileri bu şekilde oluşuyor. Dördüncü alan, eşlik eden bilgileri içerir (örneğin, mevcut durum, son kullanma tarihleri, zaman damgası, kullanılan kripto algoritmalarının tanımlayıcıları vb. hakkında bilgiler). Beşinci alan, hizmet anahtarı çiftinin genel anahtarını içerir. Onun yardımıyla dijital imza kontrol edilecek ve böylece kopyalanacaktır. Böyle bir yaklaşıma duyulan ihtiyacı gerekçelendirelim.

Bir işlemin bir havuza girildiğini ve işlenene kadar orada saklandığını hatırlayın. Bir havuzda depolama belirli bir riskle ilişkilidir; işlem verileri tahrif edilebilir. Sahibi, işlem verilerini elektronik dijital imzayla onaylar. Bu dijital imzayı doğrulamak için kullanılan genel anahtar, işlem alanlarından birinde açıkça belirtilir ve daha sonra kayıt defterine girilir. İşlem işlemenin özellikleri, bir saldırganın verileri kendi takdirine göre değiştirebilmesi ve daha sonra kendi gizli anahtarını kullanarak doğrulayabilmesi ve işlemdeki dijital imzayı doğrulamak için eşleştirilmiş bir genel anahtarı belirtebilmesidir. Orijinallik ve bütünlük yalnızca dijital imza aracılığıyla sağlanırsa, bu tür bir sahtecilik fark edilmeyecektir. Ancak dijital imzanın yanı sıra saklanan bilgilerin hem arşivlenmesini hem de kalıcılığını sağlayan ek bir mekanizma varsa sahteciliğin tespiti mümkün olabilir. Bunu yapmak için, sahibinin gerçek ortak anahtarını kayıt defterine girmeniz yeterlidir. Bunun nasıl çalıştığını açıklayalım.

Saldırganın işlem verilerini taklit etmesine izin verin. Anahtarlar ve dijital imzalar açısından aşağıdaki seçenekler mümkündür:

1. Saldırgan, sahibinin dijital imzası değişmeden işleme kendi genel anahtarını yerleştirir.
2. Saldırgan kendi özel anahtarı üzerinde dijital bir imza oluşturur ancak sahibinin genel anahtarını değiştirmeden bırakır.
3. Saldırgan, özel anahtarı üzerinde dijital bir imza oluşturur ve işleme eşleştirilmiş bir genel anahtar yerleştirir.

Açıkça görülüyor ki, 1. ve 2. seçenekler dijital imza doğrulaması sırasında her zaman tespit edilecekleri için anlamsızdır. Yalnızca 3. seçenek mantıklıdır ve eğer bir saldırgan kendi gizli anahtarı üzerinde dijital imza oluşturursa, işlemde sahibinin genel anahtarından farklı olarak eşleştirilmiş bir genel anahtarı kaydetmek zorunda kalır. Bir saldırganın sahte verileri empoze etmesinin tek yolu budur.

Sahibinin özel ve genel olmak üzere sabit bir anahtar çiftine sahip olduğunu varsayalım. Bu çiftin gizli anahtarı kullanılarak verilerin dijital imza ile onaylanmasına izin verin ve işlemde genel anahtar belirtilmelidir. Ayrıca bu ortak anahtarın daha önce kayıt defterine girildiğini ve orijinalliğinin güvenilir bir şekilde doğrulandığını varsayalım. Daha sonra sahtecilik, işlemdeki genel anahtarın kayıt defterindeki genel anahtarla eşleşmemesiyle belirtilecektir.

Özetle. Sahibinin ilk işlem verilerini işlerken, kayıt defterine girilen genel anahtarın doğruluğunun doğrulanması gerekir. Bunu yapmak için, kayıt defterindeki anahtarı okuyun ve onu güvenlik çevresi (göreceli güvenlik açığı alanı) içindeki sahibinin gerçek genel anahtarıyla karşılaştırın. Anahtarın orijinalliği doğrulanırsa ve yerleştirme sırasında kalıcılığı garanti edilirse, sonraki işlemdeki anahtarın orijinalliği, kayıt defterindeki anahtarla karşılaştırılarak kolayca doğrulanabilir/reddedilebilir. Başka bir deyişle, kayıt defterindeki anahtar referans örneği olarak kullanılır. Diğer tüm sahip işlemleri benzer şekilde işlenir.

İşlem elektronik bir dijital imza ile onaylanır - burası gizli anahtarlara ihtiyaç duyulan yerdir ve aynı anda bir değil iki tane - bir servis anahtarı ve bir cüzdan anahtarı. İki gizli anahtarın kullanılması sayesinde gerekli güvenlik düzeyi sağlanır - sonuçta, hizmetin gizli anahtarı diğer kullanıcılar tarafından bilinebilirken, cüzdanın gizli anahtarı yalnızca sıradan anahtar çiftinin sahibi tarafından bilinir. Böyle iki anahtarlı imzayı “birleştirilmiş” dijital imza olarak adlandırdık.

Boş olmayan işlemlerin doğrulanması iki genel anahtar kullanılarak gerçekleştirilir: cüzdan ve hizmet anahtarı. Doğrulama süreci iki ana aşamaya ayrılabilir: birincisi, cüzdanın genel anahtarının özetinin kontrol edilmesi ve ikincisi, iki gizli anahtar kullanılarak oluşturulan aynı konsolide olan işlemin elektronik dijital imzasının kontrol edilmesidir ( cüzdan ve servis). Dijital imzanın geçerliliği onaylanırsa, ek doğrulamanın ardından işlem kayıt defterine girilir.

DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

Mantıksal bir soru ortaya çıkabilir: Bir işlemin sıfır işlem biçiminde "kök" ile belirli bir zincire ait olup olmadığı nasıl kontrol edilir? Bu amaçla, doğrulama süreci bir aşama daha olan bağlantı kontrolüyle desteklenir. Şu ana kadar göz ardı ettiğimiz ilk iki alandaki verilere ihtiyacımız olacak yer burasıdır.

3 numaralı işlemin gerçekten 2 numaralı işlemden sonra gelip gelmediğini kontrol etmemiz gerektiğini düşünelim. Bunun için birleşik hash yöntemi kullanılarak 2 numaralı işlemin üçüncü, dördüncü ve beşinci alanlarındaki veriler için hash fonksiyonu değeri hesaplanır. Daha sonra 3 numaralı işlemin birinci alanındaki veriler ile 2 numaralı işlemin üçüncü, dördüncü ve beşinci alanlarından gelen veriler için önceden elde edilen birleştirilmiş hash fonksiyonu değerinin birleştirilmesi gerçekleştirilir. Bütün bunlar aynı zamanda SHA256 ve RIPEMD160 adlı iki hash fonksiyonu aracılığıyla gerçekleştirilir. Alınan değer 2 numaralı işlemin ikinci alanındaki verilerle eşleşiyorsa kontrol geçilir ve bağlantı onaylanır. Bu durum aşağıdaki şekillerde daha net bir şekilde görülmektedir.

DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak
DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

Genel anlamda, bildirim oluşturma ve kayıt defterine girme teknolojisi tam olarak buna benzer. Bir bildirim zinciri oluşturma sürecinin görsel bir örneği aşağıdaki şekilde gösterilmektedir:

DPKI: blockchain kullanarak merkezi PKI'nın eksikliklerini ortadan kaldırmak

Bu metinde, şüphesiz var olan ayrıntılar üzerinde durmayacağız ve merkezi olmayan bir genel anahtar altyapısı fikrini tartışmaya geri dönmeyeceğiz.

Bu nedenle, başvuru sahibinin kendisi CA veritabanında değil kayıt defterinde saklanan bildirimlerin kaydı için başvuruda bulunduğundan, DPKI'nin ana mimari bileşenleri dikkate alınmalıdır:

1. Geçerli bildirimlerin (RDN) kaydı.
2. İptal edilen bildirimlerin kaydı (RON).
3. Askıya alınan bildirimlerin (RPN) kaydı.

Genel anahtarlarla ilgili bilgiler RDN/RON/RPN'de karma işlevi değerleri biçiminde saklanır. Sıradan bir genel anahtarın durumuyla ilgili bilgiler (iptal, askıya alma vb.) karşılık gelen kod değeri biçiminde veri yapısının dördüncü alanı. DPKI'nin mimari uygulaması için birçok farklı seçenek vardır ve birinin veya diğerinin seçimi, bir dizi faktöre bağlıdır; örneğin, genel anahtarların depolanması için uzun süreli belleğin maliyeti vb. gibi optimizasyon kriterleri.

Dolayısıyla DPKI, daha basit olmasa da, en azından mimari karmaşıklık açısından merkezi bir çözümle karşılaştırılabilir olabilir.

Asıl soru hala devam ediyor - Teknolojiyi uygulamak için hangi kayıt defteri uygundur?

Kayıt için temel gereksinim, her türden işlem oluşturabilme yeteneğidir. Defterlerin en ünlü örneği Bitcoin ağıdır. Ancak yukarıda açıklanan teknolojiyi uygularken bazı zorluklar ortaya çıkıyor: mevcut kodlama dilinin sınırlamaları, rastgele veri kümelerini işlemek için gerekli mekanizmaların eksikliği, rastgele türde işlemler oluşturma yöntemleri ve çok daha fazlası.

Biz ENCRY olarak yukarıda formüle edilen sorunları çözmeye çalıştık ve bize göre birçok avantajı olan bir kayıt defteri geliştirdik:

  • çeşitli işlem türlerini destekler: hem varlık alışverişi yapabilir (yani finansal işlemler gerçekleştirebilir) hem de keyfi bir yapıya sahip işlemler oluşturabilir,
  • geliştiriciler, çeşitli teknolojik sorunları çözerken gerekli esnekliği sağlayan özel programlama dili PrismLang'a erişebilir,
  • isteğe bağlı veri kümelerinin işlenmesi için bir mekanizma sağlanmaktadır.

Basitleştirilmiş bir yaklaşım izlersek, aşağıdaki eylem dizisi gerçekleşir:

  1. Başvuru sahibi DPKI'ye kaydolur ve dijital bir cüzdan alır. Cüzdan adresi, cüzdanın genel anahtarının karma değeridir. Cüzdanın özel anahtarı yalnızca başvuru sahibi tarafından bilinmektedir.
  2. Kayıtlı kişiye hizmet gizli anahtarına erişim izni verilir.
  3. Kişi sıfır işlem oluşturur ve bunu cüzdanın gizli anahtarını kullanarak dijital imzayla doğrular.
  4. Sıfırdan farklı bir işlem oluşursa, iki gizli anahtar kullanılarak elektronik dijital imza ile onaylanır: bir cüzdan ve bir hizmet anahtarı.
  5. Konu havuza bir işlem gönderir.
  6. ENCRY ağ düğümü, işlemi havuzdan okur ve dijital imzanın yanı sıra işlemin bağlantısını da kontrol eder.
  7. Dijital imzanın geçerli olması ve bağlantının doğrulanması durumunda işlemi sicile giriş için hazırlar.

Burada kayıt defteri, geçerli, iptal edilen ve askıya alınan bildirimlerle ilgili bilgileri depolayan dağıtılmış bir veritabanı görevi görür.

Elbette ademi merkeziyetçilik her derde deva değil. Birincil kullanıcı kimlik doğrulamasının temel sorunu hiçbir yerde ortadan kalkmıyor: Başvuru sahibinin doğrulanması şu anda CR tarafından gerçekleştiriliyorsa, o zaman DPKI'de doğrulamanın topluluk üyelerine devredilmesi ve faaliyeti teşvik etmek için mali motivasyon kullanılması önerilmektedir. Açık kaynak doğrulama teknolojisi iyi bilinmektedir. Bu doğrulamanın etkinliği pratikte doğrulanmıştır. Çevrimiçi yayın Bellingcat tarafından yürütülen bir dizi yüksek profilli araştırmayı bir kez daha hatırlayalım.

Ancak genel olarak şu tablo ortaya çıkıyor: DPKI, merkezi PKI'nın eksikliklerinin tamamını olmasa da birçoğunu düzeltmek için bir fırsattır.

Habrablog'umuza abone olun, araştırma ve geliştirmemizi aktif olarak ele almaya devam etmeyi ve takip etmeyi planlıyoruz heyecanENCRY projeleri ile ilgili diğer haberleri kaçırmak istemiyorsanız.

Kaynak: habr.com

Yorum ekle