Top Banner
T.C. SELÇUK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ ANDROID PLATFORMUNDA ŞİFRELENMİŞ MESAJLAŞMA UYGULAMASI 121220011 -- FURKAN ÖYKEN 1220806 – BİTİRME PROJESİ II RAPORU Haziran – 2017 KONYA Her Hakkı Saklıdır
31

MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

May 25, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

T.C.

SELÇUK ÜNİVERSİTESİ

MÜHENDİSLİK FAKÜLTESİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

ANDROID PLATFORMUNDA ŞİFRELENMİŞ MESAJLAŞMA UYGULAMASI

121220011 -- FURKAN ÖYKEN

1220806 – BİTİRME PROJESİ II RAPORU

Haziran – 2017 KONYA

Her Hakkı Saklıdır

Page 2: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

PROJE KABUL VE ONAYI

121220011 numaralı Furkan ÖYKEN tarafından hazırlanan “Android Platformunda Şifrelenmiş Mesajlaşma Uygulaması” adlı proje çalışması ……/……/……. tarihinde Selçuk Üniversitesi Bilgisayar Mühendisliği Bölümü Bitime Projesi II dersi proje raporu olarak kabul edilmiştir.

PROJE KOMİSYONU:

Proje Danışmanı İmza Uzman Hazım İşcan ………………….. Üye Doç. Dr. Erkan Ülker ………………….. Üye Yrd. Doç. Dr. Mesut Gündüz …………………..

1

Page 3: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

RAPOR BİLDİRİMİ

Bu rapordaki bütün bilgilerin etik davranış ve akademik kurallar çerçevesinde elde edildiğini ve rapor yazım kurallarına uygun olarak hazırlanan bu çalışmada bana ait olmayan her türlü ifade ve bilginin kaynağına eksiksiz atıf yapıldığını bildiririm.

DECLARATION PAGE  

I hereby declare that all information in this report document has been obtained and presented in accordance with academic rules and ethical conduct. I also declare that, as required by these rules and conduct, I have fully cited and referenced all material and results that are not original to this work.

121220011 – Furkan ÖYKEN

Tarih:……………….

2

Page 4: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

ÖNSÖZ

Bu tez kapsamında mobil cihazlarda güvenli iletişim sağlama üzerine çalışılmıştır.

121220011 – Furkan ÖYKEN

KONYA-2017

3

Page 5: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

ÖZET

İletişim teknolojileri her geçen hızla gelişmektedir. Bu gelişmeler bize bir çok kolaylık sağlarken aynı

zamanda mahremiyet ve kişisel bilgilerin güvenliği gibi konularda bir çok eksiklik de ortaya çıkarmaktadır. Bu eksiklikleri gidermek ve dezavantajların ortadan kaldırılabilmesi için kriptoloji biliminden faydalanılır. Kriptoloji bilimi kullanılması sayesinde haberleşme sırasında üçüncü kişiler kritik verileri ele geçirse bile anlaşılmaz veriler elde etmiş olurlar ve içeriğe erişemezler.

Bu çalışmada Android işletim sistemi ile çalışan cihazlarda, RSA şifreleme algoritması ile bulut

üzerinden güvenli mesajlaşma sağlanmaya çalışılmış, avantaj ve dezavantajlar incelenmiştir.

Anahtar kelimeler: Güvenli Haberleşme, Kriptoloji, RSA Şifreleme, SMS,

4

Page 6: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

İÇİNDEKİLER

ÖNSÖZ 3

ÖZET 4

İÇİNDEKİLER 5

SİMGELER VE KISALTMALAR 6

1. GİRİŞ 7

2. KAYNAK ARAŞTIRMASI 8

3. MATERYAL ve METOT 9

3.1. Android İşletim Sistemi 9 3.1.1 Anroid İşletim Sistemi Nedir? 9 3.1.2 Anroid İşletim Sisteminin Tarihi 10 3.1.3 Kullanım Alanları 10

3.2. RSA Şifreleme Algoritması 11 3.2.1 RSA Algoritmasının Çalışma Yöntemi 11 3.2.2 Şifreleme 12 3.2.3 Şifre Çözme 12 3.2.4 RSA Şifreleme Algoritmasının Avantaj ve Dezavantajları 12

3.3. Firebase 13

4. SONUÇLAR ve PROGRAM ÇIKTILARI 15 4.1 Tasarlanan Arayüzler ver İşleyişleri 15 4.2 Sonuçlar ve Öneriler 28

KAYNAKLAR 29

