Şifreleme teknikleri ve ssl

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

Upload: tolga-celik

Post on 23-Jan-2018

517 views

Category:

Engineering


7 download

TRANSCRIPT

Page 1: Şifreleme Teknikleri ve SSL

SSL ve

Encryption

(One &Two Way)

Hazırlayan: Tolga ÇELİK

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

[email protected]

Page 2: Şifreleme Teknikleri ve SSL

Şifreleme (Encryption)

Page 3: Şifreleme Teknikleri ve SSL

Ş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: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL
Page 6: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

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

• Simetrik Şifreleme (Symmetric Encryption )

• Asimetrik Şifreleme (Asymmetric Encryption )

Page 9: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

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

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

Page 11: Şifreleme Teknikleri ve SSL
Page 12: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

Plaintext : Düz metin

Cipthertext : Şifreli metin

Page 16: Şifreleme Teknikleri ve SSL
Page 17: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

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

Page 19: Şifreleme Teknikleri ve SSL

SSL

(Secure Sockets Layer)

Page 20: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

Dijital Sertifika

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

Page 22: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

• 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: Şifreleme Teknikleri ve SSL

Bir başka gösterimi

Page 25: Şifreleme Teknikleri ve SSL

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: Şifreleme Teknikleri ve SSL

Teşekkürler

Tolga ÇELİK

[email protected]

06.12.2016