Ödeme sistemi ile çift yönlü ssl bağlantısı. Güvenli bir bağlantı kurma (Güvenli Yuva Katmanları, SSL'ye dayalı). Şifreleme olmadan http üzerinden ödeme kabulünü ayarlama

  • 02.07.2020

Son zamanlarda, kıskanılacak bir düzenlilikle HTTPS / SSL ile uğraşmak zorundayız. Ancak ne zaman böyle bir proje çıksa, nasıl yapıldığını unutabiliyorum. Bilgiyi hafızaya geri yüklemeyi kolaylaştırmak için materyalleri buradan çevirmeye karar verdim. Ancak, yavaş yavaş çeviri orijinalinden uzaklaştı.

SSL, veri alışverişi yapmak isteyen iki taraf arasında şifreli bir bağlantı kurmak için bir protokol ailesidir. Bu, bağlanan tarafların her birinin hangi şifreleme mekanizmalarını desteklediği, hangi anahtar uzunluğunun kullanılacağı, şifreleme modları, sertifikaların değiş tokuş edildiği, simetrik bir şifreleme protokol anahtarının değiş tokuşunda asimetrik bir şifreleme algoritmasının kullanıldığı ve daha sonra kullanılan bir asimetrik şifreleme algoritmasının kullanıldığı bir değiş tokuştur. daha fazla etkileşimde. Bu ilk veri alışverişine el sıkışma denir.

Simetrik anahtar, el sıkışma sırasında oluşturulur ve yalnızca bir SSL oturumu için geçerlidir. Oturum etkin kalmazsa, anahtar geçersiz hale gelir (süresi sona erer). Bir SSL oturumunun sona ereceği maksimum süre ayarlanabilir. Bir oturum sona erdikten sonra, el sıkışma baştan denenmelidir. Oturum kurulumunun sonucu yeni bir simetrik anahtardır.

Sertifikalar ve anahtarlar

SSL'nin ayrıntılarına girmeden önce, anahtarlar ve sertifikalar kavramını tanıtmamız gerekiyor. SSL/TLS, kimlik doğrulama ve oturum sırasında verileri şifrelemek için kullanılacak simetrik bir anahtarın değiş tokuşu için asimetrik şifreleme kullanır.

Asimetrik şifreleme kullanımları anahtar çiftlerişifreleme için, bir özel anahtar ve buna karşılık gelen ortak anahtar. Bir anahtarla şifrelenen verilerin şifresi, eşleştirilmiş bir anahtarla çözülebilir. Benzer şekilde, bir anahtarla imzalanan veriler, ikinci bir anahtarla doğrulanabilir. Özel anahtar, adından da anlaşılacağı gibi gizli tutulmalıdır.

Sertifikalar.

Bir sertifika, sahibi tanımlayan bazı bilgilerle birlikte bir ortak anahtardan ve anahtarın son kullanma tarihinden oluşur. Sertifika ayrıca sertifikayı veren kuruluşun (sertifika yetkilisi CA) dijital imzasını da içerir. Dijital imza, sertifikanın kurcalanmamasını sağlar. Sertifika genellikle bir web sunucusuna, uygulamaya veya kullanıcıya verilir. Sertifika, genel bir şifreleme anahtarını dağıtmanın bir yoludur.

İstemci mesajı sunucunun açık anahtarıyla (sunucunun sertifikasından) şifrelerse, istemci yalnızca meşru bir sunucunun mesajın şifresini çözebileceğinden emin olabilir. SSL/TLS oturumu oluşturma işlemi sırasında, istemci oturum anahtarının bir kısmını oluşturur, mesajı sunucunun açık anahtarını kullanarak şifreler ve sunucuya gönderir. Sunucu iddia ettiği kişiyse, özel anahtarı kullanarak mesajın şifresini çözebilecek ve mesajdan oturum anahtarını çıkarabilecektir.

Sertifikalar iki çeşittir.

  • Sertifika Yetkilisi tarafından imzalanmış resmi olarak verilmiş sertifikalar
  • Kendinden imzalı sertifikalar

Kendinden imzalı sertifikalar, geliştiricilerin resmi olarak imzalanmış bir sertifika beklemeden yazılımlarını test edebilmeleri için test için sunulan sertifikalardır. Kendinden imzalı bir sertifika, kişisel olarak yapmadığınız veya güvenilir bir kaynaktan dijital ortamda almadığınız sürece orijinalliğinin doğrulanamayacağından farklıdır. Aksi takdirde, kendinden imzalı sertifikalar resmi olanlarla tamamen aynıdır. Programlı olarak, tamamen aynı şekilde kullanılabilirler.

Güven

Bir SSL bağlantısının temel kavramı, bir sertifikaya olan güven kavramıdır. Önemli olan bağlantı için kullanılan sertifikanın nasıl elde edildiğidir. Site sahibi gibi güvenilir bir kaynaktan sertifika alırsanız, sertifikanın orijinal olduğundan ve gerçekten gerçek siteye bağlandığınızdan emin olabilirsiniz. Ancak, örneğin bir web tarayıcısından bağlantı kurarken, sunucu sertifikası, bağlandığınız sunucudan alınabilir. Sertifikanın gerçekliği ile ilgili bir soru var. Bilgisayar korsanı kendi asimetrik anahtar çiftini yarattıysa ve ardından bankanın sunucusunu taklit etmek için kendi sertifikasını yaptıysa?

Güven modeli, basit. Her istemci veya sunucu, sertifika veren belirli kuruluşlara (sertifika yetkilileri (CA)) güvendiğine karar verir. Bir CA'ya güvenmek, CA tarafından verilen tüm sertifikaların meşru olduğuna ve sertifikadaki tanımlayıcı bilgilerin doğru ve güvenilir olduğuna güvenmektir. Verisign, büyük İnternet şirketleri için birçok sertifikayı imzalayan bir CA örneğidir. Tüm tarayıcılar varsayılan olarak Verisign'a güvenir. Sertifikanın kimlik bilgileri, CA tarafından oluşturulan bir dijital imza içerir. İstemci veya sunucu, sertifikayı 'truststore' adlı bir mağaza dosyasına ekleyerek CA'ya güvenir. CA sertifikasını güven deposunda saklamak, Java'nın CA tarafından oluşturulan sertifikanın dijital imzasını kontrol etmesine ve sertifikaya güvenip güvenmeyeceğine karar vermesine olanak tanır.

Bir bilgisayar korsanı Barclay's Bank için sahte bir sertifika yerleştirirse, tarayıcınız sertifikanın dijital imzasını doğrulamaya çalışır. Güven deposunda saldırganın sertifikasını imzalayan sertifika olmadığı için bu denetim başarısız olur.

Sertifika Zinciri

Uygulamada, sertifikaların formatı, bir sertifikaya birden fazla imza eklenebilecek şekildedir. Sertifika tek bir imza değil, belirli bir “Sertifika Zinciri” depolar.

Özel ve genel anahtarlar oluşturulduğunda, ortak anahtar için otomatik olarak kendinden imzalı bir sertifika oluşturulur. Şunlar. başlangıçta bir özel anahtar çifti ve imzalı bir ortak anahtar içeren bir sertifika alırsınız. Kendinden imzalı sertifika, anahtarı oluşturan ve imzalayanın aynı kişi olduğu bir sertifikadır.

Daha sonra, bir Sertifika İmzalama Talebi (CSR) oluşturduktan ve Sertifika Yetkilisinden (CA) bir yanıt aldıktan sonra, kendinden imzalı (kendinden imzalı) sertifika, bir sertifika zinciri (Sertifika Zinciri) ile değiştirilir. Zincire CA'dan bir sertifika eklenir, bu genel anahtarın doğruluğunu onaylar, ardından CA ortak anahtarının doğruluğunu onaylayan bir sertifika gelir.

Çoğu durumda, zincirdeki (CA'nın ortak anahtarının kimliğini doğrulayan) son sertifikanın kendisi kendinden imzalıdır. Diğer durumlarda, CA, bir sertifika değil, bir dizi sertifika döndürebilir. Bu durumda, zincirdeki ilk sertifika, sertifikayı veren CA tarafından imzalanan ortak anahtardır ve ikinci sertifika, imzalama isteğinin gönderildiği ilk CA'nın ortak anahtarını doğrulayan başka bir CA'nın sertifikası olabilir. Bunu, ikinci CA'nın ortak anahtarının doğruluğunu onaylayan bir sertifika takip edecek, vb. zincir, kendinden imzalı bir kök kök sertifikası ile bitene kadar. Zincirdeki her sertifika, zincirdeki önceki sertifikanın ortak anahtarının kimliğini doğrular.

SSL'ye daha yakından bakalım. İki tür SSL bağlantısı vardır.

Basit kimlik doğrulama (1 yönlü SSL kimlik doğrulaması)

Şifreli bir SSL/TLS bağlantısı kurulmadan önce kimlik doğrulama gerçekleştirilmelidir. Basit bir bağlantının kurulabilmesi için, sertifikası alınmış bir özel anahtar sunucusunun kurulması gerekir. İstemci ayrıca güvendiği CA'ların bir listesini tutmalıdır.

İstemci, şifreli bir bağlantı kurmadan önce sunucunun kimliğini doğrular.

2 yönlü SSL kimlik doğrulaması

Bu tür kimlik doğrulama ile hem sunucu hem de istemci, şifreli bir bağlantı kurmadan önce birbirlerinin kimliğini doğrulamak için sertifikalar sağlar.

Sertifika doğrulama

Tek yönlü kimlik doğrulamada (birinci tür), sunucunun eşleştirilmiş özel anahtarlı bir sertifikası vardır. Sunucunun genel anahtarıyla şifrelenen verilerin şifresi, sunucunun özel anahtarıyla çözülebilir. Bir sunucuyla bağlantı kurmak isteyen bir istemci, şifreli bir bağlantı kurmaya devam etmeden önce sunucunun sertifikasını doğrular. Müşteri aşağıdakileri kontrol etmelidir:

  • Sertifika hala geçerli mi (sertifikanın süresinin dolmuş olup olmadığı (son kullanma tarihi geçmiş))
  • Sunucu tarafından sağlanan sertifika gerçekten de ana bilgisayar adıyla eşleşiyor.
  • CA sertifikası veren, istemcinin güvendiği listede mi?
  • Sertifikadaki dijital imzayı kontrol edin

Dijital imza şifreleme algoritması, anahtar uzunlukları vb. gibi diğer küçük ayrıntılar da kontrol edilir.

2 yönlü kimlik doğrulama ile hem istemci hem de sunucu özel anahtarlara ve sertifikalara sahiptir. Her ikisi de şifreli bir bağlantı kurmadan önce birbirlerinin sertifikalarını kontrol eder. İstemci yukarıda açıklanan kontrolleri yapar ve sunucu aynısını istemci sertifikası ile yapar.

İmza Talebi ve Sertifika İmzalama

Anahtarların ve sertifikaların oluşturulması standartlarla düzenlenir.

Anahtarlar PKCS'ye göre oluşturulur….

Bir genel/özel anahtar çifti oluşturulduğunda, PKCS#10 standardında tanımlandığı gibi, Sertifika İmzalama Talebi (CSR) adı verilen bir sertifika isteği nesnesi oluşturulur. Güvenilir CA (sertifika yetkilisi) daha sonra CSR'yi imzalamak isteyip istemediğine, kaydı talep eden müşteriye güvenip güvenmediğine ve sertifikasında sağladığı bilgilere karar vermelidir.

CA (sertifika yetkilisi), Sertifika İmzalama İsteğine (CSR) güvenmeyi seçerse, sonuç, CSR'de sağlanan kimlikle imzalı bir sertifikanın düzenlenmesidir. Sertifika, X.509 standardına tabidir.

"RBS BS-İstemcisi. Özel İstemci" v.2.5

Erişim kanallarının ayarlanması. TLS/SSL protokolleri

Sürüm 2.5.0.0

1. Özet

Bu belge, derlendiği tarihte geçerli olan bilgileri içerir. bu belgede hata bulunmadığını garanti etmez. önceden haber vermeksizin belgede değişiklik yapma hakkını saklı tutar.

Bu belge sistem yöneticilerine yöneliktir.

Belge, istemci/sunucu bilgi etkileşiminin korunmasını sağlamaya yönelik geleneksel görevleri çözmek için tasarlanmış TLS/SSL protokolleriyle sistemde çalışma hakkında bilgiler içerir.

1. Özet. 2

2. TLS/SSL protokollerinin çalışma prensipleri. dört

3. Güvenli Yuva Katmanı (SSL). 6

3.1. SSL 7 Sertifika İsteği Oluşturma

3.2. SSL Sertifika Kurulumu 14

3.3. Web sitesinde SSL kurun. 17

4. Aktarım Katmanı Güvenliği (TLS). on sekiz

4.1. İki yönlü SSL (TLS) Yapılandırma Sırası 18

4.2. Web sunucusu için bir sertifika ve gizli anahtarlar oluşturma. 19

4.3. Sunucu sertifikasının yüklenmesi (web sunucusu bilgisayarında gerçekleştirilir) 22

4.4. Bir Web sitesine sertifika atama. 31

4.5. Web sitesinde iki yönlü SSL kurulumu. 35

4.6. Çift Yönlü SSL 36 için BSI - RTS'yi Yapılandırma

4.7. İstemcinin sertifika ve özel anahtarlarının oluşturulması. 38

4.8. İstemci sertifikası kurulumu (istemci bilgisayarda gerçekleştirilir) 39

2. TLS/SSL protokollerinin çalışma prensipleri

Müşteri ile Banka arasında bağlantı kurmak için "Özel Müşteri" sistemi, gerekli bilgi güvenliği araçlarını iki kanaldan sağlar:


SSL - Güvenli Yuva Katmanı

TLS - Aktarım Katmanı Güvenliği

TLS/SSL protokolleri, istemci/sunucu ortamında aşağıdaki gibi yorumlanan bilgi etkileşiminin korunmasını sağlamaya yönelik geleneksel görevleri çözmek için tasarlanmıştır:

· Kullanıcı, sunucuya bağlanırken, sahte bir sunucuyla değil, ihtiyaç duyduğu sunucuyla bilgi alışverişinde bulunduğundan emin olmalıdır (aksi takdirde bu, üzücü olmasa da merak uyandıran sonuçlara yol açabilir). Pek çok uygulamada, sunucunun, parola korumasıyla sınırlı olmamak üzere, istemciyi güvenilir bir şekilde tanımlayabilmesi de gereklidir;

Sunucu ve istemci arasında bir bağlantı kurulduktan sonra, aralarındaki tüm bilgi akışının yetkisiz erişime karşı korunması gerekir;

· Taraflar, bilgi alışverişinde bulunurken, iletim sırasında tesadüfi veya kasıtlı olarak herhangi bir bozulma olmadığından emin olmalıdır.

TLS/SSL protokolleri bu sorunları şu şekilde çözer:

· Eşlerin kimliği asimetrik kriptografi kullanılarak belirlenebilir (örn. RSA , GOST (CryptoPro TLS kullanırken), vb.). Bu kimlik doğrulama isteğe bağlı hale getirilebilir, ancak eşlerden en az biri için gereklidir.

· Bağlantı gizlidir. Simetrik şifreleme, verileri şifrelemek için kullanılır (örn. DES , RC4, GOST (CryptoPro TLS kullanırken), vb.). Şifreleme anahtarları, her bağlantı için bağımsız olarak oluşturulur ve başka bir protokol (TLS konuşma protokolü gibi) kullanılarak elde edilen bir gizli anahtara dayanır.

· Bağlantı güvenilirdir. Mesaj aktarım prosedürü, bir MAC hesaplaması kullanan bir bütünlük kontrolünü içerir. >MAC'yi hesaplamak için karma işlevleri (örn. SHA, MD5, vb.) kullanılır.

Bu protokoller, taşıma protokolü olarak mantıksal bir bağlantı protokolünün (TCP gibi) kullanıldığını ve iki katmandan oluştuğunu varsayar. İlk katman, uygulama protokolünü ve üç sözde el sıkışma protokolünü içerir: SSL oturum oluşturma protokolü (Handshake Protocol), şifre spesifikasyonunu değiştirme protokolü (Change Cipher Spec Protocol) ve sinyal protokolü (Uyarı Protokolü). İkinci katman sözde. kayıt protokolü.

El sıkışma protokolleri, güvenli oturumların oluşturulmasından veya sürdürülmesinden sorumludur.

Kayıt protokolü aşağıdaki işlevleri yerine getirir:

· Uygulama katmanından alınan verileri bloklara böler ve uygulama katmanına iletilmek üzere gelen blokları toplar.

· Giden verileri sıkıştırır ve gelen verileri açar.

· Giden veri bloklarına bir MAC veya karma ekler ve gelenlerin bütünlüğünü doğrulamak için bağlı MAC'i kullanır.

· Giden veri bloklarını şifreler ve gelen veri bloklarının şifresini çözer.

İletilen verileri şifrelemek için simetrik şifreleme kullanılır, yani aynı anahtar şifrelenmiş verileri hem şifreleyebilir hem de şifresini çözebilir.

Her iki tarafta, alınan/iletilen verileri şifrelemek için kullanılan iki anahtar seti (her iki taraf için aynı) ve MAC (HMAC) oluşturmak için kullanılan iki anahtar seti vardır.


İletim sırasında veriler bloklara bölünür, her blok için MAC (veya TLS durumunda HMAC) hesaplanır, alınan değer iletilen bloğa eklenir, ardından her blok oturum anahtarı ile şifrelenir ve sunucuya iletilir. alıcı taraf.

Alındıktan sonra bloğun şifresi çözülür, MAC (veya TLS durumunda HMAC) ondan hesaplanır, alınan değer blokla iletilen değerle karşılaştırılır (veri bütünlüğü kontrolü).

CryptoPro TLS yazılımını kullanırken GOST'a göre kriptografik şifreleme algoritmaları, Diffie-Hellman algoritmasına göre anahtar değişimi ve GOST R 34.11-94'e göre hashing uygulamak mümkün hale gelir.

Windows işletim sistemi için SSL/TLS protokollerinin standart uygulaması yalnızca RSA algoritmasıyla doğru şekilde çalışabilir.

TLS'nin Özellikleri

TLS, Netscape tarafından yayınlanan SSL 3.0 protokol belirtimine dayanmaktadır. Bu protokol ile SSL 3.0 arasındaki farklar küçüktür, ancak TLS 1.0 ve SSL 3.0'ı uyumsuz hale getirmek için yeterlidir (ancak TLS 1.0, uygulamaların SSL 3.0'ı destekleyebileceği bir mekanizmaya sahiptir).

SSL üzerinden TLS'deki iyileştirmeler:

· TLS'de, SSL'de bir mesajın karmasını hesaplamak için kullanılan MAC (Mesaj Doğrulama Kodu) algoritması, daha güçlü HMAC (Mesaj Doğrulama Kodu için anahtarlı-Hashing) algoritması ile değiştirildi.

RFC 2246'da standartlaştırılmış TLS protokolü

· Bazı alarm mesajları eklendi

· TLS, bir alt (kök olmayan) CA tarafından verilen sertifikaların kullanılmasına izin verir.

· TLS, blok şifreleme algoritmaları ile kullanılan dolgu blok değerlerini belirtir.

Fortezza algoritmaları, halka açık olmadığı için TLS RFC'ye dahil edilmez (bu, İnternet Mühendisliği Görev Gücü'nün (IETF) politikasıdır)

