Mô tả thuật toán A5

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 50 - 54)

Thuật toán A5/1 bao gồm 3 thanh ghi dịch LSFR c độ dài khác nhau R1 = 19, R2 = 22, R3 = 23, các bit đầu tiên bên phải đều là các bit 0. Trên thanh ghi R1 các bit 13, 16, 17, 18 được gọi là các bit vị trí. Tương tự trên thanh ghi R2 là các bit 20, 21 và thanh ghi R3 là 7, 20, 21, 22. Các thanh ghi này đều được đặc trưng bởi các hàm f(x) như sau:

LSFR 1: f(x) = x19 + x5 + x2 + x + 1 LSFR 2: f(x) = x22 + x + 1

Nghiên cứu giải pháp an toàn tín hiệu thoại theo công nghệ GSM. Page 51

Hình 2.7: Cấu trúc của 3 thanh ghi dịch LSFR.

Trong các vị trí d = 11, d = 12, d = 13 từ trái qua hay các bit mang số thứ tự là 8 trong thanh ghi R1 và 10 ở thanh ghi R2, R3 được gọi là các “ta cloc ings”.

Các thanh ghi được “cloc ” theo luật sto /go đặc trưng bởi hàm Majority. Ta định nghĩa hàm Majority như sau:

f{a(t + 11), b(t + 12), c(t + 13)} = (y1, y2, y3)

Bảng 1: Giá trị của hàm Majority.

f (a(t + 11), b(t + 12), c(t + 13)) = (y1, y2, y3) a(t+11) b(t+12) c(t+13) (1, 1, 1) (1, 1, 0) (0, 1, 1) (1, 0, 1) 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 1 0 1 1 0 1 0 1 0

Mỗi thanh ghi dịch bit định thời ‘ta cloc ing’, bit 8 trong R1, bit 10 trong R2 và R3. Hàm Majority được tính toán với đầu vào là các bit định thời của mỗi thanh ghi và đầu ra là các bit dùng để ‘cloc ’ vào các bit vị trí ‘ta ossision’. Giá trị của hàm này tương ứng với các trường hợp khác nhau của bit định thời. Thanh ghi dịch chỉ được định thời hi bit ‘cloc ’ thỏa mãn với hàm. Hàm điều khiển

Nghiên cứu giải pháp an toàn tín hiệu thoại theo công nghệ GSM. Page 52 ‘cloc ’ này là hi tuyến trong thuật toán A5/1. Theo bảng trên, mỗi lần ‘cloc s’ thì sẽ có 2 hoặc là 3 thanh ghi dịch nhận được xung clock và dịch bit. Ví dụ, trong trường hợ các bit định thời trong 3 thanh ghi dịch lần lượt là (0, 0, 1), kết quả hàm ‘Majority’ = (1, 1, 0) c nghĩa là thanh ghi R1, R2 sẽ nhận được xung clock và dịch (go), R3 không nhận được xung clock và không dịch (stop).

Chuỗi tuần tự đầu ra:

U = {U(t)} = a(I1) + b(I2) + c(I3)

Trong đ , t = 0, 1... ... . . và Ii được xác định bởi tín hiệu đồng bộ ‘sto /go’, cloc điều khiển bởi hàm Majority.

10 7 0 21 20 22 10 0 21 20 18 17 16 13 8 0 f y1 y2 y3

Hình 2.8: Hàm Majority điều khiển clock.

Các bước hoạt động của A5/1 như sau:

 Input Kc: các thanh ghi được cloc nhưng hông sử dụng luật stop/go trong 64 chu kỳ xung. Trong mỗi chu kỳ đưa một bit từ chuỗi khóa Kc vào cả 3 thanh ghi, từ bit c ý nghĩ thấp nhất đến bit c ý nghĩ lớn nhất. Mỗi bit này được XOR với bit zero trong mỗi thanh ghi. Khi tới chu kỳ xung mới, các bit trong thanh ghi được dịch trái, và bit mới được đưa vào lặp lại qúa trình như trên. Thuật toán đạt trạng thái S64.

 Input Fn: tương tự như bước 2, nhưng với chu kỳ là 22 chu kỳ xung clock và 22 bit Fn được nạp vào thay vì Kc. Thuật toán đạt trạng thái S86

Nghiên cứu giải pháp an toàn tín hiệu thoại theo công nghệ GSM. Page 53  Mixing: các thanh ghi được clock 100 chu kỳ. Ở bước này ta dùng thuật toán

stop/go, các bit out ut được sinh ra ta bỏ qua và thuật toán đạt trạng thái S186  Output generation: các thanh ghi tiếp tục được clock 228 lần nữa vẫn dùng

thuật toán stop/go. Lúc này, chuỗi bit sinh ra được chia làm 2 phần, mỗi phần dài 114 bit. Phần đầu tiên được XOR với chuỗi Ci hertext thu được để giải mã, trong hi đ hần thứ 2 được XOR với chuỗi Plaintext để mã hóa chuỗi này. Chuỗi 228 bit được gọi là chuỗi mã h a “ci her stream”. Thuật toán đạt trạng thái S414 tại cuối bước này.

Các bước từ 1 đến 5 được lặp lại với mỗi khung dữ liệu mới. Mỗi lần như vậy thông số Fn thay đổi trong khi Kc vẫn được giữ nguyên cho đến lần nhận thực kế tiếp.

Nghiên cứu giải pháp an toàn tín hiệu thoại theo công nghệ GSM. Page 54 S186 Input COUNT S414 100 clocks 228 clocks S64 S86 S0 64 clocks 22 clocks

Input KC Mixing Output generation

Hình 2.9: Các trạng thái của thuật toán A5.

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 50 - 54)