NEDİR BU KRİPTO PARA? BLOCKCHAİN-BİTCOİN - Bandırma Şehir | Yaşadığınız Şehirden Haberiniz OlsunBandırma Şehir | Yaşadığınız Şehirden Haberiniz Olsun

SON DAKİKA

NEDİR BU KRİPTO PARA? BLOCKCHAİN-BİTCOİN

Bu haber 07 Mart 2022 - 16:51 'de eklendi ve 1.288 kez görüntülendi.

Blok zincir(Blokchain) adı verilen veri kayıt sisteminin en güzel örneği olan Bitcoin en kısa tanımıyla dijital para birimidir. Merkezi yoktur kurum ve tek bir şahıs tarafından kontrol edilemez, sayısı sınırlıdır. En fazla 21 milyon adet üretilebilir.

Bitcoin’in (BTC) doğuşu ve avantajları

Bitcoin ilk olarak 2009 yılında Satoshi Nakamoto olarak kendisini tanıtan bilinmeyen bir programcı ya da programcılar tarafından açık kaynak kodlu yazılım olarak ortaya çıktı.

BTC; hükümetlerden, bankalardan ve şirketlerden bağımsız bir yapıda olması, herhangi bir kurumun btc işlemlerine karışamaması, işlem ücreti alamaması veya paraya el koyamaması, hareketlerin oldukça şeffaf olması çok büyük bir avantaj olarak bu kripto parayı ön plana çıkarttı. Ve yeni bir akımın başlangıcı oldu.

Bitcoin nasıl çalışır?

Gelelim işin iç yüzüne, Btc açık defter ile şimdiye kadar yapılmış tüm işlemlerin kaydını tutar. Bu kayıtlara blok denir. Blokların tamamı ise blok zincirini oluşturur. Bilinen adı ile Blockchain. Biri işlem bloklarındaki tek bir harfi veya sayıyı değiştirmeye çalışırsa bu durum sonraki blokları da etkileyecektir. Açık defter olması nedeniyle yapılan herhangi bir yanlışlık veya sahtekarlık kolaylıkla tespit edilebilir ve tüm kullanıcılar tarafından düzeltilebilir.

Kullanıcıların cüzdanları işlemlerin geçerliliğini onaylar. İşlemlerin güvenliği kullanıcının adresi olan dijital imzalar ile sağlanır.

Onaylama süreci ve aynı zamanda işlem yapılan platforma bağlı olarak Bitcoin ile yapılan işlemlerin tamamlanması birkaç dakika sürebilir. Bitcoin protokolü her blokun inşasının 10 dakika süreceği şekilde tasarlanmıştır.

Blok Zincir Ne Demek ?

Blockchain yani blok zincirinin en kısa tanımı veri bloklarının bir araya gelerek oluşturduğu topluluktur. Her blok bir önceki blok ile hash dediğimiz (en çok kullanılan sha-256) şifrelemesiyle birbirine bağlıdır. Ve değiştirilemez. Çoğu kripto para ağının temel bir bileşenidir ve önceden onaylanmış tüm işlemlerin kalıcı bir kaydını tutar, merkezi olmayan, dağıtılmış ve halka açık bir dijital defter görevi görür.

Bir örnekle açıklamak gerekirse mahallede ki bakkalınızdan veresiye alışveriş yapıyorsunuz ve bakkal bu verileri borç defterinde not alıyor. Burada bakkalın yazdığına güvenmek zorundasınız. Defter onda. O ne yazdıysa ay sonunda doğru kabul edip ödeme yapmanız gerekmekte.

Bir de şu şekilde teknolojiye uyduralım senaryomuzu. Bakkalın defteri öyle bir olsa ki. Birer kopyası da müşterilerde olsa, deftere her yazılan aynı anda tüm müşterilerinde defterlerine kayıt edilse. Hatta yeni bir müşteri geldiğinde de aynı defter tüm kayıtlar ile kendisine de aktarılsa. Her müşteri sadece kendi hareketlerini görme özelliği eklense. Bakkalın defteri kaybolması çalınması gibi durumlarda müşteri defterlerinden kendisini hemen ağa dahil edebilse kaldığı yerden devam etse. Sizce hata payı kalır mı ortada? Bakkalın müşterilerine sattığı her ürün zaman damgasıyla birlikte değiştirilemez bir blok. Bakkal ve müşterilerinin oluşturduğu bu yapıya da Blockchain diyoruz.

Bakkal örneğimiz aslında bir ikilemin yansımasıdır. Karşılıklı mutabakata varılmayan her şey mutlaka hata verecektir. Bu ikilem 1982 yılında Bizans Generallerinin Sorunu olarak adlandırılmıştır. Her general karar vermeli, kararını değiştirememeli ve aynı karar üzerinde anlaşmaları ile başarı sağlanabilecektir. Ve bu yapı blok zincirin temellerini atmıştır.

Bitcoin bu sistemin parasal olarak öncüsü olduğu için en gözde olan kendisidir. Her birey, blok zincirinin bir kopyasını tutar ve ağın işleyişine ve güvenliğine katkıda bulunur. Bitcoin’i sınırsız, sansüre dayanıklı ve üçüncü taraf aracılığı gerektirmeyen merkezi olmayan bir dijital para birimi yapan şey budur. Bitcoin protokolü açık kaynak kodludur ve herkes kodu inceleyebilir veya kopyalayabilir.