ÖZGEÇMİŞ 30

5

Page 7: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

SİMGELER VE KISALTMALAR

Kısaltmalar ARM : Advanced RISC Machine API : Application Programming Interface GPL : General Public License GPS : Global Positioning System HTTP : Hyper Text Transfer Protocol Secure7 IDE : Integrated Development Environment INC : Incorporated MIPS : Million Instructions Per Second OHA : Open Handset Alliance SDK : Software Development Kit

6

Page 8: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

1. GİRİŞ

İletişim insanoğlu var olduğu günden beri insanlığın en temel ihtiyaçlarından

birisidir. Her insan doğduğu andan itibaren iletişim kurar ve iletişim sayesinde

gözlemler, öğrenir ve bir arada yaşar. Teknolojinin gelişmesi ile birlikte iletişim de

gelişmeye ve değişmeye başladı. Kağıtın bulunması ile mektup, elektriğin icadından

sonra telefon ile devam eden insanoğlunun iletişim serüveni günümüzde ise internetin

ile birlikte çok farklı bir hal aldı.

Günümüz iletişim teknolojilerinde güvenlik çok önemli bir yer tutmaktadır.

İletişimde bilgi güvenliğini sağlayabilmenin en önemli iki yolu iletişim kanallarını

güvenli tutmak ve iletilen verileri üçüncü kişileri erişmeleri durumunda dahi

anlayamayacağı şekle getirmek.

İletişim kanallarının güvenliği servis sağlayıcılar tarafından veya yazılım

firmaları tarafından sağlanmaktadır. Verilerin anlamsız paketler haline getirilmesi yani

şifrelenmesi kısmı ise Kriptografi bilimi sayesinde gerçekleşmektedir.

Bu çalışmada ise dünyada en yaygın mobil işletim sistemi olan Android işletim

sistemi üzerinde, RSA şifreleme algoritması kullanılarak güvenli bir mesajlaşma

uygulaması yapılması hedeflenmiştir. İlerleyen konularda Android işletim sistemi ve

tarihçesi, RSA şifreleme algoritması ve bu uygulamanın gerçekleştirilmesi sırasında

kullanılan yardımcı teknolojiler anlatılacaktır.

7

Page 9: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

2. KAYNAK ARAŞTIRMASI

Android; Google ve Open Handset Alliance(Google ve telefon üretici şirketlerin

kurmuş olduğu oluşum) tarafından, özellikle dokunmatik ekran kullanan mobil cihazlar

için geliştirilen, Linux tabanlı özgür ve ücretsiz bir işletim sistemidir. Sistem açık

kaynak kodlu olsa da kodların küçük bir kısmı Google tarafından kapalı tutulmaktadır.

Günümüzde geliştirilen uygulamaların büyük bir çoğunluğu bu platform üzerinde

yapılmaktadır.

RSA şifreleme algoritması 1978’ten beri aktif olarak kullanılmakta olan açık

anahtar şifreleme metodunu kullanan asimetrik bir şifreleme sistemidir. Bu kadar

popüler olmasının nedeni olarak tamamen ücretsiz olup hiçbir patente bağlı olmaması

gösterilebilir. Aynı zamanda şifreleme, şifre çözme, imzalama ve imza onayının aynı iki

basit fonksiyonla yapılabilmesi de önemli bir etkendir. Yaklaşık 40 yıldır kullanılmakta

olan RSA algoritması matematiksel olarak henüz kırılamamıştır. Bu sebeple başta

HTTPS olmak üzere bir çok teknolojinin içinde aktif olarak kullanılmıştır ve

kullanılmaya devam edilmektedir.

Firebase Google tarafından geliştirilmekte olan bulut tabanlı veri yönetim

sistemidir. Günümüzde bir çok uygulamanın arkasında yer almaktadır ve yaygınlığı gün

geçtikçe artmaktadır. Veri tabanında sakladığı bilgileri nosql olarak saklaması en büyük

artılarındandır. Maliyet olarak makul fiyatlar sunması ise başlıca tercih sebeplerinden

biridir.

8

Page 10: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

3. MATERYAL ve METOT

3.1. ANDROID İŞLETİM SİSTEMİ

3.1.1 Android İşletim Sistemi Nedir?

Android; Google ve Open Handset Alliance(Google ve telefon üretici şirketlerin

kurmuş olduğu oluşum) tarafından, özellikle dokunmatik ekran kullanan mobil cihazlar

için geliştirilen, Linux tabanlı özgür ve ücretsiz bir işletim sistemidir. Sistem açık

