İPUCU

Donanım Bilgisayar Donanımı İle İlgili Yardımlaşma Bölümümüz ...

Seçenekler

Uçucu Olmayan Bellekler ve Veri İzi Tehdidi

Hybris - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
11/2009
Nereden:
System.Data.
Mesajlar:
1.020
Konular:
122
Teşekkür (Etti):
100
Teşekkür (Aldı):
234
Ticaret:
(0) %
31-03-2012 23:22
#1
Red face
Uçucu Olmayan Bellekler ve Veri İzi Tehdidi
EPROM (Erasable Programmable Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory) ve Flash türü uçucu olmayan programlanabilir belleklerde veriyi oluşturan bitler transistörlerin floating-gate’inde negatif yükler şeklinde depolanır. Her silme operasyonundan sonra floating-gate üzerindeki bu yüklerin bir kısmı iz olarak kalır. Veri izi (data remanence), bellek birimlerinden silinen verinin, aynı bellek birimi üzerinde izinin kalması olarak tanımlanabilir. Veri izinin bir sonucu olarak, veri kurtarma işlemi gerçeklenebilmektedir. Uçucu olmayan belleklerin üzerindeki verinin, silme sonrasında tamamen kaybolacağı varsayılır. Gerçekte durum böyle değildir; transistörler başlangıç durumuna dönemezler. Dolayısıyla, bellek birimi üzerinde bulunan transistörler analiz edildiğinde, silindiği varsayılan veri bitleri tekrar elde edilebilir.
Uçucu olmayan bellek hücrelerinde dijital veri, MOSFET (****l–oxide–semiconductor field-effect transistor) transistörlerin floating kapısındaki yükün analog değeriyle tutulmaktadır. Transistördeki bu yük, hücrenin eşik voltajını kaydırmakta ve bu eşik değeri hücre okunurken bir yükselticisi tarafından ölçülmektedir. Standart 5 V’luk bir EEPROM için programlama, 3.5 V’luk bir kaymaya sebep olmaktadır.
Bir FGMOS (Floating Gate MOSFET) transistör, standart bir MOS transistörün gate’inin elektriksel olarak izole edilmesiyle üretilir. Bu şekilde transistörün gate’ine herhangi bir rezistif bağlantı yapılamaz. Gate’in üstüne bir veya birkaç ikincil kapı veya giriş yerleştirilir ve bunlar elektriksel olarak gate’den izole edilir. Yüksek rezistif malzeme ile kaplı olan gate’e bu girişler sadece kapasitif olarak bağlıdırlar. Gate’in floating gate olarak adlandırılması bu yüzdendir. Şekil 1’de üç girişli FGMOS transistörün şematik sembolü gösterilmiştir.
Şekil 1: 3 girişli FGMOS transistör