· Çeşitli mesaj alanlarında küçük farklılıklar.

SSL kullanırken artıları ve eksileri

Artıları:

İstemcinin bilgisayarına ek yazılım yüklenmesini gerektirmez.

Trafik, daha az kaynak yoğun simetrik kriptografik algoritmalar kullanılarak korunduğundan, sistem kaynaklarının daha az kullanımı.

eksileri:

Taraflar arasında önemli bir bilgi alışverişi vardır.

TLS kullanmanın artıları ve eksileri

Artıları:

Trafiği şifrelemek, paketleri imzalamak ve anahtar bilgilerini değiş tokuş etmek için SSL durumunda olduğundan daha güvenli algoritmalar kullanılır.

eksileri:

Bu seçenek yalnızca CryptoPro CSP/TLS şifrelemesi kullanılırken kullanılabilir.

İstemcinin iş istasyonuna (CryptoPro) ek yazılım yüklemek gereklidir.

3. Güvenli Yuva Katmanı (SSL)

Secure Socket Layer (SSL), 1996 yılında Netscape tarafından geliştirilen ve istemci web tarayıcısı ile web sunucusu arasında güvenli bir bağlantı sağlayan bir güvenlik protokolüdür. SSL, çoğu web tarayıcısının ve web sunucusunun ayrılmaz bir parçasıdır ve RSA şifrelemesini kullanır. SSL protokolü, iki ana bileşeni kullanarak güvenli veri aktarımı sağlar:

