Cấu hình wifi thông minh TI CC3000 hoạt động như thế nào?


25

Chip wifi ti cc3000 có chế độ cấu hình thông minh đặc biệt, điều này là để cho phép cấu hình ban đầu của các chi tiết truy cập wifi.

Trang wiki cc3000 cung cấp một số chi tiết về cách thức hoạt động của quy trình,

  1. Chip vào chế độ "nghe" cấu hình thông minh
  2. Ứng dụng trên điện thoại thông minh gửi gói "UDP" với cài đặt điểm truy cập
  3. Con chip thu thập dữ liệu này và tự cấu hình

Tôi nhận thức được việc bắt gói và phát hiện wifi, nhưng làm thế nào để chip "giải mã" gói thô để lấy bất kỳ thông tin nào ra khỏi nó? Tôi sử dụng wpa2-Personal với AES trên bộ định tuyến của mình.


3
Cảm ơn bạn đã bắt đầu cuộc trò chuyện về vấn đề này trên các diễn đàn TI - e2e.ti.com/support/low_power_rf/f/851/p/253463/983616.aspx - Tôi đã hỏi các câu hỏi tiếp theo ở đó. Và không được rất hạnh phúc với câu trả lời. Có vẻ như CC3000 phụ thuộc vào bảo mật thông qua che khuất nếu một người không sử dụng nó với khóa AES. Lưu ý rằng họ cho rằng bộ xử lý.wiki.ti.com/index.php / Trang được chỉ ra bởi @GregSadetsky đã lỗi thời nhưng không đi sâu vào những gì thay thế nó.
George Hawkins

Câu trả lời:


33

Vì @Colin đề cập đến lược đồ mà TI hiện đang sử dụng để giao tiếp SSID mạng và cụm từ khóa từ ứng dụng thiết lập đến thiết bị hỗ trợ CC3000 được gọi là Cấu hình thông minh.

Cấu hình thông minh phải truyền thông tin (SSID mạng và cụm từ khóa) từ mạng wifi an toàn đến thiết bị hỗ trợ CC3000 chưa thể giải mã lưu lượng trên mạng đó.

Ban đầu CC3000 không được kết nối với mạng (nhưng có thể giám sát lưu lượng), vì vậy ứng dụng Cấu hình thông minh không thể gửi thông tin trực tiếp đến thiết bị. Thay vào đó, nó gửi các gói UDP đến một máy hiện có khác trên mạng - điểm truy cập wifi (AP). Việc AP không quan tâm đến việc nhận chúng là không liên quan, điều quan trọng là các gói tin có thể nhìn thấy trên mạng.

Mặc dù CC3000 có thể giám sát lưu lượng mà nó không thể giải mã được, nhưng thậm chí không thể chắc chắn rằng một gói được mã hóa nhất định có chứa dữ liệu UDP. Vậy làm thế nào nó có thể chọn ra các gói UDP hoặc làm bất cứ điều gì hữu ích với chúng?

Về cơ bản Cấu hình thông minh mã hóa thông tin của nó không nằm trong nội dung của các gói mà nó đang gửi mà theo chiều dài của chúng. Mã hóa wifi ảnh hưởng đến độ dài của các gói, nhưng theo một cách nhất quán, tức là nó thêm L thêm byte vào kích thước của mỗi gói, trong đó L là một hằng số.

Ứng dụng Cấu hình thông minh mã hóa SSID và cụm từ khóa thành độ dài gói của chuỗi các gói UDP. CC3000 có thể thấy các gói được mã hóa và kích thước của chúng.

Trong nhiều môi trường, CC3000 sẽ có thể thấy lưu lượng truy cập từ nhiều mạng gần đó, vậy làm thế nào để có thể phát hiện ra lưu lượng liên quan? Ngay cả sau khi mã hóa, người ta vẫn có thể thấy các địa chỉ MAC của nguồn và đích của gói để người ta có thể nhóm lưu lượng theo cách này. Ngoài thông tin chính mà Cấu hình thông minh đang cố gửi, nó cũng gửi các mẫu lặp lại độ dài gói thường xuyên, do đó CC3000 nhóm lưu lượng như mô tả và sau đó tìm ra các mẫu như vậy, khi nó tìm thấy chúng trong lưu lượng của một mẫu nhất định cặp nguồn và đích sau đó tập trung vào để khôi phục thông tin chính.

Rõ ràng còn có nhiều hơn thế, ví dụ, ngay cả khi CC3000 đã tìm thấy cặp nguồn và đích, tương ứng với AP và máy chạy ứng dụng Cấu hình thông minh, làm thế nào để lọc các gói Cấu hình thông minh khỏi lưu lượng không liên quan khác đi giữa AP và máy? Tôi đã viết tất cả những điều này lên trong một loạt các bài đăng trên blog.

Chi tiết kỹ thuật nhất bao gồm trung tâm của Cấu hình thông minh - cách mã hóa SSID và cụm từ khóa và truyền chúng sao cho CC3000 có thể nhận chúng:

http://depletionregion.blogspot.ch/2013/10/cc3000-smart-config-transmmit-ssid.html

Sau đó, tôi có một bài đăng ít kỹ thuật hơn, nhiều ý kiến ​​hơn về lý do tại sao bạn nên luôn sử dụng khóa AES với Cấu hình thông minh:

http://depletionregion.blogspot.ch/2013/10/cc3000-smart-config-and-aes.html

Có một bit kỹ thuật ở giữa mô tả ngắn gọn cách bạn định cấu hình một mật mã trong Java với phép chuyển đổi AES cần thiết để hoạt động như CC3000 mong đợi.

Và cuối cùng là bằng chứng của pudding - Tôi đã viết một ứng dụng để mô phỏng hành vi liên quan đến Cấu hình thông minh của CC3000, tức là nó có thể khôi phục SSID và cụm từ khóa được truyền bởi bất kỳ ứng dụng Cấu hình thông minh nào mà không cần phải giải mã lưu lượng mạng có liên quan. Bạn có thể tìm nơi tải nguồn và tất cả các chi tiết ở đây:

http://depletionregion.blogspot.ch/2013/10/cc3000-smart-config-and-keyphrase.html

Điều này sẽ cho phép một người kiểm tra hành vi của bất kỳ ứng dụng Cấu hình thông minh nào mà người ta viết, tức là người ta có thể thấy CC3000 có thể tái tạo lại từ dữ liệu được truyền bởi ứng dụng.

Tôi cũng có thêm một vài bài viết liên quan đến Cấu hình thông minh / CC3000:

http://depletionregion.blogspot.ch/search/label/CC3000

Đối với một số thông tin cơ bản, cũng có thể thú vị khi đọc qua các chủ đề này trên diễn đàn TI có liên quan đến CC3000.

Cái đầu tiên bao gồm chính Cấu hình thông minh:

http://e2e.ti.com/support/low_power_rf/f/851/t/253463.aspx

Và một trên mDNS, cơ chế mà ứng dụng Cấu hình thông minh phát hiện ra rằng thiết bị hỗ trợ CC3000 đã tham gia mạng:

http://e2e.ti.com/support/low_power_rf/f/851/p/290584/1020839.aspx

Trong cả hai luồng, một số thông điệp ban đầu có vẻ không liên quan lắm nhưng cũng có một số thông tin thú vị được trộn lẫn. Nhưng cũng có rất nhiều thông tin không chính xác vì vậy đừng cho rằng tất cả đều là thông tin chính xác, thậm chí là thông tin từ nhân viên TI hoặc từ tôi (cuối cùng tôi đã học được rất nhiều nhưng bắt đầu với một số giả định / niềm tin không chính xác).

Bằng sáng chế đã được đề cập một vài lần, tuy nhiên tôi không thể tìm thấy bất kỳ bằng chứng nào cho thấy có bằng sáng chế đang chờ xử lý hoặc được cấp trên công nghệ này.


1
Xem câu trả lời này , với các bình luận liên quan, cho một câu hỏi tôi đã hỏi về trao đổi ngăn xếp Cryto - nó dường như thể hiện nghệ thuật rõ ràng trước cho ý tưởng mã hóa độ dài gói ở trung tâm của Cấu hình thông minh. Điều này phải liên quan đến việc bất kỳ phần nào của quy trình có thể được cấp bằng sáng chế.
George Hawkins

3

NB Như đã lưu ý trong các nhận xét cho câu trả lời này và trong các câu trả lời khác, câu trả lời dưới đây không phản ánh quy trình hiện tại. Để lại điều này cho các ghi chép lịch sử.


Có vẻ như CC3000 thực sự đang nghe (ở "chế độ lăng nhăng") trên tất cả các kênh wifi cho yêu cầu thăm dò AP, SSID của AP đã được thăm dò (và giả) chứa thông tin mà CC3000 yêu cầu tự cấu hình để kết nối với "đúng" AP thông qua đó nó sẽ kết nối với Internet.

Sau khi tìm kiếm một chút, tôi thấy mô tả về cấu hình lần đầu tiên của thiết bị sẽ làm cho nó rõ ràng:

http: // Processors.wiki.ti.com/index.php/CC3000_First_Time_Configuration

Bit thú vị nhất:

Một thiết bị như điện thoại di động hoặc máy tính bảng được sử dụng để thực hiện Cấu hình lần đầu tiên cần được cấu hình để kết nối với AP với SSID được chế tạo đặc biệt. SSID này bao gồm tên của SSID mà chúng tôi muốn CC3000 kết nối, cũng như thông tin về các tùy chọn bảo mật như loại bảo mật và khóa.


2
Điểm nhỏ - CC3000 luôn sử dụng chế độ màn hình thay vì chế độ lăng nhăng. Cách tiếp cận Cấu hình lần đầu tiên được mô tả trong câu trả lời này và trên trang TI được liên kết với, đã được thay thế bởi một cái gọi là Cấu hình thông minh, được trình bày trong câu trả lời của tôi .
George Hawkins

2
Câu trả lời này không liên quan đến phương pháp SmartConfig mà là quy trình cũ không còn được sử dụng bởi các thiết bị hiện tại.
Julian Overmann

2

Nhìn vào này trang cung cấp thông tin.

AP không tham gia vào quá trình này. CC3000 đang lắng nghe các gói UDP từ điện thoại di động hoặc thiết bị khác. Giao tiếp này được mã hóa bằng AES, cả hai thiết bị đều có nó. Điện thoại di động gửi thông tin về khóa WPA2 trong các gói này. CC3000 biết khóa AES được sử dụng bởi điện thoại di động, giải mã dữ liệu và kết nối với bộ định tuyến.


1
hi, Từ trang "thiết bị được sử dụng để định cấu hình (điện thoại thông minh, máy tính bảng hoặc PC) vẫn được kết nối với mạng gia đình của người dùng trong quá trình định cấu hình (trái ngược với các phương pháp khác yêu cầu ngắt kết nối)." Vì tôi không ngắt kết nối hiện tại của mình, bất kỳ gói tin nào được gửi sẽ được mã hóa đến wpa2, bạn có thể giải thích thêm về điều này không?
srinathhs

@srinathhs: Tôi không thể giải thích sự khác biệt. Đăng trên diễn đàn E2E, họ sẽ trả lời.
Gustavo Litovsky

2

Câu trả lời của @Greg Sadetsky (mô tả "Cấu hình lần đầu tiên") tóm tắt quá trình cơ bản tốt. Nhưng nó đã được tiết lộ trong cuộc thảo luận trên diễn đàn TI rằng CC3000 đã thay đổi quy trình mà cấu hình tự động này được thực hiện. Quá trình mới được gọi là "smartconfig" thay vì Cấu hình lần đầu tiên và TI dường như đang chuẩn bị một ứng dụng bằng sáng chế cho công nghệ. Nó dường như sử dụng một sơ đồ tương tự nơi các yêu cầu "thăm dò" Wi-Fi đặc biệt được gửi, mã hóa khéo léo thông tin đăng nhập mạng cho CC3000.

Nếu bạn chọn không sử dụng khóa mã hóa AES cho cấu hình tự động, thuật toán smartconfig sử dụng phương pháp không có giấy tờ để làm xáo trộn SSID của điểm truy cập và khóa bảo mật. Điều này vốn không an toàn vì nếu bất cứ ai học thuật toán obfuscation, thông qua kỹ thuật đảo ngược hoặc các phương tiện khác, bảo mật mạng không dây bị nguy hiểm. Khi đơn đăng ký bằng sáng chế được nộp, đó là kiến ​​thức về miền công cộng và bạn phải sử dụng khóa mã hóa AES với chế độ cấu hình tự động CC3000 để được bảo mật.

Kể từ tháng 9 năm 2013, đơn xin cấp bằng sáng chế đã không được nộp, dựa trên đánh giá các đơn xin cấp bằng sáng chế 2012-2013 của Texas Cụ ( Liên kết Tìm kiếm Bằng sáng chế của Google: Công cụ Texas, được sắp xếp theo ngày nộp đơn gần đây nhất ).

TI đã thừa nhận sự không an toàn của chế độ cấu hình không phải AES và cho biết họ sẽ khuyên bạn nên sử dụng AES và biến nó thành mặc định trong tương lai .


Xin chào Colin, bạn đề cập rằng kể từ tháng 9 năm 2013, bằng sáng chế chưa được nộp. Bạn có thể cung cấp một nguồn cho điều đó? Cảm ơn.
Alexandros Marinos

@Alexandros Marinos - Tôi đã thực hiện tìm kiếm bằng sáng chế trực tuyến cho các ứng dụng bằng sáng chế được nộp bởi Texas Cụ và tôi không tìm thấy bất kỳ bằng sáng chế nào có vẻ liên quan đến kết nối với mạng LAN không dây. Tôi đã nhìn lại năm ngoái và không thấy bất cứ điều gì liên quan.
Colin D Bennett

1
Cảm ơn vì sự trả lời. Ở Mỹ và Anh, các bằng sáng chế được giữ bí mật trong 18 tháng không may. Bạn có thể thấy điều này bằng cách thực hiện tìm kiếm bằng sáng chế trên Google cho các ứng dụng bằng sáng chế được nộp trong 18 tháng qua. Vì vậy, TI có thể đã nộp đơn xin cấp bằng sáng chế về vấn đề này, nhưng ứng dụng này chưa đủ tuổi để được công bố. Không thể thấy bằng sáng chế này thực sự gây khó chịu vì công ty của tôi cũng đã tìm ra cách để đạt được điều tương tự nhưng chúng tôi không chắc chắn nếu nó vi phạm ứng dụng bằng sáng chế của TI.
Alexandros Marinos
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.