Floating gate’e elektron yüklemek için iki metod kullanılmaktadır: Fowler-Nordheim Tünelleme ve Channel Hot Electron (CHE) enjeksiyonu. İki işlem de floating gate ile transistörün kanalı arasındaki dielektrik yalıtım katmanına zarar vermektedir. Bu oksit katman, floating gate’deki yükün muhafaza edilmesini sağlamaktadır. Uçucu olmayan bellek birimlerinde yazma/silme sayısı sınırlıdır. Çünkü zamanla floating gate’deki elektron sayısı artar, bu da eşik değerinin daha da yükseğe çekilmesini zorunlu kılar ve programlama süresini uzatır. Diğer bir negatif etki (flash belleklerde en fazla görülen durum) gate oksitteki negatif yük birikmesidir. Bu yük birikimi tünelleme ve enjeksiyon işlemini engelleyerek yazma/silme zamanını değiştirir ve eşik değerini kaydırır.
Floating gate’in pozitif yük ile yüklenmesine sebep olan “fazladan silme” (overerasing) veri izini etkileyen diğer bir faktördür. Silme işlemi zaten silinmiş bir hücreye tekrar uygulanırsa bu durum meydana gelir. Bu problemi ortadan kaldırmak için bazı belleklerde hücreler silinirken ‘’1’’ yapılmadan önce ‘’0’’ değerine programlanır. Yeni belleklerde ise fazladan silmeyi engelleyen bir tasarım kullanılmaktadır.
Hiç programlanmamış bir hücrenin eşik değeri, hücre programlanıp silinince bir kayma gösterir. Bu şekilde hiç programlanmamış bir hücreyi, programlanıp silinmiş bir hücreden ayırmak mümkündür. Bir defa programlanıp silinmiş bir hücrede bu durum daha belirgindir. 10 defa programlama ve silme işleminden sonra farklılık azalır.
Programlanmış floating gate bellekler veriyi sürekli taşıyamazlar. Çeşitli prosesler (field-assisted electron emission ve ionic contamination) floating gate’in yükünün boşalmasına sebep olur ve boşalma yüksek derecelerde daha da hızlanır. Flash belleklerde kullanılan çok ince tünel oksitlerdeki diğer bir durum programlama karıştırmasıdır (programming disturb). Seçilmiş hücrelere yazma işlemi sırasında yüklenen yük, bunların çevresindeki hücreleri de etkiler. Çevre hücrelerdeki bu etki, hücrelerin yükünü eşik değerinin üstüne çıkarmasa da, veri tutma süresini etkileyen problemlere sebep olabilir ve veri analizi-kurtarma için hücrelerin eşik değerlerinin ölçümü sırasında göz önünde bulundurulması gereken bir parametredir. Tipik olarak garanti edilen veri tutma süreleri EPROM, EEPROM ve Flash bellekler için sırasıyla 10, 40 ve 100 yıldır.
Veri İzi Tehdidi

Floating gate bellek hücrelerine direk olarak erişmek mümkün değildir. Belleğin dışından hücrelere kapasitif kuplaj olunarak bunların voltajı ayarlanabilir. Sıklıkla floating gate transistör, kapasitör model olarak adlandırılan kapasitör dengi devre ile modellenir. Pratikte birçok uçucu olmayan belleğin yazma/silme karakteristiği bir kapasitörün yüklenme/boşalma karakteristiğine yakındır. Yüklenme/boşalma prosesinin gerçeklenme şeklinde bazı farklılıklar vardır. Voltajın hücreye uygulanmaya başlama zamanı ile yükün boşaltılmaya veya enjekte edilmeye başlaması arasında bir başlangıç gecikmesi vardır. Bu gecikme, floating gate transistöre enjeksiyon ve tünelleme için yüksek elektrik alanının gerekmesinden kaynaklanmaktadır. Bazı EEPROM hücreleri, silme sırasında non-uniform bir boşalma göstermektedir. Bunun sonucunda yarı yüklenmiş bir hücrenin silinmesi tam yüklenmiş bir hücrenin silinmesinden daha uzun sürebilir. İdealde bir kapasitör q = q0.e-t/τ formülüne göre eksponansiyel olarak boşalır. Bu durum floating gate için düşünüldüğünde 10 τ’dan sonra yükün tamamem boşaldığını söyleyebiliriz. Fakat pratikte bu geçerli değildir, hücrenin transistör parametreleri yükün boşalması sırasında değişir. Bütün bu problemler, floating gate belleklerde veri izini etkileyen parametrelerdendir.
Uçucu olmayan belleklerin analizinde temel problem, her bir üreticinin farklı tasarım ve gerçekleme yapmasıdır. Yüzlerce farklı tipte floating gate transistör vardır. Veri izinin kalmasının problem teşkil edebileceği güvenlik gerektiren uygulamalarda, kullanılan uçucu olmayan belleklerde veri izinin kalıp kalmadığı dikkatle test edilmelidir.
Bozucu olmayan ve yarı-bozucu metotlar kullanılarak bazı bellekler test edilmiştir. Bozucu olmayan metotlarda, eşik voltajını direk olarak ölçmek mümkün olmadığından, eşik değerinin tespiti için hücreler farklı güç kaynağı değerlerinde (VDD) okunmuştur. Yarı bozucu metotlarda ise lazer tarama tekniği, eşik voltajını ölçmek için lazer gücü ve yıpratma işlemlerinden faydalanılmıştır. Referans olarak verilen Skorobogatov’un makalesinde testlerin nasıl yapıldığı anlatılmış ve belleklerdeki verinin elde edilebileceğini gösteren sonuçlar verilmiştir.
Karşı Önlemler