· Kimlik doğrulama;

· Şifreleme.

SSL protokolünü kullanarak güvenli bir bağlantı kurmak için web sunucusuna dijital bir SSL sertifikasının yüklenmesi gerekir. Dijital SSL sertifikası, bağlandığınız sunucuyu benzersiz şekilde tanımlayan bir dosyadır. Dijital sertifikaya bazen dijital pasaport veya dijital kimlik adı verilir.

SSL sertifikası aşağıdaki ayrıntılı bilgileri içerir:

Sertifikanın verildiği alan;

Sertifika sahibi;

· Bir WWW sunucusunun yapılandırılması ve İnternet istemcisinin iki yönlü SSL (TLS) üzerinden çalışması için yeni bir web sitesi oluşturulması.

· BSI modülünün yapılandırılması.

· RTS modülünün yapılandırılması.

· Web sunucusu için anahtarların ve sertifika talebinin oluşturulması.

· İstemci sertifikasının oluşturulması.

· Sertifikaları uygun bilgisayarlara yükleyin.

· Kurulan sertifikanın Web sunucusuna atanması.

· Web sitesinde iki yönlü SSL (TLS) kurun.

4.2. Web Sunucusu Sertifikası ve Özel Anahtar Üretimi

Anahtarlar ve bir Web sunucusu sertifikası talebi, standart RBS araçları kullanılarak oluşturulabilir.

