Bảo mật tin nhắn điện thoại di động bằng J2ME

14:02 | 03/10/2007

Cùng với sự gia tăng số lượng người dùng điện thọai di động thì các tính năng dành cho điện thoại di động cũng tăng theo. Đây có thể được coi là một cuộc cách mạng trong lĩnh vực di động, nó biến chiếc điện thoại nhỏ bé thành một chiếc máy tính thu nhỏ, có thể đọc báo, tra từ điển. Tuy nhiên, bên cạnh những tính năng ưu việt đó, các thiết bị di động rất dễ bị đánh cắp hoặc mất mát thông tin.

1. Cách sử dụng J2ME- Java 2 Platform, Micro Edition.
Cài đặt J2ME Wireless Toolkit và viết code.
Đây là bộ công cụ do Sun phát triển, giúp các lập trình viên có thể kiểm tra và chạy thử chương trình của mình mà không cần có điện thoại thật. Có thể lấy bộ công cụ này từ địa chỉ : http://java.sun.com/products/j2metoolkit/. Chỉ việc cài đặt phần mềm này vào một thư mục, ví dụ như thư mục WTK104 trên thư mục gốc ổ đĩa C.
Sau khi hoàn thành các các bước ở trên, nhấp chuột vào nút bấm New Project và nhập  tên Project và Class muốn tạo, ví dụ TestMidlet. Trên cửa sổ chương trình sẽ hiển thị các thông báo về việc tạo các thư mục phục vụ cho việc xây dựng và thực thi mã chương trình như hình 1.



Hình 1

 

ToolKit sẽ tự động tạo 1 thư mục con trong thư mục apps có tên trùng với tên Project vừa tạo, trong trường hợp này là TestMidlet. Ta hãy điểm  qua vài thư mục quan trọng.
1. Bin: Chứa 2 file để cài đặt, .Jar (Java ARchive) và file miêu tả .jad
2. Lib: Chứa các thư viện bổ sung mà bạn muốn thêm vào chương trình
3. Res; là thư mục để bạn lưu các  file tài nguyên dành riêng cho chương trình như file văn bản và hình ảnh.
4. Src: Đây là thư mục quan trọng nhất, là nơi  đặt các file chứa mã nguồn
Sau đó viết đoạn code sau :



Cấu trúc  Midlet: Giống như dạng chương trình Applet trên J2SE, một Midlet luôn luôn kế thừa javax.microedition.midlet
Hàm cơ bản nhất trong mọi Midlet là startApp(), hàm này sẽ khởi tạo Midlet cũng như vận hành các thành phần hoặc đối tượng khác, ngoài startApp(), mỗi Midlet còn có pauseApp() và destroyApp(). Mỗi hàm này sẽ đựợc gọi thực thi tương ứng khi user chọn dừng hoặc thoát chương trình. (hình 2).



Hình 2


Màn hình thật sự trên điện thoại di động được hình tượng hóa bằng đối tượng Display. Mỗi Midlet chỉ có một và duy nhất một đối tượng Display có thể truy cập bằng cách dùng lệnh getDisplay(this).
2. Chạy chương trình mô phỏng việc mã hoá RSA trên điện thoại di động.
Chương trình được đặt trong một folder là “hoaf” với file nguồn MIDlet được đặt trong folder “src”. Để chạy được folder hoaf này phải copy file hoaf này vào folder apps của WTK104 - C:\WTK104\apps\ .
Trước hết vào KToolbar của WTK104 từ thanh menu Start như giới thiệu ở trên. Sau đó nhấn vào nút Open Project, chọn folder hoaf và nhấp nút OK, cửa sổ OpenProject sẽ hiện ra như hình 3.



Nhấn nút OpenProject khi đó sẽ xuất hiện hình 4.



Chọn nút tròn ở giữa để bắt đầu hoạt động một chương trình MiDlet RSA, sau đó viết một bản tin gốc cần mã hoá trên điện thoại di động  vào vùng text Bản tin trên màn hình, ta được như hình 5.



Sau khi ấn vào nút Ma hoa (nút sáng ở trên) thì bản tin sẽ được mã hoá RSA và thời gian tính toán với kết quả như hình 6.



Ấn vào nút GiaiMa ta thu được bản tin ban đầu với thời gian tính toán như hình 7. 


Lúc này người dùng  có thể chọn lựa nút Tiep hay nút dung để tiếp tục thực hiện lại chương trình mã hóa RSA với bản tin mới hay là kết thúc chương trình.  Có thể chọn thiết bị di động khác cho chương trình mô phỏng bằng cách chọn trong mục Device. Thiết bị đề cập bên trên là DefaultGrayPhone. Có thể lựa chọn thiết bị khác như : Motorola_i85s
Do điện thoại di động có bộ nhớ nhỏ, tốc độ xử lý không cao nên J2ME hiện đang là nền phát triển rất được quan tâm để người dùng cũng như nhà sản xuất có thể phát triển tính năng của điện thoại di động. Đây cũng là hướng nghiên cứu có tính khả thi và khả năng ứng dụng thực tế cao. Trong thời gian tới chúng tôi sẽ hoàn thiện hơn về các tính năng của chương trình viết bằng J2ME để thân thiện và hữu dụng trong việc cần bảo mật thông tin người dùng.