İçeriğe atla

GnuTLS

GnuTLS
Geliştirici(ler)Nikos Mavrogiannopoulos
Simon Josefsson
Güncel sürüm3.8.3 / 16 Ocak 2024 (8 ay önce) (2024-01-16)[1]
Geliştirme durumuEtkin
Programlama diliC
PlatformÇoklu platform
TürGüvenlik kütüphanesi
LisansGNU Kısıtlı Genel Kamu Lisansı sürüm 2.1 veya sonrası
Resmî sitesignutls.org
Kod deposu Bunu Vikiveri'de düzenleyin

GnuTLS (İngilizceGNU Transport Layer Security Library, TürkçeGNU Taşıma Katmanı Güvenliği Kütüphanesi) TLS, SSL ve DTLS iletişim kurallarının uyarlaması olan özgür bir yazılımdır. Uygulamaların ağ taşıma katmanı üzerinde güvenli haberleşmesini, X.509, PKCS #12, OpenPGP ve diğer yapılara erişebilmesi için uygulama programlama arayüzü sağlar.

Özellikler

GnuTLS istemci uygulamaların mevcut iletişim kurallarını kullanarak güvenli oturum başlatmasını sağlayan bir kütüphaneden oluşur. Ayrıca X.509 sertifika yöneticisi, deneme istemcisi ve sunucusu, rastgele anahtar ve parola oluşturucu dahil komut satırı araçlarını temin eder. 2011'den itibaren yöneticiler TLS 1.2 desteği için Apache web sunucusunu GnuTLS ile yapılandırabilir.[2]

GnuTLS şu özelliklere sahiptir:

  • TLS 1.2, TLS 1.1, TLS 1.0 ve SSL 3.0 iletişim kuralları
  • Datagramm TLS (DTLS) 1.2 ve DTLS 1.0 iletişim kuralları
  • TLS yetkilendirmesi için Güvenli uzak parola iletişim kuralı
  • TLS yetkilendirmesi için Ön paylaşımlı anahtar (PSK)
  • X.509 ve OpenPGP sertifika[3] işlemesi
  • Merkezi işlem birimi destekli şifreleme ve şifre yazısal hızlandırıcı desteği (/dev/crypto), VIA PadLock ve AES-NI komut kümesi[4]
  • Akıllı kartlar ve donanım güvenliği modülleri için destek
  • Şifre yazısal anahtarların sistemin Güvenli Platform Modülü'nde depolanması

Geçmiş

Köken

GnuTLS ilk olarak GNU Tasarısı yazılımlarının TLS gibi güvenli iletişim kurallarını kullanması amacıyla Mart 2003'te[5] Nikos Mavrogiannopoulos tarafından oluşturuldu. OpenSSL'in halihazırda bulunmasına rağmen, OpenSSL'in lisansı GPL ile uyumsuzdur;[6] bu GPL altındaki yazılımın, mesela GNU yazılımının GPL bağlama istisnası yapmadan OpenSSL'i kullanamaması demektir.

Lisans

Dahil edilen uygulamalar GNU Genel Kamu Lisansı kullanırken GnuTLS kütüphanesi aslen GNU Kısıtlı Genel Kamu Lisansı sürüm 2 altında lisanslanmıştır.

Ağustos 2011'de kütüphane LGPL sürüm 3'e güncellenmiştir.[7] Lisans değişikliğinin diğer özgür yazılımlarda yarattığı lisans uyuşmazlığı fark edilince,[8] çıkan tartışmaların ardından Mart 2013'te lisans yeniden LGPL sürüm 2.1'e düşürülmüştür.[9]

GNU/FSF'den ayrılma

Aslen GNU Tasarısı için oluşturulmuştur,Özgür Yazılım Vakfı ile çeşitli ilkeler üzerinde yaşadığı anlaşmazlıkların ardından geliştirici Aralık 2012'de GNU'dan bağlantısını koparmıştır.[10][11] Richard Stallman bu hamleye karşı çıkmış ve tasarının çatallanmasını önermiştir, bu öneri yoksayılmıştır.[12] Bu hareket GNU Sed geliştiricisi Paolo Bonzini tarafından takip edilmiş ve Aralık 2012 sonlarında geliştiricilikten çıkmıştır.[13]

Dağıtım

GnuTLS kullanan yazılım çıkınları:

