Open-Source Software (OSS)

Başlangıç Seviyesi

Açık kaynak yazılım (Open-Source Software, OSS), kripto para birimi ile yeni bir boyut kazanmıştır. Kripto para biriminin arka yapısındaki teori Bitcoin’in oluşumundan daha öncesine dayanmaktadır. Bitcoin, günümüze kadar gelen ve bilinen ilk kripto para olmasından ziyade, Blockchain kullanan ilk kripto para birimi olarak bilinmektedir.

Bilinen eski kripto para birimleri arasında World of Warcraft ismi ile oyun evreninde bir değer deposu ve bir aktarım aracı olarak kullanılmak üzere tasarlanmış bir dijital para birimi olan World of Warcraft (WoW) altını gibi saygıdeğer isimler de yer almaktadır. Kullanıcıların bilgisayarlarının grafik arayüzü aracılığıyla WoW ekosistemiyle etkileşime girecekleri ve altın ile ödüllendirilmek üzere çeşitli dijital görevleri tamamlayacakları bir iş kanıtı (Proof of Work, PoW) mining algoritması kullanılmıştır. WoW altının fiat para birimi değeri arttıkça, herhangi bir zorluk ayarlaması yapmadan daha fazla minerı kendisine çekmiş ve sonrasında ise önemli bir enflasyona ve çöken bir ekonomiye yol açmıştır.

Günümüzün popülaritesi yüksek kripto para birimleri ise geçmişte yaşanan bu sorunlardan arınmış görünmektedir. Daha açıklayıcı olmak adına örnek vermek gerekirse Bitcoin ve diğer kripto para birimleri, mining gücü arttığında büyük enflasyonu önlemek için mining zorluğunu ayarlamaktadır. Coinlerden borsalara ve cüzdanlara kadar neredeyse her kripto para biriminin açık kaynaklı yazılım üzerine inşa edilmiş olması şaşırtıcı bir durum değildir. 

Çoğu açık kaynaklı yazılım lisansları, herkesin kaynak kodunu incelemesine, değiştirmesine ve yeniden dağıtmasına olanak sağlarken, bazı lisanslar orijinal kaynak kodun değiştirilmiş kaynak kodla birlikte yayınlanmasını gerektirmektedir

Açık Kaynak (Open Source) Teriminin Anlamı

Açık kaynak, yazılım kodunu herkesin görebilmesi amacı ile oluşturulmuş herkese açık olduğu anlamını taşıyan yazılım kodu olarak bilinmektedir. Kripto para dünyasında, herhangi bir gözden geçiren kişinin incelemesi için bu yazılım kodunu GitHub'da yayınlamak artık bir endüstri standardı haline gelmiştir. Bu durumun iki ana sebebi aşağıdaki gibi açıklanmaktadır:

  • Açık kaynak, kullanıcılara bir projenin yasal olduğuna dair güvence vermeye yardımcı olmaktadır. Kişiler, sisteme kodlanmış backdoor veya başka şüpheli tutarsızlıklar olmadığından emin olmak için kontrol edebilmekte ve diğer olumsuz bulguları tespit etmek daha kolay olmaktadır. Örnek olarak, yakın zamanda Tron coinin bazı kodlarını çalındığı ve bu durumun bazı alıcıların projeye desteği bırakmasına neden olduğu tespit edilmiştir.
  • Açık kaynaklı sistemler, yüzlerce deneyimli kriptograf tarafından saatler boyunca gözden geçirilebilmekte ve bu da hataların ve yanlışlıkların çok daha hızlı tanımlanmasına ve düzeltilmesini sağlamaktadır, bu nedenle daha güvenlidir. Ayrıca bir sistem güvenlik için gizliliğe bağlıysa, yalnızca gizli kaldığı sürece güvenlidir. Açık kaynaklı sistemlerde ise bu sorun yaşanmamaktadır.

Açık kaynağın dezavantajı ise herkesin kodu görebilmesi, alabilmesi ve kullanabilmesidir. Çoğu durumda intihal riski, açık kaynağı savunulamaz hale getirmektedir. 

Kripto para birimlerinde gerçekten böyle bir soruna sahip değildir. Bir coinin maliyeti, onun değeri üzerinde anlaşmaya varan yeterli sayıda insan tarafından türetilmektedir. Açık kaynaklar sayesinde elde edilen kodlar ile yapılan basit bir taklit ile çok da değerli olmayacaktır.

Açık kaynaklı yazılım, kaynak kodu yayınlanan ve herkesin bakabileceği, değiştirebileceği veya yeniden dağıtabileceği bir yazılım türüdür. Açık kaynaklı yazılım, genellikle birçok farklı katılımcı arasında açık, işbirliğine dayalı bir şekilde geliştirilebilmektedir. Bu tür projeler şeffaflık, açık değişim, ücretsiz katılım, hızlı prototip oluşturma ve topluluk odaklı, işbirliğine dayalı geliştirme ilkelerini benimserler.