kaynak kodlu olsa da kodların küçük bir kısmı Google tarafından kapalı tutulmaktadır.

2013 yılı kasım ayından beri en popüler mobil işletim sistemi olan Android

işletim sisteminin uygulama marketi Google Play’dir. 2017 yılı şubat ayına göre 1.6

milyar cihaza hizmet veren Google Play üzerinde 1 milyondan fazla uygulama bulunup

indirme sayısı milyarla ifade edilmektedir.

Open Handset Alliance(OHA) tarafından alınan kararlara göre Android’in

kaynak kodları iki farklı lisans kullanmaktadır. Kullanılan Linux çekirdeği GPL lisansı

ile korunurken diğer dış bileşenler ise Apache Lisansı ile dağıtılmaktadır. Böylece

oluşan özgür yazılım ortamı yazılımcılara cesaret verirken Android’in gelişimini de

hızlandırmakta ve sürekli gelişen bir ekosistem oluşmasını sağlamaktadır.

Anddroid Linux çekirdeğinin üzerine inşa edilmiş bir işletim sistemidir. Bu

yüzden kütüphaneler, API ve ara katman yazılımı C/C++ proglamlama dilleri ile

yazılmıştır. Ancak geliştiriciler Android Platformunda geliştirilen uygulamalar Android

Software Development Kit(SDK) kullanılarak Java dilinde yazılır. Yazılım geliştirme

platformu olarak ise Google tarafından geliştirilen Android Studio ve Eclipse

Foundation tarafından geliştirilen Ecplipse IDE yaygın olarak kullanılmaktadır.

Android işletim sistemi Jiroskop, ivme ölçer, altimetre, GPS, yakınlık algılayıcı

gibi özellikleri de eğer donanım desteği varsa geliştiricilere sağlamaktadır. Aynı

zamanda Android 5.x Lollipop sürümüyle birlikte x86, MIPS ve ARM platformları için

64 bit desteği de sağlamaktadır.

Şekil 3.1’de Android işletim sisteminin genel mimarisi hakkında bilgi

9

Page 11: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

verilmiştir.

Şekil 3.1 Android İşletim Sisteminin Genel Yapısı[1]

3.1.2 Android İşletim Sisteminin Tarihi

Android Inc. şirketi 2005 yılının temmuz ayında Palo Alto’da Google tarafından

kurulmuştur. Andy Rubin öncülüğündeki şirketin temel kuruluş amacı Linux tabanlı

taşınabilir cihazlar için esnek, güncelleştirilebilir bir işletim sistemi geliştirmektir. Aynı

zamanda bu işletim sisteminin çeşitli donanımları desteklemesi ve diğer yazılım

partnerleriyle birlikte çalışabilmesi hedeflenmiştir.

Bu hedefler doğrultusunda Google telefon üreticileri ile birlikte Open Handset

Alliance(OHA) birliğini kurmuştur. Android'in gelişimi OHA eliyle yönetilmeye

başlanmıştır. Ve günümüzde hala OHA tarafından yönetilmeye devam etmektedir.

3.1.3 Kullanım Alanı

Gelişen teknoloji ile birlikte Android sadece cep telefonlarında ve tabletlerle

10

Page 12: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

sınırlı kalmayıp akıllı televizyonlar, kameralar, saatler, kulaklıklar vs. bir çok teknolojik

alette kullanılmaktadır. 2011 yılında tanıtılan Android@Home projesi sayesinde

aydınlatma ve priz gibi ev ortamında bulunan bütün elektrikle çalışan cihazlar artık

Android cihazlar üzerinden yönetilebiliyor.

2014 yılında yayımlanan Android Wear ile birlikte başta saat olmak üzere

giyilebilir teknoloji alanında da Android artık kullanılabilmektedir.

3.2 RSA ŞİFRELEME ALGORİTMASI

RSA bir açık anahtarlı şifreleme yöntemidir. 1978 yılında Ron Rivest, Adi

Shamir ve Leonard Adelman tarafından geliştirilmiştir. RSA ismini ise geliştiricilerinin

soy isminden almıştır. RSA şifreleme algoritması, dijital ortamda verilerin güvenli

aktarımının sağlanması fikri temel alınarak, tam sayıları çarpanlarına ayırmanın

algoritmik zorluğuna dayanan bir tür asimetrik şifreleme yöntemidir. Günümüzde en

çok kullanılan yöntemdir.

3.2.1 RSA Algoritmasının Çalışma Yöntemi

