Anahtar Bağımlı Bir Şifreleme Algoritması (IRON)

Benzer belgeler
ŞİFRELEME YÖNTEMLERİ

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUVARI LİNEER KRİPTANALİZ

GELİŞMİŞ ŞİFRELEME STANDARDI - AES

Güncel Kriptografik Sistemler

III. Gizli Anahtar Kriptografi

Simetrik Kriptografi

Bilgi Güvenliği ve Kriptoloji Temel Kavramlar

AES (Advanced Encryption Standard)

Mukayeseli Veri Şifreleme Algoritmaları

Tek Anahtarlı Yeni Bir Şifreleme Algoritması Daha

SİMETRİK ŞİFRELEME. DES (Veri Şifreleme Standardı, Data Encryption Standard)

Simetrik (Gizli) Kriptografik Sistemler Blok Şifreler Standartlaştırma. DES-Data Encryption Standard (Bilgi Şifreleme Standardı)

DES, yılında tasarlandığından beri iki saldırı yöntemi başarıyla gerçekleştirilmiştir. Bunlar lineer kriptanaliz [] ve diferansiyel kriptanalizdir [].

Sayı sistemleri-hesaplamalar. Sakarya Üniversitesi

ŞİFRELEME BİLİMİ. Prof. Dr. Şeref SAĞIROĞLU Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Maltepe/Ankara

DOKUZ EYLÜL ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ MÜDÜRLÜĞÜ DERS/MODÜL/BLOK TANITIM FORMU. Dersin Kodu: CSE 5065

MODERN BLOK ŞİFRELEME ALGORİTMALARI

İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİLGİSAYAR SİSTEMLERİ LABORATUVARI LİNEER KRİPTANALİZ

GÜVENLİ HABERLEŞME TEKNİKLERİ

Fonksiyon Optimizasyonunda Genetik Algoritmalar

MODERN BLOK ŞİFRELEME ALGORİTMALARININ GÜCÜNÜN İNCELENMESİ

Modern Blok Şifreleme Algoritmaları

DERS NOTLARI. Yard. Doç. Dr. Namık AKÇAY İstanbul Üniversitesi Fen Fakültesi

Algoritma Geliştirme ve Veri Yapıları 3 Veri Yapıları. Mustafa Kemal Üniversitesi

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#3: ALGORİTMA ANALİZİ#2

ŞİFRELEME YÖNTEMLERİ

VERİ YAPILARI VE PROGRAMLAMA (BTP104)

Sayı sistemleri iki ana gruba ayrılır. 1. Sabit Noktalı Sayı Sistemleri. 2. Kayan Noktalı Sayı Sistemleri

Kriptoloji. Alibek Erkabayev Mesleki Terminoloji II

ULUSLARARASI BANKA HESAP NUMARASI HAKKINDA TEBLİĞ (Sayı: 2008/6) (10 Ekim 2008 tarih ve sayılı Resmi Gazete de yayımlanmıştır)

BLM221 MANTIK DEVRELERİ

Zeki Optimizasyon Teknikleri

Yrd. Doç. Dr. Caner ÖZCAN

İleri Diferansiyel Denklemler

SİMETRİK VE ASİMETRİK ŞİFRELEME ALGORİTMALARININ KARŞILAŞTIRILMASI. Konya. Konya. Şifreleme bilgisayar ağlarında haberleşme güvenliğini sağlamak için

Algoritmalar. Heap Sort. Bahar 2017 Doç. Dr. Suat Özdemir 1

S. N ala l n n T OP OP A B Ğ Fatih i h A BL B AK K

ULUSLARARASI BANKA HESAP NUMARASI HAKKINDA TEBLİĞ (*) (Sayı: 2008/6) (10 Ekim 2008 tarih ve sayılı Resmi Gazete de yayımlanmıştır)

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

Şifreleme Algoritmalarının Sınıflandırılması ve Algoritmalara Saldırı Teknikleri. Yrd.Doç.Dr.Mehmet Tektaş

AĞ TEMELLERI. İSİM SOYİSİM: EMRE BOSTAN BÖLÜM: BİLGİSAYAR PROGRAMCILIĞI ÜNİVERSİTE: NİŞANTAŞI KONU: Konu 5. TCP/IP