Blockchain Yapısı Oluşturmak

Bunun için vs .net kullanacağız. Ben yazılım da vb kullanıyorum. Nesnel olarak json ve diğer bilgisayarlarla haberleşmek için P2P ağı kuracağız. WebSocket (katman7) ile, tek bir TCP bağlantısı üzerinden tam çift yönlü iletişim kanalları sağlarız.

Yapımızda index ve zaman değerleri ile birlikte her bloğun taşıdığı bilginin (Data) yanı sıra hashi yani şifremiz olacak. Aynı zamanda önceki bloğun şifresini (PreviousHash) kontrol edecek ve bu bilgiyi de kendi bloğunda tutacaktır. Bu doğruluk kontrolü olacak ve blokların güvenliği arttıracaktır. Hashin kaç denemede bulunduğu bilgisini ise Nonce da tutacağız.

Vb de sınıflarımızı oluşturalım. Oluşturacağımız sınıflar;

  • Block
  • Blockchain
  • P2PClient
  • P2PServer
  • Data

Block: (blok sınıfımızı kodlayalım)

Burada kullanacağımız yöntem Calculatehash yöntemidir. Bu yöntem ile belirlediğimiz içeriği SHA256 ile sabit uzunlukta ve güvenli bir halde şifrelemiş oluyoruz.

Public Function CalculateHash() As String
Dim sha256 As SHA256 = sha256.Create()
Dim inputBytes As Byte() = Encoding.ASCII.GetBytes($”{Zaman}-{If(oncekisifre, “”)}-{JsonConvert.SerializeObject(icerik)}-{Denemesayisi}”)
Dim outputBytes As Byte() = sha256.ComputeHash(inputBytes)
Return Convert.ToBase64String(outputBytes)
End Function

Burada giriş bilgilerimizi yani inputbytes’ı zaman,taşıdığımız içerik ve bloğun kaç denemede oluşturulduğu şeklinde birleştirerek şifreli hale dönüştürülmüş bir çıkış bilgisi oluşturuyoruz. Outputbytes. Bu bilgiyi veri türü olarak byte yaptık.

Birde herkes tarafından bilinen madencilik kısmımız var. Aslında üretilen yeni bloğun zorluk seviyesini ayarlamanın diğer adıdır.

 

Public Sub Mine(ByVal difficulty As Integer)
       Dim leadingZeros = New String(tanimlar.aranandeger, tanimlar.zorluk)
       Dim say As Integer = 0
       While sifre Is Nothing OrElse sifre.Substring(0, tanimlar.zorluk) <> leadingZeros
       Denemesayisi += 1
       sifre = CalculateHash()
       say = say + 1
       Main.ListBox1.Items.Add(sifre)
       Main.Label10.Text = say
       Main.Label9.Text = sifre
       End While
End Sub

Burada ana form oluşturduk ve oluşturduğumuz formda oluşturulacak hash kodun kriterlerini belirledik. Say değeri ile kaç denemede istediğimiz kriterde ki hash kodumuzun üretildiği bilgisini aldık. Ve ana formumuza hash ile birlikte yazdırdık. Burada bu işlemler servis halinde yapılmalı ama ekran görselini ve çalışma yapısını paylaşmam için form oluşturdum.

Form ekranımızda zorluk seviyemizi 1 olarak ayarladım ve aranacak değeri M olarak girdim. Bunun anlamı üretilen kodun ilk değeri M olana kadar üretime devam et demektir. Zaten nonce da 8 denemede bulunmuş. Zorluk seviyesini 2 yapmış olsaydım tahmini 4000 deneme de falan bulabilirdi. İlk ürettiğimiz blok genesis yani yaradılış bloğudur ve index i 0, önceki şifresi yok. İçinde data da yok. Bu özellikler sadece genesis blokta bulunur. Daha sonra ki bloklarımız oluşturulurken kendinden bir önce ki bloğun şifresini kontrol edecek PreviousHash kısmına yazacaktır.

Genesis Blok içeriğine bakarsak önceki şifre ve data (içerik) kısımlarının boş olduğunu görüyoruz. Nonce değeri ise 8 olarak ayarlanmıştır. Blok şifremiz formda belirlediğimiz kriterlere uyuyor. Başlangıcın 1 adet M harfi olmasını istemiştik.

Şimdilik burada sonlandıralım . Yazımı 4 bölümde tamamlamayı düşünüyorum. Yazının 2. Bölümünde blockchain sınıfının içini doldururuz. Hatta data sınıfını da anlatırız. 3. Bölümde ise WebSocket ile sistemimizi yayınlar diğer bilgisayarlarında ağımıza katılmasına imkan sağlarız. 4. Tüm kullanıcıların madencilik yapmasına imkan vererek ve üretilen yeni bloklara hediye vererek, sanal paramızı güncel tutarız.

Saygılar.

Bandırma Araba Servisi

&nbps;

Bandırma Laptop Tamiri

Bandırma Web Tasarım

HABER HAKKINDA GÖRÜŞ BELİRT

Yorum Yok

Yorum yapabilmek için giriş yapmalısınız.

Superiority inside the the watchmaking arena method will be the first step toward rolex replicas swiss made .