Zamanlama saldırısı
Örnekler

Modüler üs almada 1 Haziran 2020 tarihinde Wayback Machine sitesinde arşivlendi. kullanılan kare ve çarpma algoritmasının 22 Nisan 2020 tarihinde Wayback Machine sitesinde arşivlendi. yürütme süresi, doğrusal olarak anahtardaki '1' bit sayısına bağlıdır. Tek başına '1' bit sayısı, anahtarı bulmak için neredeyse yeterli bilgi olmamakla birlikte, aynı anahtar ve farklı girişlerle tekrarlanan yürütmeler, anahtarı tamamen kurtarmak için zamanlama bilgilerinin istatistiksel korelasyon analizini gerçekleştirmek için kullanılabilir, pasif saldırgan tarafından bile. Gözlemlenen zamanlama ölçümleri genellikle gürültüyü içerir (ağ gecikmesi gibi kaynaklardan veya erişimden erişime disk sürücüsü erişim farklılıkları ve iletim hatalarından kurtulmak için kullanılan hata bulma ve düzeltme teknikleri). Bununla birlikte, zamanlama saldırıları RSA Algoritması, ElGamal ve Dijital İmza Algoritması dahil olmak üzere bir dizi şifreleme algoritmasına karşı pratiktir.
2003 yılında Boneh 12 Haziran 2020 tarihinde Wayback Machine sitesinde arşivlendi. ve Brumley 26 Ağustos 2019 tarihinde Wayback Machine sitesinde arşivlendi., Çin'in Chinese Remainder Theorem29 Nisan 2017 tarihinde Wayback Machine sitesinde arşivlendi. optimizasyonlarıyla RSA kullanımı ile ilgili farklı bir güvenlik açığına dayanan, SSL etkin web sunucularında pratik bir ağ tabanlı zamanlama saldırısı gösterdiler. Gerçek ağ mesafesi deneylerinde küçüktü, ancak saldırı birkaç saat içinde bir sunucu özel anahtarını başarıyla kurtardı. Bu gösteri SSL uygulamalarında körleştirme (blinding) 28 Şubat 2020 tarihinde Wayback Machine sitesinde arşivlendi. tekniklerinin yaygın olarak başvurulmasına ve kullanılmasına yol açmıştır. Bu bağlamda körleştirme, anahtar ve şifreleme süresi arasındaki korelasyonları ortadan kaldırmayı amaçlamaktadır.
Unix'in bazı sürümleri, 8 karakterlik bir parolayı 11 karakterlik bir dizeye ayırmak için crypt kitaplığı işlevinin nispeten pahalı bir uyarlaması kullanır. Eski donanımlarda, bu hesaplama kasıtlı olarak ve kısmen uzun bir zaman aldı: bazı durumlarda iki veya üç saniye kadar. [kaynak belirtilmeli] Unix'in ilk sürümlerindeki login programı, yalnızca oturum açma adı sistem tarafından tanındığında crypt işlevini yürüttü. Bu, şifre yanlış olsa bile, oturum açma adının geçerliliği hakkında zamanlama yoluyla bilgi sızdırdı. Bir saldırgan, ilk olarak geçerli olduğu bilinen giriş adlarının bir listesini üretmek için kaba kuvvet 15 Nisan 2020 tarihinde Wayback Machine sitesinde arşivlendi. uygulayarak bu tür sızıntılardan yararlanabilir, daha sonra yalnızca bu adları sıkça kullanıldığı bilinen çok sayıda parola ile birleştirerek erişim elde etmeye çalışabilir. Oturum açma adlarının geçerliliği hakkında herhangi bir bilgi olmadan, böyle bir yaklaşımın yürütülmesi için gereken süre, büyüklük sıralarına göre artarak etkili bir şekilde işe yaramaz hale gelir. Unix'in sonraki sürümleri, oturum açma adının geçerliliğine bakılmaksızın her zaman crypt işlevini çalıştırarak bu sızıntıyı giderdi. [kaynak belirtilmeli]
Önbellek veya sanal bellek ile tek bir sistemde çalışan, aksi takdirde güvenli bir şekilde izole edilmiş iki işlem, bir işlemde kasıtlı olarak sayfa hatalarına 9 Mayıs 2020 tarihinde Wayback Machine sitesinde arşivlendi. ve/veya önbellek hatalarına 10 Nisan 2020 tarihinde Wayback Machine sitesinde arşivlendi. neden olarak iletişim kurabilir, ardından diğerinden erişim sürelerinde oluşan değişiklikleri izleyebilir. Benzer şekilde, bir uygulama güvenilirse, ancak disk belleği / önbelleğe alma dallanma mantığından etkileniyorsa, ikinci bir uygulamanın erişim süresi değişikliklerini izleyerek şube durumuna kıyasla verilerin değerlerini belirlemesi mümkün olabilir; uç örneklerde bu, kriptografik anahtar bitlerinin kurtarılmasına izin verebilir.
CPU üreticilerini (Intel, AMD, ARM ve IBM dahil) CPU'larını yeniden tasarlamaya zorlayan 2017 Meltdown 17 Nisan 2020 tarihinde Wayback Machine sitesinde arşivlendi. ve Spectre11 Ocak 2018 tarihinde Wayback Machine sitesinde arşivlendi. saldırıları, zamanlama saldırılarına güveniyor. 2018'in başından itibaren, dünyadaki hemen hemen her bilgisayar sistemi, bir zamanlama saldırısının tarihteki en güçlü örneği haline getirerek Spectre'den etkilendi.
Aşağıdaki Visual Basic kodu, karakter uyuşmadığı zaman en kısa sürede sınamayı durduran tipik bir güvenli olmayan string karşılaştırma gösterir. Örneğin, "ABCDE" ile "ABxDE" karşılaştırıldığında, 3 döngü iterasyonundan sonra geriye dönüş yapar:
Function InsecureCompare(StrA As String, StrB As String, length As Integer) As Boolean
 Dim result As Boolean
 For i = 1 To length
  If Mid(StrA, i, 1) <> Mid(StrB, i, 1) Then Exit For
 Next
 result = (i > length)
 InsecureCompare = result
End Function
Karşılaştırma olarak, aşağıdaki sürüm tüm karakterleri test ederek ve koşullu atlama olmadan test etmek için bitsel işlemleri 27 Nisan 2020 tarihinde Wayback Machine sitesinde arşivlendi. kullanarak sabit zamanda çalışır:
Function SecureCompare(StrA As String, StrB As String, length As Integer) As Boolean
 Dim result As Boolean
 For i = 1 To length
  result = result Or (Asc(Mid(StrA, i, 1)) Xor Asc(Mid(StrB, i, 1)))
 Next
 SecureCompare = Not result
End Function