Bunu yapmak için Güvenlik -> Kripto koruması -> Manuel sertifika oluşturma menü öğesini seçin.

ð Diyalog açılır. Sertifika İsteği ve Özel Anahtar Oluşturma(Şek. 4‑1).

Pirinç. 4-1 Sertifika Talebi ve Özel Anahtar Oluşturma

https://pandia.ru/text/78/460/images/image023_1.jpg" width="411" height="466 src=">

Pirinç. Şekil 4-3 CryptoPro CSP Özellikleri İletişim Kutusu

・Yer işaretine git Hizmet ve düğmeye tıklayın « Düzenlemek Kişisel Sertifika" .

"Özel sertifika kurulum sihirbazı"(Şek. 4‑4).

Pirinç. 4‑4 İletişim kutusu « Özel sertifika kurulum sihirbazı

· "İleri" düğmesine tıklayın.

Sertifika ayarları (Şekil 4-5).

Pirinç. 4-5 Sertifika Kurulumu İletişim Kutusu

· Gerekli sertifika dosyasını seçin ve İleri düğmesine tıklayın.

ð Sertifikayı yüklemek için aşağıdaki pencere açılacaktır (Şek. 4‑6).

Pirinç. 4‑6 Sertifika Kurulumu İletişim Kutusu

· "İleri" düğmesine tıklayın.

ð Bu, aşağıdaki sertifika yükleme iletişim kutusunu açacaktır (Şekil 4‑7).

Pirinç. 4-7 Sertifika Kurulumu İletişim Kutusu

· Bir anahtar kapsayıcı seçerken, "Bilgisayar"ı belirtin, ardından istediğiniz kapsayıcıyı seçin. "İleri" düğmesine tıklayın.

ð Bu, sertifikayı yüklemek için aşağıdaki iletişim kutusunu açacaktır (Şekil 4-8).

Pirinç. 4-8 Sertifika Kurulumu İletişim Kutusu

· "Gözat" düğmesine tıklayın.

ð Bu, iletişim kutusunu açar « Seçmesertifikamağaza"(Şek. 4-9).

https://pandia.ru/text/78/460/images/image030.jpg" width="502" height="385 src=">

Pirinç. 4‑10 Sertifika Kurulumu İletişim Kutusu

· “Bitir” düğmesine tıklayın.

ð Böylece, sunucu sertifikası, yerel bilgisayarın kişisel dizininde, gizli anahtarların konteyneri ile işletim sistemi düzeyinde kurulmuş bir bağlantı ile sona erecektir.

Sertifikayı yüklemek için ana Windows menüsündeki öğeleri kullanabilirsiniz. « Başlat- > koş" .

ð Bu, pencereyi açar « koşmak"(Şek. 4-11).

Microsoft" href="/text/category/microsoft/" rel="bookmark">Microsoft yönetmekkonsol".

· mmc "Konsol -> Yeni" ana menü öğesini seçin veya "Ctrl+N" tuşlarına basın.

ð Bu, iletişim kutusunu açar « Konsol kök"(Şek. 4‑12).

https://pandia.ru/text/78/460/images/image033_0.jpg" width="415" height="309 src=">

Pirinç. 4-13 Ek Bileşen Ekle/Kaldır İletişim Kutusu

· "Ekle" düğmesini tıklayın.

ð Bu, iletişim kutusunu açar « EklebağımsızPatlatmak-içinde"(Şek. 4-14).

https://pandia.ru/text/78/460/images/image035_0.jpg" width="523" height="195 src=">

Pirinç. 4‑15 Sertifika Ek Bileşeni İletişim Kutusu

· "Bilgisayar hesabı" kutusunu işaretleyin ve "İleri" düğmesini tıklayın.

ð Ekranda diyalog kutusu belirir. « SeçmeBilgisayar"(Şek. 4-16).

https://pandia.ru/text/78/460/images/image037.jpg" width="415" height="292 src=">

Pirinç. 4‑17 Ek Bileşen Ekle/Kaldır İletişim Kutusu

· Tamam düğmesini tıklayın.

ð Bu, pencereyi açar Konsol kök(Şekil 4-18), sertifikaların bir listesini içerir Yerelbilgisayar.

https://pandia.ru/text/78/460/images/image039.jpg" width="474" height="345 src=">

ð Bu, kurulum sihirbazı penceresini açar « sertifikaiçe aktarmaksihirbaz".

· "İleri" düğmesine tıklayın.

ð Bu, aşağıdaki iletişim kutusunu açar « sertifikaiçe aktarmaksihirbaz"(Şek. 4‑20).

Pirinç. 4‑20 İletişim kutusu "Sertifika Alma Sihirbazı»

· Yetkilendirme Merkezi sertifika dosyasının yolunu belirtin ve İleri düğmesini tıklayın.

ð Bu, aşağıdaki iletişim kutusunu açar « sertifikaiçe aktarmaksihirbaz".

· "Sertifikanın konumunu otomatik olarak algıla veya belirtilen dizine yerleştir" kutusunu işaretleyin ve "İleri" düğmesini tıklayın.

ð Bu, aşağıdaki iletişim kutusunu açar « sertifikaiçe aktarmaksihirbaz".

· Prosedürü tamamlamak ve kurulum sihirbazı penceresini kapatmak için “Bitir” düğmesine tıklayın.

・Kapanırken Microsoft yönetmek Konsol ( MMC) düğmeye tıklayın « Evet" Ayarlarınızı kaydetmek için

4.4. Bir Web Sitesine Sertifika Atama

İki yönlü SSL kurmak için:

· İnternet Hizmetleri Yöneticisi'ni başlatın ("Başlat -> Ayarlar -> Denetim Masası -> Yönetimsel Araçlar -> İnternet Hizmetleri Yöneticisi").

· Solda görünen pencerede "İnternet Bilgi Servisleri" ağacını açın.

ð Ağaçta bir dal belirir *<сетевое имя Вашего компьютера>.

· Siteler listesinde, iki yönlü SSL yapılandırması gereken siteyi seçin ve "Özellikler"i açın.

Dikkat!

Bu bölüm, iki yönlü SSL koruma tipine sahip bir kanalın çalışmasını doğru şekilde desteklemesi için sitenin yalnızca ek yapılandırmasını açıklar. Yalnızca aşağıda listelenen parametreler daha fazla yapılandırılabilir. Diğer tüm parametreler değişmeden kalır.

· “Dizin Güvenliği” sekmesine gidin (Şek. 4-21).

https://pandia.ru/text/78/460/images/image003_23.jpg" width="503" height="386 src=">

· "İleri" düğmesine tıklayın.

ð Bu, iletişim kutusunu açar « IISsertifikasihirbaz"(Şek. 4-22).

https://pandia.ru/text/78/460/images/image043.jpg" width="503" height="248 src=">

Pirinç. 4‑23 İletişim kutusu IIS Sertifika Sihirbazı

· Listeden kurulu sertifikayı seçin ve İleri düğmesine tıklayın.

ð Bu, aşağıdaki iletişim kutusunu açar « IISsertifikasihirbaz"(Şek. 4-24).

Pirinç. 4-24 İletişim kutusu IIS Sertifika Sihirbazı

· "İleri" düğmesine tıklayın.

ð Bu, aşağıdaki iletişim kutusunu açar « IISsertifikasihirbaz"(Şek. 4‑25).

DIV_ADBLOCK427">

Dikkat!

Site, "Sistemi kurma ve yapılandırma kılavuzu" belgesine göre oluşturulmalı ve yapılandırılmalıdır.

