Bitcoin 1.01ORION · SLH-DSA · √2

Not yet translatedThis document has not been translated into English yet. The Turkish original is shown below.

Tohum bilgisayar kurulumu (Windows 11)

Tohum bilgisayar, ağa yeni katılan düğümlerin ilk bağlandığı, sürekli açık duran bilgisayardır. Ağ onsuz da çalışır: düğümler birbirlerinin adreslerini paylaşır ve tohum kapalıyken de birbirine bağlanır. Ama yeni gelenlerin ilk kapıyı bulması için tohumun açık olması gerekir.

Bu bilgisayar aynı zamanda herkese açık zincir izleme ekranını sunar.


1. Programı tohum olarak başlat

VS Code terminalinde:

.\bin\bitcoin101.exe dugum --web-genel --kaz --tek-basina
  • --web-genel: İzleme ekranı sadece bu bilgisayardan değil, dışarıdan da açılır.
  • --kaz: Aynı anda blok da kazar. Sadece tohum olsun istiyorsan bunu yazma.
  • --tek-basina: Ana ağda madencilik normalde en az bir eşle eşleşene kadar bekler (aksi halde ağa bağlanmamış yeni bir bilgisayar kendi zincirini kazar ve ana zincirle bir daha birleşmez). Ağın ilk / tek düğümü olduğun sürece bu bayrakla eş beklemeden kazarsın. Başka madenciler katıldıktan sonra bu bayrağı kaldır.
  • Kapatmak için Ctrl+C.

İlk çalıştırmada Windows Güvenlik Duvarı bir pencere açar ve "Bu uygulamanın ağa erişmesine izin verilsin mi?" diye sorar. Özel ağlar ve Ortak ağlar kutularını işaretleyip İzin ver'e bas.

2. Güvenlik duvarı kurallarını kalıcı yap (önerilir)

Başlat menüsünde Terminal'e sağ tıkla, Yönetici olarak çalıştır de ve şu üç satırı yapıştır:

netsh advfirewall firewall add rule name="Bitcoin101 Es" dir=in action=allow protocol=TCP localport=10102
netsh advfirewall firewall add rule name="Bitcoin101 Izleme" dir=in action=allow protocol=TCP localport=10103
netsh advfirewall firewall add rule name="Bitcoin101 Kesif" dir=in action=allow protocol=UDP localport=10101
PortProtokolNe işe yarar
10101UDPAynı Wi-Fi'daki düğümlerin birbirini bulması
10102TCPDüğümler arası zincir ve işlem paylaşımı
10103TCPİzleme ekranı (web)

3. Bilgisayar uyumasın

Ayarlar → Sistem → Güç → "Ekran ve uyku" altında, prize takılıyken uyku süresini Hiçbir zaman yap. Ya da yönetici terminalinde:

powercfg /change standby-timeout-ac 0

4. Modemde sabit yerel IP ve port yönlendirme

Bu kısım modemin markasına göre değişir. Adımlar genelde şöyledir:

  1. Bilgisayarın yerel IP'sini öğren: .\bin\bitcoin101.exe davet komutu gösterir (örneğin 192.168.1.35).
  2. Tarayıcıda modemin arayüzünü aç. Çoğu modemde adres 192.168.1.1 veya 192.168.0.1'dir; kullanıcı adı ve şifre modemin altındaki etikette yazar.
  3. DHCP rezervasyonu / Statik IP bölümünden bu bilgisayara her zaman aynı yerel IP'nin verilmesini sağla.
  4. Port yönlendirme / NAT / Sanal sunucu bölümünde iki kural ekle:
    • TCP 10102 → bilgisayarın yerel IP'si, port 10102
    • TCP 10103 → bilgisayarın yerel IP'si, port 10103