Kaynakça

  1. ^ "[gnutls-devel] gnutls 3.8.3". 21 Eylül 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 21 Eylül 2017. 
  2. ^ "The GNU Transport Layer Security Library". 4 Mart 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Nisan 2016. 
  3. ^ RFC 6091
  4. ^ "The GnuTLS Transport Layer Security Library". 30 Mart 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Nisan 2016. 
  5. ^ "Changelog 0.0.5". 19 Kasım 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Nisan 2016. 
  6. ^ Mark McLoughlin (22 Haziran 2004). "The OpenSSL License and The GPL". 11 Nisan 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 6 Nisan 2011. 
  7. ^ "Version 2.99.4 (released 2011-07-23)[...] ** libgnutls: license upgraded to LGPLv3". 4 Mart 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Nisan 2016. 
  8. ^ Mavrogiannopoulos, Nikos (26 Mart 2013). "The perils of LGPLv3". gnutls.org. 2 Nisan 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 18 Kasım 2015. 
  9. ^ "2013-03-14 Nikos Mavrogiannopoulos (nmav@gnutls.org) * COPYING.LESSER, README: gnutls 3.1.10 is LGPLv2.1". 18 Nisan 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Nisan 2016. 
  10. ^ GnuTLS, copyright assignment, and GNU project governance 23 Nisan 2016 tarihinde Wayback Machine sitesinde arşivlendi. on lwn.net by Michael Kerrisk (December 20, 2012)
  11. ^ Nikos Mavrogiannopoulos (18 Aralık 2012). "gnutls is moving". 3 Nisan 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Aralık 2012. 
  12. ^ GNUTLS is not going anywhere 12 Mart 2016 tarihinde Wayback Machine sitesinde arşivlendi. on lists.gnu.org "you cannot take GNUTLS out of the GNU Project." (11 Dec 2012)
  13. ^ Subject: GNU sed 4.2.2 released, and a rant from the maintainer 7 Ocak 2016 tarihinde Wayback Machine sitesinde arşivlendi. on gmane.comp.lang.smalltalk.gnu.general by Paolo Bonzini (on 2012-12-22)
  14. ^ a b c "GnuTLS - GNU Project - Free Software Foundation (FSF)". Free Software Foundation. 22 Mayıs 2010. 31 Mayıs 2010 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Ocak 2015. 

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Linux</span> Bir işletim sistemi çekirdeği

Linux ; Linux çekirdeğine dayalı, açık kaynak kodlu, Unix benzeri bir işletim sistemi ailesidir. GNU Genel Kamu Lisansı versiyon 2 ile sunulan ve Linux Vakfı çatısı altında geliştirilen bir özgür yazılım projesidir. Linux ismi ilk geliştiricisi olan Linus Torvalds tarafından 1991 yılında verilmiştir. Günümüzde süper bilgisayarlarda, akıllı cihazların ve internet altyapısında kullanılan cihazların işletim sistemlerinde yaygın olarak kullanılmaktadır. Bunlardan en popüler olanı Google tarafından geliştirilen Android işletim sistemidir.

<span class="mw-page-title-main">Özgür yazılım</span> belirli kullanıcı kullanım, kopyalama, değiştirme, yeniden dağıtma özgürlüğünün (değiştirilmiş dahil) mevcut olduğu yazılım

Özgür yazılım, kullanıcısına yazılımı herhangi bir amaç için çalıştırma, inceleme, değiştirme ve dağıtma özgürlükleri tanıyan yazılım türüdür. Tersi, özel mülk yazılımdır.

<span class="mw-page-title-main">GNU Genel Kamu Lisansı</span>

GNU Genel Kamu Lisansı yaygın kullanılan bir özgür yazılım lisansı. İlk sürümü 1989 yılında Richard Stallman tarafından GNU Tasarısı için kaleme alınmıştır. Üçüncü ve son sürüm ise Richard Stallman'ın yöneticisi olduğu Özgür Yazılım Vakfı (FSF), Eben Moglen ve Yazılım Özgürlüğü Hukuk Merkezi tarafından kaleme alındı ve özgür yazılım topluluklarının çeşitli itiraz ve katkılarıyla son hâlini aldı.

<span class="mw-page-title-main">GNU Özgür Belgeleme Lisansı</span>

GNU Özgür Belgeleme Lisansı, GNU projesi için Özgür Yazılım Vakfı (FSF) tarafından tasarlanmış bir lisans modelidir. GNU GPL'nin açık içerik karşılığıdır. Lisansın mevcut son sürümü 1.3 olup, resmi metni www.gnu.org/copyleft/fdl.html adresinde bulunabilir.