1. Birbirinden farklı, yeterince büyük iki adet asal sayı seçilir. p ve q olarak

adlandırılır. p ve q sayıları rastgele seçilmelidir ve yakın uzunlukta olmasına

dikkat edilmelidir.

2. n = p*q hesaplanır. n değeri gizli ve açık şifreler için taban(modulus) olarak

kabul edilir.

3. Totient fonksiyonu hesaplanır. Totient fonksiyonu herhangi bir sayının

kendisinden küçük ve pozitif tam sayılar içinden, kendisi ile asal olan sayıların

sayısıdır. Hem p hem de q sayısı asal sayı olduğu için

φ(n) = (p-1)*(q-1)

şeklinde hesaplanır.

4. Totient fonksiyonu değeri(φ(n)) ile 1 aralarında asal olan 1’den büyük pozitif bir

e asal sayısı seçilir ve açık anahtar olarak ilan edilir.

11

Page 13: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

5. Gizli anahtarı belirlemek için

d*e ≡ 1 mod(φ(n))

denkliği kullanılır. Bu işlem sonucu d değeri gizli anahtar olarak saklanır.

Yapılan işlemler sonucu elde edilen değerlerden (e,n) açık anahtar ikilisi ilan

edilir. (d,n) gizli anahtarı ise gerekli güvenlik önlemleri alınarak saklanır.

3.2.2 Şifreleme

Öncelikle şifreleme işlemi için iki kullanıcı belirleyelim. Bu kullanıcılar Alice

ve Bob olsun. Alice açık anahtar ikilisi olan (n,e) ikilisini yayınlar. Eğer birisi Alice’e

şifreli bir mesaj göndermek istiyorsa bu açık anahtarı kullanarak şifreleme yapmalıdır.

Bob, Alice’e mesaj gönderirken mesajını şu şekilde şifreler:

c=me mod(n)

Burada c şifrelenmiş metin, m Bob tarafından Alice’e gönderilen şifrelenmemiş

metindir. e ve n ise Alice’e ait açık anahtardır.

3.2.3 Şifre Çözme

Alice Bob’dan aldığı c mesajını çözmek ve mesajın içeriğine ulaşmak için

aşağıdaki formülü kullanır:

m = cd mod (n)

Burada c şifrelenmiş metin, m Bob tarafından Alice’e gönderilmiş olan metindir. d ve n

ise Alice’e ait gizli anahtardır.

3.2.4 RSA Şifreleme Algoritmasının Avantajları ve Dezavantajları

RSA şifreleme algoritmasının avantajları:

1. Simetrik şifrelemenin aksine asimetrik şifrelemede, veriyi alan kişinin veriyi

12

Page 14: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

deşifre edebilmesi için gizli anahtar paylaşımı yapılmasına gerek yoktur. Her

kullanıcı sadece kendi gizli anahtarını saklar. Bu da sistemi büyük bir depolama

yükünden kurtarır.

2. Büyük sayılarla ve asal sayılarla işlem yapmak zor olduğu için güvenilirliği son derece yüksektir.

RSA şifreleme algoritmasının dezavantajları:

1. RSA algoritması büyük sayılarla işlem yapması ve asimetrik bir şifreleme

algoritması olması nedeniyle yavaştır.

2. Verilen büyüklüğü nedeniyle band genişliğini fazlasıyla tüketir. Bu da sistemin

yavaşlamasına ve performans düşüşlerine neden olur.

3.3 FIREBASE

2011 yılında Andrew Lee ve James Tamplin tarafında San Francisco’da

kurulmuştur. 2014 yılında Google tarafından satın alınmıştır ve halen Google tarafından

yönetilmektedir.

Firebase bir bulut tabanlı veri yönetim sistemidir. Firebase, geliştiricilerin

ihtiyaçlarını karşılayacak şekilde karışık ve eşleşebilecek tamamlayıcı özelliklerden

oluşur. İlk başlarda gerçek zamanlı veritabanı hizmeti sağlayarak başlayan Firebase, şu

an bir çok konuda geliştiricilere hizmet vermektedir.

Firebase’in hizmet verdiği bazı alanlar:

-Analitik

-Bulut mesajlaşma

-Kimlik doğrulama

-Gerçek zamanlı veritabanı

-Depolama

-Barındırma,

-Uzaktan yapılandırma

-Test laboratuvarı

-Kilitlenme raporları

-Bildirimler

-Uygulama indeksleme

13

Page 15: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

-Dinamik linkler

14

Page 16: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

4. SONUÇLAR VE PROGRAM ÇIKTILARI