Açık kaynaklı yazılımın tam tersi, kaynak kodu yayınlanmayan kapalı kaynaklı yazılımlardır ve yalnızca bu yazılımları geliştiren veya oluşturan kişi, ekip veya kuruluş bunu değiştirme ve dağıtma hakkına sahiptir.

Açık Kaynaklı Yazılımın Avantajları 

Açık kaynaklı yazılımlar, diğer yazılım türlerine göre bazı avantajlara sahip olabilirler. Açık kaynaklı yazılım felsefesi, geliştiricilere ve kullanıcılara potansiyel olarak fayda sağlayabilecek açık işbirliği felsefesini teşvik ederken, aynı zamanda çeşitli alanlardan birçok farklı uzmanı getiren açık katılım çağrısı nedeniyle daha yüksek kaliteli bir ürün geliştirilmesine uygun bir ortam hazırlayabilir. Potansiyel olarak çok sayıda katılımcı bu sorunlarla ilgilenme hakkına, erişimine ve uzmanlığına sahip olduğundan, sorunları çözmek, kapalı kaynaklı yazılımlara göre daha hızlı ve daha düşük maliyetlidir.

Öte yandan, açık kaynaklı yazılımlar, geliştirme sürecini koordine eden tek bir grup veya kişi olmadan merkezi olmayan bir şekilde geliştirilirse, farklı katılımcıların stratejik kararlar üzerinde anlaşması önemli miktarda zaman alabilir. Birçok açık kaynak projesi, bu koordinasyon sorununu çözmek için özel yönetim modelleri uygulamaktadır.

Daha geniş anlamda, yazılımın tamamının veya çoğunun açık kaynaklı bir lisansı kullanması durumuna açık kaynaklı yazılım hareketi adı verilir. Bu hareketin hedefleri arasında, benzer fikirlere sahip kişiler tarafından ortaklaşa yapılan yüksek kaliteli kod üretimi ile açık kaynak teknolojisinin iyileştirilmesi de yer almaktadır. Açık kaynak yazılım hareketini destekleyen geliştiriciler, açık işbirliği felsefesine bir katkı olarak gönüllü olarak kod yazar ve değiştirirler.

1999'da Açık Kaynak ile İlgili Bilinenler

20 yıl önce açık kaynağın faydalarının çoğu bugün hala geçerli olmaktadır. Açık kaynak hakkında söylenenler aşağıda gibi açıklanacaktır.

“Güvenliğin işlevsellikle hiçbir ilgisi yoktur.” Çoğu test, güvenlikten ziyade işlevselliğe odaklanmaktadır. Bu nedenle kapalı kaynaklı yazılımın beta testi, neredeyse kaçınılmaz olarak güvenlik açıklarını düzeltilmemiş bir şekilde işlemini yapacaktır. Yazılımdaki güvenlik sorunlarını yakalamanın tek yolu, yeterince deneyimli kişinin kodunu ayrıntılı olarak gözden geçirmesidir. Kripto yapısı ile aynı yönde ilerleme sağlayarak, açık kaynak giderek merkeziyetsizleşmektedir. Düzeltilmesi gereken sorunları belirlemek için kriptografları ödüllendiren Bug ödül ilanları, coinler, borsalar ve cüzdanlar için oldukça yaygındır.

“Bir algoritma yalnızca gizli kaldığı sürece güvenliyse, o zaman yalnızca algoritma yazan kişi mühendisliğe karşı gelerek algoritmaları yayınlayana kadar güvenli olacaktır.” Kapalı kaynak programlama, doğal olarak açık kaynak programlamadan çok daha fazla zayıflığa sahiptir. Bu zayıflık, kodu yazan veya başka şekilde ona erişebilecek kişilerin şeklini almaktadır. Bu kişiler, herhangi bir zamanda kodları kullanabilip veya serbest bırakabilmektedir, yani sistem yalnızca ilgili kişiler ilgili görevlere yoğunlaştıkları sürece güvenlidir. Kripto para dünyasında ise söz konusu milyarlarca doların olabileceği iken, bu tür bir güvenlik açığı doğal olarak kabul edilememektedir.

“Kendi güvenlik protokolünü oluşturan herkes ya dahidir ya da aptal.” Sıfırdan başlamak yerine açık kaynak şifrelemeyi kullanmak ve üzerine inşa etmek genellikle daha mantıklı olacaktır. 

Son söylenti ise, “Açık kriptografi sadece daha iyi olmakla kalmıyor, aynı zamanda daha ucuzdur. Akıllı şirketleri yayınlanmış kriptografiyi kullanmaya yönlendiren aynı mantık, onları yayınlanmış güvenlik protokollerini kullanmaya da yönlendirmektedir. Kendi güvenlik protokolünü oluşturan herkes ya bir dahi ya da aptaldır. Dahi olmak aptal olmaya göre daha yüksek olasılık taşıdığından, yayınlanan protokolleri kullanmak daha akıllı bir harekettir.” şeklindedir.