HTTPS bir bilgisayar ağı üzerinden güvenli iletişim için internet üzerinde yaygın olarak kullanılan bir HTTP uzantısıdır. HTTPS'te, iletişim protokolü Taşıma Katmanı Güvenliği (TLS) veya öncesinde, onun öncülü/selefi olan Güvenli Soket Katmanı (SSL) ile şifrelenir. Bu nedenle protokol sık sık TLS üzerinden HTTP veya SSL üzerinden HTTP olarak da adlandırılır.

<span class="mw-page-title-main">Transport Layer Security</span> Internet Şifreleme Protokolü

Taşıma Katmanı Güvenliği (TLS) ve onun öncülü/selefi olan Güvenli Soket Katmanı (SSL), bilgisayar ağı üzerinden güvenli haberleşmeyi sağlamak için tasarlanmış kriptolama protokolleridir. X.509 sertifikalarını kullanırlar ve bundan dolayı karşı tarafla iletişime geçeceklerin kimlik doğrulaması asimetrik şifreleme ile yapılır ve bir simetrik anahtar üzerinde anlaşılır. Bu oturum anahtarı daha sonra taraflar arasındaki veri akışını şifrelemek için kullanılır. Bu, mesaj/veri gizliliğine ve mesaj kimlik doğrulama kodları için mesaj bütünlüğüne izin verir. Protokollerin birçok versiyonu ağ tarama, elektronik mail, İnternet üzerinden faks, anlık mesajlaşma ve İnternet üzerinden sesli iletişim gibi uygulamalarda yaygın olarak kullanılmaktadır. Bu durumda/içerikte/bağlamda en önemli özellik iletme gizliliğidir. Bundan dolayı kısa süreli oturum anahtarı, uzun süreli gizli simetrik anahtardan türetilememelidir.

<span class="mw-page-title-main">Apache Lisansı</span>

Apache Lisansı, Apache Yazılım Vakfı (ASF) tarafından yayımlanan bir özgür yazılım lisansıdır. Apache Lisansı telif hakkı koruma ve feragat uyarısı gerektirmektedir ancak copyleft bir lisans değildir. Lisans, özgür ve açık kaynak kodlu yazılımın geliştirilmesi için kaynak kodlarının kullanımına izin vermektedir.

<span class="mw-page-title-main">Kontact</span>

Kontact, KDE için kişisel bilgi yönetimi yazılımıdır. Bünyesinde e-posta istemcisi, haber okuyucusu, takvim, not alma, yapılacaklar listesi gibi özellikleri barındırır.

<span class="mw-page-title-main">GNU Kısıtlı Genel Kamu Lisansı</span> Özgür yazılım lisansı

LGPL veya bir başka deyişle GNU Kısıtlı Genel Kamu Lisansı, GPL bir kitaplığı kullanan bir eserin, GPL'deki şartları daraltıcı bir lisansa sahip olmaması zorunluluğunu taşımayan büyük ölçüde pragmatik bir özgür lisans türüdür. LGPL şu gayelere matufen GPL'e tercih edilebilecek bir lisanstır:

<span class="mw-page-title-main">Özgür ve açık kaynak kodlu yazılım</span> hem kullanımı özgür olan hem de açık kaynak kodlu olan yazılım

Özgür ve açık kaynak kodlu yazılım, kullanıcılara yazılımı ve kaynak kodunu herhangi bir amaç için kullanma, inceleme, değiştirme ve dağıtma özgürlükleri veren bir lisans kapsamında yayınlanan bilgisayar yazılımıdır.

<span class="mw-page-title-main">Heartbleed</span>

Heartbleed, Taşıma Güvenliği Katmanı (TLS) protokolü gerçekleştiriminde geniş biçimde kullanılan, açık kaynak kodlu kriptografi kütüphanesi OpenSSL'de 2014 yılı Nisan ayında tespit edilen bir yazılım hatasıdır. Heartbleed bu TLS için kullanılan OpenSSL örneğinin, istemci ya da sunucu olduğu fark etmeden kötü niyetle kullanılabilir. Bu açık sayesinde bir saldırgan sunucu hafızasından veri okuyabildiği gibi, bir sunucunun SSL özel anahtarlarını da ele geçirebilir.

POODLE atağı(Açılımı Padding Oracle On Downgraded Legacy Encryption) web tarayıcılarının SSL 3.0 mekanizmasının avantajından faydalanan ortadaki adam atağıdır.

<span class="mw-page-title-main">GNU Projesi</span> Özgür yazılım projesi