4.1 Tasarlanan Arayüzler ve İşleyişleri

Projede arayüz tasarımı yaparken genellikle sade bir arayüz oluşturulmaya

çalışılmıştır. Böylece bütün kullanıcılara hitap eden bir tasarım hedeflenmiştir. Arayüz

oluşturulurken sadece sadelik değil aynı zamanda yeni ve modern bir arayüz de

yapılmaya çalışılmıştır.

Modern bir arayüz oluşturabilmek için Android’in son sürümleri ile birlikte

gelen Materyal Tasarım ögeleri kullanılmış ve bu prensipte hareket edilmiştir.

Genel olarak projemizde tasarlanan arayüzler ve işleyiş şekilleri şu şekildedir:

15

Page 17: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.1’de uygulama ilk defa çalıştırıldığı zaman gelen ekrandır. Kullanıcıların

kayıt olmasını, eğer varsa üyelikleri giriş yapmalarını sağlar. Aynı zaman da eğer

kullanıcı daha önce kayıt olduysa ve şifresini unuttuysa şifremi unuttum aktivitesi ile

şifresini yenileyebilir.

Kullanıcılar kayıt olurken geçerli bir e-mail adresi girmeli ve 6 karakterden az

olmayacak şekilde bir şifre oluşturmalıdırlar.

Şekil 4.1 Kayıt Ekranı

16

Page 18: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.2 giriş yapma ekranıdır. Daha önce kayıt olmuş olan kullanıcılar kayıt

oldukları şifre ve mailleri kullanarak uygulamaya giriş yaparlar.

Şekil 4.2 Giriş Ekranı

17

Page 19: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.3 şifresini unutmuş olan kullanıcılar içindir. Kullanıcılar ilgili kutucuğa

mail adreslerini girerek unuttukları şifrelerini yenileyebilirler.

Şekil 4.3 Şifremi Unuttum Ekranı

18

Page 20: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.4 kullanıcılar giriş yaptıktan sonra karşılaştıkları ilk ekrandır. Bu

ekranda kullanıcılar daha önce mesajlaştıkları kişileri ve çevrimiçi olup olmama

durumlarını görebilmektedir.

Şekil 4.4 Mesajlaşmalar Ekranı

19

Page 21: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.5 kullanıcıların arkadaş listesinde bulunan kişileri ve kişilerin çevrimiçi

olup olmama durumlarını göstermektedir.

Şekil 4.5 Arkadaş Listesi

20

Page 22: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.6 uygulamada kayıtlı bulunan bütün kullanıcıların rastgele sıralandığı bir

listeyi gösterir. Aynı zamanda kullanıcı mesajlaşmak istediği kullanıcıyı arama

kutucuğu vasıtasıyla bulabilir.

Şekil 4.6 Arama Ekranı

21

Page 23: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.7 ise bildirimler ekranıdır. Eğer herhangi bir kullanıcı tarafından arkadaş

eklendiyseniz veya daha önce arkadaş olarak eklediğiniz bir kullanıcı arkadaşlık

isteğinizi kabul ettiyse bildirimi burada gösterilir.

Şekil 4.7 Bildirim Ekranı

22

Page 24: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.8 arkadaş olmayan kişilerin profil gösterilmesi soldaki ekran

görüntüsünde gösterildiği şekildedir. Arkadaş eklendiği zaman ise sağ taraftaki ekran

görüntüsündeki hale geçmektedir.

Şekil 4.8 Arkadaş olmayan kişilerin profili

23

Page 25: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.9’te arkadaş olan kişilerin profilleri şekildeki gibi gösterilmektedir.

Şekil 4.9 Arkadaş olan kişilerin profili

24

Page 26: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.10 kullanıcıların kayıt olduktan sonra profillerini oluşturdukları ekrandır.

Şekil 4.10 Profil oluştur ekranı

25

Page 27: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.11 kullanıcıların profil fotoğraflarını yükledikleri ekrandır.

Şekil 4.11 Profil Fotoğrafı Yükleme Ekranı

26

Page 28: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

Şekil 4.12 kullanıcıların birbirleriyle konuşurken kullandığı ekrandır.

Arka planda şifrelenen ve çözülen mesajlar kullanıcıya bu şekilde

yansıtılmaktadır.

Şekil 4.12 Mesajlaşma ekranı

27

Page 29: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

4.2 Sonuçlar ve Öneriler

Uygulama boyunca Android platformunda insanların rahatlıkla

kullanabileceği, basit arayüze sahip güvenli bir mesajlaşma uygulaması

