26 Ocak 2014 Pazar

Üç Başlı Köpek - 1


Bilişim ve bağlantı teknolojileri geliştikçe, günlük yaşamımızı etkileyen birçok işlemi sanal ortamlarda yapar hale geldik. İlk üniversite yıllarımda para çekmek için banka şubesine giderdim. Gişe memuru, soyadlara göre sıralanmış dosyaların arasından dosyamı bulur, yaptığım işlemi dosyaya ve hesap cüzdanına yazar ve bir nüshayı bana verirdi. Şimdi bırakın banka şubesine gitmeyi, oturduğumuz yerden kıpırdamadan neredeyse tüm bankacılık işlemlerini yapabiliyoruz. Bunca işlemi yaparken, sisteme kendimizi tanıtmamızın önemini hepimiz biliyoruz. Peki ya sistemin kendini bize tanıtma yöntemini hiç düşündünüz mü? İnternet üzerinden eriştiğiniz banka web sitesinin, gerçekte banka ile ilgisi olmayan kimselerin şifrenizi çalmak üzere kurduğu bir düzen olmadığından nasıl emin oluyorsunuz?

Kullanıcıların ve sistemlerin birbirine kendilerini tanıtma yöntemine kimlik denetimi (İngilizce authentication) denir. Kullanıcı kimlik denetiminin en yaygın bilinen yöntemi, kullanıcı adı ve parola çiftidir. Sistemlerin kendini tanıtma yöntemi ise sunucu adı ve alan adı yöntemidir. Basitçe, web tarayıcınızda ulaşmak istediğiniz adresi yazdığınızda, ulaşmak istediğiniz sistemi bildirmiş olursunuz. Oturum açma sayfası karşınıza geldiğinde adres doğru görünüyorsa kullanıcı olarak sistemin kimlik denetimini tamamlamış olursunuz. Kullanıcı adı ve parolanızı girip oturum açtığınızda ise sistem sizin kimlik denetiminizi yapmış olur. Buraya kadar normal gibi görünen işlemde iki temel sorun var:
  • Kullanıcı adı ve parolanız internet ortamında açık olarak seyahat etti. Sizinle, erişmeye çalıştığınız sistem arasında dinleme yapan biri, kullanıcı adı ve parolanızı açık olarak görebilir.
  • Bilgisayar korsanları sizi aldatarak yanlış sunucuya erişmenizi sağlamış olabilir. Hatta bunu yaparken kullanıcı adı ve şifrenizi çaldıktan sonra erişmeye çalıştığınız gerçek sunucuya sizi yönlendirerek bunu farketmenizi engellemiş bile olabilir.
1973 yılında İngiliz matematikçi Malcolm J. Williamson ve ekibi tarafından geliştirilen şifreleme yöntemi uzun bir süre boyunca gizli tutuldu. 1976 yılında ise Amerikan matematikçiler Whitfield Diffie ve Martin E. Hellman tarafından yeniden ve bağımsız olarak geliştirilen aynı yöntem tüm dünyaya açık olarak yayımlandı. Matematiksel detaylara girmek istemiyorum, ama basitçe şöyle açıklayayım: Belirli bir hedefe göndermek için şifrelediğiniz bilgiler, yalnızca hedefteki sistem tarafından deşifre edilebiliyor. Bilgilerin seyahati boyunca geçtiği yerlerden dinleme yapanlar içerik hakkında hiçbir fikre sahip olamıyor.

Çok büyük asal sayılarla hesaplama gerektiren bu şifreleme yöntemini kullanan iletişim şekline bilişim dünyasında SSL (Secure Sockets Layer) yöntemi adı verilir. Internet üzerinden eriştiğiniz web sayfalarının adresi "https" ile başlıyorsa SSL yöntemi ile şifreli iletişim yapıyorsunuz demektir. Bu yöntemde en büyük yardımcılarımız, web tarayıcılarımızdır. İnternette güvenilir bir siteye erişimde karmaşık matematiksel hesaplamaları bizim yerimize yapar ve eriştiğimiz sunucunun (web sitesinin) güvenilir olup olmadığını bize bildirirler. SSL yönteminde gerekli olan asal sayılar sertifikalar içinde saklanır. Bir web tarayıcı, sunucunun güvenilir olup olmadığına aşağıdaki ölçütlere göre karar verir:

  • Sertifika güvenilir bir sağlayıcı tarafından onaylanmış mı? SSL sertifikasının bir pasaport olduğunu düşündüğünüzde, dünyada tanınan bir devlet tarafından verilmesi durumu ile eşdeğerdir.
  • Sertifika erişmeye çalıştığımız sunucu adını içeriyor mu? Yine pasaport örneğinden hareket ederek, pasaport içinde kendi adımız doğru olarak yer alıyor ise güvenilir demektir.
  • Sunucu sertifikası tarihi geçerli mi? Aynı örnekle, pasaport geçerli bir tarihe sahip ise güvenilir demektir.