GNU Tasarısı, toplu işbirliğini temel alan bir özgür yazılım tasarısıdır. Richard Stallman tarafından Massachusetts Teknoloji Enstitüsü'nde 27 Eylül 1983 tarihinde kamuoyuna duyurulmuştur. Tasarının hedefi işbirliği yoluyla özgür yazılımlar geliştirip dağıtarak bilgisayar kullanıcılarının bilgisayarlarını ve benzeri araçlarını kendi istekleri doğrultusunda özgürce kullanmalarını sağlamaktır. Bu tasarının temelinde kullanıcıların yazılımı çalıştırma, paylaşma, inceleme ve değiştirme konularında özgür olmaları yatar. GNU yazılımları bu özgürlükleri dağıtıldıkları lisans ile yasal olarak güvence altına alır, dolayısıyla GNU yazılımları özgür yazılımlardır.

Sunucu Adı Göstergesi (SNI) bir TLS protokolü uzantısı. Güvenli SSL bağlantısı oluşturulurken el sıkışma (handshake) sürecinin başlagıcında, istek içerisinde geçen sunucu adının (hostname) dijital sertifikasını doğrular. SNI teknolojisi aynı IP adresi ve TCP portu üzerinden birden fazla güvenli web sitesi için doğrulama işlemini gerçekleştirdiğinden, daha önceden SSL kullanmak için gerekli olan sabit IP zorunluluğunu ortadan kaldırır.

<span class="mw-page-title-main">Drown atağı</span>

DROWN atağı TLS protokol takımının, artık güvensiz olarak bilinen SSL v2 protokolünü desteklemesi sebebiyle yapılabilmektedir. DROWN, TLS ile hizmet veren bununla birlikte SSL v2 protokolünü destekleyen ve iki protokol arasında aynı açık anahtar bilgilerini paylaşan tüm sunucular üzerinde etkilidir. Ek olarak eğer açık anahtar sertifikası SSLv2 destekleyen farklı bir sunucu üzerinde kullanılıyor ise, TLS sunucusu yine bu zafiyetten etkilenerek bilgi sızıntısına maruz kalmaktadır.

<span class="mw-page-title-main">Copyleft</span>

Copyleft, insanlara özgün çalışmayı diledikleri gibi kopyalama, değiştirme ve yeniden dağıtma hakları veren bununla birlikte eserin özgün ve değiştirilmiş halinin yine aynı haklarla dağıtılmasını zorunlu tutan yasal bir tekniktir. Bir özgür yazılımın özgün hali ve değiştirilmiş türevlerinin özel mülke dönüşmesini önlemek yani daima özgür kalmasını sağlamak için kullanılır. Bu bakımdan copyleft özgür lisanslar copyleft olmayan özgür lisanslara göre daha koruyucu niteliktedir. Copyleft lisanslar başta bilgisayar yazılımları olmak üzere belgeler, sanat eserleri, bilimsel keşifler ve hatta belirli patentlere kadar uzanan çalışmalar için kullanılabilir.

Bilişimde Java Secure Socket Extension (JSSE) (Türkçesi Java Güvenli Soket Uzantısı), güvenli İnternet iletişimi sağlayan bir paket seti sağlar. Secure Sockets Layer (SSL) (Güvenli Soket Katmanı) ve Transport Layer Security (TLS) (Aktarım Katmanı Güvenliği) prokollerinin Java teknolojisi sürümünü uygular. Veri şifreleme, sunucu kimlik doğrulama, mesaj bütünlüğü ve isteğe bağlı istemci kimlik doğrulaması için fonksiyonellik içerir.

Kriptolojide, Curve25519 256-bit anahtar boyutu için 128-bit güvenlik sağlayan ve eliptik eğri Diffie–Hellman (ECDH) anahtar değişim protokolu ile kullanılması için tasarlanan bir eliptik eğridir. ECC eğrileri içinde en hızlılarından biridir ve bilinen herhangi bir patent kapsamında değildir.

RIOT, düşük güçlü kablosuz nesnelerin interneti (IoT) cihazlarına odaklanan, ağa bağlı, belleği kısıtlı sistemler için tasarlanmış küçük bir işletim sistemidir. GNU Kısıtlı Genel Kamu Lisansı (LGPL) altında yayınlanan açık kaynaklı bir yazılımdır.

IBM Kamu Lisansı (IPL), IBM tarafından yazılan ve zaman zaman kullanılan özgür ve açık kaynak kodlu yazılım lisansıdır. Özgür Yazılım Vakfı (FSF) tarafından onaylanmıştır ve Açık Kaynak Girişimi tarafından "açık kaynak lisansı" olarak tanımlanmaktadır.