Bu bölüm, iki yönlü SSL koruma tipine sahip bir kanalın çalışmasını doğru şekilde desteklemesi için sitenin yalnızca ek yapılandırmasını açıklar. Yalnızca aşağıda listelenen parametreler daha fazla yapılandırılabilir. Diğer tüm parametreler değişmeden kalır.

· "Dizin Güvenliği" sekmesine gidin.

· "Güvenli İletişim" bölümünde "Düzenle" düğmesini tıklayın.

Açılan iletişim kutusunda aşağıdaki kutuları işaretleyin:

▼ Güvenli Kanal Gerektir

▼ İstemci Sertifikaları Gerektirin.

4.6. Çift Yönlü SSL için BSI - RTS'yi Yapılandırma

Yardımcı program yapılandırma için kullanılır. BSISET. EXE . Ayarlar şu şekilde yapılır:

· bsiset yardımcı programını çalıştırın. exe (yardımcı program "%BSSRoot%\EXE" dizininde bulunur).

ð Bu, iletişim kutusunu açar « SeçmekBSI. DLLyer» .

· "Kütüphane" alanında bsi dosyasının yolunu belirtin. dll.dll BSI modülünün ayarları daha önce yapılmışsa, yol aşağıdaki listeden seçilebilir. bsi yolunu seçmek için. dll düğmesini manuel olarak kullanın.

· "Düzenle" düğmesine tıklayın.

ð Bu, ayarlar iletişim kutusunu açar " BSIyapılandırmaurasyon".

Kullanılan istemci kanalı koruması türü için - iki yönlü SSL ( TLS) yapılandırmanın ayarlanması gerekiyor RTS .

· RTS için yeni bir konfigürasyon oluşturmanız gerekiyor. Yeni bir ayar oluşturmak için pencerenin sağ tarafında, Yapılandırmalar sekmesinde Yeni düğmesini tıklayın.

ð Bu, adla yeni bir yapılandırma oluşturur. Yeni öğe, yeniden adlandırılabilir.

ð Varsayılan konfigürasyonu kopyalamak için bsiset yardımcı programını çalıştırın. exe. Düzenle düğmesine tıklayın. İstediğiniz konfigürasyonu seçin ve "Yeni Kopya" düğmesine tıklayın.

· İmleci "NewItem" satırına getirin ve "ConfigID" alanına ayarın adını girin.

· Ardından, imleç yeni ayarın adı üzerindeyken “Yapılandırma” düğmesine tıklayın.

ð Ekranda ayarlar penceresi görünür. « BSIAyarlamak".

· "Seçenekler" bölümünü açın ve "Kimlik Doğrulama" sekmesine gidin.

· İstemci kimlik doğrulama türünü ayarlamanız gerekir. Bunu yapmak için "İstemci sertifikası (TLS) ile tanımla" kutusunu işaretleyin.

RTS parametrelerini yapılandırmak için sistem tepsisinde sunucu simgesini bulun, üzerine sağ tıklayın:

ð Bu, bağlam menüsünü etkinleştirir.

Bağlam menüsünden "Ayarlar..." komutunu seçin

ð Bu, iletişim kutusunu açar "Ayarlar".

· “Seçenekler” bölümünü açın ve “Müşteri Tanımlama” sekmesine gidin (Şekil 4‑26).

https://pandia.ru/text/78/460/images/image049_0.jpg" width="510" height="368">

Pirinç. 4-27 İstemci için bir sertifika isteği ve özel anahtar oluşturun

Abonenin adını girin, kripto kitaplığı türünü seçin - Ms Crypto Api 2.0 ve İleri düğmesine tıklayın.

ð Ekranda sertifika parametrelerinin girilmesi için aşağıdaki pencere görünecektir.

İstemci sertifikası oluştururken bu pencerede aşağıdaki parametre değerlerini belirtin:

Sertifikanın kapsamı 1.3.6.1.5.5.7.3.2;

Gizli anahtarın kapsamı DigitalSignature;NonRepudiation;KeyEncipherment; Veri Şifreleme. türleri.

4.8. İstemci sertifikası kurulumu (istemci bilgisayarda gerçekleştirilir)

İstemci sertifikası yüklemek için CryptoPro kontrol panelini kullanın (Şekil 4‑28).

Windows ana menü öğelerini Başlat -> Ayar -> Denetim Masası -> CryptoPro CSP'yi kullanın.

Pirinç. 4‑28 CryptoPro CSP kurulumunu başlatma

· Bir pencere açılacak Özellikler: CryptoPro CSP.

・Sayfayı aç Hizmet ve düğmeye basın Düzenlemek Kişiye özel sertifika.

· Bir pencere açılacak Özel sertifika kurulum sihirbazı.

・Tıkla düğmesine Sonraki.

Gerekli sertifika dosyasını seçin ve düğmesine tıklayın Sonraki..

· Sertifikayı yüklemek için aşağıdaki pencere açılacaktır.

・Tıkla düğmesine Sonraki.

    Sertifikayı yüklemek için aşağıdaki pencere açılacaktır.

Pirinç. 4‑29 Sertifika yükleme seçeneklerini belirleme

Bir anahtar kapsayıcı seçerken şunu belirtin " kullanıcı”, ardından istediğiniz kabı seçin. Düğmeye bas Sonraki(Şek. 4-29).

· Sertifikayı yüklemek için aşağıdaki pencere açılacaktır.

・Tıkla düğmesine Araştır.

· Bir pencere açılacak Sertifika Deposu Seçin.

Bir dizin belirtin kişiye özel sertifikayı yüklemek için tıklayın ve Tamam.

Ardından, sertifikayı yükleme penceresinde düğmesine tıklayın. Sonraki.

· Aşağıdaki pencere, sertifika yükleme seçenekleriyle açılacaktır.

・Tıkla düğmesine Bitiş.

Böylece sunucu sertifikası geçerli kullanıcının kişisel deposunda sona erecektir.

Ödeme sistemlerini kurmak

Ödeme sistemlerinin kurulması, büyük ölçüde, ödeme sistemi operatörünün kendi terminalleri ile nasıl iletişim sağladığına bağlıdır. Kural olarak, şehir ödeme terminalleri kullanılıyorsa, güvenli bir SSL bağlantısı kullanılır ve aşağıda gösterildiği gibi terminallerle iletişim kurmak için SSL WEB sunucusunu etkinleştirmeniz ve yapılandırmanız gerekir. Ödeme yapmak için İnternet'teki web siteleri kullanılıyorsa, bu gibi durumlarda Karbon Faturalandırması için http sunucusunu ne sıklıkla yapılandırmanız gerekir. Carbon Billing'i kurmadan önce ödeme sistemi operatörünüzle ödeme terminallerine hangi iletişim protokolü üzerinden bağlantı sağladığını kontrol ettiğinizden emin olun.
Ödemeler için SSL WEB sunucusu, anlamları aşağıda açıklanan çeşitli parametrelere sahiptir.