Eğer yukarıdaki sorulardan en az birinin yanıtı hayır ise güvenlik uyarısı alırsınız. Gördüğünüz gibi yukarıda anlattığım iki güvenlik sorunu da SSL ile çözülüyor. Fakat ne yazık ki kötü niyetli insanlar her zaman var ve sürekli olarak güvenlik açıklarından yararlanmaya çalışıyorlar.

Bundan birkaç yıl önce EGO, güvenli web sunucusu için TürkTrust kurumundan SSL sertifikası aldı. TürkTrust, dünyada kabul görmüş güvenilir bir sertifika sağlayıcıdır. Fakat EGO'ya yanlışlıkla kendi mühürleri sayılabilecek sertifikayı da gönderdiler. Yani artık EGO da istediği her sunucu için sertifika onayı verebilecekti. Aynı yanlışlık KKTC Merkez Bankası ile de yaşandı ve banka yanlışlığı farkedip TürkTrust'ın özel sertifikasını iade etti. EGO'da neler oldu dersiniz?

EGO'ya yanlışlıkla gelen TürkTrust sertifikası ile Google için sertifikalar üretilip onaylandı. Üretilen sertifikalar ise EGO'nun iç ağında kurulan bir sunucuya yüklenerek çalışanların bu sunucudan Google hizmetlerine erişimi sağlandı. EGO çalışanları gerçekte Google sunucusuna eriştiğini sanıyordu çünkü web tarayıcıları Google için üretilen sertifikanın TürkTrust tarafından onaylandığını algılayıp güvenlik uyarısı vermiyordu. Böylece şifreli iletişim yönteminde araya bir sunucu kurulmuş ve verilerin orada deşifre edilme olanağı sağlanmış oldu. Bunun sonucunda kimin hangi özel bilgilerine erişildi bilemeyiz. Ama niyetin iyi olmadığını açıkça görüyoruz.

Google tarafından farkedilen durum dünyada büyük yankı buldu ve Google, Microsoft, Mozilla gibi web tarayıcı sağlayıcıların tamamı çeşitli duyurular yapıp önlemler aldılar. TürkTrust ise mühür niteliğindeki sertifikasını dünya çapında geçersiz sayıp yenisini üretti. Microsoft'un konu ile ilgili uyarısını http://support.microsoft.com/kb/2798897/tr linkinde bulabilirsiniz. Listenin en başındaki "*.EGO.GOV.TR tarafından verilen *.google.com" maddesine dikkatinizi çekerim.

Şimdi tüm bunların üç başlı köpek ile ne ilgisi olduğunu soracaksınız. Uzun bir yazı oldu, onu da bir sonraki yazıya bırakıyorum.

19 Ocak 2014 Pazar

Sevdiğim Şarkılar

Lise ve üniversite dönemimde iyi bir walk-man sahibi olabilmek neredeyse statü simgesi idi. Sevdiğim şarkıların bir listesini hazırlar, sonra da mahallenin tek müzik dükkanına götürüp boş bir kasete kaydettirirdim. Müzik dükkanı dediğim, hem müzik enstrümanı hem de plak ve kaset satan bir yerdi. Bugün MP3 çalarda veya bilgisayarda birkaç dakika içinde hazırladığımız çalma listeleri için günlerce bekler, harçlığımızı aşan paralar öderdik.

Eski günleri hatırlamışken, biraz daha eskiye gitmek istiyorum. 1789 yılını hatırlarsınız, yani tarih kitaplarından hatırlarsınız, Fransız Devrimi’nin olduğu yıl. Yetim olarak büyüyen, yatılı okulda okuyup subay olmak isteyen, ama türlü zorluklarla karşılaşınca vazgeçip matematik öğretmeni olan birinden bahsedeceğim. Bu kişinin adı Jean-Baptiste Joseph Fourier. Titizliği ve mükemmeliyetçiliği ile bilinen Fourier, eminim askerlik mesleğinde ilerleseydi yine adını biliyor olacaktık. Fakat iyi ki matematik alanında çalışmış.

