ilmiş açık metin saldırısı, saldırganın keyfi açık metinler için şifrelerin elde edilebileceğini varsayan kriptanaliz için bir saldırı modelidir. Saldırının amacı, şifreleme şemasının güvenliğini azaltan bilgiyi elde etmektir.

Seçilmiş açık metin saldırısında, saldırgan, keyfi seçilmiş açık metin mesajlarının şifreli hallerini uyarlayabilir. Böylece, saldırganın kara kutu olarak görülen bir Kahinli Turing makinesi ile etkileşime girmesine imkan vermesine izin verilmiştir. Saldırganın amacı gizli şifreleme anahtarının tamamını veya bir kısmını ortaya çıkarmaktır.

Bir saldırganın verilen açık metinler için şifreli metinleri elde edebileceği durumlar nadirdir. Bununla birlikte, modern kriptografi, yazılım veya donanımda uygulanabilmekte ve çeşitli uygulamalar için kullanılmaktadır; birçok durumda, seçilmiş açık metin saldırısına da genelde çok uygundur. Seçilmiş açık metin saldırısı, şifreleme anahtarının herkese açık olduğu ve saldırganın seçtiği herhangi bir açık metni şifreleyebildiği açık anahtarlı şifreleme için son derece önemlidir.

Seçilmiş açık metin saldırısının iki farklı çeşidi vardır:

Genel seçilmiş açık metin saldırısı aşağıdaki gibi gerçekleştirilir:
Yukarıdaki durumun aşağıdaki uzantısını dikkate alın. Son adımdan sonra,
Yukarıda verilen deneyi n=1 ile çalıştırdıktan sonra, şifreyi saldırgan 1/2'den daha az ihmal edilebilir bir olasılıkla doğru tahmin edemez ise (b=b'), o şifre, seçilmiş bir açık metin saldırısı altında ayırt edilemez şifrelemelere sahiptir denebilir.

Aşağıdaki örneklerde diğer güvenlik tanımlarını karşılayan bazı şifrelerin seçilmiş bir açık metin saldırı ile nasıl kırılabileceğini göstermektedir.

Sezar şifresine aşağıdaki saldırı yapıldığında, gizli anahtarın tamamen ele geçirilmesi sağlanır:

Tek kullanımlık şerit üzerinde aşağıdaki saldırı yapıldığında gizli anahtarın tamamen ele geçirilmesi sağlanır. Mesaj uzunluğunu ve anahtar uzunluğunun n'ye eşit olduğunu varsayalım.

II. Dünya Savaşı'nda ABD Donanmasındaki kriptanalistler, Japonya'nın "AF" olarak adlandırılan bir yere saldırmayı planladığını keşfettiler. "AF" nin Midway Adası olabileceğine inanıyorlardı, çünkü Hawaii adalarındaki diğer yerler "A" ile başlayan kodlara sahiptiler. "AF" nin "Midway Island" a denk geldiği yönündeki hipotezlerini kanıtlamak için, ABD güçlerinin Midway'deki düşük arzlar hakkında bir açık metin mesajı göndermelerini istediler. Japonlar bu mesajı yakaladılar ve hemen “AF” nin suya düştüğünü, donanmanın hipotezini teyit ettiklerini ve savaşı kazanmak için güçlerini konumlandırdıklarını belirttiler.

Ayrıca II. Dünya Savaşı sırasında, Bletchley Park'ındaki müttefik kod kırıcılarının, Kraliyet Hava Kuvvetleri'nden, Alman deniz sisteminin ızgara referansında herhangi bir kısaltma ya da alternatifi olmayan bir konumda mayın döşemelerini isteyecektirler. Almanların umudu müttefiklere, Alman donanması Enigma'sını kırmak için mesajlar hakkında yeterli bilgiyi vermekti bunu da, mayınlarla ilgili bir uyarı mesajını şifrelemek için bir Enigma makinesini kullanarak ve çözüldükten sonra da temiz bir mesaj bırakarak yapacaklardı. Bu bilinen bir açık metin ekimi işlemi bahçecilik olarak adlandırılmıştır. Müttefik kod kırıcılar, Madrid'de şifreli radyo raporları alınan ve el ile şifrelenerek, Berlin'e gönderilmek üzere bir Enigma makinesiyle tekrar şifrelenmiş, çift ajan Juan Pujol García'nın gönderdiği mesajların işlenmesine yardımcı olmuşturlar. Kod kırıcılarının bu yardımı ikinci bacak üzerinde kullanılan kodun şifresini çözmelerine ve orijinal metni sağlamalarına yardımcı olmuştur.