Polialfabetik Şifreleme (Vigenere)

2. SAYI SİSTEMLERİ VE KODLAR

Öğr. Gör. Ümit ATİLA

Zeki Optimizasyon Teknikleri

IPSEC. İnternet Protokol Güvenliği

d) Müşteri: Bankalardan hizmet alan gerçek ve tüzel kişileri

BioAffix Ones Technology nin tescilli markasıdır.

Stenografi ve Steganaliz. Hamza Duman / F.Ü. Yazılım Mühendisliği

YÖNEYLEM ARAŞTIRMASI - III

Sayı sistemleri iki ana gruba ayrılır. 1. Sabit Noktalı Sayı Sistemleri. 2. Kayan Noktalı Sayı Sistemleri 2. SAYI SĐSTEMLERĐ VE KODLAR

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1

VERİ MADENCİLİĞİ (Kümeleme) Yrd.Doç.Dr. Kadriye ERGÜN

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ÖZET FONKSİYON TABANLI GÜVENLİ BİR RFID PROTOKOLÜNÜN FPGA ÜZERİNDE GERÇEKLENMESİ

2. Ara Değerlendirme - Makale İnceleme Ödevi - Bu ödevin herkes tarafından yapılması Zorunludur

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

Web Madenciliği (Web Mining)

Yrd. Doç. Dr. Caner ÖZCAN

Bilgisayar Güvenliği (ISE 412) Ders Detayları

RSA ŞİFRELEME ALGORİTMASI

BioAffix Ones Technology nin tescilli markasıdır.

Güvenli Elektronik Belge Yönetim Sistemi İçin Temel Gereksinim: E-İMZA

Yeni Nesil Ağ Güvenliği

İleri Diferansiyel Denklemler

Atatürk Anadolu. Temel Kavramlar Üzerine Kısa Çalışmalar

International Journal of Innovative Research in Education

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

OSPF PROTOKOLÜNÜ KULLANAN ROUTER LARIN MALİYET BİLGİSİNİN BULANIK MANTIKLA BELİRLENMESİ

NB Ekran Seri Port Üzerinden Veri Okuma/Yazma. Genel Bilgi Protokol Oluşturma Veri Okuma Veri Yazma

RSA ANAHTAR DAĞITIMI VE RSA İLE DİJİTAL İMZA OLUŞTURMA

SAYI VE KODLAMA SİSTEMLERİ. Teknoloji Fakültesi/Bilgisayar Mühendisliği

Daha komplike uygulamalar elektronik ticaret, elektronik kimlik belgeleme, güvenli e-posta,

İÇİNDEKİLER Sayfa ÖNSÖZ

NB Macro Kullanımı Hakkında Genel Bilgiler

RSA Şifreleme Algoritmasının Pollard RHO Yöntemi ile Kriptanalizi

İleri Diferansiyel Denklemler

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

Üniversite Sanayi İşbirliği Başarılı Uygulamalar Çalıştayı

RSA ŞİFRELEME ALGORİTMASI VE ARİTMETİK MODÜL UYGULAMASI

RSA ŞİFRELEME ALGORİTMASININ POLLARD RHO YÖNTEMİ İLE KRİPTANALİZİ

IPSEC IKE ŞİFRELEME STANDARTLARI

Veri Yapıları. Öğr.Gör.Günay TEMÜR Düzce Üniversitesi Teknolojis Fakültesi

DSP DONANIMI. Pek çok DSP için temel elemanlar aşağıdaki gibidir.

KRİPTO ALGORITMALARININ GELİŞİMİ VE ÖNEMİ

OTOMATİK KONTROL SİSTEMLERİ BLOK DİYAGRAM İNDİRGEME KURALLARI

12. Kat Oluşturma. Bu konuda mevcut bir katın bilgilerini kullanarak nasıl yeni katlar oluşturulabileceği incelenecektir.

S-kutularının Kriptografik Özellikleri Cryptographic Properties of S-boxes

KLASİK ÇARPMA ALGORİTMALARININ DONANIMSAL SİMÜLASYONLARI VE PERFORMANS DEĞERLENDİRİMİ

Bit, Byte ve Integer. BIL-304: Bilgisayar Mimarisi. Dersi veren öğretim üyesi: Dr. Öğr. Üyesi Fatih Gökçe