Ödemeler için SSL WEB sunucusunu etkinleştir- Ödeme sistemi operatörü SSL üzerinden ödeme terminalleri ile çalışıyorsa, SSL WEB sunucusunu etkinleştirmek gerekir.
HTTPS bağlantısı için IP adresi- Carbon Billing veritabanındaki bir müşteriye ödeme yapmak için terminalleri veya ödeme sistemleri sitelerini bağlamak için adres.
HTTPS bağlantısı için bağlantı noktası- varsayılan olarak 1443 numaralı bağlantı noktası kullanılır. Bu bağlantı noktasının değiştirilmesi gerekiyorsa, mümkünse 1024'ten yüksek bağlantı noktaları belirtin.
SSL WEB sunucusu için izin verilen istemci adresleri
Sunucu SSL sertifikası için etki alanı- burada, Carbon Billing'deki ödeme sunucusu için ayrı olarak kayıtlı olan genel alan adınızı veya alan adınızı belirtin. Bu seçenek isteğe bağlıdır ve bir IP adresi yerine bir etki alanı adı kullanarak SSL WEB sunucusuyla iletişim kurmanıza olanak tanır.
İstemci sertifikası gerektir ve doğrula- Kasiyer web arayüzünü kurup kurmadığınızı kontrol ettiğinizden emin olun. Ödeme sistemiyle iş kuruyorsanız, müşteri sertifikasını ödeme sistemi operatörüyle doğrulama ihtiyacını kontrol edin.
İstemci sertifikası oluştur- Ödeme sistemi operatörüne sağlanması gereken bir müşteri sertifikası oluşturulacaktır. .pfx son ekine sahip sertifika sunucuda /var/lib/usrcert dizininde bulunacaktır ve sertifikayı oluştururken belirttiğiniz CN adına eşit bir dosya adına sahip olacaktır. Sertifika dosyasını winscp programını kullanarak sunucudan indirebilirsiniz.

Ödemeler için bir HTTP WEB sunucusu kurulması durumunda.

Ödemeler için HTTP sunucusunu etkinleştir- Ödeme sistemi operatörü, açık bir http bağlantısı üzerinden ödeme terminalleriyle çalışıyorsa, HTTP sunucusunu etkinleştirin.
HTTP bağlantısı için IP adresi- Terminalleri veya ödeme sunucularını buna bağlamak için web sunucusu adresi.
HTTP bağlantı noktası- varsayılan olarak 1444 numaralı bağlantı noktası kullanılır. Bu bağlantı noktasının değiştirilmesi gerekiyorsa, mümkünse 1024'ten yüksek bağlantı noktaları belirtin.
HTTP Sunucusu için İzin Verilen İstemci Adresleri- belirtilmemişse, erişim herkese açık olacaktır.


Bu sekmede aşağıda listelenen ödeme sistemi operatörlerinin hizmetlerini kullanıyorsanız, bunlara karşılık gelen menü öğelerini etkinleştirin. Gelecekte, bu onay kutuları, kullandığınız operatörlerin her biri için gerekli olan belirli sistem ayarlarını belirleyecektir. Operatörünüz aşağıda listelenenlerden biri değilse, hiçbirini dahil etmeyin.

Robokassa ödeme sistemini kurarken terminal ile sunucu arasında bağlantı kurmak için gerekli olan gizli şifreyi belirtmeyi unutmayınız.


SSL sertifikalarının konuAltName parametresinin kritikliği

Bir sunucu için, örneğin bir https ödeme sunucusu için ssl sertifikaları oluştururken, konuAltName uzantısı kullanılır. Geçmişte, varsayılan olarak, sertifikadaki bu uzantı kritik olarak işaretlenmiştir ve bu, faturalandırmayı bazı ödeme sistemleriyle entegre ederken sorunlara yol açabilir.

İstemci sertifikaları oluşturulurken, konuAltName ayarlanmaz.

Parametrenin kritikliği, yerel konsoldaki "Sunucu yapılandırması - Ek ayarlar - Geliştiriciler için ayarlar - AltName SSL parametresini kritik yapma" seçeneğiyle iptal edilir.

Bu seçeneği etkinleştirdikten sonra, yeni oluşturulan tüm sunucu sertifikaları, kritik olmayan bir konuAltName uzantısıyla oluşturulacaktır. https ödeme sunucusunun eski sertifikasının aşağıdaki gibi manuel olarak yeniden oluşturulması gerekir:

1. Yapılandırmayı içeren bölümü rw'ye yeniden bağlayın (bunun için uzaktan yardımcı modu etkinleştirilmelidir):

Mount -o rw,remount /mnt/bk_disc/

2. /etc/ics/ics.conf dosyasını bir düzenleyici ile açın ve satırı MHTTPD_F_CERT ile yorumlayın.

3. https ödeme sunucusunu yeniden başlatın:

/etc/init.d/mhttpd_F yeniden başlat

Sertifikanın https ödeme sunucusunda değiştirilmesi, kasiyerler veya ödeme sistemleri için önceden oluşturulmuş müşteri sertifikalarını etkilemez.

Şifreleme olmadan http üzerinden ödeme kabulünü ayarlama

Güvenli olmayan http protokolünü kullanan ödeme sistemlerinden ödeme kabul edilmesi gerekiyorsa aşağıdaki ayarların yapılması gerekir:

1) Ödemeleri almak için http sunucusunu etkinleştirin.


2) Taleplerin alınması gereken IP adresini belirtin. Bu adres, Carbon Billing arayüzlerinden birine ait olmalıdır:


Ardından, sunucunun istekleri alacağı bağlantı noktasını belirtin.

3) Taleplerin kabul edileceği IP adreslerinin bir listesini yapın. http, bir sertifika aracılığıyla ödeme sisteminin yetkilendirilmesi anlamına gelmediğinden bu çok önemli bir adımdır:


Robokassa ve Unikassa ödeme sisteminin protokolleri varsayılan olarak HTTP ile çalışabilir. Örneğin, OSMP protokolünü kullanarak http isteklerini kabul etmek gerekirse, aşağıdakileri yapmanız gerekir:

1) Sunucuyu ud'a yükleyin. asistan ve ssh üzerinden root olarak bağlanın.

2) Aşağıdaki komutları çalıştırın:

Mount -o rw,remount /mnt/ro_disc chattr -i -R /var /www/fiscal/htdocs/http/ cp /var /www/fiscal/htdocs/osmp.php /var /www/fiscal/htdocs/http/ osmp.php chown mhttpd_F:mhttpd_F /var /www/fiscal/htdocs/http/osmp.php

Komut dosyasındaki satırı düzenlemeniz gerekir:

Mcedit /var /www/fiscal/htdocs/http/osmp.php satırı: "../include/class_page.php" içerir; şununla değiştirin: include "../../include/class_page.php";

Dosyayı kaydedin ve düzenleyiciden çıkın.

Yazılım yeniden başlatıldıktan sonra, OSMP ödeme kabul modülü http://1.1.1.1:1444/osmp.php adresinde 2.2.2.2 IP adresinden erişilebilir olacaktır.

Eksi bakiye ile erişim

İki şekilde uygulanabilir:

  • Kuralların ve tarife ağlarının editörü aracılığıyla;
  • Vasıtasıyla [ek ayarlar dosyası ics_tune.sh]
Web erişimini ayarlama

Ek Web Erişim Sunucusu Ayarları

Güvenli bir bağlantı kurma (Güvenli Yuva Katmanları, SSL tabanlı)

Gerekirse bağlantı korumasını yapılandırabilirsinizbir web erişim sunucusu ile YÖNETİM : İletişim kanalları üzerinden iletilen bilgiler şifrelenecektir. Güvenli bağlantılarla çalışabilmek için aşağıdakileri yapın:

1. Web erişim sunucusunun yapılandırma dosyasında değişiklik yapın:

· Adım 1: Web Erişim Sunucusu Yapılandırma Yardımcı Programını Çalıştırın C:\Program Files\DIRECTUM Company\WebAccessConfig\DirWebConfigurator.exe.

· Adım 2. "Web Erişim Sunucusunun Web Sitesini Seçin" penceresi YÖNETİM":