Modern zamanda, seçilmiş açık metin saldırıları (SASlar) simetrik şifreleri kırmak için sıklıkla kullanılmaktadır. SAS-güvenli olarak kabul edilmesi için, simetrik şifrenin seçilmiş açık metin saldırılarına karşı savunmasız olmaması gerekmektedir. Bu nedenle, simetrik şifre uygulayıcılarının, bir saldırganın şifrelerini nasıl kırmaya ve ilgili iyileştirmeleri yapmaya çalışacağını anlaması önemlidir. Bazı seçilmiş açık metin saldırıları için, açık metnin yalnızca küçük bir bölümünün saldırgan tarafından seçilmesi gerekebilir; Bu tür saldırılar açık metin enjeksiyon saldırıları olarak bilinir.

Seçilmiş bir açık metin saldırısı, bilinen açık metin saldırısından daha güçlüdür, çünkü saldırgan, belirli terimleri veya kalıpları doğal olarak ortaya çıkmasını beklemek zorunda kalmadan doğrudan hedefleyebilir ve kriptanalize ilişkin verilerin daha hızlı toplanmasını sağlayabilir. Bu nedenle, seçilmiş açık metin saldırılarını engelleyen herhangi bir şifre, bilinen açık metin ve şifreli metinlere yönelik saldırılara karşı da güvenlidir. Bununla birlikte, seçilmiş bir açık metin saldırısı, seçilmiş şifreli bir saldırıdan daha az güçlüdür; burada saldırgan, rastgele şifreleme metinlerinin açık metinlerini alabilir. Bir seçilmiş şifreli metin saldırganı bazen seçilmiş bir açık metin-güvenli bir sistemi kırabilir. Örneğin, El Gamal şifresi seçilmiş açık metin saldırılarına karşı güvenlidir, ancak seçilmiş şifreli metin saldırılarına karşı savunmasızdır, çünkü koşulsuz olarak dövülebilir.(unconditionally malleable.)





Spectre (Güvenlik Açığı)

Spectre dallanma öngörüsü kullanan modern mikroişlemciler'i etkileyen bir güvenlik açığıdır.
Çoğu işlemcilerde, spekülatif yürütmeden kaynaklanan hatalı dallanma tahmini özel bilgilerin saldırganların eline geçmesine neden olabilecek ciddi yan etkiler bırakabilir. 
Örneğin, bu spekülatif yürütme tarafından gerçekleştirilen bellek modeli özel verilere bağlıysa, veri önbelleğinin sonuç durumu, bir saldırganın bir zamanlama saldırısı gerçekleştirerek, özel veriler hakkında bilgi alabildiği bir yan kanal oluşturur.

Spectre'ye ait iki  kimliği bildirilmiştir, CVE-2017-5753 (sınır denetimini atlama, Spectre-V1) ve CVE-2017-5715 (dal hedefi ekleme, Spectre-V2). JİT motorları için kullanılan JavaScript savunmasız bulunmuştur. Bu zafiyet, bir web sitesinin, tarayıcıda bir başka websitesi için saklanan verileri veya tarayıcının belleğinin kendisini okuyabilmesinden kaynaklanmaktadır.

15 Mart 2018'de Intel, Spectre ve ilgili Erime kırılganlıklarına (Spectre-V1 değil, özellikle Spectre-V2 ve Meltdown-V3'e) karşı koruma sağmak için CPU işlemcilerini (performans kayıpları açıklanmak üzere) yeniden tasarlayacağını bildirdi. ve yeniden tasarlanan işlemcilerin 2018'de daha sonra piyasaya sürülmesini bekliyor.

