• Simetrik şifreleme. Veri şifreleme algoritmaları. Simetrik şifreleme algoritmaları. RSA şifreleme algoritması. DES şifreleme algoritması. Şifreleme Algoritması Seçme

    Simetrik bir şifreleme şifreleme sisteminde, bilgileri şifrelemek ve şifresini çözmek için aynı anahtar kullanılır. Bu, şifreleme anahtarına erişimi olan herkesin mesajın şifresini çözebileceği anlamına gelir. Şifrelenmiş bilgilerin izinsiz olarak ifşa edilmesini önlemek için simetrik kripto sistemlerde tüm şifreleme anahtarlarının gizli tutulması gerekir. Bu nedenle simetrik şifreleme sistemlerine gizli anahtarlı kripto sistemleri denir - şifreleme anahtarı yalnızca mesajın gönderildiği kişiler tarafından kullanılabilir olmalıdır. Simetrik şifreleme sistemlerine tek anahtarlı kriptografik sistemler de denir. Simetrik bir şifreleme şifreleme sisteminin şeması, Şek. 4.3.

    Pirinç. 4.3. Simetrik Şifreleme Kripto Sistemi

    Bu şifreleme sistemleri, en yüksek şifreleme hızı ile karakterize edilir ve onların yardımıyla hem gizlilik hem de orijinallik ile iletilen bilgilerin bütünlüğü sağlanır.

    Simetrik bir şifreleme sistemi kullanılarak yapılan bilgi aktarımının gizliliği, şifrenin güvenilirliğine ve şifreleme anahtarının gizliliğinin sağlanmasına bağlıdır. Tipik olarak, şifreleme anahtarı bir dosya veya veri dizisidir ve bir disket veya akıllı kart gibi bir kişisel anahtar taşıyıcıda depolanır; kişisel anahtar taşıyıcının sahibinden başkasının kullanımına açık olmamasını sağlayacak tedbirlerin alınması zorunludur.

    Orijinallik, ön şifre çözme olmaksızın kriptografik olarak semantik değişiklik ve sahtecilik yapmanın neredeyse imkansız olması nedeniyle sağlanır. kapalı mesaj. Sahte bir mesaj, bilmeden düzgün bir şekilde şifrelenemez. gizli anahtar.

    Veri bütünlüğü, iletilen verilere gizli bir anahtar tarafından oluşturulan özel bir kod (taklit ön ek) eklenerek sağlanır. Taklit öneki, bir tür sağlama toplamıdır, yani, mesajın bütünlüğünün kontrol edildiği, mesajın bazı referans özellikleridir. Taklit önek oluşturma algoritması, bazı karmaşık kriptografik yasalara göre mesajın her bir bitine bağlı olmasını sağlamalıdır. Mesaj bütünlük kontrolü, mesajın alıcısı tarafından, alınan mesaja karşılık gelen gizli anahtardan bir sahtekarlık üretilerek ve alınan sahte değerle karşılaştırılarak gerçekleştirilir. Eşleşme varsa göndericiden alıcıya giden yolda bilgilerin değiştirilmediği sonucuna varılır.



    Simetrik şifreleme, örneğin bilgileri "kendi kendine" şifrelemek için idealdir. Yetkisiz Erişim sahibinin yokluğunda ona. Bu, seçilen dosyaların arşiv şifrelemesi veya tüm mantıksal veya fiziksel sürücülerin şeffaf (otomatik) şifrelemesi olabilir.

    Yüksek bir şifreleme hızına sahip olan tek anahtarlı şifreleme sistemleri, bilgi korumanın birçok önemli sorununun çözülmesine olanak tanır. Fakat çevrimdışı kullanım simetrik kriptosistemler bilgisayar ağlarışifreleme anahtarlarının kullanıcılar arasında dağıtılması sorununu gündeme getirir.

    Şifreli veri alışverişine başlamadan önce, tüm alıcılarla gizli anahtar alışverişi yapmak gerekir. Simetrik bir kriptosistemin gizli anahtarının aktarımı, halka açık iletişim kanalları aracılığıyla gerçekleştirilemez, gizli anahtarın güvenli bir kanal üzerinden göndericiye ve alıcıya iletilmesi gerekir.

    Abone verilerinin şifrelenmesi için - yani şifrelenmiş bilgilerin bir aboneye, örneğin İnternet yoluyla gönderilmesi için - simetrik şifreleme algoritmalarının uygulamaları vardır. Böyle bir kriptografik ağın tüm aboneleri için bir anahtarın kullanılması, güvenlik nedeniyle kabul edilemez. Nitekim, anahtarın tehlikeye girmesi (kaybolması, çalınması) durumunda, tüm abonelerin belge akışı risk altında olacaktır. Bu durumda, bir anahtar matrisi kullanılabilir (Şekil 4.4).

    Anahtar matrisi, abonelerin eşleştirme anahtarlarını içeren bir tablodur. Tablonun her öğesi, abonelerin iletişimi için tasarlanmıştır. Ben Ve J ve yalnızca belirli iki abone tarafından kullanılabilir. Buna göre, anahtar matrisin tüm elemanları için eşitlik

    . (4.3)

    Şekil 4.4. Anahtar Matrisi

    Her biri Ben matrisin -th satırı, belirli bir abonenin bir dizi anahtarıdır Ben başkalarıyla iletişim kurmak N- 1 abone Anahtar kümeleri (ağ kümeleri), kriptografik ağın tüm aboneleri arasında dağıtılır. Yukarıdakine benzer şekilde, ağ kümeleri dağıtılmalıdır güvenli kanallar aracılığıyla iletişim veya elden ele.



    Karakteristik özellik simetrik kriptoalgoritmalar, çalışmaları sırasında sabit uzunlukta bir girdi bilgisi bloğunu dönüştürmeleri ve elde edilen bloğu aynı boyutta, ancak anahtarın sahibi olmayan üçüncü taraflarca okunamaz hale getirmeleridir. Simetrik bir blok şifrenin çalışma şeması, fonksiyonlarla açıklanabilir.

    Nerede M– ilk (açık) veri bloğu; İLE– şifrelenmiş veri bloğu.

    Anahtar İLE simetrik blok kriptoalgoritmasının bir parametresidir ve bir bloktur ikili bilgi sabit boyut orijinal M ve şifreli İLE veri blokları ayrıca birbirine eşit sabit bir bit genişliğine sahiptir, ancak zorunlu değildir. uzunluğa eşit anahtar İLE.

    Blok şifreler, neredeyse tüm simetrik şifreleme sistemlerinin uygulandığı temeldir. Simetrik şifreleme sistemleri, keyfi uzunluktaki dosyaları kodlamanıza ve kodunu çözmenize olanak tanır. Hemen hemen tüm algoritmalar, dönüşümler için belirli bir tersinir matematiksel dönüşümler seti kullanır.

    Blok algoritmaları tarafından şifrelenmiş bayt zincirleri oluşturma yöntemi, bunların sınırsız uzunluktaki bilgi paketlerini şifrelemelerine olanak tanır. Blok şifrenin çıkış akışının bitleri arasında istatistiksel korelasyon olmaması hesaplamak için kullanılır. sağlama toplamları veri paketleri ve şifre karma.

    Şifrelenmiş veri bloğunu okumak için, şifresi çözülmüş mesaj anlamlı olana kadar tüm olası anahtarları aramak gerekiyorsa, bir kriptotalgoritmanın ideal olarak güvenli olduğu kabul edilir. Genel olarak, bir blok şifrenin gücü yalnızca anahtar uzunluğuna bağlıdır ve büyümesiyle katlanarak artar.

    Güçlü blok şifreleri elde etmek için iki tane kullanın Genel prensip:

    ¨ difüzyon- düz metnin bir karakterinin etkisinin, düz metnin istatistiksel özelliklerini gizlemenizi sağlayan şifreli metnin birçok karakterine dağılımıdır.

    ¨ karıştırma– ilişkinin yeniden kurulmasını zorlaştıran bu tür şifreleme dönüşümlerinin kullanılması istatistiksel özellikler açık ve şifreli metinler.

    Ancak şifre sadece açıklamayı zorlaştırmamalı, aynı zamanda kullanıcının bildiği gizli anahtar ile şifreleme ve şifre çözme kolaylığı da sağlamalıdır.

    Saçılma ve karıştırma etkilerini elde etmenin yaygın bir yolu, her biri önemli bir toplam saçılma ve karıştırmaya katkıda bulunan bazı basit şifreler dizisi olarak uygulanabilen bir bileşik şifre kullanmaktır.

    Bileşik şifrelerde, basit permütasyonlar ve ikameler çoğunlukla basit şifreler olarak kullanılır. Permütasyon, düz metin karakterlerini karıştırır, özel karıştırma türü gizli anahtar tarafından belirlenir. İkamede, düz metindeki her karakter aynı alfabeden başka bir karakterle değiştirilir ve belirli ikame tipi de gizli anahtar tarafından belirlenir. Modern bir blok şifrede, açık metin ve şifreli metin bloklarının, genellikle 64 veya 128 bit uzunluğunda ikili diziler olduğuna dikkat edilmelidir. 64 bit uzunluğunda her blok 264 değer alabilir. Bu nedenle, ikameler 2 64 ~ 10 19 "karakter" içeren çok büyük bir alfabede yapılır.

    Yeterince uzun bir gizli anahtar tarafından kontrol edilen basit permütasyonların ve ikamelerin tekrar tekrar değiştirilmesiyle, iyi dağılım ve karıştırma ile güçlü bir şifre elde edilebilir.

    Blok kripto algoritması tarafından veriler üzerinde gerçekleştirilen tüm eylemler, dönüştürülmekte olan bloğun kapasitesine karşılık gelen aralıktan negatif olmayan bir tamsayı olarak temsil edilebileceği gerçeğine dayanır. Örneğin, 32 bitlik bir veri bloğu, 0...4294 967 295 aralığında bir sayı olarak yorumlanabilir. Ek olarak, bit genişliği "ikinin kuvveti" olan bir blok, birkaç verinin birleştirilmesi olarak yorumlanabilir. daha küçük bir aralıktan bağımsız negatif olmayan sayılar (32 bitlik blok, 0...65535 aralığından iki bağımsız 16 bitlik sayının birleştirilmesi veya aralıktan dört bağımsız 8 bitlik sayının birleştirilmesi olarak da temsil edilebilir 0...255).

    Bu sayılar üzerinde, blok kripto algoritması, Tablo 1'de listelenen eylemleri belirli bir şemaya göre gerçekleştirir. 4.1.

    Tablo 4.1. Rakamlar üzerinde kriptalgoritmalar tarafından gerçekleştirilen eylemler

    parametre olarak V bu dönüşümlerden herhangi biri için kullanılabilir:

    ¨ sabit bir sayı (örneğin, X"= X + 125);

    ¨ anahtardan elde edilen sayı (örneğin, X"= X + F(K)));

    ¨ Bloğun bağımsız kısmından alınan numara (Örneğin, X 2" = X 2 + F(X 1)).

    Blokta gerçekleştirilen işlemlerin sırası, yukarıdaki seçeneklerin kombinasyonları V ve işlevlerin kendileri F ve makyaj ayırt edici özellikleriözel simetrik blok kripto algoritması.

    Blok algoritmalarının karakteristik bir özelliği, anahtar malzemenin tekrarlanan ve dolaylı kullanımıdır. Bu, öncelikle orijinal ve şifreli metinler bilindiğinde anahtara göre ters kod çözmenin imkansızlığı gerekliliği ile belirlenir. Bu sorunu çözmek için, yukarıdaki dönüşümler çoğunlukla anahtar değerin kendisini veya bir kısmını değil, anahtar malzemenin bazı, bazen geri döndürülemez işlevlerini kullanır. Ayrıca bu tür dönüşümlerde aynı blok veya anahtar eleman tekrar tekrar kullanılmaktadır. Bu, işlevin niceliğe göre tersine çevrilebilir olması koşuluyla izin verir. X işlevi tuşa göre geri alınamaz hale getirin İLE.

    belirli algoritma girişi orijinal şifrelenmemiş mesaj olan şifreleme, aynı zamanda düz metin, ve anahtar. Algoritma çıktısı olarak da adlandırılan şifreli bir mesajdır. şifreli metin. Anahtar, şifrelenen mesajdan bağımsız bir değerdir. Anahtarın değiştirilmesi, şifrelenmiş mesajı değiştirmelidir.

    Şifreli mesaj alıcıya gönderilir. Alıcı, şifreli mesajı, şifre çözme algoritmasını ve şifrelemede kullanılan anahtarın aynısını veya kendisinden kolayca elde edilen bir anahtarı kullanarak orijinal şifrelenmemiş mesaja dönüştürür. şifreleme anahtarı.

    Şifrelenmemiş bir mesaj, düz metin ve mesaj kelimelerinden P veya M ile gösterilecektir. Şifreli mesaj, şifreli metin kelimesinden C olarak gösterilecektir.

    Geleneksel kriptografinin sağladığı güvenlik birkaç faktöre bağlıdır.

    İlk olarak, kriptografik algoritma, iletilen şifreli mesajın şifresi, sadece şifrelenmiş mesajın çeşitli istatistiksel kalıpları veya onu analiz etmenin başka bir yolu kullanılarak bir anahtar olmadan çözülemeyecek kadar güçlü olmalıdır.

    İkincisi, iletilen mesajın güvenliği, algoritmanın gizliliğine değil, anahtarın gizliliğine bağlı olmalıdır. Algoritma, şifrelenmemiş ve şifrelenmiş mesajlar arasındaki ilişkinin zayıf bir şekilde gizlendiği durumlarda, zayıflıkların varlığını dışlamak için uzmanlar tarafından analiz edilmelidir. Ayrıca, bu koşul karşılanırsa, üreticiler ucuz donanım yongaları ve bunu uygulayan serbestçe dağıtılan programlar oluşturabilirler. şifreleme algoritması.

    Üçüncüsü, algoritma, bu anahtarı kullanarak şifreleme yoluyla elde edilen yeterli çifti (şifreli mesaj, şifrelenmemiş mesaj) bilse bile anahtarı bulmanın imkansız olacağı şekilde olmalıdır.

    Claude Shannon, yayılma ve karışıklık kavramlarını açıklamak için ortaya attı. algoritma gücüşifreleme.

    difüzyon düz metnin istatistiksel özelliklerinin, şifreli metnin çok çeşitli istatistiksel özelliklerine göre dağılımıdır. Bu, düz metnin her bir öğesinin değerinin, şifreli metnin birçok öğesinin değerlerini etkilemesi veya eşdeğer olarak, şifreli metnin herhangi bir öğesinin düz metnin birçok öğesine bağlı olması gerçeğiyle elde edilir.

    Bilinç bulanıklığı, konfüzyonşifreli metin ile anahtar arasındaki istatistiksel ilişkinin yok edilmesidir.

    X orijinal mesaj ise ve K ise şifreleme anahtarı, ardından şifrelenmiş iletilen metin şu şekilde yazılabilir:

    Alıcı, aynı anahtarı kullanarak mesajın şifresini çözer.

    K ve X'e erişimi olmayan düşman, X, K veya her ikisini de bulmaya çalışmalıdır.

    Simetrik şifreleme algoritmaları kaynak metnin işlenme biçiminde farklılık gösterir. Blok şifreleme veya akış şifreleme mümkündür.

    Metin bloğu, negatif olmayan bir tamsayı veya negatif olmayan birkaç bağımsız tamsayı olarak ele alınır. Bloğun uzunluğu her zaman ikinin gücüne eşit olacak şekilde seçilir. Çoğu blok algoritmasında simetrik şifreleme kullanılmış aşağıdaki türler operasyonlar:

    Bu işlemler, algoritmada döngüsel olarak tekrarlanarak sözde mermi. Her turun girdisi bir önceki turun çıktısıdır ve elde edilen anahtardır. belirli algoritma K şifreleme anahtarından. Turun anahtarı denir alt anahtar. Her şifreleme algoritması aşağıdaki gibi temsil edilebilir:


    Pirinç. 2.2.

    kullanım alanları

    Standart şifreleme algoritması birçok uygulamada geçerli olmalıdır:

    • Veri şifreleme. Algoritma, veri dosyalarını veya büyük bir veri akışını şifrelerken verimli olmalıdır.
    • yaratılış rastgele numaralar. Algoritma, belirli sayıda rasgele bit üretmede verimli olmalıdır.
    • karma. Algoritma verimli bir şekilde tek yönlü bir hash işlevine dönüşmelidir.

    Platformlar

    Standart şifreleme algoritması buna göre farklı gereksinimleri olan farklı platformlarda uygulanmalıdır.

    • Algoritma, şifreleme/şifre çözme gerçekleştirmek için tasarlanmış özel donanım üzerinde verimli bir şekilde uygulanmalıdır.
    • Büyük işlemciler. çoğu için olsa da hızlı uygulamalar her zaman özel donanım kullanılır, yazılım uygulamaları daha sık kullanılır. Algoritma, 32 bit işlemcilerde verimli yazılım uygulamasına izin vermelidir.
    • Orta işlemciler. Algoritma için çalışması gerekir mikrodenetleyiciler ve diğer orta boyutlu işlemciler.
    • küçük işlemciler Kullanılan bellek üzerindeki katı kısıtlamalar dikkate alınsa bile, algoritmayı akıllı kartlara uygulamak mümkün olmalıdır.

    Ek gereksinimler

    Şifreleme algoritması mümkünse, bazı ek gereklilikleri karşılamalıdır.

    • Programlama hatası olasılığını en aza indirmek için algoritmanın kod yazması kolay olmalıdır.
    • Algoritma düz bir anahtar uzayına sahip olmalı ve istenen uzunlukta herhangi bir rasgele bit dizisine izin vermelidir. olası anahtar. Zayıf anahtarlar istenmez.
    • Algoritma, farklı güvenlik seviyeleri için kolayca değiştirilmeli ve hem minimum hem de maksimum gereksinimleri karşılamalıdır.
    • Tüm veri işlemleri, bir baytın veya 32 bitlik bir kelimenin katları olan bloklar üzerinde gerçekleştirilmelidir.

    simetrik şifreleme sistemleri

    Simetrik şifreleme sistemleri (ayrıca simetrik şifreleme, simetrik şifreler), şifreleme ve şifre çözme için aynı kriptografik anahtarın kullanıldığı bir şifreleme yöntemidir. Asimetrik şifreleme düzeninin icadından önce var olan tek yöntem simetrik şifrelemeydi. Algoritma anahtarı her iki tarafça da gizli tutulmalıdır. Algoritmanın anahtarı, mesaj alışverişi başlamadan önce taraflarca seçilir.

    Şu anda simetrik şifreler:

    1. blok şifreler - belirli bir uzunluktaki (genellikle 64, 128 bit) bloklardaki bilgileri işlemek, bloğa bir anahtar uygulamak Vaktinden, genellikle tur adı verilen birkaç karıştırma ve değiştirme döngüsüyle. Turların tekrarlanmasının sonucu bir çığ etkisidir - açık ve şifrelenmiş veri blokları arasında artan bir bit uyuşma kaybı.

    2. Akış şifreleri - gama kullanılarak kaynak (düz) metnin her bir biti veya baytı üzerinde şifrelemenin gerçekleştirildiği. Özel bir modda başlatılan bir blok şifreye (örneğin, gama modunda GOST 28147-89) dayalı olarak bir akış şifresi kolayca oluşturulabilir.

    Genel anahtar şifreleme sistemi

    Genel anahtar şifreleme sistemi (veya Asimetrik şifreleme, Asimetrik şifre) - mesajı şifreleyen anahtarın ve şifrelenmiş mesajın kendisinin açık (yani korumasız, gözlem için erişilebilir) bir kanal üzerinden iletildiği bir bilgi şifreleme sistemi. Alıcı, genel anahtarı oluşturmak ve şifrelenmiş mesajı okumak için özel anahtarı kullanır. Açık anahtar şifreleme sistemleri şu anda çeşitli alanlarda yaygın olarak kullanılmaktadır. ağ protokolleri, özellikle, SSL protokolünde ve buna dayalı protokollerde uygulama katmanı HTTPS, SSH vb.

    Pirinç. 7.

    1. Alıcı bir anahtar oluşturur. Anahtar bir açık ve bir kapalı kısma bölünmüştür. nerede Genel anahtar açık bir kanal üzerinden iletilmemelidir. Ya da orijinalliği bazı onaylayıcı kuruluşlar tarafından garanti edilmelidir.

    2. Gönderen, mesajı şifrelemek için genel anahtarı kullanır.

    3. Alıcı, özel anahtarı kullanarak mesajın şifresini çözer.

    Yöntemin dezavantajı: mesaj güvenli bir şekilde şifrelenmiş olsa da, alıcı ve gönderen, şifreli bir mesaj gönderme gerçeğiyle "vurgulanır".

    Açık anahtarlı bir kriptografik sistemin genel fikri, bir mesajı şifrelerken, açık anahtardan ve algoritmik olarak tersine çevrilmesi çok zor olan mesajdan (şifreleme işlevi) böyle bir işlevin kullanılmasıdır. anahtarın değerini bilse bile, bağımsız değişkenini işlevin değerinden hesaplayın.

    sistem özellikleri

    avantaj asimetrik şifrelerin simetrik şifrelere göre üstünlüğü, gizli anahtarı aktarmaya gerek olmamasıdır. Kullanılan algoritmaya göre şifreli metinleri almak isteyen bir taraf, bir genel anahtar-özel anahtar çifti oluşturur. Anahtar değerler ilişkilidir, ancak bir değerin diğerinden hesaplanması pratik açıdan imkansız olmalıdır. Genel anahtar, genel dizinlerde yayınlanır ve karşı taraf tarafından bilgileri şifrelemek için kullanılır. Özel anahtar gizli tutulur ve anahtar çiftinin sahibine gönderilen mesajın şifresini çözmek için kullanılır. Asimetrik şifreler, 1976'da Whitfield Diffie ve Martin Hellman'ın New Directions in Modern Cryptography ile başladı. Ayrık logaritma problemine dayalı, paylaşılan bir gizli anahtar değişim sistemi önerdiler. Genel olarak, bilinen asimetrik şifreleme sistemleri, tek yönlü fonksiyonlar ve tuzak fonksiyonların oluşturulmasına izin veren karmaşık matematik problemlerinden birine dayanmaktadır. Örneğin, Rivest-Shamir-Adelman kripto sistemi çarpanlara ayırma problemini kullanır. büyük sayılar ve Merkle-Hellman ve Hoare-Rivest kripto sistemleri, sözde sırt çantası problemine güveniyor.

    Kusurlar- asimetrik şifreleme sistemleri, önemli ölçüde daha büyük bilgi işlem kaynakları gerektirir. Ek olarak, genellikle sertifikaların kullanıldığı ortak anahtarların orijinalliğini (gerçekliğini) sağlamak gerekir.

    Hibrit (veya birleşik) bir şifreleme sistemi, bir açık anahtar şifreleme sisteminin tüm avantajlarına sahip olan, ancak ana dezavantajı olan düşük şifreleme hızından yoksun olan bir şifreleme sistemidir.

    Prensip: Kriptografik sistemler iki ana kriptosistemden yararlanır: simetrik ve asimetrik kriptografi. PGP ve GnuPG gibi programlar bu prensip üzerine kuruludur.

    Ana dezavantaj asimetrik kriptografi, algoritmalarının gerektirdiği karmaşık hesaplamalar nedeniyle yavaştır, oysa simetrik kriptografi geleneksel olarak mükemmel performans gösterir. Bununla birlikte, simetrik şifreleme sistemlerinin önemli bir dezavantajı vardır - kullanımı, anahtar iletimi için güvenli bir kanal gerektirir. Bu eksikliğin üstesinden gelmek için, bir çift anahtar kullanan asimetrik şifreleme sistemlerine başvurulur: genel ve özel.

    şifreleme: Çoğu şifreleme sistemi şu şekilde çalışır. Simetrik bir algoritma (3DES, IDEA, AES veya başka herhangi biri) için rastgele bir anahtar oluşturulur. Böyle bir anahtar, kural olarak, 128 ila 512 bit arasında bir boyuta sahiptir (algoritmaya bağlı olarak). Daha sonra mesajı şifrelemek için simetrik bir algoritma kullanılır. Ne zaman blok şifre blok uzunluğundan daha uzun bir mesajı şifrelemenize izin verecek bir şifreleme modu (örneğin, CBC) kullanmalısınız. Rastgele anahtarın kendisine gelince, mesajın alıcısının genel anahtarıyla şifrelenmesi gerekir ve bu aşamada açık anahtar şifreleme sistemi (RSA veya Diffie-Hellman Algoritması) uygulanır. Rastgele anahtar kısa olduğu için şifrelemek biraz zaman alır. İle bir dizi iletiyi şifrelemek asimetrik algoritma-- bu görev hesaplama açısından daha karmaşıktır, dolayısıyla burada simetrik şifrelemenin kullanılması tercih edilir. Ardından, simetrik bir algoritma ile şifrelenmiş bir mesajın yanı sıra ilgili anahtarı şifreli biçimde göndermek yeterlidir. Alıcı, önce kendi özel anahtarını kullanarak anahtarın şifresini çözer ve ardından alınan anahtarı kullanarak tüm mesajı alır.

    Dijital imza şunları sağlar:

    * Belgenin kaynağının belirlenmesi. Belge tanımının detaylarına bağlı olarak “yazar”, “değişiklikler yapıldı”, “zaman damgası” vb. alanlar imzalanabilir.

    * Belgedeki değişikliklere karşı koruma. Belgede (veya imzada) herhangi bir kazara veya kasıtlı değişiklik şifreyi değiştirecek ve dolayısıyla imza geçersiz olacaktır.

    Aşağıdaki dijital imza tehditleri olasıdır:

    *Saldırgan, kendi seçtiği bir belge için sahte imza oluşturmaya çalışabilir.

    *Bir saldırgan, bir belgeyi belirli bir imzayla eşleştirmeye çalışabilir, böylece imza onunla eşleşir.

    Güçlü bir şifre işlevi kullanıldığında, orijinaliyle aynı şifreye sahip sahte bir belge oluşturmak hesaplama açısından zordur. Ancak bu tehditler, özellikle önbelleğe alma algoritmalarındaki zayıflıklar, imzalar veya bunların uygulamalarındaki hatalar nedeniyle gerçekleştirilebilir. Ancak, dijital imza sistemlerine yönelik aşağıdaki tehditler hala mümkündür:

    *Özel anahtarı çalan bir saldırgan, anahtarın sahibi adına herhangi bir belgeyi imzalayabilir.

    *Bir saldırgan, örneğin kör imza protokolünü kullanarak sahibini bir belgeyi imzalaması için kandırabilir.

    *Bir saldırgan, sahibinin genel anahtarını kendisininkiyle değiştirerek onun kimliğine bürünebilir.

    Devlet sırlarının kriptografik koruma araçları hala silahlarla eşittir. Dünyada çok az ülkenin kendi kriptografik şirketleri var. iyi demek bilgi koruması Birçok gelişmiş ülkede bile böyle bir imkan yok: Bu teknolojilerin desteklenmesine ve geliştirilmesine izin verecek bir okul yok. Rusya, tüm bunların geliştirildiği dünyadaki birkaç ülkeden biri - belki beş ya da daha fazla ülke -. Üstelik hem ticari hem de kamu sektöründe kriptografi ekolünün yeni ortaya çıktığı dönemden bu yana sürekliliğini koruyan şirket ve kuruluşlar bulunmaktadır.

    Şifreleme algoritmaları

    Bugüne kadar, kriptanalize (kriptografik güç) karşı önemli bir dirence sahip olan birçok şifreleme algoritması vardır. Şifreleme algoritmaları üç gruba ayrılır:

    • Simetrik Algoritmalar
    • Asimetrik algoritmalar
    • Karma Algoritmalar

    Simetrik Algoritmalar

    Simetrik şifreleme, hem şifreleme hem de şifre çözme için aynı anahtarın kullanılmasını içerir. Simetrik algoritmalar için iki ana gereklilik geçerlidir: şifreleme nesnesindeki tüm istatistiksel düzenliliklerin tamamen kaybı ve doğrusallığın olmaması. Simetrik sistemleri blok ve akış sistemlerine ayırmak adettendir.

    Blok sistemlerde, kaynak veriler bloklara bölünür, ardından bir anahtar kullanılarak dönüştürülür.

    Akış sistemlerinde, daha sonra mesajın üzerine bindirilen belirli bir dizi (çıkış gama) oluşturulur ve gama üretilirken veriler akış tarafından şifrelenir. Simetrik bir şifreleme sistemi kullanan iletişim şeması şekilde gösterilmiştir.

    M'nin düz metin olduğu yerde K, üzerinden iletilen gizli anahtardır. kapalı kanal, En(M) şifreleme işlemidir ve Dk(M) şifre çözme işlemidir

    Genellikle, simetrik şifreleme, kaynak verilerin ikame ve permütasyonlarının karmaşık ve çok aşamalı bir kombinasyonunu kullanır ve birçok aşama (geçiş) olabilir ve bunların her biri bir "geçiş anahtarına" karşılık gelmelidir.

    İkame işlemi, mesajın bitlerini belirli bir yasaya göre karıştırarak herhangi bir istatistiksel veriden kurtularak simetrik bir şifre için ilk gereksinimi karşılar. Algoritmayı doğrusal olmayan hale getirmek için ikinci gereksinimi yerine getirmek için permütasyon gereklidir. Bu, orijinal diziye atıfta bulunarak, belirli bir boyuttaki mesajın belirli bir bölümünü standart bir değerle değiştirerek elde edilir.

    Simetrik sistemlerin asimetrik sistemlere göre hem avantajları hem de dezavantajları vardır.

    Simetrik şifrelerin avantajları şunları içerir: yüksek hızşifreleme, benzer güç, daha fazla bilgi ve uygulama kolaylığı ile daha küçük bir gerekli anahtar uzunluğu. Simetrik algoritmaların dezavantajları, öncelikle, gerekli olan anahtarın gizliliğini ihlal etme olasılığının yüksek olması nedeniyle anahtar değişiminin karmaşıklığı ve büyük bir ağda anahtar yönetiminin karmaşıklığıdır.

    Simetrik şifre örnekleri

    • GOST 28147-89 - yerel şifreleme standardı
    • 3DES (Üçlü DES, üçlü DES)
    • RC6 (Rivest Şifresi)
    • İki balık
    • SEED - Kore Şifreleme Standardı
    • Kamelya bir Japon şifreleme standardıdır.
    • CAST (geliştiriciler Carlisle Adams ve Stafford Tavares'in baş harflerinden sonra)
    • XTEA, uygulanması en kolay algoritmadır
    • AES- amerikan standardışifreleme
    • DES, AES'e kadar ABD veri şifreleme standardıdır

    Asimetrik Algoritmalar

    Asimetrik sistemler aynı zamanda açık anahtarlı şifreleme sistemleri olarak da adlandırılır. Bu, genel anahtarın açık bir kanal üzerinden (gizli değil) iletildiği ve doğrulamak için kullanıldığı bir veri şifreleme yöntemidir. Elektronik İmza ve veri şifreleme için. Elektronik imzanın şifresini çözmek ve oluşturmak için gizli olan ikinci bir anahtar kullanılır.

    Asimetrik şifreleme sistemlerinin aygıtı, tek yönlü ƒ(x) fonksiyonları fikrini kullanır; burada, fonksiyonun kendisinin değerini bilerek x'i bulmanın kolay olduğu, ancak ƒ(x)'in kendisini bulmanın neredeyse imkansız olduğu , yalnızca x'in değerini bilmek. Böyle bir işlevin bir örneği Telefon rehberi Bir kişinin soyadını ve baş harflerini bilerek numarasını bulmanın kolay olduğu, ancak numarayı bilerek sahibini hesaplamanın son derece zor olduğu büyük bir şehrin.

    Asimetrik sistemlerin çalışma prensibi

    Diyelim ki iki abone var: A ve B ve abone B, abone A'ya şifreli bir mesaj göndermek istiyor. Mesajı genel anahtarı kullanarak şifreliyor ve zaten şifrelenmiş olarak açık bir iletişim kanalı üzerinden iletiyor. Mesajı alan A abonesi, gizli anahtarı kullanarak şifresini çözer ve okur.

    Burada bir açıklama yapmak gerekiyor. Bir mesaj alırken, abone A kimliğini abone B'ye doğrulamalıdır, böylece kötü niyetli kişi A abonesinin kimliğine bürünemez ve genel anahtarını kendisininkiyle değiştiremez.

    Asimetrik yazı tipi örnekleri

    • RSA (Rivest-Shamir-Adleman, Rivest-Shamir-Adleman)
    • DSA (Dijital İmza Algoritması)
    • Elgamal (ElGamal Şifreleme Sistemi)
    • Diffie-Hellman (Diffie-Hellman Anahtar Değişimi)
    • ECC (Eliptik Eğri Şifreleme, Eliptik Eğri Şifreleme)

    Hash fonksiyonları

    Hashing (İngilizce hash'den), keyfi uzunluktaki ilk bilgi dizisinin sabit uzunluktaki bir bit dizisine dönüştürülmesidir.

    Pek çok hash işlevi algoritması vardır ve özellikleri bakımından farklılık gösterirler - kriptografik güç, kelime uzunluğu, hesaplama karmaşıklığı, vb.

    Kriptografik olarak güçlü hash fonksiyonlarıyla ilgileniyoruz. Bunların genellikle iki gereksinimi vardır:

    • Belirli bir C mesajı için, aynı hash ile başka bir C" mesajını almak neredeyse imkansızdır.
    • Aynı karmaya sahip mesaj çiftlerini (SS") almak neredeyse imkansızdır.

    Gereksinimler, sırasıyla birinci tür ve ikinci tür çarpışmalara karşı direnç olarak adlandırılır. Bu tür işlevler için başka bir gereklilik önemini koruyor: bağımsız değişkendeki küçük bir değişiklikle birlikte, işlevin kendisinde de önemli bir değişiklik meydana gelmelidir. Bu nedenle hash değeri, bağımsız değişkenin tek tek bitleri hakkında bile bilgi vermemelidir.

    Karma algoritma örnekleri

    • Adler-32
    • SHA-1
    • SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512)
    • HAVAL
    • N-hash
      • RIPEMD-160
    • RIPEMD-256
    • RIPEMD-320
    • Deri
    • Snefru
    • Kaplan (TTH)
    • jakuzi
    • GOST R34.11-94 (GOST 34.311-95)
    • IP İnternet Sağlama Toplamı (RFC 1071)

    Şifreleme İlkelleri

    Şifrelenmiş bilgilere daha fazla kriptografik güç vermek için, nispeten basit dönüşümler - ilkel - bir kriptografik sistemde tekrar tekrar uygulanabilir. Primitifler ikameler, permütasyonlar, döndürmeler veya gama olabilir.

    kuantum şifreleme

    Dijital teknolojilerde kriptografi

    Hikaye

    Kriptografi eski bir bilimdir ve orijinal nesneleri Metin mesajları, belirli algoritmaların yardımıyla, bu mesajın şifresini çözecek özel bilgiye sahip olmayan herkes için anlamını yitiren anahtar - anahtar.

    Başlangıçta, bugün yalnızca bulmacalar için kullanılan, yani çağdaşın görüşüne göre en basit yöntemler kullanıldı. Bu tür şifreleme yöntemleri, örneğin, her harfin alfabede kesin olarak tanımlanmış bir mesafede ondan aralıklı olarak bir başkasıyla değiştirildiği değiştirme yöntemini içerir. Veya harflerin bir kelime içinde belirli bir sırayla değiştirildiği bir permütasyon şifreleme yöntemi.

    Eski zamanlarda, şifreleme esas olarak askeri ve ticari işlerde, casuslukta ve kaçakçılar arasında kullanılıyordu.

    Bir süre sonra tarihçiler, başka bir ilgili bilimin - steganografinin ortaya çıkış tarihini belirler. Bu bilim, bir mesajın iletilmesi gerçeğini maskelemekle ilgilenir. Antik çağda ortaya çıktı ve buradaki bir örnek, Spartalı kral Leonidas'ın Perslerle savaştan önce kuru, kolayca durulanan bir solüsyonla kaplı bir metin içeren bir tahta almasıdır. Temizlerken, kalemle mum üzerinde kalan izler net bir şekilde görünür hale geldi. Bugün, mesajı gizlemek için sempatik mürekkepler, mikro noktalar, mikrofilmler vb.

    Matematiğin gelişmesiyle birlikte ortaya çıkmaya başlamıştır. matematiksel algoritmalarşifreleme, ancak bilgilerin tüm bu kriptografik koruma türleri, istatistiksel verileri değişen derecelerde tuttu ve savunmasız kaldı. Güvenlik açığı, buluşla özellikle fark edilir hale geldi frekans analizi Arap ansiklopedist el-Kindi tarafından MS 9. yüzyılda geliştirildi. Ve yalnızca XV.Yüzyılda, Leon Battista Alberti'nin (muhtemelen) çok alfabetik yazı tiplerini icat etmesinden sonra, koruma niteliksel olarak yeni bir düzeye taşındı. Bununla birlikte, 17. yüzyılın ortalarında, Charles Babbage, çok alfabeli yazı tiplerinin frekans analizine kısmen açık olduğuna dair ikna edici kanıtlar sundu.

    Mekaniğin geliştirilmesi, şifrelemeyi kolaylaştıran cihazlar ve mekanizmalar yaratmayı mümkün kıldı - Trithemius kare tahtası, Thomas Jefferson'un disk şifresi gibi cihazlar ortaya çıktı. Ancak tüm bu cihazlar, 20. yüzyılda yaratılanlarla karşılaştırılamaz. Bu sırada çeşitli şifreleme makineleri ve yüksek karmaşıklığa sahip mekanizmalar, örneğin en ünlüsü Enigma olan döner makineler ortaya çıkmaya başladı.

    20. yüzyılda bilimin hızlı gelişmesinden önce, kriptograflar yalnızca dilsel nesnelerle uğraşmak zorundaydı ve 20. yüzyılda çeşitli kullanım olanakları matematiksel yöntemler ve teoriler, istatistik, kombinatorik, sayı teorisi ve soyut cebir.

    Ancak kriptografik bilimdeki asıl atılım, herhangi bir bilgiyi ikili biçimde temsil etme yeteneğinin ortaya çıkmasıyla geldi, bilgisayarlar kullanılarak bitlere bölündü, bu da şimdiye kadar görülmemiş kriptografik güce sahip yazı tipleri oluşturmayı mümkün kıldı. Bu tür şifreleme sistemleri elbette saldırıya uğrayabilir, ancak bilgisayar korsanlığı için harcanan zaman çoğu durumda haklı değildir.

    Bugün kuantum kriptografisindeki önemli gelişmelerden bahsedebiliriz.

    Edebiyat

    • Barichev S.G., Goncharov V.V., Serov R.E. Modern kriptografinin temelleri. - M.: *Varfolomeev A.A., Zhukov A.E., Pudovkina M.A. Akış şifreleme sistemleri. Stabilite analizinin temel özellikleri ve yöntemleri. M.: ÖDEMELER, 2000.
    • Yashchenko VV Kriptografiye giriş. Petersburg: Peter, 2001. .
    • GOST 28147-89. Bilgi işleme sistemleri. Kriptografik koruma. Kriptografik dönüştürme algoritması. Moskova: Standartlara göre GK SSCB, 1989.
    • GOST R 34.10-94. Bilgi Teknolojisi. kriptografik koruma bilgi. *GOST R 34.11-94. Bilgi Teknolojisi. Bilgilerin kriptografik koruması. Özet fonksiyonu. M., 1995.
    • GOST R 34.10-2001 Bilgi teknolojisi. Bilgilerin kriptografik koruması. Elektronik dijital imzanın oluşturulması ve doğrulanması süreçleri. M., 2001.
    • Nechaev VI Kriptografinin Unsurları (Bilgi güvenliği teorisinin temelleri). Moskova: Lise, 1999.
    • Zhelnikov V. Papirüsten bilgisayara kriptografi. M.: AVR, 1996.

    Altında simetrik kriptosistemler mesajları şifrelemek ve şifresini çözmek için aynı anahtarın kullanıldığı sistemleri ifade eder (Şekil 9.1).

    Tüm simetrik sistem çeşitleri aşağıdaki temel sınıflara dayanmaktadır:

    Tek ve çok alfabeli ikameler;

    permütasyonlar;

    Blok şifreleri;

    Kumar.

    oyuncu değişikliği

    Doğrudan ikamelerde, kaynak metindeki her karakter bir veya daha fazla karakterle değiştirilir. Doğrudan ikamelerin önemli alt sınıflarından biri tek alfabetik ikameler, orijinal alfabenin e i karakteri ile şifreli metnin karşılık gelen cj karakteri arasında bire bir yazışmanın kurulduğu. Tüm tek alfabetik ikame yöntemleri, aşağıdaki formüle göre, kaynak metindeki harflerin sayı olarak kabul edilen sayısal dönüşümleri olarak temsil edilebilir:

    c ≡ (a*e +s) mod K , (5.1)

    burada a bir ondalık katsayıdır; s, kaydırma katsayısıdır; e – kaynak metin harf kodu; c şifreli harfin kodudur; K, alfabenin uzunluğudur; mod, parantez içindeki ifadeyi modulo K'ye böldükten sonra kalanı hesaplama işlemidir.

    Örnek. Sezar'ın şifresi

    26 Latin harfi ve bir boşluk işaretinden oluşan bir alfabede şifrelemeyi düşünün (boşluğu # işaretiyle temsil edeceğiz). # işaretine 0 kodunu, A harfine 1 kodunu, B harfine 2 kodunu, Z harfine 26 kodunu atayacağız.

    Aşağıdaki parametreleri alalım: a = 1 s = 2 K = 27

    Şifreleme formülü şu şekli alır:

    c ≡ (e + 2) mod 27 (5.2)

    Giriş alfabesi:

    # A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

    çıkış alfabesi

    B C D E F G H I J K L M N O P Q R S T U V W X Y Z # A

    (Harfler iki konuma kaydırılır: A-C B-D, vb.)

    Ardından, şifrelenmiş formdaki orijinal mesaj şöyle görünecektir:

    Şifre çözme için (a=1 olduğu durum için) aşağıdaki formül kullanılır

    e ≡ (K+ c - s) mod K (5.3)

    Basit çok alfabetik ikame kullanılan alfabeleri sıralı ve döngüsel olarak değiştirir (önceki durumda, şifreleme için bir alfabe kullanılmıştır). m-alfabetik ikame ile, orijinal mesajdaki a 1 karakteri B 1 alfabesinden bir karakterle değiştirilir, a 2 karakteri B 2 alfabesinden bir karakterle değiştirilir, ... a m karakteri a ile değiştirilir B m alfabesinden karakter, a m +1 karakterinin yerini B 1 ve t .d alfabesinden bir karakter alır. Çok alfabeli ikame kullanmanın etkisi, kaynak dilin sıklık istatistiklerinin maskelenmesidir, çünkü A alfabesindeki belirli bir karakter B şifre alfabesinden birkaç farklı karaktere dönüştürülür.

    Örnek

    Orijinal mesaj: BİZ#KARA İHTİYACIMIZ VAR

    Anahtar: SECURITYSECU

    GÜVENLİK kelimesi anahtar olarak seçilir. Sözcük orijinal mesajın altına yazılır, anahtarın harfleri tükendiğinde orijinal mesajın harfleri bitene kadar sözcüğü tekrar etmeye başlarız. Anahtarın her harfi (daha doğrusu kodu), şifreli bir karakter elde etmek için orijinal alfabede bir kayma ayarlayacaktır. Alfabe olarak kullanıyoruz edebiyat ve boşluk yerine # işareti.

    Kaynak Anahtar Şifresi

    (G + S) mod 27 = (23 + 19) mod 27 = 15→O

    (E + E) mod 27 = (5 + 5) mod 27 = 10 → J

    (# + C) mod 27 = (0 + 3) mod 27 = 3 → C

    Egzersiz yapmak

    Alıştırma olarak sonuna kadar şifrelemeyi oluşturmanızı öneririz.

    permütasyonlar

    Kaynak metnin karakterleri belirli bir kurala göre yeniden düzenlenebilir.

    Örnek 1 Doğrusal Permütasyon

    Aşağıdaki metni şifreleyelim:

    YÜK#PORTAKAL#DRAGGERS

    Metni uzunluk gruplarına ayıralım, örneğin, her biri 4 karakter:

    YÜKLE ITE# APELSIN Y#ŞİŞE

    Aşağıdaki permütasyon kuralını belirleyelim: "1-2-3-4 sırasına göre dört harften oluşan gruplamaları 3-1-4-2 sırasına göre yeniden düzenleyin".

    Aşağıdaki şifrelenmiş metni alıyoruz:

    UGRZ EI#T EALP INNS BYO# ACHK

    Yorum

    Mesaj uzunluğu, grup uzunluğunun katı değilse, son grup, gereken uzunluğa kadar karakterlerle (örneğin, boşluklar) doldurulur.

    Düz metnin yazılması ve ardından şifreli metnin okunması, bazılarının farklı yolları boyunca yapılabilir. geometrik şekil kare veya dikdörtgen gibi.

    Örnek 2. Izgara Cardano

    Cardano kafesi, delikli dikdörtgen bir karttır, daha çok kare şeklindedir ve bir kağıda uygulandığında sadece bazı kısımlarını açık bırakır. Satır ve sütun sayısı çifttir. Kart, sırayla döndürüldüğünde, altında yatan sayfanın her hücresi işgal edilecek şekilde yapılmıştır. Kafes kare ise, karenin merkezi etrafında sırayla 90 ° döndürebilirsiniz.

    şifreleme:

    VAVOCHS MUNOTI MYZHROE YUKHSOY MDOSTO YASNTV

    Izgarayı saat yönünde 90° döndürerek mesajın kodunu çözün. Mesajı kareye satır satır yazın.

    Değiştirme ve permütasyon yöntemleri tek başına gerekli kriptografik gücü sağlamaz. Bu nedenle, birlikte ve ayrıca bir ekleme yöntemiyle kullanılırlar. Toplama yöntemiyle şifrelerken, başlangıçta kaynak metin, ikame yöntemi kullanılarak şifrelenir, her harf bir sayıya dönüştürülür ve ardından her sayıya gizli bir gama (aşağıya bakın) eklenir - sözde rastgele bir sayısal dizi.

    blok şifreler

    Blok şifreler, kaynak metnin bloklarının (sabit uzunluktaki parçalar) tersine çevrilebilir dönüşümleri ailesidir.

    N bitlik bir blokla, N uzunluğunda bir sıfırlar ve birler dizisini kastediyoruz:

    x \u003d (x 0, x 1, ... x N -1) . (5.5)

    Z 2'de x, N bir vektör ve bir tamsayının ikili temsili olarak yorumlanabilir

    (5.6)

    Bir blok şifre ile bir elementi kastediyoruz

    burada x \u003d (x 0, x 1, ... x N -1), y \u003d (y 0, y 1, ... y N -1)

    Blok şifreler özel bir ikame durumu olmasına rağmen, ayrı ayrı düşünülmelidir, çünkü ilk olarak, veri iletim sistemlerinde kullanılan simetrik şifrelerin çoğu blok şifrelerdir ve ikincisi, blok şifrelerin algoritmik biçimde tanımlanması daha uygundur ve her zamanki ikameler gibi değil.

    Akış şifreleri

    Akış şifreleri bir tür gamadır ve düz metni her seferinde bir bit olmak üzere şifreli metne dönüştürür. Bazen çalışan bir anahtar üreteci olarak adlandırılan bir anahtar dizisi üreteci, k 1 , k 2 , ... k N bit dizisinin çıktısını verir. Bu tuş dizisi, kaynak metin bit dizisi e 1 , e 2 , …, e N ile modulo 2'ye (“özel veya”) eklenir:

    Alıcı tarafta, şifreli metin, düz metni elde etmek için aynı tuş dizilimi ile modulo 2'ye eklenir:

    Sistemin kararlılığı tamamen anahtar dizisi üretecinin iç yapısına bağlıdır. Jeneratör kısa periyotlu bir dizi üretirse, sistemin kararlılığı düşüktür. Aksine, üreteç gerçekten rastgele bitlerden oluşan sonsuz bir dizi üretirse, o zaman ideal dayanıklılığa sahip tek seferlik bir ped elde ederiz.

    Akış şifreleri, veri ağlarında olduğu gibi sürekli veri akışlarını şifrelemek için en uygundur.