Top Banner
SSL ve Encryption (One &Two Way) Hazırlayan: Tolga ÇELİK https://tr.linkedin.com/in/celiktolga [email protected]
26

SSL ve Encyption

Jan 09, 2017

Download

Engineering

Tolga Çelik
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: SSL ve Encyption

SSL ve

Encryption

(One &Two Way)

Hazırlayan: Tolga ÇELİK

https://tr.linkedin.com/in/celiktolga

[email protected]

Page 2: SSL ve Encyption

Şifreleme (Encryption)

Page 3: SSL ve Encyption

Şifreleme (Encryption) Nedir?

Neden Yapılır?

• Şifreleme (Encryption) bir mesaj veya bilginin sadece

yetkili kişilerin okuyabileceği şekilde kodlanması

işlemidir.

• Neden şifreleme mi ? GÜVENLİK & GİZLİLİK

• Bir mesajı istenmeyen kişiler tarafından erişilmeden,

gitmesi gereken yere güvenli ulaştırmak.

Page 4: SSL ve Encyption

One Way Encryption (Hashing)

• Hash fonksiyonu farklı uzunluktaki bir veriden sabit uzunlukta string ya da sayı üretmekte olup.

• üretilen çıktıya ise hash değeri denilir. (hash value)

• Farklı verilerin hash değerleri aynı olamaz. Yani hash değerleri unique olur.

• tolga1 19d63a81a16d526516d2ac0ac7a322da

• tolga2 1c92b2de761e0e7aee38f16a576e42e5

• Hash algoritması, bir hash değerinin geri dönüştürülmesi imkansız olduğu için

• Tek yönlüdür. one way encription

message Hash

Hash

Eşit mi?

Page 5: SSL ve Encyption
Page 6: SSL ve Encyption

Parola Doğrulama

Tolga#4VKU

h

661dce0da2bcb2d8 2884e0162acf8194

Parola

Deposu

Tolga #4VKU

h

661dce0da2bcb2d8 2884e0162acf8194

661dce0da2bcb2d8 2884e0162acf8194

veri tabanı

tam eşleşiyor mu?

İzin Ver Reddet Evet Hayır

Şifreli Parolayı depolama Şifrelenmiş saklı parola ile girilen parolanın onaylanması

Page 7: SSL ve Encyption

Hash özetle

• Tek yönlü şifrelemenin ana kullanım amacı Parola Doğrulama, Onaylama (login) (salt ile)

• Ancak mesaj iletimi için hashing tercih edilmez.

• Gönderilen mesaj/bilginin içeriğini karşı tarafında görebilmesi gereken durumda ise çift taraflı şifreleme gerekir.

• Bunun içinde lazım olan bir ANAHTAR dır (KEY).

• Şifrelenen bir metinin gittiği yerde anahtar ile açılması ve tekrar bize şifrelenerek gönderilmesi: çift yönlü şifreleme olur.

Page 8: SSL ve Encyption

Çift Yönlü Şifreleme (Two Way Encryption)

• Simetrik Şifreleme (Symmetric Encryption )

• Asimetrik Şifreleme (Asymmetric Encryption )

Page 9: SSL ve Encyption

Simetrik Şifreleme

(Symmetric Encryption )

• Gizli anahtarlı şifreleme ( private key/ secret key )

• Tek bir anahtar (Single Key) kullanılır, dolayısyla

şifreleme ve şifre çözmede aynı anahtar kullanılır.

• Çok iyi saklanmalıdır !!!

• Shared key Paylaşılan anahtar karşıya verilir.

• .

Page 10: SSL ve Encyption

• Şifrelenen mesajlar «Ciphertext» olarak adlandırılır.

• Gizli anahtarla şifrelenip yine aynı gizli anahtar ile açılır..

Page 11: SSL ve Encyption
Page 12: SSL ve Encyption

Dezavantajı

• Simetrik Şifreleme ile gönderilen mesajın güvenliği çok iyi

sağlanır ancak; Anahtarı güvenli yollardan iletmek oldukça

zordur.

• Shared Key in 3. kişilerin ( ) şifreleye erişimesi gibi

büyük bir risk oluşuyor.

• Çok kullanıcılı uygulamalarda gizli anahtarı vermek zahmetli ve

riskli

• Daha etkili ve güvenli bir yol için ne yapmalı ozaman?

Çözüm ???

Page 13: SSL ve Encyption

AÇIK ANAHTAR

(PUBLIC KEY)

• Herkese verebileceğim açık olan genel bir anahtar olmalı ;

• Açık Anahtar ( Public Key)

• Mesajı açabilen ise tek bir gizli anahtar olmalı (decryption)

(Private Key –Secret Key)

• Bu yöntem => «Asimetrik Şifreleme» .

(Açık Anahtarlı Şifreleme)

Page 14: SSL ve Encyption

Asimetrik Şifreleme (Anahtarlı Şifreleme)

• Genel anahtar veri şifreleme için , gizli anahtar ise veri şifresini çözmek için kullanılır.

• Açık anahtarlar herkese dağıtılabilir,

• anahtar fazlalığı durumunu kalkar.

• Ancak;

• Hangi anahtarın kime ait olduğundan da emin olunmalıdır. Bu yüzden sertifikalar kullanılmaktadır

• Sertifika açık anahtar ile sahibinin kimliği arasındaki bağlantının belgesidir.

• Özel anahtar (Private Key) ise sadece şifreyi çözecek kullanıcıda bulunur,

• açık anahtar ise gizli değildir.

• Karşılaştırma => Daha uzun sürede şifre çözülür ama bunun yanında da,

güvenlik açısından simetriğe göre çok daha başarılıdır.