2002 ve 2003 yıllarında Yukiyasu Tsunoo ve NEC'den meslektaşları sırasıyla MISTY ve DES'e nasıl saldırılacağını gösterdi. 
2005'te Illinois Üniversitesi'nden Daniel Bernstein, bir önbellek zamanlama saldırısı yoluyla OpenSSL AES anahtarının elde edilebileceğini bildirdi ve Colin Percival, Intel işlemcinin önbelleğini kullanarak OpenSSL RSA anahtarında çalışan bir saldırıyı elde etmiş oldu. 2013 yılında Adelaide Üniversitesi'nden Yuval Yarom ve Katrina Falkner, verilere erişim süresinin ölçülmesinin, bilginin önbellekten okunup okunmadığı konusunda casusluk uygulamasının nasıl tahmin edileceğini gösterdi. Önbellekten okunduğunda erişim süresi çok kısa olmaktaydı ve okunan veriler şifreleme algoritmalarının özel anahtarını içerebilmekteydi. Bu teknik GnuPG, AES ve diğer kriptografik uygulamalara başarılı bir şekilde saldırmak için kullanıldı.

Spectre, Google'ın Project Zero'dan Jann Horn ve Paul Kocher tarafından, Daniel Genkin, Mike Hamburg, Moritz Lipp, Yuval Yarom ile işbirliği ile bağımsız olarak keşfedildi. 
Microsoft Güvenlik Açığı Araştırması, tarayıcıların JavaScript JIT motorlarına genişletti. 3 Ocak 2018'de, etkilenen donanım tedarikçilerinin konunun 1 Haziran 2017'de farkına varmasından sonra başka bir zayıflık olan Meltdown ile birlikte kamuoyuna açıklandı. Bu Güvenlik açığı "kök nedenine, spekülatif uygulamaya dayanıyor.
Düzeltilmesi kolay olmadığından, oldukça uzun bir süre bizi rahatsız edecektir. " diye açıklandığı için "Spectre" olarak adlandırıldı. 

28 Ocak 2018'de, Intel'in, ABD'ye kusurları hakkında haber vermeden önce, Çin'in teknoloji şirketlerine Erime ve Spectre güvenlik açıkları hakkındaki haberleri paylaştığı bildirildi.

29 Ocak 2018'de Microsoft'un, daha önce Intel'in Varyant 2 saldırısı için Intel tarafından yayınlanan sorunlu mikrokod düzeltmesini (olası yeniden başlatmalara, kararlılığa ve veri kaybına / bozulma sorunlarına neden olan) devre dışı bırakan bir Windows güncellemesi yayınladığı bildirildi. Yeni Microsoft yamasının yüklenmesiyle ilgili endişeler yaşandığı bildirildi.

Spectre, bir programı programın bellek alanındaki rastgele konumlara erişmeye zorlayan bir güvenlik açığıdır. Bir saldırgan, erişilen belleğin içeriğini okuyabilir ve bu sayede potansiyel olarak önemli veriler alabilir.

Tek bir düzeltilmesi kolay güvenlik açığı yerine, Spectre teknik incelemesinde bir dizi olası güvenlik açıkları anlatılmaktadır.  Bunların hepsi, spekülatif yürütmenin yan etkilerini, bellek gecikmelerini gizlemenin yaygın bir yolunu ve modern mikroişlemcilerde yürütmeyi hızlandırmayı temel alıyor. Spectre bilhassa spekülatif yürütmenin özel bir durumu olan dallanma öngörüsü üzerine odaklanmaktadır. 
Aynı zamanda açıklanan ilgili Erime kırılganlığının aksine, Spectre, tek bir işlemcinin bellek yönetimi ve koruma sisteminin belirli bir özelliğine dayanmaz, daha genelleştirilmiş bir fikirdir.

Beyaz kağıdın başlangıç noktası, sırasız yürütme yapan modern mikroişlemcilerden oluşan dallanma öngörüsü makinelerine uygulanan bir yan-kanal zamanlama saldırısıdır. İşlemci veri defterlerinde belgelenen mimari düzeyde, yanlış tahmin sonuçlarının gerçeğin ardından iptal edilmesinden sonra bile, ortaya çıkan spekülatif yürütme, yüklenen önbellek çizgileri gibi, yan etkileri hala kalmış olabilmektedir. Bunlar daha sonra bilgi işlem ortamının sözde işlevsel olmayan yönlerini etkileyebilir. Bu tür yan etkiler (bellek erişim zamanlaması dahil, ancak bunlarla sınırlı olmamak üzere) kötü amaçlı bir program tarafından görülebilir ve kurbanın işlemi tarafından tutulan hassas verilere dayanacak şekilde tasarlanabilirse, bu yan etkiler, hassas verilerin fark edilebilir hale gelmesine neden olabilir. Bu, t