Cách dò tìm Ki

Một phần của tài liệu Nghiên cứu giải pháp an toàn tín hiệu thoại theo công nghệ GSM (Trang 61 - 63)

Dò tìm Ki trên lý thuyết:

Thuật toán COMP128 là sự gộp chung giữa hai thuật toán A3 và A8, thuật toán này cho phép tạo ra hai mã là: Mã Kc 64-bit và mã SRES 32-bit từ một số ngẫu nhiên RAND 128 bit và số 128-bit Ki.

Nghiên cứu giải pháp an toàn tín hiệu thoại theo công nghệ GSM. Page 62 Ở đây ta thấy:

 Ki là số chưa biết thông tin.  RAND là số ngẫu nhiên.

 Kc là thông tin Output khỏi SIM, có thể xác định được giá trị.

 SRES tương tự, là thông tin Output khỏi SIM, có thể xác định được giá trị. Như vậy hoàn toàn có thể đặt ra vấn đề là có thể tồn tại một hàm xác định Ki dựa trên ba thông số RAND, Kc và SRES, Ki=f(RAND, Kc, SRES).

Như vậy ta có thể coi Ki~ f(RAND).

Nếu lựa chọn theo thứ tự (chứ không phải là ngẫu nhiên) một lọat các số RAND 128 bit, liệu có thể suy luận được ra chính xác giá trị của i được không?

Câu trả lời là được nếu tồn tại một cách tìm Ki từ Ki~ f (RAND) sau một lọat các phép thử dạng vét cạn (Brute-Force attack). Số lượng phép thử vét cạn với thời gian tương ứng như trong bảng sau:

Bảng 2: Thống kê thuật toán vét cạn với các giá trị tương ứng Độ dài khóa

bits

Số lần phải thực hiện tương ứng:

Thời gian để kiểm tra tòan bộ các lần thực hiện tương ứng 32 232 1. 19 hours 40 240 12, 7 days 56 256 2 291 years 64 264 584 542 years 128 2128 10, 8 * 1024 years

(Theo: GSM Security and Encryption, David Musgrave).

Như vậy, nếu theo lý thuyết thì thời gian để dò tìm được Ki sẽ mất là 10.8*1024 years, một con số cực kỳ lớn và không khả thi.

Dò Ki trong thực tế:

Trong thực tế để dò tìm i người ta hông dùng cách như vậy mà dựa trên một số lỗ hổng của thuật toán Comp128. Lỗ hổng này cho phép dò tìm Ki với giá trị nhỏ hơn 2128 và như vậy sẽ cho phép thực hiện Ki trong khỏang thời gian có thể chấp nhận được.

Tháng 4 năm1998, hai nhà nghiên cứu Wagner/Goldberg đã lần đầu tiên công bố hương há dò tìm i dựa trên lỗ hổng của Com 128 trên điểm yếu của

Nghiên cứu giải pháp an toàn tín hiệu thoại theo công nghệ GSM. Page 63 cơ chế nén trong lần nén thứ hai, hương há này được gọi phổ thông là Narrow Pipe.

Hai ông đã hát hiện thấy rằng, có thể chia nhỏ nhóm giá trị đầu vào RAND trong quá trình dò tìm Ki, Có thể mô tả kỹ hơn là c thể chia nhỏ quá trình dò tìm Ki 128 bit, 16 byte thành bốn Phase. Mỗi Phase chỉ dò tìm 32 bit hay 8 byte của giá trị Ki. Và như vậy thời gian hòan tất cho việc dò Ki sẽ theo kiểu 2R này sẽ giảm số RAND xuống khoảng 217 lần.

Trên cơ sở phát hiện về lỗ hổng này các nhà nghiên cứu đã liên tục công bố và thiết kế các chương trình hai thác lỗ hổng. Một người có tên là Dejan Kaljevic đã viết một công cụ khá nổi tiếng là Sim Scan sử dụng các cơ chế vét cạn 2R, 3R, 4R and 5R để c được các giá trị byte cần thiết của Ki, trong vòng giá trị trung bình là 18, 000.

Thực tế với công cụ Sim scan, người ta thống ê được, nó có khả năng tìm thấy Ki trong khoảng giữa 7000 và 35, 000 giá trị RAND tức là khoảng 213 – 215 lần thử.

Với số lượng thử ngắn như vậy, thời gian để dò tìm Ki có thể diễn tra trong vòng một giờ, và thời gian này phụ thuộc vào tốc độ của SIM, một số đầu đọc SIM có thể ‘overcloc ’ thẻ SIM tới một tần số làm việc cao khoảng 10MHz giú đẩy nhanh quá trình dò tìm i hơn. Với tốc độ 6MHz có thể thử 7 giá trị RAND trong vòng một giây, và do đ thời gian dò tìm Ki giảm xuống còn vài tiếng đồng hồ.

Một phần của tài liệu Nghiên cứu giải pháp an toàn tín hiệu thoại theo công nghệ GSM (Trang 61 - 63)