R Programlama Dilinde Şifre Üretimi Üzerine Bir Vaka Çalışması (A Case Study On Password Generation In R Programming Language)

Günümüzde ve hayatın pek çok alanında şifreler yaygın bir şekilde kullanılmaktadır. Güvenli girişi sağlamak ve kullanım izinlerine düzenleme getiren şifreler bankacılık, telefon operatörlerini içine alan telekom sektöründe, veri tabanı uygulamaları gibi adını sayamayacağımız birçok alanda yoğun bir şekilde kullanılmaktadır.

Şifre belirleme işlemi genellikle rastgele üretilen sayılardan oluştuğu gözlenmekle birlikte güvenlik kaygısından dolayı daha fazla kombinasyona ve haneye ihtiyaç duyulmaktadır. Artan dijitalleşme ve her geçen gün gelişen teknoloji sayesinde kullanılan bu şifreleri kırarak kişiler, şirketler ve kamu kurum veya kuruluşları tarafında güvenlik açığı ortaya çıkarmaktadır.

Bu çalışmada 6 haneli harf ve rakam kombinasyonlarından oluşan özgün şifre oluşturma uygulaması yapılacaktır. Şifre kombinasyonunda harflere de yer verilmesinin nedeni olabildiğince güçlü şifre kombinasyonu oluşturulmak istenmesinden kaynaklanmaktadır. 6 haneli şifre üretilmesindeki sebep, yaygın kullanım alanına sahip olmasıdır. İstenirse çok daha fazla veya az haneli şifreler üretilebilir. Bu durum tamamen kullanıcının kararına ve ihtiyacına bağlıdır.

Örnek uygulamada 6 haneli şifre oluşturmada harf ve rakam seti kullanılmıştır.

Rakam olarak belirlen set, 0’dan 9 (dahil)’a kadar olan rakamlardan oluşmaktadır. Harfler ise 26 harfli ingiliz alfabesi harflerinden oluşmaktadır. Her bir haneye harflerin ve rakamların atanmasında tekrarlı örneklem seçim tekniği (sampling technique with replacement) kullanılmıştır.

Örnek uygulama kapsamında ilk olarak soldan sağa 6 haneli şifre oluşturulmuş olup, 1 nolu kod bloğunda kullanılan fonksiyonlara yer verilmiştir.

1 Nolu R Kod Bloğu (R Code Block 1)

#SOLDAN SAĞA DOĞRU 6 HANELİ ŞİFRE OLUŞTURMA
x1<-sample(0:9, size=1, replace=F)
x2<-sample(LETTERS, size=1, replace=F)
X3<-sample(0:9, size=1, replace=F)
x4<-sample(LETTERS, size=1, replace=F)
x5<-sample(0:9, size=1, replace=F)
x6<-sample(LETTERS, size=1, replace=F)

head(paste0("şifreniz"," ", x1, x2, x3, x4,x5,x6), 1)

1 nolu kod bloğunun çalıştırılması (run) ile elde edilen sonuç aşağıda verilmiştir.

1 Nolu R Kod Bloğu: Sonuç (R Code Block 1: Output )

[1] "şifreniz 5U1K4W"

Sağdan sola doğru 6 haneli şifre oluşturulmuş olup, 2 nolu kod bloğunda kullanılan fonksiyonlara yer verilmiştir.

2 Nolu R Kod Bloğu (R Code Block 2)

#SAĞDAN SOLA DOĞRU 6 HANELİ ŞİFRE OLUŞTURMA
x1<-sample(0:9, size=1, replace=F)
x2<-sample(LETTERS, size=1, replace=F)
X3<-sample(0:9, size=1, replace=F)
x4<-sample(LETTERS, size=1, replace=F)
x5<-sample(0:9, size=1, replace=F)
x6<-sample(LETTERS, size=1, replace=F)
head(paste("şifreniz"," ",x6, x5, x4, x3, x2, x1), 1)

2 nolu kod bloğunun çalıştırılması (run) ile elde edilen sonuç aşağıda verilmiştir.

2 Nolu R Kod Bloğu: Sonuç (R Code Block 2: Output )

[1] "şifreniz   F 3 D 1 Q 0"

Ortadan sağa doğru 6 haneli şifre oluşturulmuş olup, 3 nolu kod bloğunda kullanılan fonksiyonlara yer verilmiştir.

3 Nolu R Kod Bloğu (R Code Block 3)

#ORTADAN SAĞA DOĞRU 6 HANELİ ŞİFRE OLUŞTURMA
x1<-sample(0:9, size=1, replace=F)
x2<-sample(LETTERS, size=1, replace=F)
X3<-sample(0:9, size=1, replace=F)
x4<-sample(LETTERS, size=1, replace=F)
x5<-sample(0:9, size=1, replace=F)
x6<-sample(LETTERS, size=1, replace=F)

head(paste0("şifreniz"," ", x4, x5, x6, x1,x2,x3), 1)

3 nolu kod bloğunun çalıştırılması (run) ile elde edilen sonuç aşağıda verilmiştir.

3 Nolu R Kod Bloğu: Sonuç (R Code Block 3: Output )

[1] "şifreniz F0R0K1"

Ortadan sola doğru 6 haneli şifre oluşturulmuş olup, 4 nolu kod bloğunda kullanılan fonksiyonlara yer verilmiştir.

4 Nolu R Kod Bloğu (R Code Block 4)

#ORTADAN SOLA DOĞRU 6 HANELİ ŞİFRE OLUŞTURMA
x1<-sample(0:9, size=1, replace=F)
x2<-sample(LETTERS, size=1, replace=F)
X3<-sample(0:9, size=1, replace=F)
x4<-sample(LETTERS, size=1, replace=F)
x5<-sample(0:9, size=1, replace=F)
x6<-sample(LETTERS, size=1, replace=F)
head(paste0("şifreniz"," ", x3, x2, x1, x6,x5,x4), 1)

4 nolu kod bloğunun çalıştırılması (run) ile elde edilen sonuç aşağıda verilmiştir.

4 Nolu R Kod Bloğu: Sonuç (R Code Block 4: Output )

[1] "şifreniz 1C2V7W"

Yukarıdaki R kod blokları run edilerek her defasında yeni şifreler üretebilirsiniz.

Şifre seçim tekniği olarak tekrarlı seçim tekniği kullanılarak üretilecek şifre adeti tekrarsız seçime göre çok daha fazla olması sağlanmıştır. Ancak istenirse tekrarsız seçim tekniği de kullanılarak şifre üretilebilir.

Yapılan çalışma yapacağınız çalışmalara rahatlıkla uyarlanabilme özelliği taşıdığından tek yapılması gereken sütun veya satır sayısını artırmak ve azaltmak.

Faydalı olması dileğiyle.

Bilimle ve teknolojiyle kalınız.

Saygılarımla.

Not: Emeğe saygı adına, bu sitede yer alan çalışmanın başka bir ortamda paylaşılması halinde alındığı yer adının belirtilmesini rica ederim.

Note: For the sake of respect for labor, I kindly ask you to indicate the name of the place where the work on this site is shared in another environment.

Yararlanılan Kaynaklar

https://www.r-project.org/

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s