• Simetrik anahtarı da bu yöntemle alıcıya gönderilmektedir genelde.

• .

Page 15: SSL ve Encyption

Plaintext : Düz metin

Cipthertext : Şifreli metin

Page 16: SSL ve Encyption
Page 17: SSL ve Encyption

encode-decode nedir?

( ara bilgi )

• Büyük bir dosyayı (resim,video) bit olarak depolamaya

• İndexleme ile hızlı erişebilmek için.

• Şifre depolamada da kullanılabiliyor; Base64

• Hash gibi, ancak encode ile geri dönüşümü var (decode).

Hash ise yok!

password hash

admin 21232f297a57a5a743894a0e4a801fc3

12345 cfcd208495d565ef66e7dff9f98764da

Page 18: SSL ve Encyption

----- Genel Bakış ------

Page 19: SSL ve Encyption

SSL

(Secure Sockets Layer)

Page 20: SSL ve Encyption

SSL nedir?

• SSL'in açılımı Secure Sockets Layer (güvenli giriş katmanı) dır

• SSL, sunucu ile alıcı iletişimi esnasında verilerin şifrelenerek

yapılması işlemidir. (İki makine arası iletişim.)

• En bilinen kullanımı,

• web sitesindeki veri alışverişi esnasında, sunucu ile internet

tarayıcısı (web browser) arasındaki iletişimi şifrelenmesidir.

• SSL,Asimetrik şifreleme başlangıçta güvenli bir bağlantı

kurmak ve kimliklerin (dijital sertifikalar kullanarak) kimliğini

doğrulamak için kullanılır.

Page 21: SSL ve Encyption

Dijital Sertifika

Sertifikada public key, firma bilgileri , seri no, son kullanma tarihi vs. yer alır.

Page 22: SSL ve Encyption

SSL

(web browser da görünümü)

• Alan Adı Doğrulanması (Domain Validation) : Bu seviye en az pahalıdır ve alan adı kaydı

sahipliğinin temel şifreleme ve doğrulamasını kapsar. Bu tür bir sertifika genellikle birkaç dakika

ila birkaç saat sürer.

• Kuruluş Doğrulaması (Organization Validation) : Alan adı kaydı sahipliğinin temel şifreleme ve

doğrulamasına ilaveten sahibin belirli ayrıntıları (ör. Ad ve adres) doğrulanır. Bu sertifika tipinin

alınması genellikle birkaç saat ila birkaç gün sürer.

• Genişletilmiş Validasyon (EV Extended Validation) : En yüksek derecede güvenliği sağlar. Alan adı

kayıt ve varlık kimlik doğrulamasının sahipliğine ek olarak, varlığın yasal, fiziksel ve operasyonel varlığı

doğrulanır. Bu tür bir sertifika genellikle birkaç gün ila birkaç hafta alır.

Page 23: SSL ve Encyption

• Server, kendisine gelen mesajı server’ın private key’i ile çözümler ve session keyi görür. (bu sırada Client’ın sertificaksını da onaylartır).

• Bu noktada da client ve server da session key’i bilirler. (client’ın simetrik key’ini)

• Server simetrik key ile sayfayı ‘i encripte edilmiş olarak Client a gönderir

.

• Client HTTPS

(güvenli bağlantı) isteği gönderir

• Server kendi sertifikasını Client’a gönderir (+public key)

Server.cert

Client

• (Server’ın sertificasını check eder).

• Random session key yaratır, şifreledikten sonra Server’ın public key’i ile server a geri gönderir (private key’i göndermiş olur)

• Bu noktada sadece client session key’i bilir.

Page 24: SSL ve Encyption

Bir başka gösterimi

Page 25: SSL ve Encyption

Kaynakça • https://en.wikipedia.org/wiki/Cryptographic_hash_function

• http://www.securityinnovationeurope.com/blog/whats-the-difference-between-hashing-and-encrypting

• https://www.youtube.com/watch?v=EJ-fnN28FRI

• https://www.linkedin.com/pulse/kriptografide-%C5%9Fifreleme-teknikleri-nihal-kindap

• https://www.linkedin.com/pulse/salt-salting-only-answer-securing-passwords-william-buchanan?trk=hp-feed-article-title-like

• https://www.ssl2buy.com/wiki/symmetric-vs-asymmetric-encryption-what-are-differences/

• https://developer.apple.com/library/content/documentation/Security/Conceptual/Security_Overview/CryptographicServices/CryptographicServices.html

• http://www.bitcoinnotbombs.com/beginners-guide-to-pgp/

• http://www.bitcoinnotbombs.com/beginners-guide-to-off-the-record-messaging/

• http://itm455.itmbsu.net/Notes/L6_Elements_of_Cryptography.htm

• http://www.networkworld.com/article/2268575/lan-wan/chapter-2--ssl-vpn-technology.html

• https://www.ssl2buy.com/wiki/difference-between-hashing-and-encryption/

• https://www.quora.com/What-is-the-difference-between-a-digital-certificate-a-digital-signature

• https://commons.wikimedia.org/wiki/File:Orange_blue_public_key_cryptography_en.svg

• https://www.comodo.com/resources/small-business/digital-certificates2.php

• http://www.c-sharpcorner.com/uploadfile/75a48f/rsa-algorithm-with-c-sharp2/

• https://www.verisign.com/en_US/website-presence/website-optimization/ssl-certificates/index.xhtml

• https://codedad.net/2016/11/04/using-docker-and-letsencrypt-to-enable-multiple-tlds-on-a-single-ip/

• …………..

Page 26: SSL ve Encyption

Teşekkürler

Tolga ÇELİK

[email protected]

06.12.2016