Gelişmiş Şifreleme Standardının - AES - FPGA Üzerinde Gerçeklenmesi

Bilgisayar ve Ağ Güvenliği

Sayılar Teorisi SAYILAR TEORİSİ VE SAYILAR

MAK 210 SAYISAL ANALİZ

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

BLM 112- Programlama Dilleri II. Hafta 4 İşaretçiler (Pointers)

Fatih University- Faculty of Engineering- Electric and Electronic Dept.

Bilgi Güvenliği Eğitim/Öğretimi

Bir ağ içerisinde bulunan tüm cihazların bir IP adresi olmak zorundadır. Cihazlar haberleşmelerini bu IP adresi üzerinden sağlar ancak cihazların

BioAffix Ones Technology nin tescilli markasıdır.

ASİMETRİK ŞİFRELEME ALGORİTMALARINDA ANAHTAR DEĞİŞİM SİSTEMLERİ

Transkript:

Anahtar Bağımlı Bir Şifreleme Algoritması (IRON) Dokuz Eylül Üniversitesi, Bilgisayar Mühendisliği Bölümü, 35160, İzmir ndemir@demir.web.tr, dalkilic@cs.deu.edu.tr Özet: Bu makalede, Feistel yapısı kullanan yeni bir modern simetrik şifreleme algoritması anlatılmıştır. Bu yeni algoritmada; gizli kutular, alt anahtarlar ve döngü sayısı anahtar bağımlıdır. Bu değerler anahtarın çeşitli işlemlerden geçirilmesi ile elde edilmiştir. Yaratılan algoritma yazılım olarak geliştirilmiş, donanımsal olarak test edilmemiştir. Anahtar Kelimeler: Şifreleme, Şifreleme Algoritması, Feistel Yapısı A Key Dependent Encryption Algorithm (IRON) Abstract: In this paper, a new modern symmetric encryption algorithm, that using Feistel structure, is explained. In this new algorithm; secret boxes, sub keys and number of rounds are key dependent. These values are found by doing some operations using key. Created algorithm was created as software, wasn t tested as hardware. Keywords: Encryption, Encryption Algorithm, Feistel Structure 1. Giriş İnternet üzerinde Türkçe bilgilerin çeşitliliği ve e-devlet projesi kapsamında İnternet kullanımının artması bilgi güvenliğini de bir ihtiyaç haline getirmiştir. Bilgi güvenliğinin sağlanması amacıyla yurtdışında geliştirilmiş bazı şifreleme algoritmaları kullanılmaktadır. Yaygın olarak kullanılan şifreleme algoritmaları simetrik yani tek anahtarlı algoritmalardır. şifreleme algoritmasında aynı alt anahtarlar kullanılarak da deşifreleme yapılabilir. Deşifreleme işlemi için ayrı bir algoritmaya ihtiyaç duyulmaz sadece şifreleme sırasında kullanılan alt anahtarlar ters sıradan kullanılır. Geliştirilen şifreleme algoritmasında döngü sayısı da dâhil olmak üzere, alt anahtarlar ve gizli kutuların oluşturulması da verilen anahtara bağlıdır. 2. Algoritmanın Açıklaması Simetrik anahtarlı şifreleme algoritmaları genel olarak geleneksel (Sezar, Monoalfabetik Şifreleme Sistemleri, vb) ve modern (DES, AES, vb) olarak ikiye ayrılabilir. Klasik algoritmalar karakter tabanlı şifreleme teknikleridir. Modern teknikler ise bitler üzerinde işlemler yapılarak gerçekleştirilir ve kullanım alanları daha geniştir. Bu makalede anlatılan şifreleme algoritması modern simetrik şifreleme algoritmaları sınıfında yer alır ve Feistel yapısını kullanarak geliştirilmiştir. Bu yapının gereği olarak, aynı 499 Geliştirilen algoritma Feistel (Şekil 1) yapısındadır ve girdi olarak 128 bit uzunluğunda anahtar ve 64 bit uzunluğunda veri blokları kullanır. Döngü sayısı, anahtar bağımlıdır. En az 16, en fazla 32 adet olabilir. DES, Blowfish gibi birçok algoritma Feistel yapısını kullanmaktadır [1,2]. Bu algoritmaları birbirlerinden farklı kılan F fonksiyonu ve alt anahtarların bulunuş şeklidir.

Anahtar Bağımlı Bir Şifreleme Algoritması (IRON) Şekil 1. Feistel Yapısı Ayrıca, pi sayısının kesirli kısmının on altılı sayı sistemi gösterimi de sabit değerler olarak belirlenmiştir. Pi sayısının kullanılma nedeni, basamaklarını oluşturan sayıların rastgelelik özelliği taşımasıdır. Bu sabit değerler, 256 adet 32 bitlik on altılı sayı sistemi değerlerinden oluşmaktadır. Bu sabitler, alt anahtarların ve gizli kutuların oluşturulmasında kullanılacaktır. Bu değerler; makalede P 0, P 1, P 2,, P 255 olarak gösterilecektir. Şifreleme işlemine başlamadan önce, döngü sayısı, gizli kutular ve alt anahtarlar hesaplanmalıdır. 2.1 Döngü Sayısının Bulunması 128 bit uzunluğundaki anahtar, 32 adet 4 bitlik bloklara ayrılır. Bu 4 bitlik bloklar birbirleri ile XOR işlemine sokulur. Çıkan 4 bitlik sayı onluk sayı sistemine çevrilir. Bu tamsayı değerinin çift ve 16-32 aralığında olması için tek ise 17, değilse 16 eklenir. Çıkan sonuç döngü sayısını verir. 2.2 Alt Anahtarların Bulunması Alt anahtarlar hesaplanırken kullanılacak döngü sayısı, şifreleme algoritmasında kullanılan döngü sayısının yarısı kadardır çünkü alt anahtarları oluştururken kullanılan her döngüden iki adet alt anahtar çıkmaktadır. Alt anahtarların oluşturulması şu şekilde anlatılabilir (Şekil 2); 500 1. 128 bitlik anahtar, 64 bitlik bloklara ayrılır. 2. Sol blok bitleri, sola bir bit kaydırılır. İlk bit, sona alınır. 3. 2 nolu basamaktan çıkan 64 bitlik blok, 32 bitlik bloklara ayrılır ve bunlar P 0, P 1 ile XOR işlemine sokulur. 4. 3 nolu basamaktan çıkan 32 bitlik veriler birleştirilir, böylece ortaya ilk alt anahtar çıkar. 5. Birinci basamakta elde edilen sağ bloğun bitleri, sola bir bit kaydırılır. İlk bit, sona alınır. 6. 5 numaralı basamaktan çıkan 64 bitlik blok, 32 bitlik bloklara ayrılır ve bunlar P 2, P 3 ile XOR işlemine sokulur. 7. 6 numaralı basamaktan çıkan 32 bitlik veriler birleştirilir, böylece ortaya ikinci alt anahtar çıkar. Bu işlem sonunda ilk döngü tamamlanmış olur. 8. İkinci döngüde, 2. ve 5. adımlardan çıkan 64 bitlik bloklar yine, 2. ve 5. adımda olduğu gibi sola kaydırma işlemine tabi tutulur. 9. Sol 64 bitlik blok için 3. adım uygulanır ama bir farkla XOR işlemi için P 4 ve P 5 kullanılır. Ardından 4. adımda olduğu gibi bloklar birleştirilir. 10. Sağ 64 bitlik blok için 6. adım uygulanır ama bir farkla XOR işlemi için P 6 ve P 7 kullanılır. Ardından 7. adımda olduğu gibi bloklar birleştirilir. 11. Bundan sonraki adımlar da ikinci döngüde olduğu gibi devam eder ama bundan sonra kullanılacak olan sabitler P 8, P 9, olarak artacaktır. Bu işlemler esnasında 256 adet P sabitlerinden hepsi kullanılmaz. En az 32 tanesi, en fazla 64 tanesi kullanılır. Pi sayısının kesirli kısmının on altılı sayı sistemindeki değerleri, Blowfish algoritmasında da kullanılmaktadır [1,2]. Bu değerler Bailey-Borwein-Plouffe algoritması kullanılarak bulunabilir [3,4,5].