Güvenlik gerektiren uygulamalarda veri izi saldırılarını mümkün olduğunca zorlaştırabilmek için geliştirici ve tüketicinin uyması tavsiye edilen genel kurallar aşağıda belirtilmiştir:
  1. Uçucu olmayan belleklere önemli bir karşı önlem, ilk programlama öncesinde 10-100 defa rastgele sayıların yazılmasıdır. Bu şekilde taze hücrelerin kullanımından doğacak etkiler elimine edilebilir.
  2. Silinmiş bir hücreyi tekrar silmek kalıntılara sebep olacağından, hücreleri silmeden önce hepsini programlamak gerekir.
  3. Bazı uçucu olmayan bellekler silinmek istendiğinde, silinmek istenen veri yerine ilgili verinin yerini gösteren veri bloğu silinebilir. Bu davranış bilgisayardaki dosya sistemlerindeki durum ile aynıdır. Yani dosya silinmek istendiğinde aslında dosya silinmez, sadece dosyanın bellekteki yerini gösteren veri silinir. Bu sebeple, kullanılan uçucu olmayan bellek tipinin silinmeye karşı davranış şekli bilinmelidir. Eğer asıl verinin silinmediği tipte bir bellek ise, belleğin silinmesi ihtiyacı ortaya çıktığında silme yerine programlama yapmak gerekir.
  4. Piyasadaki en yeni, hücre yoğunluğu en yüksek bellekler tercih edilmelidir. Genel olarak bunlardan veri kurtarmak daha zordur.
  5. Üstü ****l katmanla kaplanmış veya modern derin sub-micron teknolojilerinin kullanıldığı bellekler yarı-bozucu ataklara karşı daha güçlüdür. Çünkü bu saldırılar lazer demetinin transistör aktif bölgesine ulaşmasını gerektirir.
  6. Şifrelemenin kullanılması, silinmiş bellekten verinin kurtarılmasını daha da zorlaştırır.
Sonuç

Uçucu olmayan, floating gate belleklerde veri izi problemi vardır ve bazı belleklerde veri 100 defa silinse bile kurtarılabilir. Donanım tasarımcıları, tasarımlarında bu durumu göz önünde bulundurmalıdırlar ve her belleği ayrıca test etmelidirler. Bunun mümkün olmadığı durumlarda yoğunluğu en yüksek en yeni belleklerin kullanılmasının, program yüklenmeden önce 10’larca kez belleğin programlanıp silinmesinin ve verinin şifreli halde saklanmasının önemli tedbirlerden olduğu görülmektedir. Ayrıca silme durumunda özellikle yeni belleklerde sadece “verinin yerini gösteren verinin” silinmesiyle asıl verinin kalması söz konusu olabileceğinden, kullanılan bellek tipinin silme davranışının bilinmesi ve buna göre yukarıda tanımlanan önlemin alınması gerekmektedir.
vlkn1907 - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
11/2011
Mesajlar:
296
Konular:
61
Teşekkür (Etti):
18
Teşekkür (Aldı):
8
Ticaret:
(0) %
04-04-2012 22:03
#2
ellerine sağlık kardaşım çok güzel bir paylaşım olmuş...
--------------------- BİZ ECDADIMIZ BİZDEN HİÇBİRŞEY İSTEMEDİ NE BİR ANI, NE BİR ŞİİR , NE BİR ANIT, NE DE GÜZEL BİR ŞARKI.....
ONLAR BİZDEN SADECE " BİZİ HATIRLAYIN" DEDİLER

Hybris - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
11/2009
Nereden:
System.Data.
Mesajlar:
1.020
Konular:
122
Teşekkür (Etti):
100
Teşekkür (Aldı):
234
Ticaret:
(0) %
05-04-2012 00:41
#3
Sağolasın.. Kolay gelsin

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler

Yetkileriniz
Sizin Yeni Konu Acma Yetkiniz var yok
You may not post replies
Sizin eklenti yükleme yetkiniz yok
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodları Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı