Mã hóa thông tin di động trong hệ thống di động có điểm khác biệt so với mã hóa thông tin trong các hệ thống khác. Mã hóa thông tin trong hệ thống thông tin di động cần đảm bảo các yếu tố:
Đảm bảo tính an ninh, an toàn thông tin.
Độ dài khóa thấp.
Tốc độ mã hóa cao.
Hiện nay, để bảo mật thông tin của các hệ thống thông tin truyền thống, ngƣời ta thƣờng sử dụng các phƣơng pháp sau:
- Sử dụng phương pháp mã hóa khóa đối xứng (ví dụ như DES) kết hợp với giao thức trao đổi khóa hoặc phương pháp phân phối khóa (ví dụ như Diffie Hellman)
Phƣơng pháp này rất hiệu quả đối với một hệ thống truyền thông bình thƣờng ví dụ nhƣ một mạng máy tính. Tuy nhiên mạng điện thoại di động có những đặc thù về thiết lập phiên kết nối, nên sẽ là không thực tế nếu ta áp dụng vào hệ thống thông tin di động vì rất khó để triển khai các giao thức trao đổi khóa hoặc phƣơng pháp phân phối khóa.
- Sử dụng phương pháp mã hóa khóa công khai RSA
Phƣơng pháp mã hóa RSA là một phƣơng pháp mã hóa nổi tiếng và rất thông dụng. Nhƣng do RSA dựa trên lý thuyết số nguyên tố lớn, các phép toán là “mũ” cho nên tiêu tốn rất nhiều phần cứng, yêu cầu bộ nhớ dung lƣợng cao, tốc độ xử lý nhanh.
Để đảm bảo bí mật, RSA sử dụng khóa có độ dài lớn.
Để thực hiện hệ mật mã RSA cho một mạng truyền tin bảo mật, ngoài việc xây dựng các chƣơng trình tính hoán hàm E (với tham biến đầu vào là n, e, x) và hàm D (với tham biến đầu vào là n, d, y), ta còn phải chọn cho mỗi ngƣời tham gia một bộ (n, e, d) để tạo các khóa công khai K’ và khóa bí mật K”. Hệ mật mã của mỗi ngƣời tham gia chỉ có khả năng bảo mật khi n = p.q là số nguyên rất lớn (và do đó p, q cũng phải là số nguyên tố rất lớn – nghĩa là p, q phải có biểu diễn thập phân cỡ hơn 100 chữ số) do đó, n có cỡ hơn 200 chữ số thập phân, hay n >= 10200
.
Tính toán các số e, d hay thực hiện các hàm E, D đều chủ yếu là thực hiện các phép toán số học trên các số nguyên dƣơng rất lớn. Vấn đề này trong các năm qua, khi các lập trình viên máy tính đã đề xuất nhiều chƣơng trình máy tính làm việc có hiệu quả. Tuy nhiên, khi ứng dụng vào điện thoại di động với khả năng phần cứng hạn chế là một điểm bất lợi lớn.
Chính vì những lý do nhƣ vậy mà RSA là không thích hợp cho việc triển khai trên điện thoại di dộng, thiết bị có khả năng phần cứng giới hạn.
- Sử dụng phương pháp mã hóa đường cong Elliptic
Năm 1985, Neal Koblitz và V.S.Miller đã độc lập nhau đề xuất việc sử dụng các đƣờng cong Elliptic cho các hệ mã hóa khóa công khai. Họ không phát minh ra thuật toán mã hóa mới với đƣờng cong Elliptic trên trƣờng hữu hạn, mà họ dùng những thuật toán đã có nhƣ Diffie – Hellman, sử dụng các đƣờng cong Elliptic.
Các đƣờng cong Elliptic có thể dùng trong nhiều ứng dụng nhƣ kiểm thử số nguyên tố hoặc bài toán ƣớc số nguyên. Phƣơng pháp mã hóa sử dụng đƣờng cong Elliptic (ECC) đƣợc dự báo là sẽ phổ biến hơn RSA, khóa nhỏ gọn hơn nhiều (163bit) so với RSA (1024bit). Độ dài khóa ảnh hƣởng rất nhiều đến tốc độ mã hóa, giúp chúng đƣợc thực hiện nhanh hơn so với RSA. Do đó, ECC là phƣơng pháp rất hiệu quả để triển khai thực hiện mã hóa trên điện thoại di động.
Việc sử dụng các phép toán trên trƣờng hữu hạn các điểm của đƣờng cong Elliptic (đặc biệt là phép bội đối với nhóm cyclic các điểm trên đƣờng cong Elliptic) thay cho việc dựa vào các số nguyên tố lớn làm cho phƣơng pháp mã hóa khóa công khai trên đƣờng cong Elliptic có khóa nhỏ hơn nhiều và tốc độ mã hóa nhanh hơn nhiều so với phƣơng pháp mã hóa RSA (và các phƣơng pháp mã hóa khác).
Phƣơng pháp mã hóa khóa công khai trên đƣờng cong Elliptic là phù hợp nhất đối với việc triển khai cài đặt trên môi trƣờng điện thoại di động và quy trình thiết lập kết nối phiên liên lạc của hệ thống thông tin di động.