geliştirilmesi hedeflenmiştir. Bu hedefe uygun olarak Materyal Dizayn ögeleri

sıklıkla kullanılmıştır. Böylece modern bir uygulama ortaya konulmaya

çalışılmıştır.

Şifreleme algoritması olarak planlandığı üzere 2048 bit RSA şifreleme

kullanılmıştır. 2048 bit tercih edilmesinin sebebi ideal kullanımın 2048 bit

olmasındandır. 1024 veya 512 bit şifreleme kullanılsa idi uygulama daha hızlı

olurdu fakat güvenlik seviyesi daha düşük olacaktı. 4096 veya 8192 bit

kullanılmamasının sebebi ise hızdır. Yüksek bitlerde yapılan şifrelemeler sistemi

daha fazla yormakta ve şifreleme/şifre çözme işlemleri uzun süreler almaktadır.

Mesajlaşma uygulamasının rakipleri ile yarışabilmesi için en önemli

faktörlerden birisinin hız olması sebebiyle daha üst seviyelerde şifreleme uygun

görülmemiştir.

Uygulamanın bundan sonraki aşamalarında grup mesajlaşma özelliği,

kullanıcılar arası multimedya paylaşımı(resim, ses dosyası gibi), yeni eklenecek

şifreleme metodları arasında kullanıcıya seçme şansı tanıma gibi bir çok yeni

özellik eklenebilir. Uygulamaya özel bir sunucu ile Firebase uygulamanın veri

tabanı olmaktan çıkartılarak uygulama daha güvenli sunuculara taşınabilir.

Artırılacak olan güvenlik metodları sayesinde günümüzde artık ihtiyaç

haline gelen yerli haberleşme uygulamaları arasında yerini alabilir. Böylece

önemi gün geçtikçe artan verilerin yurtiçinde kalması sağlanılabilir.

28

Page 30: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

KAYNAKLAR

[1]https://en.wikipedia.org/wiki/Android_(operating_system)#/media/File:Andro

id-System-Architecture.svg[Ziyaret Tarihi: 15.05.2017]

[2]https://tr.wikipedia.org/wiki/Android [Ziyaret Tarihi: 15.05.2017]

[3] https://tr.wikipedia.org/wiki/RSA [Ziyaret Tarihi: 11.06.2017]

[4] Hüseyin B., Resul K., Sultan Z., 2015 “RSA Şifreleme Algoritması

Kullanılarak SMS İle Güvenli Mesajlaşma Yöntemi”, XVII. Akademik Bilişim  

Konferansı (AB 2015)

[5]http://bilgisayarkavramlari.sadievrenseker.com/2008/03/19/rsa/[Ziyaret

Tarihi: 11.06.2017]

[6] http://bidb.itu.edu.tr/seyirdefteri/blog/2013/09/08/rsa-algoritması[Ziyaret

Tarihi: 18.06.2017]

[7] ÖĞÜTMEN, Nizar. (2013). Android (3.Baskı). İstanbul: Kodlab Yayınevi;

[8] Ariffi, Suriyani, et al. "SMS Encryption Using 3D-AES Block Cipher on

Android Message Application." Advanced Computer Science Applications and

Technologies (ACSAT), 2013 International Conference on. IEEE, 2013.

[9] Rivest R. L., Shamir A. ve Adleman L., 1978. A Method for Obtaining

Digital Signatures and Public-Key Cryptosystems. Communications of the ACM,

21(2):120-126, Şubat 1978.

[10] Advantages and Disadvantages of Asymmetric and Symmetric

Cryptosystems. http://www.uobabylon.edu.iq/eprints/paper_1 _2264_649.pdf [Ziyaret

Tarihi: 11.06.2017]

29

Page 31: MESAJLAŞMA - WordPress.com · 2017-09-28 · Ş e ki l 3.1 A ndroi d İş l e t i m S i s t e m i ni n G e ne l Y a pı s ı [1] 3.1.2 Android İşletim Sisteminin Tarihi Android

ÖZGEÇMİŞ

KİŞİSEL BİLGİLER Adı Soyadı : Furkan ÖYKEN Uyruğu : T.C. Doğum Yeri ve Tarihi : KONYA / 01.10.1995 E-mail : [email protected] EĞİTİM

Derece Adı, İlçe, İl Bitirme Yılı ya da sınıfı

İlköğretim Mareşal Mustafa Kemal İ.Ö.O. / KONYA 2008 Lise Selçuklu Atatürk Lisesi / KONYA 2012

30