Alt anahtarlar ise şu şekilde gösterilmiştir; SK 0, SK 1, SK 2, Gizli kutuların oluşturulması aşağıda anlatılmıştır; İlk gizli kutunun bulunması; 1. 128 bitlik anahtar 4 adet 32 bitlik bloklara Şekil 2. Alt anahtarların oluşturulması 2.3 Gizli Kutuların Oluşturulması 4 adet 8x32 boyutunda gizli kutu oluşturulacaktır, her bir kutuya girdi olarak 8 bit alınır ve kutudan 32 bit çıkar. Bu işlemin gerçekleşmesi için her kutu 256 adet her biri 32 bitten oluşan veriyi barındırır. Gizli kutular, 128 bitlik anahtar ve P sabitleri kullanılarak bulunur. Kullanılan işlemler toplama, çarpma ve XOR işlemleridir. Toplama ve çarpma işlemleri 2 32 +1 moduna göre yapılmaktadır. Gizli kutuların elemanları şu şekilde gösterilmiştir; S 0,0, S 0,1, S 0,2, S 0,3,, S 0,255 S 1,0, S 1,1, S 1,2, S 1,3,, S 1,255 S 2,0, S 2,1, S 2,2, S 2,3,, S 2,255 S 3,0, S 3,1, S 3,2, S 3,3,, S 3,255 2. ayrılır; k 0, k 1, k 2, k 3 İlk gizli kutunun ilk elemanını oluşturmak için 32 bitlik anahtar blokları toplanır. Böylece ilk gizli kutunun ilk elemanı bulunmuş olur. 3. SK alt anahtarının ilk 32 biti ile ikinci 32 0 biti çarpılır. 4. Bir önceki çıkan gizli kutu elemanı ile P 1 çarpılır. 5. 3 nolu adımdan ve 4 nolu adımdan çıkan sonuçlar toplanır. 6. Bu şekilde 255 kere döngü devam eder, her eleman bir önceki elemanı kullanarak bulunur. Her döngüde P indisi bir artar. Son alt anahtar kullanıldığı zaman, alt anahtar tekrar SK 0 dan itibaren kullanılmaya başlanır. İkinci gizli kutunun bulunması; 1. Bir önceki gizli kutunun son elemanı ile k1 XOR işlemine sokulur. Çıkan sonuç ikinci gizli kutunun ilk elemanıdır. 2. İlk kutu oluşturulurken kullanılan 2. adımdan devam edilir. Üçüncü ve dördündü gizli kutunun oluşturulması; Üçüncü ve dördüncü gizli kutuların oluşturulmasında tek fark, ilk elemanlardır. Üçüncü gizli kutuda ilk eleman, ikinci kutunun son elemanı, k 2 XOR işlemine sokularak bulunur. Dördüncü gizli kutuda ilk eleman, üçüncü kutunun son elemanı, k 3 XOR işlemine sokularak bulunur. İlk gizli kutunun ilk elemanı oluşturulurken XOR işlemi yerine toplama işlemi kullanılmasının sebebi şudur; 501