5. Genel (public) IP'ni öğren ve CGNAT kontrolü yap

  • Modem arayüzünde "WAN IP", "İnternet IP" veya "Genel IP" diye geçen adrese bak.
  • Bu adres 100.64.x.x ile 100.127.x.x arasındaysa, ya da internetteki "IP adresim nedir" sitelerinin gösterdiğinden farklıysa, internet sağlayıcın CGNAT kullanıyor demektir. Bu durumda dışarıdan gelen bağlantılar modemine hiç ulaşmaz. Sağlayıcını arayıp sabit IP veya genel (public) IP talep etmen gerekir. Bu hizmet bazı sağlayıcılarda ücretli olabilir.
  • Bilgisayarında IPv6 varsa, dışarıdan bağlantı çoğu zaman yönlendirmeye gerek kalmadan çalışır. Ama bu, modem ve sağlayıcı ayarlarına bağlıdır.

6. Dışarıdan test et

Telefonunu Wi-Fi'dan çıkarıp mobil veriye geç, tarayıcıda şu adresi aç:

http://<genel IP>:10103

İzleme ekranını görüyorsan hem port yönlendirme hem güvenlik duvarı doğru ayarlanmıştır.

7. Diğer kullanıcılara dağıt

tohumlar.txt dosyasına genel IP'ni yaz:

203.0.113.10:10102

Sonra paylaşım paketini hazırla. Proje klasörünü olduğu gibi gönderme.

.\derle.bat
.\paketle.bat imzali

dagitim\Bitcoin101-<sürüm>.zip sadece programı, kaynak kodunu, belgeleri ve tohumlar.txt'yi içerir. Cüzdan, zincir ve jeton dosyaları pakete giremez; biri bulunursa betik durur. Betiğin yazdığı SHA-256 özetlerini ve imzalayan adresi zip'ten ayrı bir kanaldan duyur (BENIOKU.md, "Programı paylaşmak").

Paketi açıp programı çalıştıran herkes önce senin bilgisayarına bağlanır, sonra öğrendiği diğer adresleri kendi veri klasöründeki esler.txt dosyasına kaydeder. Kendi cüzdanını kendisi oluşturur; seninkini göremez.

Ev internetinin IP'si değişirse:

  • Ağ zaten tanışmış düğümler arasında çalışmaya devam eder.
  • Yeni kullanıcılar için tohumlar.txt dosyasındaki adresi güncellemen gerekir.
  • Sağlayıcıdan sabit IP almak bu sorunu tamamen çözer.

Güvenlik notları

  • İzleme ekranı sadece okuma yapar. Sadece GET isteklerine cevap verir, cüzdan dosyasına hiçbir şekilde erişmez. Notlar ve adresler sayfada hiçbir zaman HTML olarak yorumlanmaz.
  • Eşlerden gelen her blok ve işlem baştan sona doğrulanır: iş kanıtı, ASERT, imzalar ve UTXO. Geçersiz veri (bozuk imza dahil) gönderen eş atılır; IP adresi bir saat boyunca gelen bağlantı olarak da kabul edilmez.
  • Bağlantı sayısı sınırlıdır: en fazla 64 gelen eş (aynı IP'den 4), izleme ekranında 64 eş zamanlı bağlantı (aynı IP'den 8). Cüzdan arayüzünün ayrı bir havuzu vardır; izleme ekranına yüklenen biri senin cüzdan pencereni kilitleyemez.
  • Dışarıdan bakanlar izleme ekranında bağlı eşlerin IP adreslerini görmez ("gizli").
  • Bilinen sınırlar:
    • İzleme ekranı alan adı olmadığı için HTTPS değil, düz HTTP üzerinden çalışır. Bu yüzden arada biri (örneğin ağ yöneticisi) sayfanın içeriğini değiştirebilir. Bu nedenle sayfa bağımsız doğrulamanın yolunu gösterir: kendi düğümünde uç hash'i karşılaştırmak ya da /api/baslik/<n> ile SHA3-512 kontrolü yapmak.
    • Eşler arası bağlantı da henüz şifreli değildir. Bu gizlilik sorunudur, güvenlik sorunu değil: içerik zaten herkese açık zincirdir ve her şey doğrulanır.
    • Ağ küçükken, güçlü bir bilgisayarı olan biri zinciri ele geçirebilir (%51 saldırısı).

Generated from TOHUM_KURULUMU.md in the project.