O yıllarda Fourier şöyle demişti: "Doğadaki tüm periyodik fonksiyonlar, birbirine dik iki farklı periyodik fonksiyonun artan frekanslardaki değerlerinin dik toplamı şeklinde gösterilebilir". Yani başka bir ifade ile:
Bu deyişi ile kendinden yeterince nefret ettiren ve okulda öğrencilerin: "Peki ama tüm bunları nerede kullanacağız ki?" dedirten Fourier’i başkaları da izlemiş ve olayı daha ileriye götürmüşler. Yukarıdaki özdeyişi başlangıç noktası olarak alan Calude Elwood Shannon da 1950’li yıllarda şunu demiştir: "Sonsuz tüm seriler mükemmel bir örnekleme ve interpolasyon kullanılarak, belirli bir sapma kabulü ile sonlu hale getirilebilir". Bunun da tercümesi şudur:
Aslında yukarıdaki özdeyişlerin çok basit bir anlamı vardı: doğadaki her şey sayısallaştırılabilir. Bu durum, ses için de geçerlidir ve sesin sayısallaşmış halinin sonucu olarak elimizde MP3 biçiminde kodlanmış şarkılar bulunuyor. Fourier’in serileri ve Shannon’un açılım teoremini nerede ve nasıl kullanacağını bilen diğer bilim insanları MP3, MP4, MPEG ve benzeri diğer biçimleri geliştirmişlerdir.

Bu arada bir detayı belirtmeden geçemeyeceğim: Fourier, ünlü serilerini geliştirmeden önce Napolyon tarafından Mısır’a götürülmüş ve eski Mısır Uygarlığı ile ilgili araştırmalar yapması istenmişti. İyi bir komplo teorisi ile MP3’ün temellerinin eski Mısır Uygarlığı’na dayandığını bile söyleyebiliriz.

4 Ocak 2014 Cumartesi

Geribildirimin Değeri

Uzun zamandır makinelerle insanları karşılaştırmaya çalışıyorum. Matrix filmindeki ana temadan tutun, üniversitede aldığım teorik derslere, profesyonel iş yaşamımda edindiğim deneyimlere kadar çeşitli dönemlerde bunu düşündüm ve varsayımlar yaptım. Özellikle bilgisayarlar ile ilgili olarak vardığım nokta şu: Eğer bilgisayar çıktısı beklediğiniz gibi değilse mutlaka giriş verilerinizde hata var demektir. Çünkü bilgisayarlar hata yapamayacak kadar basit bir mantığa dayanır. Peki ya insanlar beklediğiniz gibi bir çıktı üretmiyor, beklediğiniz tepkiyi vermiyorsa? 

Kontrol teorisinde makineler için öğrendiğimiz ilk şey, bir otomasyon sisteminin doğru çalışabilmesi için negatif geribildirim verilmesi gerektiği idi. Eğer pozitif geribildirim verirseniz sistemi karasız hale getirir ve büyük felaketlere yol açabilirsiniz. Bunu aynen insanlar için uygulayabileceğimi düşünmüştüm. Bir insanın yalnızca eksiklerini kendisine bildirerek düzeltebileceğimi düşünüyordum. Fakat düşünemediğim bir şey vardı: insan psikolojisi. Bir süredir okuduğum kitaplarda, insanlara geribildirim yaparken, olumlu ve olumsuz her şeyi olduğu gibi söyleyerek düzeltmesini beklemek gerektiği anlatılıyor.

Harry Nyquist 1889 yılında İsveç’te dünyaya geldi. 1907 yılında ailesinin Amerika Birleşik Devletleri’ne göç etmesi ile eğitimini orada tamamladı. 1917 yılında Yale Üniversitesi’nde doktorasını tamamlayarak önce AT&T şirketinde, daha sonra da Bell Laboratuvarları’nda çalışmaya başladı. Kontrol teorisi üzerinde yaptığı çalışmalar ile ünlendi ve bir otomasyon sisteminin kararlılığını gösteren Nyquist Eğrisi’ni geliştirdi. Bugün neredeyse tüm otomasyon sistemlerinin geliştirilmesinde Harry Nyquist’in payı vardır. Uçakların otomatik pilot ile güvenli uçuşundan, roketlerin doğru yörüngeye oturmasına, enerji santrallerindeki türbin hareketi kontrolünden, otomatik açılan kapılara kadar her yerde otomatik kontrol sistemleri bize hizmet eder. Geribildirimler de bu sistemlerin karar vermesi için anahtar görevi görür.

Sistemler doğru geri bildirim almadan hiçbir işe yaramaz. Durum böyle iken, insanların yaptığı işler için hiçbir yorum yapmadan iyiye gitmesini beklemek de mümkün olamaz. Yazının başında da belirtmiştim, bir sisteme pozitif geribildirim vermek işleyişi olumsuz etkiler ve sistemin kararsız hale gelmesine neden olur. İnsanlarla benzerlik kurduğumda aklıma ilk olarak politikacılar geliyor. Etrafındaki herkesten pozitif geribildirim alan liderlerin kontrol dışına çıkmaları belki de bu yüzdendir.