Anahtar Bağımlı Bir Şifreleme Algoritması (IRON) Anahtarın 32 bitlik bloklarının birbirlerinin aynı olduğu durumlarda XOR işlemi kullanılırsa, oluşacak gizli kutular da aynıdır. Örneğin XOR kullanılacak olsaydı aaaaaaaaaaaaaaaa ile 6666666666666666 anahtarlarının oluşturacağı gizli kutular aynı olacaktır çünkü anahtarın 32 bitlik bloklarının XOR sonucu hep aynı olacaktır. Ama toplama işlemi yapılarak bir çığ etkisi meydana gelmektedir, bu sayede gizli kutular oluşturulurken kullanılan zincirleme reaksiyon ile birbirlerinden bağımsız gizli kutular meydana gelmektedir. 2.4 F Fonksiyonu F fonksiyonu Feistel yapısının önemli basamaklarından biridir. Genellikle bu fonksiyon girdi olarak, bir önceki döngüden gelen verinin sağ bloğu ve alt anahtar olmak üzere iki parametre alır. Bu algoritmada da girdiler bu şekilde alınmıştır, bunlar R ve SK olarak temsil edilecektir. Şekil 3. F Fonksiyonu 3. Algoritmanın Avantajları Alt anahtar oluşturma, gizli kutuların bulunması ve döngü sayısının anahtara bağlı olması algoritmanın lineer ve diferansiyel ataklara karşı dayanıklılığı arttırmaktadır. F fonksiyonu içindeki toplama işlemi 2 32 +1 moduna göre hesaplanmıştır (Şekil 3). Bu fonksiyon şu şekilde anlatılabilir; 1. Alt anahtar ( SK) sol ve sağ olmak üzere 32 bitlik bloklara ayrılı; SKL, SKR. 2. SKL, R ile XOR işlemine sokulur. 3. 2 nolu adımdan çıkan 32 bitlik blok 4 adet 8 bitlik bloğa ayrılır. 4. Her bir blok sırayla S 0, S 1, S 2, ve S 3 gizli kutularına girer ve 4 adet 32 bitlik blok çıkar; A 0, A 1, A 2, A 3. 5. A ve A toplanır. 0 3 6. A ve A toplanır. 1 2 7. 5 ve 6. adımlardan çıkan 32 bitlik bloklar XOR işlemine sokulur. 8. SKR, 7. adımdan çıkan 32 bitlik blok ile XOR işlemine sokulur. Çıkan 32 bitlik blok F fonksiyonun çıktısıdır. 502 Bu algoritmada diğer modern simetrik anahtarlı şifreleme algoritmalardan farklı olarak döngü sayısı da anahtar bağımlıdır. RC5 algoritmasında döngü sayısı bir seçenek olarak sunulmuştur ama anahtara bağımlı değildir. Geliştirilen bu algoritmada minimum döngü sayısı olarak Feistel yapısında güvenli olarak kabul edilen 16 alınmıştır ve anahtara bağımlı olarak 16 ve 32 arasında değişebilir. Bu sayede saldırgan, döngü sayısını da bilmediği için, yapacağı atak bir adım daha zorlaşacaktır. Gizli kutuların sabit değerlerden değil de, değişken değerlerden oluşması da diferansiyel atakları zorlaştırmaktadır. DES algoritmasında bu algoritmada anlatılan gizli kutularla aynı görevi yapan değiştirme kutuları (substitution boxes) sabit iken, Blowfish algoritmasında da bu algoritmadaki gibi değişkendir. Algoritmada işlemler DES algoritmasında olduğu gibi tek tek bitler üzerinden yapılmamaktadır. Bu da algoritmanın kodlanmasını kolaylaştırmaktadır.

4. Kısıtlamalar Geliştirilen algoritma donanımlar için tasarlanmadığı için donanıma uyumu zor olabilir. Döngü sayısının değişken olması bazı durumlarda işlem yükünü arttırabilir. Algoritma girdi olarak sadece 128 bit uzunluğunda anahtar almaktadır. Blowfish, AES, RC5 algoritmaları değişken anahtar uzunluklarını kabul ederken; DES algoritması sabit uzunlukta anahtar kabul etmektedir [1]. Ama burada göz ardı edilmemesi gereken nokta, DES algoritmasının 56 bit uzunluğunda anahtar kullanmasıdır. 5. Sonuç Geliştirilen algoritma simetrik modern şifreleme algoritmasıdır ve 128 bitlik anahtar ile 64 bitlik veri blokları üzerinde kullanılabilir. Algoritma içerisinde yapılan işlemler anahtar bağımlıdır, bu da anahtarın bilinmemesi halinde açık metine ulaşmayı engellemektedir. Bu algoritma Linux işletim sistemi üzerinde kodlanarak test edilmiştir ve Pardus işletim sistemine kolaylıkla uygulanabilir. 6. Kaynaklar [1] Stallings W., Cryptography and Network Security: Principles and Practice, Prentice Hall, New Jersey, 1998. [2] Schneier B., Applied Cryptography, Wiley, New York, 1996. [3] Yuen P.K., Practical Cryptology and Web Security, Addison Wesley, Harlow, 2006. [4] BBP Formula, http://mathworld.wolfram. com/ BBPFormula.html, Wolfram Research Inc. [5] Extract Hex Digits of Pi Program Listing in C++, http://www.geocities.com/hjsmithh/ Pi/ PiQPCpp.html, Harry J. Smith. 503