TÍNH CẤP THIẾT CỦA LUẬN ÁN
Sự bùng nổ của điện thoại thông minh đã thúc đẩy việc khai thác mạng di động cho các ứng dụng giá trị gia tăng như SMS và thanh toán trực tuyến Tuy nhiên, cùng với tiện ích này là các lỗ hổng bảo mật, đòi hỏi phải bảo vệ thông tin thoại và dữ liệu người dùng trong các giao dịch Việc ngăn chặn nguy cơ nghe lén, lộ thông tin và cài đặt phần mềm gián điệp là rất cần thiết, đặc biệt trong lĩnh vực thương mại và quốc phòng Do đó, bảo mật thông tin trong mạng di động đang trở thành một vấn đề cấp bách và quan trọng.
Mặc dù mạng viễn thông di động GSM đã triển khai các biện pháp bảo mật thông qua sinh khóa, xác thực và mã hóa với các thuật toán tiêu chuẩn (A8, A3, A5) từ thiết bị đầu cuối đến trạm gốc, nhưng thông tin thoại trong mạng lõi vẫn có thể bị lộ Với các phương thức tấn công tinh vi từ đối tượng thù địch, các giải pháp bảo mật hiện tại không đủ mạnh để bảo vệ thông tin thoại và dữ liệu trong các giao dịch quan trọng, đặc biệt trong lĩnh vực quốc phòng và an ninh Điều này làm nổi bật tính cấp thiết của Luận án trong việc tìm kiếm giải pháp bảo mật hiệu quả hơn.
Nếu toàn bộ hạ tầng mạng viễn thông di động được phủ sóng 3G/LTE và sử dụng mạng truyền dẫn IP, việc bảo mật thông tin thoại và dữ liệu từ đầu cuối đến đầu cuối sẽ trở nên thuận lợi hơn Tuy nhiên, thực tế cho thấy nhiều khu vực, đặc biệt là ở Việt Nam, vẫn chưa được phủ sóng 3G/LTE đầy đủ, dẫn đến những thách thức trong bảo mật thông tin trong các giao dịch thương mại.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dây phi tuyến lồng ghép để bảo mật dữ liệu là một yêu cầu cấp thiết, đặc biệt trong quốc phòng và an ninh Mặc dù mạng truyền dẫn PSTN, mạng vệ tinh, sóng ngắn và sóng cực ngắn HF/VHF/UHF có băng thông hạn chế, nhưng chúng lại có tính cơ động cao và độ bảo mật tốt Do đó, cần phát triển các giải pháp và kỹ thuật để kết nối liên thông, bảo mật thông tin thoại và dữ liệu cho nhiều môi trường truyền dẫn, phục vụ cho mục đích quốc phòng an ninh và một số giao dịch thương mại đặc biệt Đây chính là mục tiêu mà luận án cần nghiên cứu và giải quyết.
Thuật toán sinh khóa, xác thực và mã hóa hiện tại không đủ mạnh để đảm bảo an toàn cho thông tin giao dịch thương mại và an ninh quốc gia Do đó, cần nghiên cứu và phát triển các thuật toán bảo mật dữ liệu và tín hiệu thoại với độ mạnh cao, đồng thời vẫn đảm bảo tính khả thi khi thực thi trên các thiết bị có tài nguyên hạn chế Đây là một thách thức lớn, yêu cầu cân bằng giữa độ mật và độ phức tạp tính toán trong quá trình triển khai.
Mặc dù nhiều nghiên cứu và sản phẩm bảo mật thông tin thoại từ các hãng như Crypto AG, Motorola và GSMK CryptoPhone đã được phát triển, nhưng chúng chủ yếu chỉ tập trung vào thiết bị đầu cuối và công nghệ truyền dữ liệu qua các kênh như 3G/LTE Việc bảo mật thông tin thoại và dữ liệu từ các thiết bị khác nhau, cũng như truyền dẫn qua nhiều mạng công nghệ khác nhau vẫn chưa được giải quyết triệt để Do đó, nghiên cứu về bảo mật thông tin thoại, đặc biệt là mã hóa dữ liệu tín hiệu thoại trên các thiết bị đầu cuối và mạng liên thông, vẫn là một lĩnh vực mở với nhiều cách tiếp cận khác nhau Xuất phát từ những phân tích này, nghiên cứu sinh đã quyết định chọn đề tài “Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số giả ngẫu nhiên”.
Bài viết này tập trung vào việc xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM, đồng thời áp dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép để bảo mật dữ liệu Việc phát triển các giải pháp bảo mật hiệu quả trong truyền thông di động là rất quan trọng nhằm đảm bảo an toàn thông tin và bảo vệ dữ liệu cá nhân trong môi trường mạng hiện đại.
MỤC TIÊU, ĐỐI TƯỢNG, PHẠM VI VÀ PHƯƠNG PHÁP NGHIÊN CỨU
Mục tiêu nghiên cứu
Có 03 mục tiêu chính của luận án, đó là:
Nghiên cứu và đề xuất giải pháp truyền dữ liệu thoại mã hóa hiệu quả trên các thiết bị đầu cuối qua kênh thoại analog trong các mạng viễn thông khác nhau Mục tiêu là thực hiện mã hóa bảo mật thông tin thoại số từ thiết bị đầu cuối đến đầu cuối trong các dịch vụ thoại và dữ liệu mạng di động 2G/3G/LTE, cũng như từ mạng di động đến máy điện thoại đầu cuối PSTN Giải pháp đảm bảo chất lượng âm thanh sau khi giải mã đạt mức chấp nhận được, đồng thời phổ tần tín hiệu thoại sau mã hóa tương tự như nhiễu trắng.
Lựa chọn và phát triển thuật toán cần đảm bảo độ tin cậy và tính khả thi trong việc thực hiện thời gian thực trên các thiết bị có tài nguyên tính toán hạn chế, đồng thời vẫn phải duy trì độ phức tạp tính toán để đạt được mức độ mật cao nhất.
Sử dụng Kit thực thi mô tả thuật toán để chứng minh độ an toàn và bảo mật của thuật toán thông qua các đặc tính như tương quan, đồng sắc xuất và phân bố nhọn của dãy giả ngẫu nhiên Thực nghiệm này liên quan đến việc xử lý nén tín hiệu tiếng nói, mã hóa và điều chế để truyền dữ liệu đã được mã hóa qua kênh tiếng nói mạng GSM, mà không cần thay đổi cấu hình thiết bị đầu cuối hay dịch vụ mạng viễn thông hiện tại, đảm bảo tính dịch vụ liên mạng Các kết quả nghiên cứu sẽ được ghép nối và đóng gói thành sản phẩm hoàn chỉnh.
Đối tượng nghiên cứu
Đối tượngnghiên cứu của Luận án này giới hạn ở các giải pháp truyền dữ liệu số tín hiệu thoại bảo mật qua kênh truyền analog bao gồm:
Nghiên cứu tổng quan về các mạng viễn thông di động tập trung vào cơ chế đăng nhập, xác thực và bảo mật Bài viết cũng đề cập đến các thuật toán mã hóa tiếng nói (Vocoder) và đề xuất lựa chọn một thuật toán phù hợp nhằm nâng cao hiệu quả bảo mật trong truyền thông di động.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng, nhằm đảm bảo an toàn cho dữ liệu Thuật toán này cần được thiết kế để hoạt động hiệu quả trong các kênh truyền băng hẹp, với yêu cầu về độ trễ thấp và khả năng tính toán thời gian thực Việc áp dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép sẽ giúp cải thiện tính bảo mật của dữ liệu trong quá trình truyền tải.
Kỹ thuật xử lý tín hiệu thoại và mô hình mạng là những yếu tố quan trọng trong việc truyền dẫn tín hiệu thoại qua các mạng và liên mạng Bài viết nghiên cứu các thông số kỹ thuật và đặc trưng cơ bản của các thành phần mạng, đồng thời phân tích một số phương pháp điều chế nhằm tạo ra tín hiệu có phổ tần và đặc tính tương đồng với giọng nói con người Điều này giúp tối ưu hóa việc truyền tín hiệu qua kênh thoại trong mạng GSM và liên mạng GSM/PSTN/HF/VHF.
(iii) Phân tích, xây dựng và sử dụng dãy tạo số tựa ngẫu nhiên phi tuyến 2 chiều theo kiểu lồng ghép để mã hóa dữ liệu:
Nghiên cứu về các phương pháp sinh dãy lồng ghép, bao gồm lồng ghép phi tuyến, nhằm lựa chọn một phương pháp lồng ghép phi tuyến đa chiều Mục tiêu là tạo ra dãy giả ngẫu nhiên với các thuộc tính như độ dài lớn, độ phức tạp cao, hàm tương quan tốt và khả năng thực thi nhanh trên các vi xử lý có tài nguyên hạn chế.
Tổng hợp các kết quả nghiên cứu và mô phỏng, chúng tôi đã phát triển một sản phẩm bảo mật thoại hoàn chỉnh Sản phẩm này có thể được trình diễn qua các kênh Voice trên thiết bị điện thoại thông thường, cho phép kiểm chứng chất lượng âm thanh sau quá trình giải mã Bên cạnh đó, chất lượng mã cũng sẽ được phân tích trên máy phân tích phổ sau khi mã hóa, đảm bảo tính chính xác và hiệu quả của giải pháp bảo mật thoại.
Nghiên cứu về các phương pháp nén và bộ mã tín hiệu tiếng nói là rất quan trọng trong việc tối ưu hóa chất lượng truyền dẫn Bên cạnh đó, việc tìm hiểu các đặc điểm cơ bản của mạng truyền dẫn thoại, đặc biệt là mạng PSTN và GSM, giúp nâng cao hiệu suất truyền thông Cuối cùng, nghiên cứu về phương pháp điều chế và giải điều chế dữ liệu cũng đóng vai trò quan trọng trong việc cải thiện khả năng truyền tải thông tin.
Nghiên cứu mô hình toán học nhằm xây dựng dãy PN phi tuyến với cấu trúc lồng ghép hai chiều Đánh giá đặc tính của mã phi tuyến lồng ghép dựa trên các tiêu chí như hàm tương quan, kích thước tập hợp, khả năng ngẫu nhiên hóa, tốc độ sinh, và mã hóa dữ liệu trên vi xử lý có tài nguyên hạn chế.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong lĩnh vực viễn thông Thuật toán này không chỉ đảm bảo tính hiệu quả trong việc truyền tải thông tin mà còn tăng cường bảo mật dữ liệu Bên cạnh đó, việc ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép giúp cải thiện khả năng bảo vệ thông tin trong quá trình truyền Sự kết hợp này mang lại một giải pháp tối ưu cho việc bảo mật dữ liệu trong mạng GSM.
Phương pháp nghiên cứu được thực hiện dựa trên tài liệu và công trình nghiên cứu đã công bố, cùng với việc tổng hợp và phân tích kết quả về mạng viễn thông di động tại Việt Nam Nghiên cứu tập trung vào đặc tuyến tiếng nói và các giải pháp bảo mật thông tin thoại hiện nay, so sánh với hạ tầng viễn thông và yêu cầu bảo mật trong nước và quốc tế Bước đầu, sử dụng các công cụ toán học và lập trình mô phỏng MATLAB trên PC để xây dựng bộ nén và điều chế tín hiệu tiếng nói Tiếp theo, chuyển đổi kết quả mô phỏng sang thực thi trên chip vi xử lý DSP hoặc ARM để nén, mã hóa và điều chế tín hiệu tiếng nói cho các mạng truyền dẫn Các kết quả nghiên cứu được kiểm chứng qua mô phỏng và sản phẩm thử nghiệm thực tế, mang lại ý nghĩa khoa học và thực tiễn cho lĩnh vực này.
Luận án đã đề xuất một phương pháp mới để điều chế dữ liệu tựa ngẫu nhiên, sử dụng dữ liệu thoại sau nén với dãy phi tuyến lồng ghép 2 chiều mã hóa, nhằm chuyển đổi thành tín hiệu tương tự Kỹ thuật này tạo ra cấu trúc phổ tần gần giống với phổ tần của tiếng nói, giúp tránh bị phát hiện và nhận dạng bởi các bộ phân tích tiếng nói trên thiết bị đầu cuối cũng như trong hệ thống mạng viễn thông.
Nghiên cứu đã phát triển một phương pháp và sản phẩm hoàn chỉnh để bảo mật thông tin thoại bằng kỹ thuật số, được ứng dụng trong ngành Cơ yếu của Việt Nam Hướng phát triển tiếp theo là xây dựng giải pháp truyền dữ liệu mật dưới dạng tín hiệu giả thoại, có thể truyền qua các kênh như PSTN, HF, Satellite và các mạng IP.
Bài viết này trình bày về việc xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM, cùng với ứng dụng của thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép để bảo mật dữ liệu Việc phát triển các giải pháp bảo mật hiệu quả trong truyền thông di động là rất quan trọng, nhằm đảm bảo an toàn cho thông tin trong quá trình truyền tải Các thuật toán này không chỉ nâng cao tính bảo mật mà còn cải thiện hiệu suất truyền dữ liệu qua mạng GSM.
CÁC KẾT QUẢ NGHIÊN CỨU ĐÃ ĐẠT ĐƯỢC
Các đóng góp khoa học của luận án bao gồm:
Đề xuất một kiến trúc lồng ghép mới cho m-dãy lồng ghép nhằm phát triển phương pháp sinh dãy lồng ghép và lồng ghép phi tuyến Bài báo [1b] trình bày chi tiết về phương pháp này, đồng thời xây dựng giải pháp bảo mật dữ liệu thoại thông qua việc sử dụng thuật toán sinh số giả ngẫu nhiên dựa trên dãy phi tuyến lồng ghép kiểu mới.
(ii) Đề xuất thuật toán cải tiến tốc độ nén, nâng cao chất lượng mã thoại MELPe (có công bố các nội dung liên quan trong bài báo [2b]);
Đề xuất áp dụng kỹ thuật điều chế và giải điều chế nhằm truyền tải dữ liệu thoại đã được mã hóa bảo mật qua các thiết bị đầu cuối và mạng truyền dẫn Bài viết cũng đưa ra giải pháp truyền dữ liệu thoại bảo mật qua kênh thoại GSM cùng với các kênh hữu tuyến và vô tuyến băng hẹp khác.
Tùy biến rút gòn cho phép triển khai các chương trình nén và điều chế tín hiệu số mô phỏng trên máy tính vào Vi xử lý STM32 Điều này giúp duy trì đầy đủ các tính năng như trên máy tính, đồng thời đảm bảo khả năng xử lý thời gian thực, và đã được phát triển thành sản phẩm hoàn chỉnh.
BỐ CỤC CỦA LUẬN ÁN
Cấu trúc của luận án gồm có ba chương với các nội dung được tóm tắt như sau:
Chương 1 cung cấp cái nhìn tổng quan về mạng viễn thông di động GSM, tập trung vào các khía cạnh an toàn và bảo mật, cùng với những điểm yếu dễ bị tấn công Phân tích chi tiết về vấn đề xác thực và bảo mật trong mạng GSM được thực hiện, đồng thời giới thiệu các đặc điểm tín hiệu thoại cơ bản và mô hình tạo tiếng nói Bài viết cũng đề cập đến quy trình mã hóa, nén, và truyền tín hiệu thoại qua các mạng khác nhau Cuối cùng, chương này đưa ra định hướng giải quyết cho việc truyền dữ liệu thoại mã hóa hiệu quả trên các thiết bị đầu cuối qua các kênh thoại analog, đảm bảo tính bảo mật cao cho thông tin thoại thời gian thực mà không cần thay đổi cấu hình thiết bị hoặc dịch vụ mạng viễn thông hiện tại, đồng thời duy trì tính liên mạng.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng nhằm đảm bảo an toàn cho thông tin Ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép giúp tăng cường bảo mật dữ liệu Việc phát triển những giải pháp này không chỉ nâng cao hiệu quả truyền tải mà còn bảo vệ thông tin khỏi các mối đe dọa tiềm ẩn.
Chương 2 đề xuất thuật toán nén và giải pháp bảo mật cho việc truyền dữ liệu qua kênh thoại GSM Nội dung chương này trình bày các giải pháp bảo mật tín hiệu thoại di động phổ biến, đồng thời đưa ra giải pháp bảo mật tối ưu nhất Bộ mã hóa dự đoán tuyến tính kích thích hỗn hợp MELP được lựa chọn và cải tiến để ứng dụng thực tế trong nén thoại Chương cũng đề cập đến các giải pháp truyền dữ liệu qua kênh thoại GSM, nêu rõ các hạn chế của kênh thoại GSM và các kênh truyền băng hẹp Ngoài ra, chương đề xuất giải pháp điều chế và giải điều chế để truyền dữ liệu hiệu quả qua các kênh này, kèm theo các thí nghiệm mô phỏng nhằm chứng minh chất lượng tiếng nói tái tạo sau khi truyền và giải mã.
Chương 3 tập trung vào bảo mật dữ liệu thông qua việc sử dụng thuật toán sinh số giả ngẫu nhiên dựa trên dãy phi tuyến hai chiều lồng ghép Nội dung chương bao gồm tổng quan về m-dãy, cấu trúc và các tính chất của dãy lồng ghép, cả tuyến tính và phi tuyến Chương cũng thực hiện đánh giá mã phi tuyến lồng ghép, đặc biệt là khả năng "ngẫu nhiên hóa" tín hiệu của mã Các phương pháp sinh dãy lồng ghép và lồng ghép phi tuyến được đánh giá, và một phương pháp tính toán tối ưu cho việc sinh dãy lồng ghép trên các thiết bị có tài nguyên hạn chế được đề xuất, kèm theo chứng minh sự tối ưu của phương pháp này Cuối cùng, chương đề xuất ứng dụng dãy lồng ghép phi tuyến trong kỹ thuật mật mã và thực thi thuật toán mã theo cấu trúc hai cấp, cùng với việc thực thi thuật toán nén/giải nén Melpe và các thủ tục mã mật/giải mã.
Kết luận: Phần này tổng kết các kết quả chính đã đạt được và hướng phát triển tiếp theo từ luận án này
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo tính bảo mật cho dữ liệu Thuật toán này ứng dụng các phương pháp sinh số ngẫu nhiên dựa trên các dây phi tuyến lồng ghép, giúp tăng cường độ an toàn trong quá trình truyền tải thông tin Việc phát triển và tối ưu hóa các thuật toán này không chỉ nâng cao hiệu quả truyền dữ liệu mà còn bảo vệ thông tin nhạy cảm khỏi các mối đe dọa tiềm ẩn.
TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU
Tổng quan về mạng viễn thông di động GSM [1][2][29][34]
Cấu trúc mạng di động GSM được chia thành 3 khối chính gồm: Hệ thống con MS,
Hệ thống con trạm gốc BSS bao gồm BSC và BTS, cùng với hệ thống con mạng lõi NSS, được kết nối qua ba lớp giao diện: Um, Abit và A Khối MS bao gồm thiết bị điện thoại ME và Module SIM, trong khi khối BSS kết nối người dùng di động với mạng lõi GSM Mạng lõi, bao gồm NSS và NMS, trong đó NSS thực hiện định tuyến cuộc gọi giữa người dùng di động qua BSS và thuê bao PSTN qua MSC và GMSC, còn NMS quản lý và giám sát các chức năng của toàn mạng.
- Module nhận thực thuê bao – SIM: Subscriber Identity Module
Module này thực chất là một Smart Card chưa các thuật toán A3/8, số IMSI, khóa bí mật Ki và số điện thoại
- Thiết bị đầu cuối – ME: Mobile Equipment Cấu trúc cơ bản mạng GSM:
Hình 1.1 Cấu trúc cơ bản mạng GSM
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo an toàn thông tin Thuật toán này ứng dụng sinh số ngẫu nhiên dựa trên các dây phi tuyến lồng ghép, giúp bảo mật dữ liệu một cách hiệu quả Sự kết hợp giữa công nghệ GSM và các phương pháp mã hóa tiên tiến sẽ nâng cao khả năng bảo vệ thông tin trong quá trình truyền tải.
Thiết bị này hoạt động độc lập với các thiết bị mạng truyền dẫn, không sử dụng thuật toán A5 Để kết nối với mạng GSM, thiết bị cần có SIM, nhưng nó không thể nhận biết thuật toán A3/8 và Ki trên SIM.
- Trạm thu phát gốc – BTS: Base Transceiver Station
BTS là thành phần mạng thông tin di động mặt đất phục vụ cho các MS (Thiết bị
Khi được gắn Module SIM, các trạm gốc sẽ kết nối liên thông các Cells sóng vô tuyến trong khu vực Đồng thời, các trạm gốc này cũng được kết nối đến trạm điều khiển MSC của vùng đó.
- Trạm điều khiển gốc – BSC: Base Staition Controller
BSC đảm nhiệm vai trò điều khiển các BTS xung quanh, bao gồm việc quản lý công suất phát cho các MS, phân bổ tần số kênh cho các BTS và MS, cũng như điều chỉnh nhảy tần số của các MS khi gặp phải nhiễu.
- Trung tâm chuyển mạch – MSC: Mobile Switching Center
MSC (Mobile Switching Center) là một nốt điều khiển nhiều BSC (Base Station Controller) trong hệ thống GSM Nó đóng vai trò là thiết bị trung tâm, thực hiện các chức năng quan trọng như chuyển mạch, xác thực, đăng ký và liên kết giữa các nốt Ngoài ra, MSC còn kết nối với mạng PSTN (Public Switched Telephone Network).
- Đăng ký Thuê bao – HLR: Home Location Register
HLR là cơ sở dữ liệu quan trọng lưu trữ thông tin về các thuê bao di động, bao gồm số IMEI, khóa bí mật Ki, và VLR hiện tại Nó ghi nhận trạng thái của thuê bao, bao gồm việc tạo ra, bị chặn hay bị xóa bởi nhà cung cấp dịch vụ mạng HLR cũng chứa thông tin về các dịch vụ và giới hạn mà thuê bao được phép sử dụng, đảm bảo quản lý hiệu quả các dịch vụ di động.
- Đăng ký đăng nhập vùng - VLR: Visitor Location Register
VLR là một cơ sở dữ liệu quan trọng lưu trữ thông tin thuê bao di động, bao gồm vị trí hiện tại và trạng thái của MS VLR cung cấp dữ liệu cần thiết để xử lý cuộc gọi khi có yêu cầu Thông tin trong VLR được cập nhật thường xuyên dựa trên Cell mà MS đang tham gia, với việc cập nhật xảy ra khi MS bật máy, di chuyển sang BTS hoặc BSC khác, và theo chu kỳ định kỳ.
- Trung tâm xác thực thuê bao – AuC: Authentication Center
Bài viết này tập trung vào việc xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM Nó cũng đề cập đến ứng dụng của thuật toán sinh số ngẫu nhiên dựa trên các dây phi tuyến lồng ghép, nhằm đảm bảo an toàn cho dữ liệu Các phương pháp này không chỉ nâng cao hiệu quả truyền tải mà còn tăng cường khả năng bảo mật thông tin trong quá trình truyền dữ liệu.
AuC phối hợp với HLR để cung cấp thông tin cho VLR về việc xác thực quyền truy nhập mạng của thuê bao MS và các quyền dịch vụ liên quan Nó sinh ra số ngẫu nhiên (RAND) và lưu trữ thông tin trong cơ sở dữ liệu, bao gồm danh sách thiết bị ME chuẩn quốc tế (IMSI), khóa bí mật Ki, định danh Vùng LAI (Location Area Identity) và định danh thuê bao tạm TMSI (Temporary Mobile Subscriber Identity).
- Đăng ký nhận dạng thiết bị - EIR: Equitment Identity Register
EIR lưu giữ một CSDL để giám sát toàn bộ các ME có IMSI sử dụng trên mạng mạng đó (mỗi mạng chỉ có một EIR).
An toàn, bảo mật và một số điểm yếu về vấn đề này trong hệ thống mạng
Ban đầu, GSM được thiết kế như một hệ thống không dây an toàn Để đạt được mục tiêu này, hệ thống đã được phát triển với các cơ chế bảo mật hiệu quả.
• Xác thực người dùng, xác thực dịch vụ di động
• Mã hóa các thông tin trao đổi trên môi trường radio
Xác thực người dùng trong mạng GSM sử dụng khóa chia sẻ trước và cơ chế mã hóa qua mạng Tuy nhiên, GSM dễ bị tấn công từ nhiều loại hình khác nhau, mỗi loại tấn công nhắm vào các phần khác nhau của mạng Đặc biệt, GSM chỉ thực hiện xác thực người dùng với mạng mà không đảm bảo an toàn toàn diện.
Mô hình bảo mật trong GSM cung cấp xác thực nhưng thiếu khả năng chống chối bỏ Hệ thống này sử dụng các thuật toán mã hóa A5/(1, 2, 3) để bảo vệ cuộc gọi trên kênh vô tuyến, trong khi giọng nói được truyền ở dạng rõ qua mạng lõi dưới dạng PCM và ADPCM Tuy nhiên, A5 có nhiều hạn chế về mật mã và không đảm bảo an toàn cho việc liên lạc Do đó, A5 không thể cung cấp bảo mật hoàn toàn cho cuộc gọi thoại của khách hàng GSM Hơn nữa, người dùng không có quyền kiểm soát đối với bảo mật mã hóa, mà điều này hoàn toàn phụ thuộc vào nhà cung cấp mạng và nhà sản xuất điện thoại di động.
1.2.1 Nguyên lý xác thực và bảo mật trong mạng di động GSM
Một số chức năng xác thực và bảo mật đã được tích hợp vào GSM, bao gồm: ỉ Xỏc thực chủ thể thuờ bao đăng ký
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số giả ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép để bảo mật dữ liệu Sử dụng mó húa nhằm đảm bảo bảo mật thông tin trao đổi, bảo vệ định danh của thuê bao SIM (Mã định danh thuê bao) được bảo vệ bằng mã số PIN, và SIM bị nhân bản không được phép gia nhập mạng đồng thời với SIM gốc Mã số bảo mật Ki được bảo vệ an toàn.
Hệ thống GSM sử dụng nhiều thuật toán bảo mật để đảm bảo an toàn cho người dùng, bao gồm xác thực và mã hóa dữ liệu Hai nguyên lý chính này giúp bảo vệ thông tin cá nhân và duy trì tính riêng tư trong quá trình truyền tải dữ liệu.
• Xác thực người dùng đăng nhập mạng (Au)
Trong mạng GSM, quá trình xác thực thuê bao bắt đầu với việc xác thực người sử dụng, sau đó là xác thực các dịch vụ đã được chấp nhận Khi một MS khởi tạo lần đầu hoặc chuyển đến vùng BS mới, nó sẽ yêu cầu BTS cấp kênh truyền Sau khi có kênh truyền được thống nhất với BTS, MS sẽ gửi yêu cầu cập nhật thông tin mạng hiện tại đến MSC qua BSC, và MSC sẽ phản hồi nếu MS xác thực thành công.
Trong toàn bộ quá trình xác thực, có 3 nhân tố chính đó là: MS, MSC/VLR và HLR/AuC như trong Hình 1.2 [3]
Quá trình xác thực bắt đầu khi MS gửi số IMSI từ SIM đến VLR qua trạm BTS gần nhất VLR sau đó chuyển IMSI đến trung tâm HLR/AuC, nơi sẽ tra cứu cơ sở dữ liệu để tìm khóa bí mật Ki tương ứng Tiếp theo, trung tâm sử dụng thuật toán xác thực A3 và thuật toán sinh khóa A8 để tạo khóa mã theo phiên (Kc) và kết quả ký được gọi là SRES.
Hình 1.2 Quá trình xác thực trong mạng GSM
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng nhằm đảm bảo an toàn cho thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến để bảo mật dữ liệu hiệu quả Việc áp dụng những kỹ thuật này không chỉ nâng cao tính bảo mật mà còn tối ưu hóa quá trình truyền tải thông tin qua mạng di động.
HLR tạo ra một số ngẫu nhiên RAND 128bit và gửi bộ ba (Kc, SRES, RAND) đến VLR VLR sau đó gửi số ngẫu nhiên RAND 128bit trở lại MS để yêu cầu tính toán SRES Sử dụng khóa bí mật Ki trên SIM và số RAND, MS áp dụng các thuật toán A3/8 để tính toán Kc và SRES Kc được sử dụng làm khóa cho phiên làm việc, và SRES được gửi lại VLR để xác thực VLR sẽ thực hiện so sánh để xác nhận tính hợp lệ.
2 SRES của MS và HLR, nếu trùng nhau thì xác thực thuê bao thành công, và MS sẽ được cấp quyền truy nhập mạng
Trong cơ chế xác thực, số IMSI được gửi trong bước đầu tiên của quá trình, và nếu hacker chiếm đoạt được số này, họ sẽ nắm giữ 50% thông tin cần thiết để nhân bản SIM Số thông tin còn lại cần phải lấy là mã Ki.
Xác thực người dùng và dịch vụ, cùng với mã hóa dữ liệu thoại, tin nhắn và dữ liệu trong các thế hệ công nghệ mạng GSM có sự khác biệt rõ rệt Cụ thể, quy trình xác thực và mã hóa trong chế độ UMTS không giống với GSM/GPRS Tuy nhiên, trong khuôn khổ của Luận án này, chỉ tập trung vào công nghệ chuyển mạch kênh (CS) để truyền tín hiệu thoại qua kênh GSM, do đó, các chế độ khác sẽ không được phân tích.
• Mã hóa dữ liệu người dùng như thoại, tin nhắn, Dữ liệu người dùng
Khóa phiên mã hóa Kc được sử dụng cho cả MS và hệ thống mạng lõi với thuật toán mã hóa A5 để mã/giải mã thông tin dữ liệu người dùng Quá trình mã hóa này không được thực hiện bởi Module SIM do hạn chế về khả năng xử lý, mà được thực hiện trên ME Hình 1.3 [3] mô tả toàn bộ quá trình xác thực, sinh khóa và mã hóa.
Hình 1.3 Toàn bộ quá trình xác thực, sinh khóa và mã hóa trong mạng GSM
Bài viết này tập trung vào việc xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM, đồng thời áp dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép để bảo mật dữ liệu Việc phát triển các phương pháp này không chỉ cải thiện khả năng truyền tải thông tin mà còn nâng cao tính bảo mật cho dữ liệu trong môi trường mạng di động.
Trước hết tìm hiểu về các thuật toán A3, A8, A5:
- Thuật toán A3 [3]: Sơ đồ khối thuật toán A3 như Hình 1.4
Hình 1.4 Mô hình thuật toán A3
Sơ đồ thực hiện các hàm chức năng trong thuật toán A3 để sinh ra SRES (32bit) được mô tả trong Hình 1.5, dưới đây:
Nhìn vào lược đồ thuật toán trên thì thấy thuật toán rất dễ bị phá
- Thuật toán A8: Sơ đồ khối thuật toán A8 như Hình 1.6
RAND 64bits (Left) 64bits (Right)
Ki 64bits (Left) 64bits (Right)
Hình 1.5 Sơ đồ khối các hàm thực hiện thuật toán A3
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng nhằm đảm bảo an toàn cho thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến, giúp bảo mật dữ liệu hiệu quả Việc áp dụng các kỹ thuật này không chỉ nâng cao tính bảo mật mà còn cải thiện khả năng truyền tải thông tin trong môi trường mạng di động.
Hình 1.7 Sơ đồ khối thuật toán A5
Thuật toán A5 là một thuật toán mã dòng, được thiết kế để tạo ra dãy số giả ngẫu nhiên chất lượng cao nhằm thực hiện phép XOR với dữ liệu cần mã hóa Sơ đồ khối của thuật toán A5 được minh họa trong Hình 1.7 và nó sử dụng các thanh ghi dịch phản hồi tuyến tính Mặc dù có nhiều phương pháp để triển khai thuật toán A5, nhưng hầu hết đều tập trung vào những kỹ thuật cơ bản nhất.
Các phương pháp nén tiếng nói trong mạng GSM [33, 34]
1.3.1 Một số đặc điểm tín hiệu tiếng nói cơ bản của mạng GSM [33]
Bài viết này tập trung vào các yếu tố ảnh hưởng đến quá trình truyền dữ liệu qua kênh thoại GSM, bao gồm băng tần, kỹ thuật xử lý mã thoại và chuyển đổi mã Tuy nhiên, những tác động khác liên quan đến truyền thông trong mạng GSM hoặc giữa GSM và PSTN sẽ không được xem xét.
Kênh thoại mạng GSM được thiết kế để truyền tín hiệu tiếng nói trong băng tần 300-3400Hz, dẫn đến hạn chế về tốc độ Các bộ mã (codec) trong GSM tận dụng triệt để đặc tính của tín hiệu tiếng nói để đạt hiệu suất nén cao mà vẫn giữ chất lượng âm thanh nghe hiểu Tuy nhiên, tín hiệu tái tạo thường khác với tín hiệu ban đầu do các bộ lọc LPC loại bỏ tín hiệu không phải tiếng nói Để duy trì âm lượng trong cuộc đàm thoại, mạng GSM sử dụng bộ điều khiển độ lớn tự động (AGC) để điều chỉnh biên độ đầu ra, dẫn đến sự khác biệt giữa tín hiệu vào và ra, trong đó thường có những khoảng lặng xen kẽ, được phát hiện bởi bộ phát hiện tiếng nói (VAD).
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một bước quan trọng trong việc bảo mật thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến để đảm bảo an toàn cho dữ liệu truyền tải Việc áp dụng các kỹ thuật này không chỉ giúp cải thiện độ tin cậy của hệ thống mà còn nâng cao khả năng bảo vệ thông tin nhạy cảm trong môi trường mạng.
Các bộ phát hiện hoạt động (Activity Detectors) có khả năng nhận diện tín hiệu âm thanh và loại bỏ các khoảng lặng, giúp tiết kiệm băng thông và năng lượng Nhờ đó, quá trình truyền dữ liệu có thể bỏ qua những khoảng lặng không cần thiết.
1.3.2 Quá trình tạo và các tính chất cơ bản của tiếng nói
1.3.2.1 Mô hình hoá quá trình tạo tiếng nói [9][9b]
Không khí được ép từ phổi đi qua thanh quản, nơi các dây thanh âm dao động dưới sự điều khiển của hệ thần kinh, tạo ra tiếng nói Sự dao động này tương tự như việc đóng mở một cánh cửa (thanh môn), làm cho luồng không khí từ phổi bị ngắt quãng, từ đó tạo ra âm thanh khác nhau Ngoài ra, các thành phần hài bậc cao của tiếng nói phụ thuộc vào sự thay đổi của cơ quan phát âm như họng, vòm họng, lưỡi, miệng, khoang mũi và mũi, tương tự như sự thay đổi tham số của các hốc cộng hưởng Hình 1.10 minh họa mô hình cơ học của hệ thống phát âm của con người.
Hình 1.10 Biểu diễn mô hình cơ học của hệ thống phát âm
Mô hình cơ học của cơ quan phát âm có thể được biểu diễn bằng các ống hình trụ có chiều dài bằng nhau nhưng đường kính khác nhau, tạo thành các hốc cộng hưởng âm thanh với tần số riêng gọi là tần số formant Những tần số này sinh ra các âm vị khác nhau tùy thuộc vào hình dáng của cơ quan phát âm Mô hình này có thể được mô tả chính xác thông qua hệ phương trình vi phân Trong quá trình phát âm, hình dáng của cơ quan phát âm thay đổi rất chậm, cho phép phân tích âm thanh trong khoảng thời gian ngắn.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép để bảo mật dữ liệu âm vị cho thấy sự thay đổi không đáng kể Điều này cho phép biểu diễn hệ thống phát âm bằng một hệ thống tuyến tính bất biến theo thời gian, nghĩa là trong khoảng thời gian của một âm vị, các tham số của hệ thống gần như không đổi và chỉ thay đổi từ âm vị này sang âm vị khác.
Hình 1.11 Mô hình dạng ống của cơ quan phát âm
Mô hình hóa quá trình kích thích luồng không khí từ phổi qua thanh quản đến cơ quan phát âm là rất quan trọng Tùy thuộc vào loại âm thanh, cần có phương pháp mô hình hóa phù hợp để đảm bảo chất lượng tiếng nói sau khi tái tạo đạt yêu cầu.
1.3.2.2 Các tính chất cơ bản của tiếng nói
Trong kỹ thuật mã hóa tiếng nói, âm thanh được chia thành hai loại chính: âm hữu thanh và âm vô thanh Âm hữu thanh (voiced sound) được tạo ra khi dây thanh âm dao động, làm ngắt quãng luồng không khí theo chu kỳ khoảng 2-20ms, tạo ra tín hiệu kích thích mô hình hóa như các xung tuần hoàn Ngược lại, âm vô thanh (unvoiced sound) hình thành khi luồng không khí đi qua thanh môn mà không theo quy luật nào, dẫn đến tín hiệu kích thích được mô hình hóa tương tự như tín hiệu ngẫu nhiên.
Âm thanh trong tiếng nói được chia thành hai loại chính: âm hữu thanh và âm vô thanh, hoặc là sự kết hợp của cả hai Theo thống kê, phần lớn các ngôn ngữ trên thế giới chủ yếu sử dụng âm hữu thanh Đặc biệt, tiếng Việt gần như chỉ sử dụng âm hữu thanh trong giao tiếp hàng ngày.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số giá ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép để bảo mật dữ liệu hữu thanh Thí nghiệm với tiếng Việt cho thấy có thể chỉ sử dụng hoàn toàn âm hữu thanh mà không làm ảnh hưởng đến ngữ nghĩa của lời nói Để mã hóa và tái tạo tiếng nói, có thể mô hình hóa các tham số thể hiện sự kích thích không khí từ phổi và dao động qua thanh quản bằng các tham số thích hợp.
• Sự kích thích từ phổi tạo ra thay bằng nhiễu ngẫu nhiên
• Dao động của thanh quản (Khoang họng) được mô hình bằng các bộ lọc tạo chu kỳ ‘Pitch’
• Khoang tạo âm (Khoang miệng – Khoang mũi) được mô hình bằng bộ lọc LPC
Hình 1.12 dưới đây mô hình hóa này:
1.3.3 Các phương pháp mã hoá tiếng nói cơ bản
Mã hoá tiếng nói được phân loại thành ba loại chính: mã hoá dạng sóng, mã hoá nguồn và mã hoá lai Tốc độ bit cùng với chất lượng tiếng nói sau khi tổng hợp từ các bộ mã hoá này được thể hiện trong Hình 1.13.
Gain LPC Filter Speech Voice
Hình 1.12 Mô hình hóa quá trình tạo tiếng nói của con người [9b]
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng, giúp tối ưu hóa việc truyền tải thông tin Thuật toán sinh số giá ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép đóng vai trò then chốt trong việc bảo mật dữ liệu Việc áp dụng những phương pháp này không chỉ nâng cao tính an toàn mà còn cải thiện hiệu suất truyền tải trong các hệ thống viễn thông hiện đại.
Hình 1.13 Chất lượng tiếng nói với tốc độ bit của các bộ mã hoá
Có thể chia mã hoá dạng sóng ra làm hai loại chính :
Trong miền thời gian: Mã hoá điều biến xung mã (PCM), điều biến xung mã sai lệch (DPCM) và điều biến xung mã sai lệch thích nghi (ADPCM)
Trong miền tần số: Mã hoá băng phụ hay còn gọi là băng con SBC (Subband
Coding) và mã hoá biến đổi thích nghi ATC (Adaptive Transform Coding)
Mã hóa nguồn sử dụng mô hình quá trình tạo ra tín hiệu và khai thác các thông số của mô hình này để mã hóa tín hiệu Các thông số sẽ được truyền đến bộ giải mã Đối với tiếng nói, các bộ mã hóa nguồn, gọi là vocoder, hoạt động dựa trên mô hình cơ quan phát âm và được kích thích bằng nguồn nhiễu trắng cho các đoạn âm vô thanh hoặc bằng dãy xung có chu kỳ bằng chu kỳ pitch cho đoạn âm hữu thanh Thông tin gửi đến bộ giải mã bao gồm các thông số kỹ thuật của bộ lọc, thông tin xác định đoạn tiếng nói là âm hữu thanh hay vô thanh, sự thay đổi cần thiết của tín hiệu kích thích và chu kỳ pitch nếu đó là đoạn tiếng nói hữu thanh.
Có nhiều kỹ thuật mã hóa nguồn, bao gồm mã hóa kênh, mã hóa formant, mã hóa tham số và mã hóa đồng hình Hiện nay, nghiên cứu chủ yếu tập trung vào các phương pháp này để cải thiện hiệu suất và chất lượng âm thanh.
Kết luận chương 1
Với công nghệ và năng lực tính toán hiện tại, các thuật toán xác thực và bảo mật dữ liệu trong mạng di động GSM vẫn không đảm bảo an toàn cho người dùng có thông tin nhạy cảm, chưa kể đến thông tin bí mật quốc gia Cấu trúc và các thành phần của mạng GSM hiện tại cho thấy rằng việc xác thực và bảo mật thông tin thoại giữa người dùng (End to End) là giải pháp tối ưu nhất.
Quá trình tạo và tổng hợp tiếng nói có thể được biểu diễn như một hệ thống phát âm tuyến tính bất biến theo thời gian Các bộ mã hoá thoại trong miền thời gian được xây dựng dựa trên kỹ thuật dự đoán tuyến tính, cho phép mô hình hóa chính xác các đặc tính thống kê của tín hiệu thoại Điều này được thực hiện thông qua mô hình bộ lọc nguồn, bao gồm bộ lọc dự đoán thời gian ngắn và bộ lọc dự đoán thời gian dài, với giả thiết rằng tiếng nói là kết quả của quá trình kích thích một bộ lọc biến đổi theo thời gian bằng một dãy xung cho âm rung voiced và nguồn nhiễu ngẫu nhiên cho âm câm.
Các bộ mã hoá sử dụng kĩ thuật phân tích trong miền thời gian bao gồm APC (Adaptive Predictive Coding), RELP (Residual Excited Linear Prediction), MPLPC (Multi Pulse LPC), và đặc biệt là CELP (Code-Excited LPC) Những bộ mã hoá này rất phù hợp cho các ứng dụng mã hóa dữ liệu tín hiệu thoại qua kênh thoại analog trong các mạng khác nhau.
Bài viết này trình bày việc xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM, cùng với ứng dụng của thuật toán sinh số giá ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép nhằm bảo mật dữ liệu Việc phát triển những giải pháp này không chỉ nâng cao tính bảo mật mà còn tối ưu hóa quy trình truyền tải thông tin trong môi trường mạng di động.
CHƯƠNG 2: ĐỀ XUẤT THUẬT TOÁN NÉN VÀ ĐỀ XUẤT GIẢI PHÁP BẢO MẬT, TRUYỀN DỮ LIỆU QUA KÊNH THOẠI GSM
Lựa chọn giải pháp mã hóa mật cuộc gọi thoại di động trên kênh GSM 32 2.2 So sánh ba thuật toán nén dùng kỹ thuật dự đoán tuyến tính (LP Specch Model)
Thiết bị liên lạc GSM sử dụng Vocoder để chuyển đổi tín hiệu âm thanh thành dạng số hóa nén theo chuẩn GSM, sau đó truyền tải gói tin số hóa qua kênh GSM dưới dạng tín hiệu số cùng với các tín hiệu điều khiển khác Dữ liệu GSM được mã hóa bằng thuật toán A5/x, nhưng như đã chỉ ra trong Chương 1, thuật toán này không đủ an toàn Một giải pháp đơn giản để mã hóa cuộc gọi thoại trên kênh voice GSM là xáo trộn tần số và đảo phổ tín hiệu âm thanh theo quy tắc được xác định bởi khóa mã, được gọi là phương pháp mã hóa ở mức tương tự Mặc dù phương pháp này dễ thực hiện, nhưng vẫn có khả năng phân tích tín hiệu đã xáo trộn để khôi phục tín hiệu gốc.
Việc can thiệp vào quá trình xử lý dữ liệu của Modem GSM cho phép mã hóa dữ liệu số hóa trước khi truyền tải Tuy nhiên, tất cả các Modem GSM đều có tính chất khép kín, không cho phép can thiệp vào quá trình xử lý dữ liệu nội bộ.
Một giải pháp trung gian để truyền dữ liệu qua kênh GSM là sử dụng chế độ truyền dữ liệu CSD, mặc dù hỗ trợ CSD tại Việt Nam còn hạn chế Để đảm bảo mã hóa và truyền dữ liệu cuộc gọi thoại mật qua kênh GSM, cần xây dựng một module thực hiện các bước như: tự thực hiện Vocoder với bitrate thấp, mã hóa dữ liệu thoại bằng thuật toán mã hóa mạnh, sử dụng mã hóa khóa đối xứng, và điều chế dữ liệu mã thành tín hiệu trong phổ tiếng nói, sau đó đưa tín hiệu đã điều chế vào thiết bị đầu cuối của hệ thống GSM để truyền qua kênh GSM thông thường.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng, đặc biệt khi áp dụng thuật toán sinh số ngẫu nhiên dựa trên các dây phi tuyến lồng ghép để bảo mật dữ liệu Việc phát triển một modem hoạt động trên kênh thoại 2G/3G sẽ mở ra nhiều cơ hội mới trong việc truyền tải thông tin an toàn và hiệu quả.
Modem với tính năng này không chỉ cho phép truyền dữ liệu qua kênh Voice GSM 2G/3G mà còn hỗ trợ tất cả các giao thức và mạng cho phép truyền thông tin thoại, bao gồm mạng điện thoại chuyển mạch gói, mạng vô tuyến công nghệ SDR, và OTT Để thu được tín hiệu tiếng nói ban đầu, chúng ta sẽ thực hiện các bước theo thứ tự ngược lại ở bên máy thu Việc phát triển một Modem như vậy liên quan đến nhiều kỹ thuật, sẽ được đề cập chi tiết dưới đây.
Khi thực hiện phương án này, cần chú ý hai vấn đề chính: đầu tiên, cần xử lý điều chế ở mức thời gian thực và sử dụng giải pháp Vocoder với Bitrate thấp để đảm bảo tín hiệu được điều chế lại thành dạng sóng trong phổ tần giống tiếng nói Kênh voice GSM có hệ số nén cao, với chuẩn nén 13kbps tương ứng 260 bits/slot, vì vậy cần quan tâm đến cấu trúc khung thoại để tránh biến dạng đáng kể Thứ hai, tầng Vocoder của GSM sử dụng bộ phát hiện tiếng nói tích cực VAD, có thể xác định các khoảng không có âm thanh là không phải tiếng nói, dẫn đến việc dữ liệu điều chế không được truyền đi nhằm tiết kiệm công suất phát Do đó, cần điều chỉnh bộ điều chế để tránh bị VAD xác định là không phải tiếng nói, đồng thời vẫn đảm bảo hiệu quả truyền dữ liệu.
Khi lựa chọn bộ nén thoại (Vocoder) lý tưởng, cần đảm bảo các tiêu chí sau: bitrate thấp, chất lượng thoại tốt, khả năng chống nhiễu hiệu quả, thích ứng với ngôn ngữ người dùng, hiệu suất cao với tín hiệu câm, độ trễ ngắn và phù hợp với tài nguyên xử lý hạn chế.
Bài viết này trình bày về việc xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM, đồng thời ứng dụng thuật toán sinh số giả ngẫu nhiên dựa trên các dây phi tuyến lồng ghép nhằm bảo mật dữ liệu Việc phát triển các phương pháp này không chỉ nâng cao tính bảo mật mà còn tối ưu hóa hiệu suất truyền tải thông tin trong các hệ thống viễn thông hiện đại.
2.2 So sánh ba thuật toán nén dùng kỹ thuật dự đoán tuyến tính (LP Specch Model)
Ba thuật toán nén sử dụng LP bao gồm LPC10e, CELP và MELP, đều áp dụng kỹ thuật dự đoán tuyến tính và phổ biến trong thông tin vô tuyến Sự khác biệt chính giữa ba thuật toán này nằm ở độ phức tạp của chế độ kích thích Mô hình kích thích của vocoder CELP là tinh vi nhất, trong khi mô hình của MELP được đơn giản hóa Mặc dù CELP và MELP đạt chất lượng tương đương, MELP có tỷ lệ nén cao hơn và hỗ trợ nhiều chế độ, phương pháp cải thiện kích thích (pitch) và tốc độ rất thấp.
Bảng 2.1, 2.2 dưới đây so sánh việc cấp phát bit giữa vocoder CELP và MELP:
Các tham số Số bit được cấp phát
Bảng 2.1 Số bit được cấp phát cho MELP 600bit [12]
Tham số Tổng số bit mỗi Frame
Chu kỳ Pitch (chỉ số bảng mã thích nghi) 28 Độ khuyết đại bảng mã thích nghi 20
Chỉ số phức tạp bảng mã Codebook 36 Độ phức tạp bảng mã khuyết đại 20 Đồng bộ 1
Bảng 2.2 Cấp phát các bit cho CELP (FS1061)
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng nhằm đảm bảo an toàn cho thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép, giúp bảo mật dữ liệu hiệu quả Việc áp dụng những kỹ thuật này không chỉ nâng cao tính bảo mật mà còn tối ưu hóa quá trình truyền tải thông tin trong các hệ thống viễn thông hiện đại.
Mô hình và đề xuất bộ mã hoá dự đoán tuyến tính kích thích hỗn hợp MELP
Việc chọn lựa bộ nén thoại (Vocoder) là một yếu tố quan trọng trong luận án này, cần phải đáp ứng đầy đủ các tiêu chí đã được nêu ra ở mục 2.1.
Thuật toán nén thoại MELP, cùng với các phiên bản MELPe và MELPe++, đã được Mỹ công nhận là tiêu chuẩn US MIL-STD-3005 và NATO là STANAG-4591 nhờ vào hiệu quả vượt trội trong các ứng dụng bảo mật vô tuyến băng tần hẹp Các mô hình này cung cấp khả năng đồng bộ hóa mạnh mẽ, xử lý tốt trong môi trường có lỗi bít, mất gói, và mất đồng bộ Đặc biệt, MELP cân bằng tốt giữa băng thông và chất lượng tín hiệu thoại, đồng thời có thể được triển khai trên các chip ARM hoặc DSP, phù hợp cho việc bảo mật thông tin thoại.
Ngày nay, chuẩn mã thoại MELPe gồm 3 tốc độ 2400bps, 1200bps và 600bps [11b,13,14]
Các vocoder dựa trên phương pháp mã hoá mô hình, các tham số đặc trưng cần được xác định đối với mỗi khung tín hiệu là:
- Các tham số kích thích gồm quyết định voice/unvoice và chu kì pitch
- Các tham số hệ thống gồm thông tin đường bao phổ hay đáp ứng xung của hệ thống
Trong quá trình giải mã, để tổng hợp tiếng nói, các tham số kích thích được sử dụng để tạo ra tín hiệu kích thích, bao gồm chuỗi xung tuần hoàn trong vùng voice và nhiễu ngẫu nhiên trong vùng unvoice Sau đó, tín hiệu này sẽ được xử lý qua một bộ lọc, với các tham số dựa trên hệ thống đã được ước lượng Mô hình phổ biến cho hệ thống này là LPC (Linear Prediction).
Coding), trong đó mã hoá dự đoán tuyến tính được sử dụng để mô hình hoá đường bao phổ
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc bảo mật thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến để đảm bảo an toàn cho dữ liệu truyền tải Việc áp dụng các kỹ thuật này không chỉ giúp nâng cao độ bảo mật mà còn tối ưu hóa hiệu suất truyền dữ liệu trong các hệ thống viễn thông hiện đại.
MELP đã có những cải tiến quan trọng trong mô hình, bao gồm việc áp dụng mô hình kích thích hỗn hợp tuần hoàn/nhiễu và quyết định voice/unvoice cho từng dải tần riêng, giúp nâng cao chất lượng tiếng nói một cách đáng kể so với LPC-10 Tuy nhiên, vẫn tồn tại một số khuyết điểm trong chất lượng tiếng nói, đặc biệt ở các vùng không ổn định và không tuần hoàn.
Các vocoder truyền thống cho tiếng nói tổng hợp có khả năng nghe hiểu tốt, nhưng chất lượng âm thanh vẫn chưa đạt yêu cầu cao Nguyên nhân của vấn đề này có thể được phân loại thành hai nhóm chính.
- Do hạn chế cơ bản trong mô hình tiếng nói
- Do ước lượng các tham số mô hình tiếng nói không chính xác
Các nhược điểm của các vocoder truyền thống về suy giảm chất lượng có thể thấy và các cơ sở của các biện pháp để giải quyết như sau:
Một trong những vấn đề chính gây suy giảm chất lượng trong các vocoder sử dụng mô hình voice/unvoice đơn giản là sự xuất hiện của âm thanh hỗn độn và âm ù, đặc biệt trong các vùng voice hỗn hợp và vùng có nhiễu Phân tích phổ thời gian ngắn cho thấy các hài tần số cơ bản nổi bật trong vùng voice hỗn hợp, trong khi năng lượng nhiễu chiếm ưu thế ở vùng có nhiễu Nguyên nhân chính của hiện tượng này là do mô hình kích thích đơn giản chỉ tạo ra tín hiệu kích thích có hoặc là hài tần số cơ bản, hoặc là phổ nhiễu Để khắc phục vấn đề này, cần áp dụng mô hình kích thích hỗn hợp, trong đó các kích thích tuần hoàn và nhiễu được trộn lẫn và sau đó được tạo dạng phổ thông qua bộ lọc, với các tham số của bộ lọc dựa trên thông số hệ thống trong quá trình phân tích.
Cách giải quyết này dựa trên khả năng của con người trong việc phân biệt các vùng tần số đặc trưng bởi hài của tần số cơ bản và nhiễu Để cải thiện chất lượng tiếng nói tổng hợp, mô hình voice/unvoice cần bổ sung yếu tố biến thiên theo tần số Hình 1.14 minh họa khái niệm mô hình kích thích hỗn hợp đa băng trong ngữ cảnh này.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo an toàn cho thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến để bảo mật dữ liệu hiệu quả Việc áp dụng các kỹ thuật này không chỉ tăng cường tính bảo mật mà còn cải thiện khả năng truyền tải thông tin qua mạng di động.
Chất lượng tiếng nói tổng hợp của các vocoder bị ảnh hưởng lớn bởi sự ước lượng không chính xác các tham số mô hình tiếng nói, như pitch và quyết định voice/unvoice Việc xác định pitch không chính xác cùng với quyết định voice/unvoice sai lệch có thể dẫn đến sự suy giảm chất lượng tiếng nói tổng hợp, đặc biệt là trong các tín hiệu có nhiễu, làm cho chất lượng giảm xuống mức nghiêm trọng.
Một hệ thống vocoder chất lượng cao cần cải tiến mô hình tiếng nói và áp dụng các phương pháp đáng tin cậy để ước lượng chính xác các tham số của mô hình này.
2.3.2 Mô hình thuật toán mã thoại MELP
Sơ đồ khối bộ mã hoá tiếng nói MELP (Mixed Excitation Linear Prediction) được thể hiện trong hình 2.1 [17][8] dưới đây:
Tạo nhiễu trắng Lọc tạo hình nhiễu Cường độ thoại Đáp ứng xung
Hình 2.1 Mô hình mã hóa tiếng nói Melp
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo an toàn thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến để bảo mật dữ liệu Việc áp dụng các kỹ thuật này giúp tăng cường khả năng bảo vệ thông tin trong quá trình truyền tải, đồng thời tối ưu hóa hiệu suất của mạng GSM.
2.3.2.1 Quá trình mã thoại MELP được biểu diễn trên Hình 2.2 [13][18]:
Một số bước cơ bản trong qui trình này được thực hiện như sau:
Bước 1: Loại bỏ thành phần tần số thấp (DC)
Bước đầu tiên trong quá trình nén tiếng nói là loại bỏ các thành phần năng lượng tần số thấp trong tín hiệu đầu vào Để thực hiện điều này, một bộ lọc thông cao Chebychev kiểu 2 bậc bốn với tần số cắt 60 Hz và suy giảm 30 dB ở dải chắn được sử dụng Đầu ra của bộ lọc này sẽ trở thành tín hiệu đầu vào cho tất cả các khối tiếp theo trong quá trình nén tiếng nói.
Bước 2: Tìm kiếm pitch tổng thể Để thực hiện tìm kiếm pitch tổng thể, đầu tiên cần lọc tín hiệu đầu vào bằng bộ lọc Butterworth bậc 6 với tần số cắt 1 KHz Giá trị pitch sẽ được xác định trong khoảng t.
= 40÷160 mẫu và là giá trị có tự tương quan chuẩn hoá (tr) lớn nhất, trong đó:
Hình 2.2 Quy trình thực hiện mã thoại Melp
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo an toàn cho thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dây phi tuyến lồng ghép, giúp bảo mật dữ liệu một cách hiệu quả Việc áp dụng những kỹ thuật này không chỉ nâng cao tính bảo mật mà còn cải thiện khả năng truyền tải thông tin trong môi trường mạng không ổn định.
Giải pháp điều chế và giải điều chế để truyền dữ liệu qua kênh thoại GSM
2.4.1 Phương pháp điều chế tín hiệu tựa tiếng nói
Phương pháp điều chế tín hiệu tựa tiếng nói đã được nghiên cứu và trình bày trong nhiều bài báo của các tác giả khác nhau Phương pháp này cho phép truyền dữ liệu dưới dạng tổng hợp âm thanh giống như tiếng nói, dựa trên ba đặc tính chính.
1) Đường bao của phổ tiếng nói được biểu diễn bởi các tần số phổ vạch (LSF)
2) Tần số cơ bản hoặc cao độ của giọng nói (pitch)
3) Hình dạng và năng lượng kích thích ACELP (hoặc CELP) Các thông số nêu trên được bảo tồn khi truyền qua kênh thoại GSM và PSTN
Dữ liệu đầu vào được ánh xạ tới các thông số thông qua 3 bảng mã - codebook, sau đó được nhập vào bộ tổng hợp (Hình 2.9) Tiếng nói tổng hợp này không thuộc về bất kỳ ngôn ngữ nào của cư dân trên thế giới, mà chỉ mang tính chất tương đồng với tiếng nói trong quá trình nén và giải nén.
Hình 2.9 Sơ đồ khối của phương pháp điều chế tín hiệu tựa tiếng nói [5][30]
Tiếng nói được tổng hợp và phát đi với các thông số chủ yếu Tại bên thu, bộ phân tích tiếng nói sẽ tách các thông số, kiểm tra tính tương thích và tra cứu trong bảng mã để trích xuất dữ liệu.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng nhằm đảm bảo an toàn cho thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến để bảo mật dữ liệu hiệu quả Việc áp dụng các kỹ thuật này giúp tăng cường tính bảo mật và độ tin cậy trong quá trình truyền tải thông tin qua mạng di động.
Hình 2.10 Sơ đồ khối của phương pháp giải điều chế tín hiệu tựa tiếng nói [30]
Dữ liệu được mã hóa với 10 bit cho LSF, 5 bit cho cao độ và 5 bit cho năng lượng, tổng cộng là 20 bit được truyền trong 20 ms, tương đương với tốc độ bit 1 kbps Tốc độ bit có thể tăng lên khi sử dụng các bảng mã lớn hơn.
Trong phương pháp này, có hai nhiệm vụ chính cần thực hiện: chọn loại mã hóa tiếng nói và thiết kế các bảng mã Hệ thống GSM sử dụng mã nén tiếng nói theo thuật toán CELP – ACELP, vì vậy cần chọn mã hóa cùng loại để giảm thiểu sai lệch khi truyền dữ liệu Các lựa chọn mã nén bao gồm GSM-HR (VSELP), GSM-EFR, GSM-ARM (ACELP), CELP và Speedx, trong đó GSM-EFR được ưu tiên do triển khai đơn giản hơn Loại mã nén được chọn sẽ ảnh hưởng đến cách thiết kế bảng mã.
Thiết kế bảng mã là một quá trình phức tạp và tốn nhiều thời gian, trong đó bảng mã đóng vai trò quan trọng trong việc ánh xạ dữ liệu vào các thông số cần thiết, trước khi nhập chúng vào bộ tổng hợp tiếng nói.
Có hai phương pháp được sử dụng để điền vào các bảng mã
Phương pháp biểu đồ là một kỹ thuật nhằm tạo ra các bảng mã với các tham số thường xuyên được sử dụng và có độ chính xác cao khi truyền tải từ một đoạn ghi âm mẫu tiếng nói Giả định ở đây là các tham số này sẽ giúp giảm thiểu sai lệch trong quá trình truyền thông tin.
Bài viết đề cập đến việc xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM, cùng với ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép để bảo mật dữ liệu Sau khi phân tích mẫu âm thanh bằng máy phân tích EFR, các tham số được trích xuất và thống kê Chẳng hạn, tham số LSF có 5 chỉ số và lần đầu tiên được lượng tử hóa thành 7 bit Để truyền 2 bit trên tham số này, biểu đồ được chia thành 4 khoảng, tìm kiếm giá trị tối đa trong mỗi khoảng và đưa vào bảng mã nhằm tránh các lựa chọn quá gần nhau Quy trình tương tự cũng được áp dụng cho các chỉ số LSF khác, pitch và năng lượng, tạo ra bảng mã là sự kết hợp của tất cả các giá trị tối đa đã tìm thấy.
Giải thuật di truyền GA
Giải thuật di truyền (GA) là phương pháp tối ưu hóa quá trình dò tìm, bắt đầu bằng việc định nghĩa vấn đề một cách cẩn thận Trong GA, bộ gen được xác định theo nhiều cách khác nhau, và hiệu quả của phương pháp phụ thuộc vào cách giải quyết vấn đề Một tập hợp con của bộ gen được chọn gọi là quần thể, quần thể này tiến hóa thông qua các quá trình đột biến và trao đổi chéo, với bộ gen thích nghi tồn tại và phát triển Chức năng luyện tập sẽ đánh giá và chọn bộ gen tốt nhất để phát triển hơn nữa Mặc dù phương pháp này không đảm bảo hội tụ đến giải pháp tối ưu, nhưng bộ công cụ GA trong Matlab có thể được sử dụng để thực hiện các mô phỏng hiệu quả.
Yêu cầu là chọn các mục cho bảng mã có BER thấp nhất, nhưng việc thực hiện điều này qua GA gặp nhiều khó khăn Khi tối ưu hóa LSF, các tham số khác được giữ cố định, tạo ra một bảng mã cho các tham số LSF, giúp bên thu có thể nhận được thông tin Hàm luyện tập được sử dụng để tính toán BER cho từng mục trong bộ gen và sau đó tính trung bình kết quả Mặc dù chỉ có thể tối ưu hóa một tham số tại một thời điểm, để đạt được kết quả tốt nhất, cần phải tối ưu hóa đồng thời nhiều tham số, đây là một nhiệm vụ rất thách thức.
Tính ổn định của hệ thống
Bộ lọc STP (dự đoán thời gian ngắn) và LTP (dự đoán thời gian dài) là các bộ lọc IIR với đáp ứng xung vô hạn, thuộc mô hình toàn cực Sự lựa chọn giữa hai bộ lọc này đóng vai trò quan trọng trong việc tối ưu hóa hiệu suất dự đoán.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép để bảo mật dữ liệu là một nhiệm vụ quan trọng Các hệ số trong thuật toán có thể gây ra sự mất ổn định, do đó cần kiểm tra tính ổn định khi lựa chọn các hệ số này Để đảm bảo hiệu quả và an toàn cho dữ liệu, có thể áp dụng các tiêu chuẩn nhất định trong quá trình kiểm tra.
1) Trong miền tần số (biến đổi Fourier): Nyquist
2) Trong miền Z (biến đổi Z): Schur-Cohn
3) Trong miền S (biến đổi Laplace): Routh Hurwitz Với bậc lọc 10 và bảng mã 1000 phần tử việc kiểm tra mọi tổ hợp các hệ số xem có ổn định không dù là sử dụng máy tính cũng là công việc khổng lồ Ngoài ra đối với hệ thống nén tiếng nói các hệ số của bộ lọc thu được từ hệ vật lý thật tức là từ lời nói có tính chất thay đổi chậm từ mẫu này đến mẫu khác Đối với quá trình điều chế tựa tiếng nói, dữ liệu là số bất kỳ nên dữ liệu hiện tại và dữ liệu kế tiếp có thể không liên quan đến nhau Khi tổng hợp thành tiếng nói thì mẫu tiếng nói trước và mẫu tiếng nói sau có tham số thay đổi đột ngột Tiếng nói giả này truyền trên GSM có thể bị sai lệch nhiều khi tái tạo lại Đây cũng là một trở ngại lớn
2.4.2 Đề xuất phương pháp điều chế tín hiệu kiểu viễn thông truyền thống có cấu trúc phổ gần giống phổ của tiếng nói
2.4.2.1 Điều chế tín hiệu kiểu viễn thông truyền thống Điều chế theo phương thức viễn thông truyền thống được nhiều tác giả nghiên cứu Thực nghiệm cho thấy điều chế (số) khóa pha (dịch pha) PSK tốt hơn so với điều chế (số) khóa biên độ (dịch biên) ASK và điều chế (số) khóa tần số (dịch tần) FSK ASK thay đổi biên độ, trong trường hợp này, bộ mã hóa tiếng nói của GSM có AGC và nó phát hiện các thay đổi về biên độ này sẽ thực hiện việc bù, điều này sẽ gây ra lỗi trong máy thu FSK cũng không phải là một lựa chọn tốt ở đây vì băng thông rất hạn chế
(4 kHz) Điều chế (số) dịch pha vi sai DPSK thường được chọn vì tính đơn giản khi thực hiện và không cần bộ thu kết hợp
BẢO MẬT DỮ LIỆU SỬ DỤNG THUẬT TOÁN SINH SỐ GIẢ NGẪU NHIÊN DỰA TRÊN DÃY PHI TUYẾN HAI CHIỂU LỒNG GHÉP
Giới thiệu m-dãy
3.1.1 Thanh ghi dịch và đa thức nguyên thủy Để dựng một m-dãy có độ dài N = 2 m – 1, ta biểu diễn đa thức nguyên thủy (prime polynomial) h(d) bậc m có dạng như sau:
Đa thức h(d) = h / + h + d + h 1 d 1 + + h 2" d 2" + h 2 d 2 = ∑ 2 !%/ h ! d ! được sử dụng để xây dựng thanh ghi dịch phản hồi tuyến tính (LFSR), với h0 = hm = 1 Hệ thống này bao gồm m nút, đại diện cho các phần tử nhớ hoặc flip-flops, mỗi phần tử có khả năng lưu trữ giá trị ‘0’ hoặc ‘1’ Trong mỗi chu kỳ xung nhịp, giá trị trong các phần tử nhớ được dịch sang bên phải, trong khi giá trị phản hồi được tính toán theo các hệ số của đa thức h(d) và được đưa trở lại phần tử đầu bên trái Phép tính phản hồi thực hiện thông qua phép nhân và cộng theo mô-đun 2, tương ứng với các phép toán AND và XOR trong mạch điện tử.
Một dãy số có thể được tạo ra từ một bộ LFSR với 2 trạng thái, trong đó các hệ số phản hồi được kết nối tới đầu ra của phần tử nhớ thứ i khi hi = 1, và không có phản hồi khi hi = 0.
Hình 3.1 Thanh ghi dịch phản hồi tương đương h(d)
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một lĩnh vực quan trọng, đặc biệt trong việc bảo mật dữ liệu Thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép giúp tăng cường tính bảo mật Đa thức h(d) được định nghĩa là đa thức nguyên thủy bậc m, trong đó số nguyên nhỏ nhất n thỏa mãn điều kiện d n + 1 chia hết cho đa thức g(d) với n = 2 m – 1.
Đa thức h(d) = d^5 + d^4 + d^3 + d + 1 là một đa thức nguyên thủy bậc m = 5, vì số nguyên n nhỏ nhất mà d^n + 1 chia hết cho đa thức g(d) là n = 2^5 - 1 = 31 Ngược lại, h(d) = d^5 + d^4 + d^3 + d^2 + d + 1 không phải là nguyên tố, do d^6 + 1 có thể phân tích thành (d + 1)(d^5 + d^4 + d^3 + d^2 + d + 1), dẫn đến số n nhỏ nhất bằng 6.
Số đa thức nguyên thủy bậc m bằng:
Trong đó F(n) là hàm Euler xác định bởi:
Hàm Euler F(n) được định nghĩa là số lượng các số nguyên dương nhỏ hơn n mà là các số nguyên tố cùng nhau với n Công thức tính F(n) là 𝛷(𝑛) = 𝑛 ∏ 3|0 =1 − + 3 > (3.3), trong đó p|n biểu thị cho tất cả các ước số nguyên tố của n.
Ví dụ 3.2 cho thấy rằng F(15) = 15(1 – 1/3)(1 – 1/5) = 8, với các số nguyên tố cùng nhau so với 15 là {1, 2, 4, 7, 8, 11, 13, 14} Hơn nữa, F(31) = 30, điều này chứng minh rằng F(p) = p – 1 cho mọi số nguyên tố p ≥ 1, vì tất cả các số dương nhỏ hơn p đều là số nguyên tố cùng nhau với p.
Bảng 3.1 Thống kê số lượng đa thức nguyên thủy có bậc m
Bậc m Độ dài chuỗi N = 2 m - 1 Số đa thức
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một bước quan trọng trong việc đảm bảo an toàn thông tin Thuật toán này sử dụng các kỹ thuật sinh số ngẫu nhiên dựa trên các dây phi tuyến để bảo mật dữ liệu Việc áp dụng các phương pháp này giúp tăng cường khả năng bảo vệ thông tin trong quá trình truyền tải, đồng thời tối ưu hóa hiệu suất của mạng GSM.
Bậc m Độ dài chuỗi N = 2 m - 1 Số đa thức
3.1.2 Dãy có độ dài cực đại
Trong hình 3.2, với m nút chứa giá trị 0 hoặc 1, thanh ghi dịch có thể tạo ra 2 m trạng thái khác nhau Tuy nhiên, trạng thái toàn giá trị 0 không thể xuất hiện, dẫn đến chu kỳ cực đại là 2 m - 1.
Theo tài liệu [20], nếu h(d) là một đa thức nguyên thủy bậc m, thì thanh ghi dịch sinh bởi đa thức h(d) sẽ tạo ra một dãy đầu ra có chu kỳ 2^m - 1 Dãy đầu ra này được gọi là m-dãy.
Hình 3.2 Mạch thanh ghi dịch với hàm h(d) = d5 + d4 + d3 + d + 1
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một bước quan trọng trong việc đảm bảo an toàn cho thông tin Thuật toán này không chỉ giúp tối ưu hóa quá trình truyền tải mà còn ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến, góp phần bảo mật dữ liệu hiệu quả Việc kết hợp các công nghệ này sẽ nâng cao khả năng bảo vệ thông tin trong môi trường truyền thông hiện đại.
Mô hình mạch LFSR trong Hình 3.2 sử dụng hàm h(d) = d^5 + d^4 + d^3 + d + 1, một đa thức nguyên thủy, tạo ra một m-dãy có chu kỳ N = 2^5 – 1 = 31 Dãy đầu ra được thể hiện trong Bảng 3.1 với các giá trị ci = 1 0 0 1 1 1 0 0 0 0 1 1 0 1 0 1 0 0 1 0 0 0 1 0 1 1 1 1 1 0.
Bảng 3.2 Bảng các trạng thái thanh ghi dịch với hàm h(d) = d5 + d4 + d3 + d+1
Xung nhịp i Trạng thái Xung nhịp i Trạng thái
3.1.3 Các thuộc tính của m-dãy
Theo [20] một m-dãy {an} với đa thức sinh h(d) có các thuộc tính:
1) Dãy có bậc m thì chu kì của dãy là N = 2 m – 1
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng nhằm đảm bảo an toàn cho thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến để bảo mật dữ liệu hiệu quả Việc áp dụng các kỹ thuật này không chỉ cải thiện tính bảo mật mà còn tối ưu hóa quá trình truyền tải thông tin trong mạng di động.
2) Có chính xác N = 2 m – 1 dãy không toàn ‘0’ được tạo bởi h(d): chúng chỉ đơn giản là tập hợp N pha khác nhau (dịch vòng) của a = {an} được gọi: a, Ta, T 2 a,…, T N-
1a Trong đó, T m kí hiệu cho phép dịch là dịch một vector sang bên trái m vị trí Nếu a = {an} = (a0, a1, a2, , aN-1) thì Ta = (a1, a2, a3,…, aN-1, a0), T 2 a = (a2, a3,…, aN-2, aN-
3) Trong số N dãy được tạo bởi h(x) có chính xác một dãy {an} có tính chất: an a2n cho tất cả n = 0,1,2,…
4) Mỗi dãy không toàn ‘0’, có chu kì N = 2 m - 1 thì bước chạy có độ dài m là sự xuất hiện của số ký tự ‘1’ liên tiếp là một lần trong một chu kỳ của dãy, một bước chạy có độ dài m-1 cho ‘0’, 2 bước chạy có độ dài m-1 cho ‘1’, 2 bước chạy m-2 cho
‘0,…, 2 m-r bước chạy có độ dài r cho ‘1’,…
5) Thuộc tính cộng và dịch, các trạng thái nó cho tất cả 0 ≤ r,s ≤ N-1 có tồn tại một giá trị t sao cho: T r a + T s a = T t a Điều này chính là tổng của hai m-dãy là một m-dãy khác được tạo bởi cùng h(x) Một dãy có chu kì N là một m-dãy nếu và chỉ nếu nó có các thuộc tính cộng và dịch
6) Số giá trị 1 trong mỗi chu kỳ là 2 m-1 ; số giá trị 0 là 2 m-1 – 1
7) Hàm tự tương quan (ACF) có hai mức:
8) Nếu dãy nhị phân m được lấy mẫu với f bằng mũ 2, thì cùng dãy trả về
9) Lấy mẫu một m-dãy với mỗi phép quay f, gcd(f,N) = 1, 1 ≤ f ≤ N-1, N = 2 m –
1, sẽ đưa ra F(2 m -1)/m m-dãy có chu kì 2 m – 1
10) Khoảng tuyến tính bằng bậc m Nó cho ta biết rằng có thể xác định được m- dãy đó nếu như xác định đúng 2m giá trị trong dãy
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một bước quan trọng trong việc tối ưu hóa quá trình truyền tải thông tin Thuật toán này không chỉ đảm bảo tính hiệu quả mà còn nâng cao độ bảo mật cho dữ liệu Bên cạnh đó, việc ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép góp phần tạo ra các phương thức bảo vệ dữ liệu mạnh mẽ hơn Sự kết hợp này giúp cải thiện khả năng truyền thông và bảo mật thông tin trong môi trường mạng di động.
Dãy có cấu trúc lồng ghép
3.2.1 Xây dựng dãy lồng ghép và dãy phi tuyến lồng ghép
Kỹ thuật lồng ghép dựa vào các m-dãy có độ dài phân tích được, với ít nhất một nhân tử dạng 2 m – 1 Thứ tự lồng ghép và các dãy con sẽ xác định cấu trúc mã, sau đó chuyển đổi cấu trúc này thành phi tuyến nhằm tăng tổ hợp mã và độ phức tạp.
- Phương pháp 1: Giữ nguyên thứ tự lồng ghép nhưng thay m-dãy con thành phần bằng m-dãy khác có cùng độ dài
- Phương pháp 2: Giữ nguyên thứ tự lồng ghép nhưng thay m-dãy con thành phần bằng dãy phân bố tựa ngẫu nhiên cùng độ dài
- Phương pháp 3: Dùng dãy tích của T m-dãy con thành phần tạo dãy lớn
- Phương pháp 4: Dùng dãy tích của T dãy con thành phần là các m-dãy khác nhau tạo dãy lớn
Các phương pháp tạo dãy phi tuyến được chia thành hai nhóm chính: nhóm thứ nhất bao gồm các phương pháp sử dụng cấu trúc lồng ghép đa cấp (I p T) và lồng dãy con ngẫu nhiên từ m-dãy khác (phương pháp 1 và 2), trong khi nhóm thứ hai trực tiếp tạo dãy phi tuyến thông qua dãy tích T bậc với nhiều cấp (phương pháp 3 và 4) Khi tạo dãy tích, độ dài dãy thường là k.L (với k là số nguyên dương và L = 2 m – 1), trong khi dãy lồng ghép đa cấp phi tuyến có độ dài T.L = 2 n – 1 (với T là chu kỳ lồng ghép và L là độ dài m-dãy).
Dãy có cấu trúc lồng ghép có thể được biểu diễn và phân tích bằng hai công cụ toán học trên trường hữu hạn, đó là hàm Vết và biến đổi D Cả hai công cụ này đều tương đương và cung cấp cách biểu diễn các phần tử trong trường hữu hạn Đánh giá về hai phương pháp này cho thấy sự linh hoạt và hiệu quả trong việc xử lý các dãy phức tạp.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng, nhằm đảm bảo tính an toàn và bảo mật cho dữ liệu Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến, giúp tăng cường khả năng bảo mật thông tin trong quá trình truyền tải Việc áp dụng các giải pháp này không chỉ nâng cao hiệu quả truyền dữ liệu mà còn bảo vệ thông tin khỏi các mối đe dọa tiềm ẩn.
Phương pháp sử dụng hàm Vết rất hiệu quả trong nghiên cứu tạo và lồng ghép dãy m Tuy nhiên, hàm Vết chỉ áp dụng được cho dãy có độ dài L = p m – 1, điều này khiến nó không thể dựng nú cho cấu trúc lồng ghép có độ dài tùy ý (L ≠ p m – 1) Hơn nữa, phương pháp này cũng không cung cấp thông tin về trạng thái của LFSR.
Phép biến đổi D là một phương pháp ngắn gọn và dễ thực hiện, cung cấp đầy đủ thông tin về trạng thái LFSR Phương pháp này có thể áp dụng cho bất kỳ dãy tuần hoàn nào có độ dài phân tích được thành dạng L = T.N Gần gũi với phần cứng, phép biến đổi D cho phép tính toán độ phức tạp (ELS) và hàm tương quan (ACF) của dãy Do đó, nó được sử dụng để phân tích, đánh giá và tạo ra các dãy số.
Kiến trúc dãy lồng ghép [1b]
Ta quan tâm tới m-dãy tam phân {bn} có độ dài L = q n -l với q là một số nguyên tố nhận các giá trị trong tập {2, 3, 5, 7…} sao cho n=m.l
Theo bài báo [1b], có thể xây dựng dãy {bn} bằng cách lồng ghép các dãy con có độ dài N, dựa trên công thức S = L/N Các dãy con này được tạo ra thông qua phép nhảy bước (decimation) trên dãy {bn} với bước nhảy S.
Khi phép nhảy bước bắt đầu từ bit đầu tiên của {bn}, ta thu được dãy con:
Tương tự như vậy, với vị trí bắt đầu nhảy bước là t, ta thu được dãy con
Các dãy con này, được sắp xếp theo cột, có thể được xem như là ghép kênh theo bước thời gian S, nhằm bố trí vào S khe thời gian như thể hiện trong sơ đồ dưới đây.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc bảo mật thông tin Thuật toán này có thể áp dụng trong nhiều lĩnh vực khác nhau, đặc biệt là trong các hệ thống yêu cầu bảo mật cao Bên cạnh đó, việc sử dụng thuật toán sinh số ngẫu nhiên dựa trên các dây phi tuyến lồng ghép giúp tăng cường tính an toàn cho dữ liệu truyền tải Những phương pháp này không chỉ cải thiện hiệu suất truyền dữ liệu mà còn đảm bảo thông tin được bảo vệ một cách hiệu quả.
Sơ đồ l: Ghép các dãy con theo thời gian
Thứ tự mà các chuỗi con được ghép vào trong thực tế là thứ tự lồng ghép đã xét ở trên
Bây giờ ta chỉ cần tìm kiếm trong Bảng 3.4 để tìm ra biển diễn theo biến đổi d
Thứ tự của Si(d S) trong bảng 1 được xác định từ dãy con theo cột, trong đó dãy con chứa toàn giá trị con được coi là thứ tự lồng ghép là ¥ Bài báo [1b] nêu bật một tính chất quan trọng của dãy lồng ghép, đó là mỗi dãy con của dãy lồng ghép là một m-dãy với bậc m, nhưng lệch pha với nhau một khoảng xác định bởi phần tử tương ứng Nhiệm vụ chính trong việc xây dựng dãy lồng ghép là tính toán trước các giá trị của , từ đó xác định được các dãy con cần thiết để ghép thành dãy đầu ra.
Xây dựng dãy lồng ghép phi tuyến
Có nhiều phương pháp để tạo ra dãy phi tuyến, trong đó phương pháp lồng ghép phi tuyến dựa trên các giá trị pha là một cách hiệu quả Cách này chỉ thay đổi dãy con nhằm tạo ra dãy mới với khoảng tuyến tính lớn hơn Để thực hiện quá trình tạo dãy phi tuyến, cần tuân theo các bước cụ thể được nêu trong bài báo [1b].
Ta sẽ sử dụng hai m-dãy đầu vào {an} và {bn} với cùng bậc n và bộ tham số n, m,
S giống nhau Sử dụng kiến trúc lồng ghép, ta xây dựng nên các dãy lồng ghép với thứ tự lồng ghép và tương ứng
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo an toàn thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến, giúp bảo vệ dữ liệu hiệu quả Việc áp dụng những công nghệ tiên tiến này không chỉ nâng cao tính bảo mật mà còn tối ưu hóa quá trình truyền tải thông tin trong mạng di động.
Trong bước này, chúng ta giữ nguyên các giá trị pha lồng ghép 𝐼 3 # và thay đổi các dãy con bằng các dãy con tương ứng với dãy đầu vào thứ hai Cụ thể, việc chọn m-dãy với các tính chất được hình thành từ hai đa thức nguyên tố khác nhau sẽ được thực hiện để lồng ghép với các giá trị pha lồng ghép 𝐼 3 # khác nhau, được tính từ các đa thức tạo m-dãy có bậc là bội của đa thức tạo dãy lồng ghép.
Trong phần 3.2.2.3, bài viết đánh giá chi tiết độ phức tạp tuyến tính của một dãy lồng ghép phi tuyến sử dụng khoảng tương đương tuyến tính (ELS) Kết quả cho thấy rằng dãy lồng ghép phi tuyến có độ phức tạp cao hơn so với dãy lồng ghép thông thường.
3.2.2 Các tính chất của dãy lồng ghép
Tất cả các dãy ngẫu nhiên hiện nay đều được tạo ra bởi máy tính hoặc thiết bị khác, dựa vào một thuật toán nhất định để đảm bảo tính ngẫu nhiên Do đó, các dãy này được gọi là dãy giả ngẫu nhiên.
Các phép đo cho dãy giả ngẫu nhiên 2 mức:
Ứng dụng dãy lồng ghép phi tuyến trong kỹ thuật mật mã
Nghiên cứu về kiến trúc dãy lồng ghép phi tuyến đã tạo ra một bộ dãy giả ngẫu nhiên chất lượng cao, có tiềm năng ứng dụng trong kỹ thuật mật mã Để áp dụng dãy lồng ghép phi tuyến trong mã hóa luồng dữ liệu thoại số, tác giả đề xuất một quy trình thực hiện cụ thể.
Bước 1: Lựa chọn tham số
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo an toàn thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến để bảo mật dữ liệu hiệu quả Việc áp dụng các kỹ thuật này không chỉ giúp tăng cường bảo mật mà còn cải thiện khả năng truyền tải thông tin qua mạng di động.
Trường Galois GF(2^n) được sử dụng để tận dụng tối đa lợi thế của các hệ vi xử lý và FPGA trong việc thực hiện các phép toán nhị phân.
Chọn bậc dãy ban đầu là n = 26 với m Giá trị các tham số khác như sau:
Bộ tham số được chọn cho phép toàn bộ tập thứ tự lồng ghép IPS (8193 x 16 bit) được lưu trữ gọn trong một Block RAM 18Kbit của FPGA.
Để tạo dãy lồng ghép phi tuyến, bước đầu tiên là lựa chọn hai đa thức sinh nguyên thủy: f(d) = d^26 + d^22 + d^21 + d^18 + d^13 + d^12 + d^10 + d^8 + d^6 + d^5 + d^2 + d + 1 và g(d) = d^26 + d^20 + d^19 + d^18 + d^16 + d^15 + d^14 + d^13 + d^9 + d^8 + d^4 + d + 1 Sử dụng các tham số này, áp dụng công thức sinh m-dãy để tạo ra hai bộ m*S bit tương ứng với hai dãy Tiếp theo, thuật toán Belekamp – Massey được sử dụng để tính toán các đa thức con, cho ra f1(d) = d^13 + d^12 + d^11 + d^9 + d^7 + d^5 + d^4 + d^3 + 1 và g1(d) = d^13 + d^11 + d^10 + d^8 + d^5 + d^3 + d^2 + d + 1 Trong thực tế, chỉ cần tìm g1(d) là đủ mà không cần sử dụng f1(d) Cuối cùng, bước tiếp theo là tìm tập thứ tự lồng ghép IPS cho dãy lồng ghép thứ nhất với đa thức sinh f(d) và đa thức con f1(d).
Tạo bảng lồng ghép từ bộ m*S phần tử của m-dãy thứ nhất theo đa thức sinh f(d)
Ta sinh ra toàn bộ chu kỳ 2 m -1 phần tử của dãy con 1 theo đa thức sinh f1(d)
So sánh các cột trong bảng lồng ghép với từng đoạn con m-bit lệch pha giúp xác định các phần tử của tập thứ tự lồng ghép Ik Nếu cột thứ k chứa m phần tử từ vị trí j, ta có Ik = j Ngược lại, nếu cột thứ k chứa m bit toàn 0, ta gán Ik = -1 Mặc dù lý thuyết yêu cầu Ik = ¥ trong trường hợp này, nhưng để phù hợp với mảng số nguyên, giá trị -1 được sử dụng.
Bước 4: Thực thi sinh dãy lồng ghép phi tuyến trong thực tế
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một bước quan trọng trong việc bảo mật thông tin Thuật toán này sử dụng các kỹ thuật sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép, nhằm đảm bảo tính an toàn và bảo mật cho dữ liệu truyền tải Việc áp dụng các phương pháp này không chỉ nâng cao hiệu quả truyền dẫn mà còn giúp ngăn chặn các mối đe dọa từ bên ngoài, bảo vệ thông tin nhạy cảm trong môi trường mạng di động.
Ba bước tiền xử lý là cần thiết trong quá trình chuẩn bị dữ liệu Dữ liệu được lưu trữ để thực hiện sinh dãy lồng ghép phi tuyến, bao gồm các tham số n, m, S, đa thức g1(d) và tập thứ tự lồng ghép IPS Để tạo ra một phần dãy lồng ghép phi tuyến phục vụ cho mã hóa buffer dữ liệu, cần thực hiện các bước cụ thể.
Sử dụng công thức sinh m-dãy để tạo ra chu kỳ đầy đủ của dãy con với đa thức sinh g1(d) bậc m, kết quả được lưu trong mảng dữ liệu có kích thước 2 m -1 phần tử Để tránh việc thao tác quay vòng dữ liệu, ta nhân đôi mảng dữ liệu thành 2(2 m -1) phần tử Để sinh chuỗi khóa lồng ghép phi tuyến từ giá trị khởi đầu n phần tử, ta tách riêng (n-m) bit đầu tiên của giá trị khởi đầu, chuyển đổi thành số nguyên k để xác định thứ tự cột trong ma trận lồng ghép Đồng thời, m bit còn lại được chuyển thành số nguyên t để xác định vị trí bắt đầu lấy khóa trong cột.
Như vậy chuỗi khóa lấy ra sẽ được bắt đầu từ vị trị Ik + t, lấy liên tục tới vị trí
Để tạo ra đủ lượng bit khóa đầu ra cần thiết, quá trình sẽ tiếp tục chuyển sang các cột tiếp theo, sử dụng chuỗi khóa từ Ik+1 tới Ik+1+2 m -2 Nếu giá trị cột khóa vượt quá S-1, ta sẽ quay lại cột đầu tiên Trong trường hợp Ik = -1, chuỗi khóa đầu ra sẽ được lấy từ một chuỗi toàn 0 có kích thước 2 m -1 phần tử Để sử dụng chuỗi khóa đầu ra trong môi trường vi xử lý, cần chuyển đổi dãy bit thành dãy byte nhị phân bằng cách ghép 8 bit liên tục thành một byte dữ liệu.
Quá trình mã hóa và giải mã dữ liệu sử dụng phương pháp mã dòng (Stream Cipher) thông thường Khi thực hiện mã hóa, bản mã được tạo ra bằng cách cộng module 2 từng bit (XOR) giữa bản rõ và khóa Ngược lại, trong quá trình giải mã, bản mã cũng được xử lý bằng cách cộng module 2 để phục hồi thông tin ban đầu.
2 từng bit (XOR) giữa bản mã và khóa
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo an toàn cho thông tin Thuật toán này không chỉ giúp tối ưu hóa quá trình truyền tải mà còn ứng dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến, nhằm bảo mật dữ liệu hiệu quả hơn Việc áp dụng các kỹ thuật này sẽ nâng cao khả năng bảo vệ thông tin trong môi trường mạng di động hiện nay.
Thực thi thuật toán nén Melpe bằng Vi xử lý STM32F
3.5.1 Lưu đồ thuật toán nén thoại Melpe trên ARM [24]
Lý thuyết về thuật toán nén và giải nén Melp đã được giới thiệu trong chương 1 Phần này sẽ trình bày các giá trị thực nghiệm của quá trình nén Melpe được thực hiện trên vi xử lý ARM STM32F.
Hình 3.6 Lưu đồ giải nén thoại thuật toán Melpe trên ARM
Mã hóa voice strength băng thông liên quan đến việc lượng tử hóa voice strength của bốn dải tần cao thông qua thủ tục mã giả Thủ tục này sử dụng đầu vào là voice strength của 5 dải tần Đối với các trường hợp không phải tiếng nói, nếu biên độ voice strength đầu tiên nhỏ hơn hoặc bằng 0.6, giá trị lượng tử hóa của bốn dải tần cao sẽ được đặt thành 0.
Luồng bit Melpe đầu vào
Phân tích gói dữ liệu
Giải mã và nội suy biên độ Fourier
Chỉ số biên độ Fourier
Giải mã Voice strength tần thấp/Pitch period
Sinh và nội suy Jitter
Bộ lọc định hình xung
Suy Pitch period Điều chỉnh Pitch period
Hệ số lọc định hình xung
Tham số bộ lọc định hình
Giải mã và nội suy LPC
Lọc nâng cao phổ Lọc tổng hợp
Giải mã và nội suy tổng hợp
Tính toán hệ số khuếch đại
Chỉ số VS tần thấp/pitch period
Chỉ số voice strength băng thông
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số giá ngẫu nhiên dựa trên các dãy phi tuyến long ghép nhằm bảo mật dữ liệu Quá trình này sẽ được lượng tử hóa thành 0 hoặc 1, tùy thuộc vào biên độ nhỏ hơn hoặc lớn hơn 0.6.
Lượng tử hóa pitch period và voice strength tần thấp được thực hiện đồng thời với 7 bit Khi giá trị voice strength đầu tiên nhỏ hơn hoặc bằng 0.6, khung sẽ không có tiếng và một mã toàn giá trị 0 sẽ được gửi Ngược lại, logT được lượng tử hóa bằng bộ lượng tử đồng nhất 99 cấp, với phạm vi từ log20 đến log160 Giá trị voice strength sau khi lượng tử hóa sẽ nhận giá trị 0 cho trạng thái không tiếng và 1 cho trạng thái có tiếng.
Để tính toán độ khuếch đại (Gain), cần thực hiện hai lần đo trên một khung sử dụng kích thước cửa sổ thích nghi âm sắc, mà kích thước này được xác định theo các tiêu chí cụ thể.
Nếu độ mạnh của giọng nói đầu tiên lớn hơn 0.6, kích thước cửa sổ sẽ là bội nhỏ nhất của T(1), thường lớn hơn 120 mẫu Nếu kích thước này vượt quá 320 mẫu, nó sẽ được chia đôi Trường hợp này tương ứng với các khung tiếng nói, khi sự đồng bộ âm sắc được tìm thấy trong suốt quá trình tính toán gain Bằng cách sử dụng một bội nguyên của chu kỳ pitch, sự biến thiên của gain tương ứng với vị trí của cửa sổ sẽ được giảm thiểu.
+ Nếu voice strength đầu tiên ≤ 0.6, kích thước cửa sổ là 120 mẫu Đây là trường hợp khung không tiếng hoặc khung tiếng chập chờn
Mã hóa gain sử dụng bộ lượng tử đồng nhất 5 bit với phạm vi từ 10 tới 77 dB để lượng tử hóa giá trị gain thứ 2 Các điều kiện được xác định để kiểm tra trạng thái ổn định của khung, nếu năng lượng ít thay đổi, thủ tục sẽ kết thúc với chỉ số bằng 0 Nếu không, khung sẽ được coi là tạm thời và bộ lượng tử hóa đồng nhất cấp 7 sẽ được áp dụng Giá trị giới hạn của bộ lượng tử (gmin, gmax) được tính toán và mã hóa thông qua bộ lượng tử đồng nhất, tổng cộng tạo ra 8 mức có thể khai thác bằng 3 bits.
Cấp phát bit là một khía cạnh quan trọng trong các mô hình LPC, nơi mà việc lượng tử hóa LSF sử dụng MSVQ đóng vai trò then chốt Quá trình này liên quan đến việc đồng bộ hóa các mẫu thay đổi 1/0, nhằm đảm bảo tính chính xác và tin cậy của dữ liệu Tuy nhiên, việc bảo vệ lỗi chỉ dành cho một số thành phần nhất định, do đó đòi hỏi sự cân nhắc cẩn thận trong thiết kế hệ thống.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số giả ngẫu nhiên dựa trên các dãy phi tuyến long ghép nhằm bảo mật dữ liệu cho các khung không tiếng Mỗi khung sẽ được truyền tổng cộng 27 bit trong khoảng thời gian 22.5 ms, dẫn đến bit-rate đạt 1200 bps.
3.5.2 Lưu đồ thuật toán giải nén Melpe trên ARM [24]
Hình 3.7 Lưu đồ giải nén thoại thuật toán Melpe trên ARM
Hình 3.8 Lưu đồ giải nén thoại thuật toán Melpe trên ARM
Luồng bit Melpe đầu vào
Phân tích gói dữ liệu
Giải mã và nội suy biên độ Fourier
Chỉ số biên độ Fourier
Giải mã Voice strength tần thấp/Pitch period
Sinh và nội suy Jitter
Bộ lọc định hình xung
Suy Pitch period Điều chỉnh Pitch period
Hệ số lọc định hình xung
Tham số bộ lọc định hình
Giải mã và nội suy LPC
Lọc nâng cao phổ Lọc tổng hợp
Giải mã và nội suy tổng hợp
Tính toán hệ số khuếch đại
Chỉ số VS tần thấp/pitch period
Chỉ số voice strength băng thông
C hỉ s ố LP C Chỉ số gain
Luồng bit Melpe đầu vào
Phân tích gói dữ liệu
Giải mã và nội suy biên độ Fourier
Chỉ số biên độ Fourier
Giải mã Voice strength tần thấp/Pitch period
Sinh và nội suy Jitter
Bộ lọc định hình xung
Suy Pitch period Điều chỉnh Pitch period
Hệ số lọc định hình xung
Tham số bộ lọc định hình
Giải mã và nội suy LPC
Lọc nâng cao phổ Lọc tổng hợp
Giải mã và nội suy tổng hợp
Tính toán hệ số khuếch đại
Chỉ số VS tần thấp/pitch period
Chỉ số voice strength băng thông
C hỉ s ố LP C Chỉ số gain
Bài viết này tập trung vào việc xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM, cùng với ứng dụng của thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép nhằm đảm bảo an toàn cho dữ liệu Việc phát triển các phương pháp này không chỉ cải thiện hiệu suất truyền tải mà còn nâng cao tính bảo mật trong quá trình truyền thông.
Luồng bit Melpe đầu vào được phân tích và chỉ số được chuyển đến các bộ giải mã tương ứng Mô hình tạo tiếng nói đã được tích hợp vào cấu trúc giải nén, cho thấy sự cải tiến so với lưu đồ nén Trong quá trình xử lý, hai bộ lọc được bổ sung: bộ lọc nâng cao phổ với đầu vào là kích thích hỗn hợp và bộ lọc phân tán xung ở cuối Hai bộ lọc này nhằm nâng cao chất lượng tiếng nói tổng hợp, tạo ra luồng PCM đầu ra tốt hơn.
Trong quá trình giải mã Melpe, các tham số từ dòng bit sẽ được phân tích và giải mã theo các lược đồ tương ứng, bao gồm LPC (LSF), pitch period/voice strength tần thấp, voice strength băng thông, gain (g1 và g2), cờ không tuần hoàn và các biên độ Fourier Những tham số này đại diện cho thông tin của khung, thường được nội suy tuyến tính trong quá trình tổng hợp tiếng nói Đối với các khung không tiếng, giá trị mặc định được sử dụng cho một số tham số như pitch period = 50, jitter = 0.25, tất cả biên độ Fourier là 1, và giá trị voice strength là 0 Các giá trị này cần thiết cho việc nội suy tuyến tính “pitch period – by – pitch period” Jitter, một tham số mới, được sử dụng trong giải mã để điều khiển ngẫu nhiên trong quá trình tạo âm kích thích không tuần hoàn; cụ thể, jitter = 0.25 nếu cờ không tuần hoàn là 1, ngược lại thì jitter = 0 Đối với khung có tiếng, pitch period được giải mã từ dòng bit.
Bộ lọc tổng hợp là một bộ lọc đỉnh cộng được thiết kế theo hình thức trực tiếp, với các hệ số tương ứng được suy ra từ LSF.
Bộ lọc phân tán xung là một bộ lọc FIR 65 lớp, được trích xuất từ một xung tam đỉnh với phổ phẳng Bộ lọc này hoạt động gần như như một bộ lọc thông suốt, cho phép tín hiệu đi qua mà không bị biến dạng.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép nhằm bảo mật dữ liệu là rất quan trọng Đáp ứng biên độ trong quá trình này thường thay đổi không đáng kể Bộ lọc phân tán xung được sử dụng để cải thiện hiệu suất của bộ lọc tổng hợp băng thông, đặc biệt trong các vùng không có cộng hưởng đỉnh Tiếng nói tự nhiên sau khi được lọc băng thông có tỷ lệ đỉnh-trũng nhỏ hơn so với tiếng tổng hợp, giúp nâng cao chất lượng truyền tải.
Tối ưu hóa melpe
MELPe được ưa chuộng trong nhiều lĩnh vực, đặc biệt là an ninh quốc phòng, nhờ hiệu suất xuất sắc và tốc độ bit thấp Tuy nhiên, thuật toán của MELPe lại rất phức tạp và đòi hỏi nhiều thời gian để xử lý.
Trong luận văn này, MELPe được triển khai trên nền tảng ARM STM32F437 Cortex M4 Chúng tôi sử dụng Gprofile, một công cụ lập hồ sơ thống kê toàn hệ thống, để phân tích hiệu suất mã nguồn Gprofile cho phép lập hồ sơ toàn bộ chương trình, xác định thời gian thực thi và số lần gọi hàm, những thông số quan trọng cho quá trình tối ưu hóa.
Bảng thống kê dưới đây trình bày cấu hình các hàm thực thi của bộ mã hóa MELPe trước khi tối ưu hóa Tối ưu hóa chương trình thường được chia thành hai loại: tối ưu hóa thuật toán và tối ưu hóa mã nguồn, với mỗi phương pháp có thể được chi tiết hóa Đối với các hàm gọi ít nhưng thời gian thực thi dài, như iir_2nd_s, thời gian trung bình cho mỗi lần gọi là 0,03 mili giây, cho thấy khả năng tối ưu hóa ở cấp độ thuật toán Ngược lại, các hàm có mã nguồn nhỏ nhưng được gọi thường xuyên như L40_mac, L_mac và L_shl chiếm 50,81% tổng thời gian chạy chương trình, cho thấy cần tối ưu hóa ở cấp mã nguồn.
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một lĩnh vực quan trọng trong công nghệ thông tin Thuật toán này không chỉ giúp tối ưu hóa việc truyền tải dữ liệu mà còn đảm bảo tính bảo mật thông tin Bên cạnh đó, việc ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép cũng đóng vai trò then chốt trong việc bảo vệ dữ liệu, ngăn chặn các mối đe dọa từ bên ngoài Sự kết hợp giữa các phương pháp này sẽ nâng cao hiệu quả truyền thông và bảo mật cho hệ thống mạng GSM.
Bảng 3.5 Thống kê các hàm thực thi chính của Melpe
Tên hàm thực thi Số lần gọi hàm Thời gian (%)
3.6.2 Tối ưu hóa thuật toán (Optimization of algorithm)
Mục tiêu chính của tối ưu hóa thuật toán là đơn giản hóa mà vẫn giữ nguyên chất lượng giọng nói Để cải thiện logic của thuật toán mã, những phương pháp phổ biến bao gồm tái cấu trúc thuật toán, thay đổi thứ tự mã và loại bỏ các phép toán thừa.
1) Cấu trúc lại bộ lọc IIR : Trong thuật toán của MELPe, quy trình của bộ mã hóa bao gồm mô-đun tính toán đỉnh dư (residual peak calculation module) và sửa đổi mô-đun cường độ giọng nói băng thông (modification of bandpass speech strength module) Hai mô-đun này được gọi là bộ lọc IIR bậc hai (hàm “iir_2nd_s”) nhiều lần Bên trong hàm, có một lệnh lặp "for" gọi hàm "L_mult" và hàm "L_mac" Các hàm này bao gồm nhân, chuyển và cộng Câu lệnh shift có thể được đưa ra khỏi vòng lặp
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM và ứng dụng thuật toán sinh số giá ngẫu nhiên dựa trên các dây phi tuyến lồng ghép nhằm bảo mật dữ liệu Việc thực thi thuật toán này ở cuối vòng lặp không làm thay đổi kết quả, nhưng giúp đơn giản hóa quá trình tính toán.
2) Đơn giản hóa câu lệnh lựa chọn : Để đáp ứng nhu cầu của nhiều loại lệnh gọi khác nhau, một số hàm đang sử dụng rất nhiều cấu trúc if-else Hạn chế là các mã này có thể tiêu tốn một lượng lớn thời gian thực hiện trong các lệnh phán quyết và nhảy
Do đó các hàm này phải được tối ưu hóa từ cấu trúc bằng cách được viết lại dựa trên tần suất của lệnh rẽ nhánh
3.6.3 Tối ưu hóa mã (Optimization of code)
Mã nguồn MELPe tiêu chuẩn được viết bằng ANSI-C với thiết kế mô-đun, giúp nâng cao khả năng đọc nhưng cũng làm tăng số lượng lệnh gọi hàm, dẫn đến giảm hiệu quả Theo quy tắc 2/8, 80% thời gian chạy tập trung vào 20% mã, do đó, để tối ưu hóa hiệu suất, cần chú trọng vào phần mã chính này Ngoài ra, phong cách mã hóa C cần được điều chỉnh để tương thích với đặc điểm của kiến trúc và trình biên dịch ARM.
1) Tối ưu hóa các lệnh cơ bản : Tệp “mathhalf.c” chứa rất nhiều hàm thực hiện các phép toán số học nguyên thủy Nhiều trong số chúng là các phép toán cơ bản, chẳng hạn như nhân và tích lũy 32 bit (hàm “L _ mac”) hoặc phép cộng 32 bit bão hòa (hàm “L_add”), có thể được thực hiện bằng lệnh Extended ARM của như SMLAL và QDADD Sử dụng các hướng dẫn đặc biệt này có thể lưu các instructions một cách hiệu quả
2) Hàm nội tuyến (Inline function): Việc thêm tiền tố nội tuyến vào hàm có thể loại bỏ thời gian gọi hàm, vốn tiêu tốn nhiều thời gian Hàm nội tuyến đang thay thế trình gọi bằng mã nguồn của hàm, điều này sẽ làm tăng kích thước mã, cụ thể là trao đổi không gian lấy thời gian Do đó, chỉ có hàm với dung lượng mã nhỏ là thích hợp để sử dụng hàm nội tuyến
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo an toàn cho thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến lồng ghép, giúp bảo vệ dữ liệu khỏi những rủi ro và tấn công Việc áp dụng các kỹ thuật này không chỉ nâng cao tính bảo mật mà còn cải thiện hiệu suất truyền tải thông tin qua mạng di động.
Theo bảng trên, các hàm được sử dụng thường xuyên nhất là “L40_mac”,
“L_mac”, “L_shl”, “L_mult”, tác động của kích thước không gian lưu trữ là rất nhỏ, nhưng hiệu quả rất rõ ràng khi giảm 20% tổng thời gian chạy
3) Tối ưu hóa vòng lặp: Hầu hết các chương trình quan trọng sẽ chứa một vòng lặp Trên nền tảng ARM, các vòng lặp có instructions nhỏ khi chúng đếm ngược về
0 Đôi khi, các vòng lặp unrolling (loop unrolling) có thể đạt được hiệu suất tối đa Đây là các kỹ thuật đều được hiệu chỉnh trong code.
Phân tích kết quả thực nghiệm
Nền tảng thử nghiệm được phát triển trên hệ thống ARM Cortex M4, với quá trình mã hóa và giải mã được thực hiện bởi vi điều khiển STM32F437 của hãng ST.
Bộ vi xử lý Arm® 32-bit Cortex®-M4 được trang bị bộ tính toán số thực FPU, hoạt động với tần số 180 MHz Với tỷ suất DMIPS/MHz cao đạt 1.25, hệ thống có thể đạt hiệu năng tối đa lên đến 225 DMIPS.
+ Bộ nhớ: dung lượng bộ nhớ Flash 2 MByte, dung lượng SRAM 256Kbyte
Bảng 3.6 trình bày độ trễ của hai chuỗi kiểm tra trước và sau tối ưu hóa, với thời gian lần lượt là 16,75 giây và 3 giây Sau khi tối ưu hóa, độ trễ mã hóa mỗi khung hình giảm 63,6%, trong khi độ trễ giải mã giảm 41,6% Tổng độ trễ của thuật toán MELPe trên mỗi khung hình khoảng 55,4 ms, đáp ứng yêu cầu giao tiếp thời gian thực Chất lượng giọng nói được đánh giá bằng PESQ, cho thấy kết quả PESQ sau tối ưu hóa đạt 3.201, gần bằng 3.158 trước khi tối ưu hóa, chứng minh rằng quá trình tối ưu hóa không làm giảm chất lượng giọng nói.
Bảng 3.6 So sánh độ trễ tính toán Thời gian thoại (giây)
Frame Enc/Dec Delay khi chưa tối ưu (ms)
Delay sau khi tối ưu (ms)
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một bước quan trọng trong việc cải thiện an ninh thông tin Thuật toán này sử dụng các phương pháp sinh số ngẫu nhiên dựa trên các dãy phi tuyến để bảo mật dữ liệu hiệu quả Việc áp dụng các kỹ thuật này không chỉ giúp bảo vệ thông tin mà còn tối ưu hóa quá trình truyền tải trong môi trường mạng di động.
MELPe đã cải thiện hiệu suất ở tốc độ bit thấp hơn nhờ ba tính năng bổ sung Để tối ưu hóa cho ứng dụng kỹ thuật trên ARM Cortex M4, hai phương pháp chính được áp dụng: tối ưu hóa thuật toán và tối ưu hóa mã Sau quá trình tối ưu hóa, độ trễ của mỗi frame giảm từ 135.1 mili giây xuống 55.4 mili giây mà vẫn giữ nguyên chất lượng Các thí nghiệm cho thấy hiệu quả của việc tối ưu hóa đáp ứng tốt nhu cầu thực hiện theo thời gian thực.
Lưu đồ giải thuật khối mã hóa/giải mã
Giải pháp phân phối cụm từ khóa (passphrase) được lựa chọn trong Luận án là phân phối trước, giúp cả hai bên biết trước cụm từ khóa giống nhau.
3.8.1 Lưu đồ giải thuật khối mã hóa
Hình 3.9 Lưu đồ giải thuật khối mã hóa Đọc cụm từ khóa (PassPhase) Bắt đầu
Nạp trạng thái khởi đầu (Initial State)
Có dữ liêu thoại cần mã? Đọc dữ liệu thoại rõ ra buffer
Sinh dòng khóa bằng dãy lồng ghép (keystream)
Thực hiện mã hóa bằng mã dòng Gửi bản mã
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc bảo mật thông tin Thuật toán này không chỉ đảm bảo tính toàn vẹn của dữ liệu mà còn tối ưu hóa quá trình truyền tải Bên cạnh đó, việc ứng dụng thuật toán sinh số ngẫu nhiên dựa trên các dãy phi tuyến cũng giúp tăng cường bảo mật cho dữ liệu Sự kết hợp này mang lại một giải pháp hiệu quả trong việc bảo vệ thông tin trong môi trường mạng không dây.
Trong quá trình giao tiếp, bên gửi sẽ đọc cụm từ khóa (PassPhrase) đã được hai bên thống nhất trước đó và thiết lập trạng thái khởi đầu Hai bước này chỉ được thực hiện một lần duy nhất trong mỗi phiên liên lạc.
Khi có dữ liệu thoại cần mã hóa từ khối nén thoại Melpe, dữ liệu này sẽ được lưu vào bộ nhớ đệm Nếu không có dữ liệu, phiên sẽ kết thúc.
Tiếp theo sẽ sinh dòng khóa (keystream) bằng dãy lồng ghép
Thực hiện mã hóa luồng dữ liệu Melpe bằng mã dòng và tạo ra bản mã thoại Thực hiện gửi bản mã thoại sang phía bên nhận
3.8.2 Lưu đồ giải thuật khối giải mã
Hình 3.10 Lưu đồ giải thuật khối giải mã Đọc cụm từ khóa (PassPhase) Bắt đầu
Nạp trạng thái khởi đầu (Initial State)
Có nhận dữ liêu thoại mã? Đọc dữ liệu thoại mã ra buffer
Sinh dòng khóa bằng dãy lồng ghép (keystream)
Thực hiện giải mã bằng mã dòng
Xử lý giải nén thoại melpe
Xây dựng thuật toán truyền dữ liệu qua kênh thoại của mạng GSM là một nhiệm vụ quan trọng trong việc đảm bảo an toàn thông tin Thuật toán này sử dụng phương pháp sinh số ngẫu nhiên dựa trên các dây phi tuyến lồng ghép để bảo mật dữ liệu Việc áp dụng những kỹ thuật này giúp cải thiện hiệu quả truyền tải và bảo vệ thông tin nhạy cảm trong môi trường mạng di động.
Phía nhận sẽ đọc cụm từ khóa (PassPhase) mà 2 bên đã thống nhất từ trước và nạp trạng thái khởi đầu
Khi nhận được dữ liệu thoại mã từ phía gửi, sẽ lưu vào bộ nhớ đệm buffer Nếu không nhận được sẽ kết thúc phiên
Tiếp theo sẽ sinh dòng khóa (keystream) bằng dãy lồng ghép
Thực hiện giải mã luồng dữ liệu thoại mã nhận được bằng mã dòng và gửi luồng dữ liệu đó tới khối xử lý giải nén thoại Melpe.