a) açılır listeden web erişim sunucusunun web sitesini seçin YÖNETİM . Varsayılan olarak, "Web Erişim Sunucusu" olarak adlandırılır. YÖNETİM";

b) düğmeye tıklayın TAMAM ;

· Adım 3. "Web Erişim Sunucusu Ayarları" penceresi YÖNETİM ”, “Genel” sekmesi:

a) "Güvenli bağlantı" açılır listesinde "Uzak için" değerini seçin. Yerel ağ kullanıcıları için güvenli bir bağlantı kurulması gerekiyorsa, "Uzak ve yerel için" değerini seçin;

b) düğmeye tıklayın TAMAM .

2. IIS'yi SSL ile çalışacak şekilde yapılandırın -bir sunucu kimlik doğrulama sertifikası yükleyerek bağlantılar. Bunu yapmak için, "Uzak bir bilgisayardan kimlik almayı sağlar" amacıyla, kurumsal sertifika hizmetine dışa aktarma özelliğine sahip bir sertifika oluşturulur ve bunun sonucunda * almanız gerekir. pfx -özel anahtar dosyası.

3. Sertifika Web Hizmeti kullanıyorsanız pencereler sonra şunları yapın:

a) Bir sertifika oluştururken, sertifikanın olası dışa aktarımı seçeneğini belirtin. Sertifika yerel sisteme yüklendikten sonra, kullanılarak görüntülenebilir. Internet Explorer – “İnternet Seçenekleri” menü öğesi, “İçindekiler” sekmesi, buton sertifikalar . Dışa aktarmak için düğmesini kullanın İhracat , belirtmek Evet, özel anahtarı dışa aktaröğesine dokunun ve bir parola girin.

b) Sertifikayı içe aktarın. Bunu yapmak için, web sitesi özellikleri kartının "Dizin güvenliği" sekmesinde düğmesine tıklayın. sertifikalar ve önceki adımda belirlenen parolayı kullanarak sertifikayı içe aktarmak için ekrandaki talimatları izleyin. Sertifikayı aldıktan sonra 443 numaralı güvenli bağlantı noktası kurulacak ve üzerinden çalışılacaktır. SSL mümkün hale gelecektir.

4. Açık (güvenli olmayan) bağlantıları desteklemek için seçeneği ayarlamanız gerekir. Açık HTTP bağlantıları için desteğe izin ver Web sitesi özelliklerinin Web Sitesi sekmesinde.

5. Giriş sayfasındaki bağlantıyı kullanarak bir sertifika yetkilisi sertifikası kurabilmek için uygulama grubunu çalıştıran kullanıcıya ihtiyacınız var " YÖNETİM ", Güvenlik sekmesindeki istenen sertifika yetkilisinin özelliklerinde Sertifika Yetkilisi ek bileşeninde "Oku" ve "Sertifika iste"ye izin verin.

Ayrıca bakınız:

Tablo 10.1. OSI modelinde SSL'nin yeri
Seviye numarası Seviye adı
7 Uygulamalı
6 temsil
5 oturum
SSL
4 Ulaşım
3
2 kanallı
1 Fiziksel

SSL sürüm 3.0, SSL'den küçük ayrıntılarla ayrılan Aktarım Katmanı Güvenliği (TLS) protokolünün temeliydi. Bundan sonra, SSL terimi her iki protokolü de ifade edecektir.

10.1. SSL'de veri alışverişi

SSL protokolünü kullanarak veri alışverişi süreci, Şekil 2'de gösterilmiştir. 10.1.

Bir istemci bir sunucuya her bağlandığında, bir SSL oturumu başlatılır. Her oturumda birden fazla bağlantı mümkündür. İstemci başka bir sunucuya bağlanırsa, mevcut olanı bozmadan yeni bir oturum başlatılır. İlk sunucuya dönerken, kullanıcı ya önceden ayarlanmış parametreleri kullanarak bağlantıyı sürdürebilir ya da yeni bir bağlantı oluşturabilir. Saldırıları önlemek için SSL, bir oturum süresi sınırı (genellikle 24 saat) içerir, bunun ardından oturum sonlandırılır ve sunucuyla iletişim kurmaya devam etmek için yeni bir oturum oluşturulmalıdır.

Bir SSL oturumu aşağıdaki değerlerle karakterize edilir.

  • Oturum Kimliği (Session_ID) - önceden kurulmuş bir oturuma geri dönmenizi sağlayan istemci tarafında oluşturulan rastgele bir sayı.
  • Ana bilgisayar sertifikaları (Client_Certificate ve Server_Certificate) - ISO/IEC 9594-8 standardına göre bilgi alışverişi katılımcısının sertifikası.
  • Sıkıştırma yöntemi - iletilen verileri sıkıştırmak için bir algoritma. Desteklenen algoritmalar RFC 3749'da belirtilmiştir.
  • Şifre belirtimi - kripto algoritmalarının parametrelerini tanımlar:
    • anahtar değişimi ve kimlik doğrulama için: RSA açık anahtar şifreleme sistemi, Diffie-Hellman paylaşılan gizli anahtar oluşturma protokolü, DSA (Dijital İmza Algoritması), Fortezza.
    • simetrik şifreleme için: RC2, RC4, DES, 3DES, IDEA, AES;
    • karma için: SHA, MD5.
  • Oturum gizli anahtarı (Master_Secret), istemci ve sunucu arasında paylaşılan gizli anahtardır.
  • Devam bayrağı - seçilen parametrelerin geçerli oturumda yeni bir bağlantı için kaydedilip kaydedilemeyeceğini belirleyen bir parametre.
  • Bir SSL bağlantısı aşağıdaki değerlerle karakterize edilir.
  • Paylaşılan sırrı oluşturmak için kullanılan rastgele sayılar (Client_Random ve Server_Random).
  • Bilgileri şifrelemek/şifresini çözmek için anahtarlar (Client_Write_Secret = Server_Read_Secret ve Server_Write_Secret = Client_Read_Secret).
  • İletileri imzalama anahtarları (gizli Server_MAC_Write_Secret ve Client_MAC_Write_Secret).
  • Başlatma vektörleri (Server_IV ve Client_IV) - blok şifreleme algoritmaları için mesajları senkronize edin.
  • Müdahale ve tekrar saldırılarını önlemek için sunucu ve istemci için iki ardışık sayı.

10.2. SSL protokolleri

SSL, Şekil 2'de gösterilen dört protokol içerir. 10.2 :

  • tokalaşma;
  • kayıt;
  • Alarm;
  • CCS (Şifre Spesifikasyonunu Değiştir).


Pirinç. 10.2.

tokalaşma. Bu protokol, bir istemci ve bir sunucunun karşılıklı olarak doğrulanması, bir oturum veya bağlantı kurulması için tasarlanmıştır.

Şekilde şematik olarak gösterilen oturum kurulumu. 10.3, tipik olarak istemci tarafından bir ClientHello mesajı ile başlatılır (bazen sunucu, sunucunun bir El Sıkışma için hazır olduğunu belirten bir HelloRequest mesajı göndererek başlatılır), burada istemci aşağıdaki parametreleri iletir:

  • istemci tarafından desteklenen SSL sürümü;
  • oturum tanımlayıcısı - oturumun daha sonra devam ettirilebileceği bir değer;
  • rastgele sayı Client_Random;
  • İstemci tarafından desteklenen bilgilerin sıkıştırılması, şifrelenmesi ve hash edilmesi için algoritmaların listesi.


