Son Yazılar

Dosya Organizasyonu (File Organisation)

Doğrusal Karım (Linear Hashing)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, doğrusal karım ve doğrusal karım tablosu (linear hash table) konularını anlatmaktır. Bilgisayar bilimlerinde veri depolamak veya veriye hızlı ulaşmak için kullanılan yöntemlerdir. Doğrusal karım yönteminde temel olarak özetleme fonksiyonları kullanılır (karım fonksiyonu,…

Bilgisayar Matematiği Veri Güvenliği (Cryptography)

İkinci dereceden kalbur (quadratic sieve)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, özellikle veri güvenliği konusunda, çarpanlara ayırmaya dayanan zorluk üzerine inşa edilmiş olan şifreleme algoritmalarına bir saldırı için kullanılan ikinci derecenden kalbur (quadratic sieve) konusunu açıklamaktır. Sistem kabaca bir sayıyı çarpanlarına ayırır. Bu…

Bilgisayar Matematiği Veri Güvenliği (Cryptography)

Oransal Elek (Kesirli Kalbur, Rational Sieve)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, bir çarpanlara ayırma yöntemi olan oransal eleği anlatmaktır. Bu yöntem, veri güvenliğinde çarpanların dayandığı matematiksel zorluk üzerine kurulu olan algoritmalara saldırı için kullanılır. Örneğin RSA. Algoritmanın çalışmasını anlatarak başlayalım: Öncelikle elimizde, asal…

Bilgisayar Matematiği Veri Güvenliği (Cryptography)

Kalbur Problemi (Sieving Problem, Elek Problemi)

Yazan : Şadi Evren ŞEKER Özellikle sayılar teorisinde (number theory) önemli bir yer tutan, kafes çözümlemelerde (lattice based solutions) birisidir. Bilgisayar bilimlerinde, özellikle veri güvenliği konusunda, şifreleme algoritmalarına saldırı için kullanılmaktadır. Problem basitçe belirli bir üst sınıra kadar olan asal…

JAVA Nesne Yönelimli Programlama Veri Yapıları

Java dilinde vektörler

Yazan : Şadi Evren ŞEKER Bu yazının amacı, Java dilindeki vektör sınıfının kullanılmasını ve yapısını anlatmaktır. Java dilindeki vektörlerin yapısından bahsederek başlayalım. Klasik veri yapısı olarak dizilerin (array) ve bağlı listelerin (linked list) özelliklerini birleştirmiştir. Bir vektör boyutu belli olmadan…

JAVA Nesne Yönelimli Programlama

JAVA da nihai uygulması (Final)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, java dilinde bulunan final kelimesini açıklamaktır. Temel olarak final kelimesi, java dilinde 3 farklı yerde bulunabilir: Sınıf tanımında Metot (fonksiyon) tanımında Değişken tanımında Sırasıyla bu durumları uygulamalar üzerinden görelim. public final class…

JAVA Nesne Yönelimli Programlama

JAVA dilinde çoklu kalıtım (miras)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, JAVA programlama dilinde bir sınıfın, birden fazla sınıftan nasıl miras aldığını anlatmaktır. Temel olarak JAVA dilinde doğrudan çoklu kalıtım (multiple inheritance) bulunmaz. Yani aşağıdaki gibi bir kod hatalıdır: public class bilgisayar_mühendisliğ_öğrencisi extends…

JAVA Nesne Yönelimli Programlama

Nesne Akışı (Casting)

Yazan : Şadi Evren ŞEKER Nesne yönelimli programlama dillerinde, sınıflar (class) arasında miras ilişkisi bulunması halinde (inheritance), bu sınıflardan türetilen nesnelerin birbirine akıtılması durumudur. Bu durumu aşağıdaki örnekler üzerinden anlamaya çalışalım: public class insan{ int boy; int kilo; } public…

JAVA Nesne Yönelimli Programlama

Nesne Kopyalama

Yazan : Şadi Evren ŞEKER Bu yazının amacı, nesne yönelimli programlama ortamlarında (object oriented programming) kullanılan iki temel kopyalama işlemini anlatmaktır. Literatürde bir nesnenin kopyalanması için geçen iki terim bulunur: Sığ kopyalama (shallow copying) Derin kopyalama (deep copying) Sığ kopyalama…

Sınavlar Veri Güvenliği (Cryptography)

Veri Güvenliği 2 dersi vize çözümleri

Soru 0) Ayrık logaritma çözme algoritmalarının mod n için kaçar deneme yapacağını yaklaşık olarak hesaplayınız ve algoritmaları buradaki başarısına göre sıralayınız. (30 puan)   Kaba kuvvet ile ayrık logaritma alma yöntemi mod n için en kötü n deneme gerektirir. Bebek…