@Colin TI o düzeni bahseder gibi şimdi bir CC3000 cihazı Akıllı Yapılandırma denir etkin bir kurulum uygulamasından bir ağ SSID ve keyphrase iletişim kurmak için kullanırlar.
Smart Config, güvenli bir wifi ağından henüz bu ağdaki trafiğin şifresini çözemeyen bir CC3000 etkin cihaza bilgi (ağ SSID ve anahtar kelime) iletmelidir.
Başlangıçta CC3000 ağa bağlı değildir (ancak trafiği izleyebilir ), bu nedenle Smart Config uygulaması bilgilerini doğrudan cihaza gönderemez. Bunun yerine UDP paketlerini ağdaki mevcut başka bir makineye - wifi erişim noktası (AP) gönderir. AP'nin onları almakla ilgilenmediği, paketlerin ağda görünür olması önemlidir.
CC3000 trafiği izleyebildiği halde şifresini çözemez, verilen şifreli bir paketin UDP verisi içerdiğinden emin bile olamaz. Peki UDP paketlerini nasıl seçebilir ya da onlarla yararlı bir şeyler yapabilir mi?
Temelde Smart Config, bilgilerini gönderdiği paketlerin içeriğinde değil, uzunluklarında kodlar. Wifi şifrelemesi paketlerin uzunluğunu etkiler, ancak tutarlı bir şekilde, yani L'nin sabit olduğu her paketin boyutuna L ek bayt ekler.
Smart Config uygulaması, SSID'yi ve anahtar kelimeyi bir dizi UDP paketinin paket uzunluklarına kodlar. CC3000 şifreli paketleri ve boyutlarını görebilir.
Birçok ortamda CC3000, yakındaki birden çok ağdan gelen trafiği görebilecek ve bu nedenle ilgili trafiği nasıl belirleyebilir? Şifrelemeden sonra bile bir paketin kaynağının ve hedefinin MAC adreslerini görebilir, böylece bir kişi trafiği bu şekilde gruplayabilir. Smart Config'in göndermeye çalıştığı birincil bilgilere ek olarak, paket uzunluklarının düzenli olarak yinelenen biçimlerini de gönderir, böylece CC3000 trafiği açıklandığı şekilde gruplandırır ve belirli bir trafiği bulduğunda bu tür kalıpları arar kaynak ve hedef çifti, daha sonra birincil bilgiyi kurtarmak için odaklanır.
Açıkçası bundan daha fazlası var, örneğin CC3000, AP ve Smart Config uygulamasını çalıştıran makineye karşılık gelen kaynak ve hedef çiftini bulduktan sonra bile, Smart Config paketlerini, ilgili olmayan diğer trafiğe göre nasıl filtrelendiriyor? AP ve makine? Bunları bir dizi blog yazısı ile yazdım.
Teknik olarak en ayrıntılı olanı Smart Config'in kalbini kapsıyor - SSID ve anahtar ifadeyi nasıl kodladığı ve CC3000'in onları alabileceği şekilde ilettiği:
http://depletionregion.blogspot.ch/2013/10/cc3000-smart-config-transmitting-ssid.html
O zaman daha az teknik olan bir yazıya sahibim, neden Akıllı Konfigürasyon ile her zaman bir AES anahtarı kullanmanız gerektiğine dair daha fazla fikir:
http://depletionregion.blogspot.ch/2013/10/cc3000-smart-config-and-aes.html
Ortada, CC3000'in beklediği gibi çalışması için gereken gerekli AES dönüşümüyle Java'daki bir şifreyi nasıl yapılandıracağınızı kısaca anlatan teknik bir bit var.
Ve son olarak pudingin ispatı - CC3000'in Smart Config ile ilgili davranışını taklit etmek için bir uygulama yazdım, yani ilgili ağ trafiğini deşifre etmeye gerek kalmadan herhangi bir Smart Config uygulaması tarafından iletilen SSID ve anahtar kelimeyi kurtarabilir. Kaynak ve tüm detayları nereden indirebileceğinizi burada bulabilirsiniz:
http://depletionregion.blogspot.ch/2013/10/cc3000-smart-config-and-keyphrase.html
Bu, birinin yazdığı herhangi bir Akıllı Yapılandırma uygulamasının davranışını test etmesini sağlamalıdır, yani bir CC3000'in uygulama tarafından iletilen verilerden neyi yeniden yapabileceğini görebilir.
Ayrıca birkaç tane daha Smart Config / CC3000 ile ilgili mesajım var:
http://depletionregion.blogspot.ch/search/label/CC3000
Bazı arkaplan bilgileri için CC3000 ile ilgili TI forumunda bu başlıkları okumak da ilginç olabilir.
Smart Config'in kendisini kapsayan ilk kişi:
http://e2e.ti.com/support/low_power_rf/f/851/t/253463.aspx
Bir tane de mDNS'de, bir Smart Config uygulamasının bir CC3000 özellikli cihazın ağa katıldığını tespit ettiği mekanizma:
http://e2e.ti.com/support/low_power_rf/f/851/p/290584/1020839.aspx
Her iki başlıkta da bazı ilk mesajlar o kadar uygun görünmeyebilir, fakat aynı zamanda karışık bazı ilginç bilgiler de vardır. Fakat aynı zamanda birçok yanlış bilgi de var, bu yüzden bunların hepsinin doğru olduğunu varsaymayın, hatta TI çalışanlarından veya benden gelen bilgiler bile (sonunda çok şey öğrendim ama bazı yanlış varsayımlar / inançlar ile başladım).
Patentlerden birkaç kez bahsedilmiştir, ancak bu teknolojide bekleyen veya verilen patentlerin olduğuna dair herhangi bir kanıt bulamıyorum.