Pirinç. 10.3.

Bu mesaja yanıt olarak sunucu, aşağıdaki parametreleri içeren bir ServerHello mesajı gönderir:

  • sunucu tarafından desteklenen SSL sürümü;
  • rastgele sayı Server_Random;
  • bir oturum veya bağlantılar uygularken kullanılacak bilgileri sıkıştırmak, şifrelemek ve karma hale getirmek için bir algoritma listesi.

Bu mesaja ek olarak sunucu kendi sertifikasını da gönderir. Kullanılan algoritmaların bir istemci sertifikası gerektirmesi durumunda, sunucu istemciye bir sertifika isteği gönderir - CertificateRequest. Sunucu daha sonra istemciye ServerHello mesajının sonunu belirten bir ServerHelloDone mesajı gönderir.

İstemci, sunucu tarafından önerilen algoritmaları desteklemiyorsa veya uygun isteğe yanıt olarak sertifikasını göndermediyse, oturum kurulumu iptal edilir. Aksi takdirde, istemci sunucunun sertifikasını doğrular, bir Pre_Master_Secret oluşturur, bunu sunucunun sertifikasından türetilen sunucunun genel anahtarıyla şifreler ve elde edilen değeri bir ClientKeyExchange mesajında ​​gönderir. Sunucu, özel anahtarıyla alınan mesajın şifresini çözer ve Pre_Master_Secret'i çıkarır. Böylece, her iki taraf (istemci ve sunucu) üç değere sahiptir - Server_Random, Client_Random ve Pre_Master_Secret ve Şekil 2'de gösterilen şemaya göre Master_Secret'i çalıştırabilir. 10.4.


Pirinç. 10.4.

Bundan sonra her iki taraf da Master_Secret gizli anahtarında şifrelenmiş oturum parametreleri olan ve yeni bir oturum oluşturma sürecinin tamamlandığını simgeleyen Finished mesajı gönderir.

İstemci ve sunucu tarafından ChangeCipherSpec mesajları gönderilerek, bilgi sıkıştırma, şifreleme ve hashing algoritmalarının her iki tarafça kabul edildiğini teyit eden ve yeni bir bağlantı kurma sürecinin tamamlandığını simgeleyen Finished mesajları ile bağlantı kurulması tamamlanır.

kayıt. Bu protokol, oturum katmanı tarafından iletilen verileri taşıma katmanına dönüştürmek ve bunun tersi için tasarlanmıştır. Veri dönüşümüŞekil 2'de gösterilen şemaya göre gerçekleşir. 10.7.

Gönderici tarafından iletilen bilgiler, her biri 2^14 + 2048 bayttan büyük olmayan bloklara bölünür. Her blok daha sonra seçilen sıkıştırma algoritması kullanılarak sıkıştırılır. Bundan sonra, her bloğun MAC'si hesaplanır ve sonuncusuna eklenir. Alınan parçalar, saldırıları önlemek için sırayla numaralandırılır, seçilen algoritma kullanılarak şifrelenir ve taşıma katmanı. Alıcı, alınan parçaların şifresini çözer, numaralarının sırasını ve mesajların bütünlüğünü kontrol eder. Parçalar daha sonra paketten çıkarılır ve tek bir mesajda birleştirilir.

CSS. CSS protokolü, Kayıt protokolünün gerçekleştirmesine izin veren tek bir mesajdan oluşur. veri dönüşümü seçilen algoritmalar kullanılarak

Uyarı. Bu protokol, veri aktarımı veya bir oturum veya bağlantının kurulması sırasında oluşan hata mesajları üretir. Hataların niteliğine göre uyarı verilir veya bağlantı/oturum sonlandırılır. Hata örnekleri Tablo'da verilmiştir. 10.2.

Tablo 10.2. Uyarı protokolü tarafından oluşturulan hatalar
İsim Tanım
erişim reddedildi oturum/bağlantı geçerliliği sırasında sertifika iptal edildi
bad_certificate Sertifika hatası
bad_record_mac yanlış MAC
sertifika_süresi dolmuş süresi dolmuş sertifika
sertifika_revoked iptal edilmiş sertifika
sertifika_unknown bilinmeyen sertifika
close_notify gönderici tarafından oturumun gönüllü olarak sonlandırılması
kod çözme hatası blok bölme/blok birleştirme hatası
dekompresyon_arızası sıkıştırılmış blok açma hatası
şifre çözme hatası imza doğrulama hatasıyla ilgili şifre çözme hatası
decryption_failed bir mesajı şifrelerken parametrelerin yanlış ayarlanmasından kaynaklanan şifre çözme hatası
export_restriction ihracat kısıtlamalarından kaynaklanan hata
el sıkışma_failure genel bağlantı parametreleri ayarlanamıyor
yasadışı_parametre yanlış oturum/bağlantı parametreleri
yetersiz_güvenlik istemci tarafında yetersiz düzeyde algoritma gizliliği
iç hata İç hata
no_regotiation El Sıkışma protokolünün tamamlanamamasından kaynaklanan hata
protokol_versiyonu istemci protokolü sürümü sunucu tarafından desteklenmiyor
record_overflow mesaj bloğu uzunluğu 2^14+2048 baytı aşıyor
beklenmedik_mesaj zamansız alınan mesaj
bilinmeyen_ca yanlış sertifika yetkilisi imzası
desteklenmeyen_sertifika desteklenmeyen sertifika
user_canceled İstemci tarafından El Sıkışma protokolünün kesintiye uğraması

10.3. Ödeme sistemlerinde SSL kullanımı

Çoğu elektronik ödeme sistemi, özellikle çevrimiçi mağazalar, çalışmalarında web tarayıcılarını kullanır. SSL'nin neredeyse tüm bilinen web tarayıcılarında yerleşik olduğu göz önüne alındığında, vakaların %99'unda iletilen verilerin güvenliği [ 3GPP TR 21.905: 3GPP Spesifikasyonları için Kelime Bilgisi] buna dayanmaktadır. Ancak, elektronik ödeme işlemlerinde katılımcılar arasında etkileşim için güvenli bir kanal düzenlenirken bu protokolün kullanılıp kullanılmayacağına karar verirken dikkate alınması gereken SSL'nin aşağıdaki olumsuz yönlerine dikkat edilmelidir.

  • Alıcı kimlik doğrulaması eksikliği. SSL protokolünün bir alıcı sertifikası talep etme yeteneğine sahip olmasına rağmen, alıcı kimlik doğrulaması isteğe bağlıdır ve kural olarak gerçekleştirilmez, bu da bir banka hesabıyla yapılan işlemlerde SSL kullanımını imkansız hale getirir.
  • Satıcının URL ile doğrulanması. Satıcı tarafından sağlanan sertifika, yalnızca belirtilen URL ile bağlantısını gösterirken, satıcı ile belirtilen ödeme sistemine hizmet veren banka arasındaki etkileşim hakkında hiçbir bilgi yoktur.
  • Alıcının ayrıntılarının açıklığı. SSL altında iletilen tüm bilgiler şifreli olmasına rağmen alıcının banka bilgileri net bir şekilde satıcıya iletilir.
  • Protokolün dışa aktarma kısıtlamaları. 1999'da ABD Dışişleri Bakanlığı'nın ihracat kısıtlamalarını kaldırmaya karar vermesine rağmen, bazı tarayıcılar, iletilen verilerin güvenliğini önemli ölçüde azaltan bilgi şifreleme algoritmaları için anahtarların uzunluğu üzerinde ihracat kısıtlamaları olan SSL protokolünü destekler.