Conditional Access System (Koşullu Erişim Sistemi) İşleyişi : Forumda sık görebileceğimiz ***'mi değişti ?, bu paketin ***'i nedir tarzında sorular soruluyor, ama bu *** nedir nerede kullanılır. Bu yazıda işte bu konuyu ele almaya gayret edeceğiz. Forumda ve bazı internet sitelerinde gördüğümüz *** değerlerinin tamamı operational ***'lerdir ki bu konuya daha sonra eğileceğiz. Öncelikle *** ne demektir, konumuz içerisinde ne manaya gelmektedir, işe buradan başlayalım. ***, mesajları ve dosyaları şifrelemek, imzalamak, deşifre etmek ve doğrulamak için kullanılan bir dijital koddur. Koşullu erişim sistemlerinin her safhasında gelen şifrelenmiş veriyi deşifre etmek için kullanılır. Koşullu erişim sisteminin iki temel unsuru vardır.Bunlar: 1-) ECM (Entitlement Control Message - Yetki Verme Kontrol Mesajı) 2-) EMM (Entitlement Management Message - Yetki Verme Yönetim Mesajı) ECM genel anlamda Control Word (CW - Kontrol Kelimesi) ve erişim kriterlerini içeren şifrelenmiş bir mesajdır, gelen ECM deşifre edilir ve kendi taşıdığı erişim kriterleri ile karşı taraftaki erişim kriterleri karşılaştırılır, bu noktada alıcı taraf yetkili bir alıcı ise içerdiği Control Word serbest kalır. İşte bu CW'dir ki gelen şifrelenmiş yayının çözümü için, kullanılan şifreleme algoritmasına yönelik ***'dir ve yayının MPEG-2 kısmını çözmeye yönelik kullanılır. Pekala ECM'in içerdiği CW nasıl deşifre edilir ? İşte bu noktada hepimizin alıp emu'larımıza veya modüllerimize girdiğimiz ***'ler devreye giriyor. Bu *** değerleri operational *** değerleri olarak adlandırılıp, direkt olarak kontrol kelimesinin deşifre edilmesinde kullanılır. Daha önce bahsettiğimiz gibi ECM de şifreli olarak alıcı tarafa ulaşmaktadır. ECM şifrelemesinde sistemden sisteme farklılık olsa da genel olarak kullanılan algoritmalar DES (Data Encryption Standard) ve RSA (Rivest, Shamir, Adleman : Algoritmayı icat eden bilim adamlarının soyadlarının baş harfleri)'dır. Örneğin Nagravision ECM şifrelemesi olarak DES kullanırken, Conax RSA kullanmaktadır. Public *** Cryptography algoritmalarında her kullanıcı bir *** çiftine sahip olmalıdır. Bu ***'ler public *** ve private *** olarak adlandırılır. Eğer bir şeyin şifrelenmesinde public *** kullanılırsa bunun çözümü sadece private *** ile olabilir. Aynı şekilde tam terside geçerlidir. Bu noktada önemli ve temel konu Secret *** Cryptography'dir. Ahmet, Mehmet'e şifreli bir mesaj göndermek istese, birçok şifreleme algoritmasından birisini kullanabilir ve bu algoritmaların hepsininin temel amacı, anlamı olan bir mesajı *** kullanarak herhangi bir anlam ifade etmeyen mesaja dönüştürmektir. ***, mesajı çözmek için yeterli olduğundan son derece gizli tutulması gerekmektedir. Fakat *** istenmeyen kişilerin ele geçerse tek bir *** kullanıldığından mesajı Mehmet dışında başka kişilerde okuyabilecektir. İşte bu sorun bahsettiğimiz Public *** Cryptograhy yöntemleriyle çözülmüştür. Ahmet Mehmet'e şifreli bir mesaj göndermek istediğinde mesajı Mehmet'in public ***'i ile şifreler ve mesajı sadece Mehmet kendine ait private *** ile açabilir. Fakat bu sistem kullanılırken deşifreleme işlemi Secret *** Cryptography tekniğinden çok daha yavaş yapılabilmekte ve işlem uzun zamanlar alabilmektedir. Bu yüzden iki sistem kombine edilerek kullanılır. Bir session *** tespit edilir ve mesajın şifrelemesi session ***'e göre yapılır. Session *** ise alıcı tarafın public ***'i ile şifrelenir Ve bu şekilde mesaj alıcı tarafa gönderilir. Alıcı tarafta kendi private ***'ini kullanarak session ***'i deşifreler ve mesajın geri kalanını da deşifrelenmiş session ***'i kullanarak çözer, böylece işlem son derece hızlı gerçekleşmiş olur. Kısaca Public *** Algoritmalarının temel işleyişinden bahsettikten sonra tekrar konumuza dönersek ilk olarak gelen ECM alıcı tarafta yukarıda bahsettiğimiz tekniklere göre çözülür, gelen ECM alıcı tarafta çözüldükten sonra CAM bir mesaj ile encrypted control word'ü (şifrelenmiş kontrol kelimesi) çözülmek üzere smartcard'a yönlendirir. Bu trafik sıkı kurallara bağlı ISO7816 standardına göre yapılır ve bu kurallar smartcard kullanan bütün şifreleme sistemleri için geçerlidir. CAM (Host) tarafından karta giden trafik daima 5 Byte uzunluğundadır.Kart tarafından CAM (Host) tarafa gönderilen cevaplar ise 5 Byte uzunluğunda olmayabilir, aşağıda açıklanan CAM (Host) tarafın isteğine göre değişiklik gösterebilir, bu 5 Byte aşağıdaki sırada ve şekildedir: CLA, INS, P1, P2, P3 1.Byte : CLA : Instruction Class(Komut Sınıfı), her şifrleme sisteminin kullandığı bir komut sınıfı vardır, bu noktada örneğin Conax DD, Seca C1, Viaccess 87 ve CA komut sınıflarını kullanılır. 2.Byte : INS : Karta giden komut, bu byte herhangi bir değer olabilir fakat smartcard sadece kendi şifreleme sistemine göre olanları geçerli kabul ederek bunlara göre işlem yapar. 3.Byte : P1 : 1.Parametre 4.Byte : P2 : 2.Parametre 5.Byte : P3 : 3.Parametre, uzunluğu belirten byte değeridir, CAM karttan verdiği komuta kaç byte uzunluğunda yanıt gelmesi gerektiğini bu byte değeri ile iletir. Kart CAM'e her takıldığında CAM karta doğru bir Reset isteği gönderir ve cevabı bekler. Kartın bu isteğe verdiği cevaba ATR (Answer To Reset - Reset'e verilen cevap) denir. Kartın verdiği bu cevap içerisinde kendisinin davranışları hakkında host tarafa (CAM) bilgi verir, örneğin hangi sistem için bir smartcard olduğu, kullanılacak iletişim hızı ve bunun gibi bilgileri host olan tarafa iletir. CAM yapıldığı şifreleme sistemine uygun bir ECM aldığında bu ECM'in içerisindeki encrypted control word'ü (şifrelenmiş kontrol kelimesi) çözülmek üzere geçerli INS ile yukarıda bahsedilen haberleşme kurallarına göre smartcard'a yönlendirir. Encrypted Control Word'ün çözümü operational *** ile yapılır. Smartcard geçerli komutu aldıktan sonra kendi içerisinde kayıtlı operational *** ile şifrelenmiş kontrol kelimesini deşifreler ve deşifrelenmiş halini CAM tarafına yönlendirir. Bu noktadan sonra MPEG-2 yayının çözümü işlemine geçilmiş olunur. Yayıncı kuruluş güvenliği yüksek tutmak maksadıyla her 5-10 saniyede yeni bir ECM gönderir ki hepsindeki şifrelenmiş kontrol kelimesi değişiktir. Yani bir control word'ün çözümü ile maksimum 10 saniyelik görüntü ve ses alınabilir, devamı için bütün işlemler yeni encrtypted control word'ün çözümü için sil baştan tekrar edilir. Değinilmesi gereken diğer bir husus da ECM bütün alıcılara aynı mesaj olarak gönderilir, alıcıdan alıcıya farklılık göstermez. Bu noktada önem kazanan konu EMM konusudur. Kartın içerdiği operational ***'ler EMM vasıtasıyla güncellenmektedir. EMM de ECM gibi açık bir şekilde gelmeyip yukarıda bahsettiğimiz Public *** Crytograhy teknikleriyle şifrelenmiş bir şekilde gelmektedir ve sadece yetkili tarafta deşifrelenebilir. EMM'in içeriği, ECM'den farklı olarak her alıcıya farklı bir mesaj olarak gönderilir. Alıcı taraf sadece ve sadece kendine ait MK'ya (Master *** veya Management *** : Temel,Ana *** veya Yönetim ***'i) uygun bir EMM aldığında bunu çözümleyebilir. EMM yayıncı tarafından her alıcıya özel, farklı bir şekilde, sırayla gönderilir. Yapıldığı şifreleme türüne uygun EMM'i alan CAM yine yukarıda bahsettiğimiz haberleşme kuralları çerçevesinde, gelen EMM'in hangi MK ile çözüleceğini de belirterek EMM'i çözülmek üzere smartcard'a yönlendirir. Smartcard kendi içerisindeki MK'ya uygun aldığı EMM içeriğini bu *** ile çözer ve tekrar host tarafa iletir, bu noktadan sonra smartcard içerisindeki ECM'in içerdiği encrypted control word'ün deşifre edilmesi için kullanılan operational *** güncellenmiş olur. Yayıncı taraf bir şekilde kullanılan master ***'in üçüncü kişiler eline geçtiğini düşünürse kendi sisteminden bu master ***'i iptal eder ve bir daha bu master *** ile operational *** güncellenmesi yapılamaz. Operational *** güncellenemez ise ECM'in içerdiği şifrelenmiş kontrol kelimesi deşifre edilemeyeceğinden kodlanmış MPEG-2 yayının çözüm işlemi yapılamaz. Genel olarak temel bilgiler bu şekilde olup, şifreleme sistemlerine göre algoritmalar değişiklik göstermekte, ECM yüksek güvenlik maksadıyla daha değişiklik kullanılabilmekte (Nagravision MECM : Massive ECM kullanımı), operational ***'ler Nagravision için *** 00 ve *** 01 değerleri olabilmekte, Seca için 0C,0D..., Viaccess için 08,09,0A..., Conax için *** 20 ve *** 21 olabilmekte ve bunların uzunluğu kullanılan algoritmalara göre değişiklik arz edebilmektedir. Aynı şekilde master *** adları ve uzunlukları da kullanılan şifreleme sistemine göre değişiklik gösterir fakat arkadaki temel mantık daima yukarıda yazdığımız gibi aynıdır. Buradan popüler bazı konulara değinelim : Seca 2 sisteminde birinci versiyonundan farklı olarak adı sıkça geçen Hash Table kullanımı vardır, ve bu da direkt olarak encrypted control word deşifrelenmesinde operational ***'ler ile beraber kullanılır, yani bu noktada artık sadece operational *** ile encryted control word çözülemez, ECM içerisinde belirtilen ilgili hash table'ı da bilmek gerekir. Conax operational *** meselesinde ise öne master *** (Conax sistemi içerisinde Key10 adı ile geçmektedir.) konusu çıkmaktadır. Bir şekilde kart içerisinden master ***'i bulup çıkartan gruplar başkalarıyla paylaşmadığı için operational *** güncellenememekte ve bu yüzden yeni operational *** bilinmediği için ECM'in içerdiği şifrelenmiş kontrol kelimesi çözülememektedir. Şifreleme sistemlerinin temel mantığı bu şekilde olup, umarım arkadaşların kafasındaki bazı konular bu yazı ile aydınlanmış olur. Saygılarımla.