Tải bản đầy đủ (.docx) (78 trang)

Nghiên cứu công nghệ SIM toolkit để xây dựng hệ thống dịch vụ cho thiết bị di động luận văn ths công nghệ thông tin

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.79 MB, 78 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
Trường Đại học Công nghệ
––––––––––oOo––––––––––

PHẠM VĂN CHIẾN

Nghiên cứu công nghệ SIM Toolkit để xây
dựng hệ thống dịch vụ cho thiết bị di động
Ngành:
Mã số:

Công nghệ thông tin
1.01.10

LUẬN VĂN THẠC SỸ

Người hướng dẫn khoa học:
PGS.TS Đoàn Văn Ban

Hà Nội - 2006


LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng
tôi, các số liệu và kết quả nghiên cứu nêu trong luận văn là
trung thực!

Hà Nội, tháng 10 năm 2006
Phạm Văn Chiến

2




LI CM N

Tôi muốn gửi lời cám ơn chân thành tới tất
cả những ng-ời đã hỗ trợ và giúp đỡ tôi trong
quá trình hoàn thành quyển luận văn này.
Tôi muốn gửi lời cám ơn đặc biệt tới PGS. TS. Đoàn
Văn Ban, ng-ời đã gợi ý cho tôi h-ớng nghiên cứu của
đề tài, ng-ời đã đ-a ra những nhận xét quý giá và
trực tiếp h-ớng dẫn tôi trong quá trình nghiên cứu.
Tôi xin cám ơn toàn thể đồng nghiệp tại Trung tâm Công
nghệ Thông tin - Học Viện Công nghệ B-u chính Viễn
thông, đơn vị mà tôi đang công tác, đã có những giúp đỡ
cho tôi trong quá trình công tác và học tập
Cuối cùng, tôi xin gửi những lời cám ơn chân thành nhất tới cha
mẹ, anh em và bè bạn của tôi, những ng-ời đã có nhiều động
viên, khuyến khích tôi trong cuộc sống cũng nh- trong học tập.

Hà nội 10 -2006
phạm Văn chiến

3


MỤC LỤC

MỞ ĐẦU ............................................................................................................................... 9
Chƣơng 1 - CÔNG NGHỆ PHÁT TRIỂN ỨNG DỤNG TRÊN THIẾT BỊ DI ĐỘNG
.............................................................................................................................................

1.1 Tổng quan về thị trƣờng di động .........................................................................
1.1.1Sự tăng trƣởng th
1.1.2Bùng nổ mạng di đ
1.1.3Nhu cầu sử dụng
1.2 Tổng quan về các công nghệ phát triển dịch vụ cho thiết bị di động .............
1.2.1 WAP (Wireless Application Protocol) ...........................................................
1.2.2J2ME (Java 2 Mob
1.2.3Mobile AppForge .
1.2.4SIM Toolkit ...........
1.3 Kết luận ....................................................................................................................
Chƣơng 2 - KIẾN TRÚC VÀ GIẢI PHÁP TRÊN NỀN CÔNG NGHỆ SIM TOOLKIT
.............................................................................................................................................
2.1 SIM Toolkit ...............................................................................................................
2.1.1Khái niệm về SIM
2.1.2Các chức năng củ
2.1.3Nguyên lý hoạt độ
2.1.4Kiến trúc SIM Too
2.1.5Các cơ chế của S
2.1.6Công nghệ OTA và
2.1.7File dữ liệu GSM .
2.1.8Tính bảo mật tron
2.1.9Các công cụ lập tr
2.2 Java Card.................................................................................................................
2.2.1Định nghĩa ...........
2.2.2Các thành phần củ
2.2.3Mô hình chuyển đ
2.2.4Java Card Applet
2.2.5Các hàm chuẩn củ
2.2.6Java Card RMI ....
2.3 SIM Toolkit Applet ..................................................................................................

2.3.1Định nghĩa ...........
2.3.2Cấu trúc SIM Tool
2.4 Mô hình phát triển ứng dụng SIM Toolkit ...........................................................
2.4.1Mô hình phát triển
2.4.2 Các bƣớc xây dựng phần mềm ....................................................................
2.5 Lập trình với các hàm giao diện của SIM Toolkit ..............................................
2.5.1Tạo và gửi lệnh P
2.5.2Các lệnh quản lý s
2.5.3Đọc nội dung file G
2.5.4Nhận và gửi bản t
2.5.5Mã hoá và giải mã
2.6 Kết luận ....................................................................................................................
Chƣơng 3 - XÂY DỰNG HỆ THỐNG THANH TOÁN ĐIỆN TỬ VÀ TRA CỨU
THÔNG TIN TÀI KHOẢN QUA NGÂN HÀNG NGOẠI THƢƠNG VIỆT NAM ........
3.1 Giới thiệu bài toán ..................................................................................................

4


3.1.1Yêu cầu bài toán ...
3.1.2Chức năng của hệ
3.2Phân tích thiết kế hệ thống .........................................
3.2.1Mô hình kiến trúc h
3.2.2Mô hình chức năng
3.2.3Lƣu đồ hoạt động c
3.3Thiết kế giao diện trên điện thoại di động ................
3.4Xây dựng chƣơng trình thử nghiệm ..........................
3.4.1Xây dựng các mô đ
3.4.2Các mô đun của ứn
3.5Một số giao diện chƣơng trình ứng dụng trên điện

3.5.1Giao diện chính của
3.5.2Giao diện truy vấn t
3.5.3Giao diện xem thôn
3.5.4Giao diện thanh toá
3.6Triển khai thử nghiệm ..................................................
3.7Kết luận ..........................................................................
KẾT LUẬN ..........................................................................................................................
TÀI LIỆU THAM KHẢO ....................................................................................................
PHỤ LỤC..................................
Phụ lục A – Danh sách tham số trong lệnh Proactive Command .........................
Phụ lục B – Cấu trúc thông tin trong Terminal Profile .............................................

5


DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
Viết tắt
AID
APDU
API
BER-TLV
CAP
CB
CDMA
CJCK
CJDK
CLUT
COD
COR
DAP

DES
DF
EEPROM
EF
ETSI
FID
OTA
GPRS
GSM
IJC
J2EE
J2ME
J2SE
JC
JCRE
JCVM
JDK


LSA
ME
MO
MF
MMI
MS
N/A
OS
OTA
PIN
PoR

RA
RAM
RE
RFM
RGB
RMI
ROM
SAT
SE
SIM
SIO
SMS
SMSC
SMS-PP
SoLSA
SS
SST
TAR
TDMA
TLV
USSD
WAP


DANH MỤC CÁC HÌNH VẼ
Hình 1.
Hình 2.
Hình 3.
Hình 4.
Hình 5.

Hình 6.
Hình 7.
Hình 8.
Hình 9.
Hình 10.
Hình 11.
Hình 12.
Hình 13.
Hình 14.
Hình 15.
Hình 16.
Hình 17.
Hình 18.
Hình 19.
Hình 20.
Hình 21.
Hình 22.
Hình 23.
Hình 24.
Hình 25.
Hình 26.
Hình 27.

Biểu đồ về tốc độ tăng trƣởng thuê bao di động.................................. 10
Chia sẻ thị trƣờng di động trên thế giới................................................11
Tỷ lệ phân chia thị phần mạng di động Việt Nam năm 2005................12
Kiến trúc thẻ SIM trên điện thoại di động..............................................19
Hoạt động của ứng dụng trên thẻ SIM..................................................19
Giao tiếp giữa thẻ SIM và thiết bị di động.............................................20
Kiến trúc và mô hình hoạt động trên nền SIM Toolkit........................... 20

Kiến trúc của Applet Triggerring............................................................21
Cấu trúc BER-TLV theo chuẩn 3GPP-TS 03.48................................... 22
Kiến trúc hệ thống OTA.........................................................................26
Cấu trúc file dữ liệu GSM......................................................................28
Mô hình bảo mật trong SIM Toolkit....................................................... 29
Cấu trúc tổng thể của nền Java............................................................ 32
Kiến trúc tổng quan của Java Card.......................................................33
Quá trình biến đổi file Java thành Applet trong Smart Card.................34
Đặc tính bảo mật trong Java Card........................................................36
Cấu trúc APDU điều khiển.................................................................... 37
Kiến trúc Java Card RMI....................................................................... 40
Mô hình hệ thống ứng dụng trên nền SIM Toolkit.................................43
Qui trình xây dựng ứng dụng SIM Toolkit............................................. 45
Kiến trúc tổng thể của hệ thống............................................................ 53
Mô hình chức năng nghiệp vụ...............................................................54
Lƣu đồ hoạt động của một phiên thực hiện thanh toán cƣớc..............55
Giao diện chính của ứng dụng trên di động..........................................60
Giao diện truy vấn thông tin tài khoản VCB..........................................61
Giao diện xem thông tin cƣớc của thuê bao MobiFone........................62
Thanh toán cƣớc thuê bao MobiFone qua tài khoản VCB...................63

8


MỞ ĐẦU
Một trong những nhu cầu thiết yếu của con người hiện nay là nhu cầu được
trao đổi thông tin. Cùng với sự phát triển như vũ bão của các thành tựu khoa học
công nghệ nói chung, công nghệ thông tin được xem là một trong những ngành
công nghệ mũi nhọn. Nhờ đó, nhu cầu thông tin của con người ngày càng được thoả
mãn.

Các thiết bị thông tin cố định được thay thế dần bằng các thiết bị cá nhân di
động đang trở nên hết sức quen thuộc với cuộc sống hiện đại ngày nay. Đặc biệt
điện thoại di động đã trở thành phương tiện thông tin liên lạc tiện lợi không thể
thiếu. Hiện nay, số lượng người sử dụng đang tăng nhanh, nhu cầu sử dụng các dịch
vụ mới cũng ngày càng tăng. Bởi vậy, thị trường thông tin dành cho các thiết bị di
động đầu cuối ngày càng phát triển.
Các thiết bị đầu cuối di động như điện thoại cầm tay, máy nhắn tin, truyền
hình Internet, PDA đã và đang trở nên rất phổ biến. Với sự phát triển các thiết bị di
động, các công nghệ sử dụng để xây dựng các ứng dụng trên các thiết bị này cũng
thay đổi theo từng ngày.
Các ứng dụng được xây dựng cho các thiết bị di động đầu cuối dựa vào bộ
công cụ phát triển trên thiết bị đó. Các bộ công cụ thì có nhiều nhưng có thể chia ra
làm hai dòng công nghệ chính là các công nghệ của Microsoft và công nghệ sử
dụng các phiên bản Java của Sun Microsystems. Với khả năng lập trình mạnh và
phổ biến của ngôn ngữ Java, việc xây dựng, phát triển các ứng dụng đang trở nên
đơn giản hơn nhiều.
Đề tài “Nghiên cứu công nghệ SIM Toolkit để xây dựng hệ thống dịch vụ cho
thiết bị di động” nhằm nghiên cứu về công nghệ lập trình ứng dụng cho thẻ SIM
+
của điện thoại di động phase 2 . Đây là một công nghệ còn khá mới mẻ tại Việt
Nam, là công cụ dành cho các nhà khai thác mạng di động (Network Operator).
Công nghệ này cho phép các nhà khai thác mạng di động phát triển và cung cấp các
dịch vụ giá trị gia tăng, các ứng dụng thương mại điện tử cho các thuê bao của họ
một cách mềm dẻo và hiệu quả.
Với mục tiêu phát triển các dịch vụ cho thiết bị di động, đề tài tập trung
nghiên cứu các đặc tính của công nghệ SIM Toolkit trên nền Java. Từ đó, đưa ra các
khuyến nghị áp dụng cho các nhà quản lý và khai thác mạng di động ở Việt Nam để
tăng lợi nhuận từ việc gia tăng các dịch vụ trên mạng viễn thông.
Nội dung của luận văn gồm ba chương:



Chương 1: Công nghệ phát triển ứng dụng trên thiết bị di động



Chương 2: Kiến trúc và giải pháp trên nền công nghệ SIM Toolkit


Chương 3: Xây dựng hệ thống thanh toán điện tử và tra cứu thông
tin tài khoản qua Ngân hàng Ngoại thương Việt Nam

9


Chƣơng 1 - CÔNG NGHỆ PHÁT TRIỂN ỨNG DỤNG TRÊN
THIẾT BỊ DI ĐỘNG
1.1 Tổng quan về thị trường di động
1.1.1 Sự tăng trưởng thuê bao di động trên thế giới
Trong những năm trở lại đây, thị trường các thiết bị di động đầu cuối phát
triển rất mạnh mẽ, đã tạo ra một bước ngoặt lớn trong lĩnh vực thông tin di động và
truyền thông. Hiện nay, có thể liệt kê ra có rất nhiều hãng cung cấp các thiết bị di
động đầu cuối nổi tiếng như điện thoại di động Nokia, Motorola, Samsung, Alcatel,
Fujitsu, Mitsubishi, Siemens, Sony Ericssion và các hãng máy tính cầm tay như:
Palm, Pocket PC.
Theo thống kê [3] của AJUG (Australia Java User Group Inc), thị trường
điện thoại di động đã tăng trưởng rất mạnh trong năm 2005. Số liệu thống kê cho
thấy, số điện thoại di động bán được trên toàn cầu là 1.906 triệu chiếc. Dự đoán số
lượng bán ra trong trong năm 2006 sẽ là 2.185 triệu chiếc.
Millions of Units


Hình 1. Biểu đồ về tốc độ tăng trưởng thuê bao di động
Ngoài ra, số thuê bao đầu cuối di động đặc biệt tăng mạnh tại thị trường
Châu Á, tiếp theo là thị trường Châu Mỹ. Trong khi đó, thị trường Tây Âu vẫn có
dấu hiệu bão hoà. Biểu đồ trên chính là dự báo về tốc độ tăng số thuê bao từ năm
2001 tới năm 2006.
Theo nghiên cứu [3], Nokia vẫn luôn là nhà cung cấp các thiết bị đầu cuối di
động lớn nhất thế giới với trên 1/3 thị phần toàn cầu như thể hiện bởi biểu đồ dưới,
Motorola theo sau với 14,8% thị trường tiêu thụ, còn Ericsson ít hơn với 8%
10


Hình 2. Chia sẻ thị trường di động trên thế giới
Sản phẩm của các hãng, các nhà cung cấp thiết bị rất phong phú, đa dạng,
nhiều chủng loại tính năng khác nhau nhưng có thể phân ra làm hai loại chính là:


Điện thoại di động: Nokia, Motorola, Samsung, Siemens, v.v…



Máy tính cầm tay: Palm, Pocket PC, v.v…

Xu hướng phát triển của các loại thiết bị cầm tay là tăng các tính năng của
thiết bị, để các thiết bị có khả năng hoạt động như một máy tính, ngoài các tính
năng truyền thống còn có các tính năng mới như: truy cập Internet, khả năng nạp và
chạy các ứng dụng mang tính thương mại như: tìm kiếm thông tin, thương mại điện
tử.
Mục tiêu chính của các nhà quản lý và khai thác mạng di động (Network
Operator) là tăng số lượng thuê bao. Điều này chỉ có thể nhận được bằng sự kết hợp
các chiến lược như:



Tăng độ tin cậy và trung thành của khách hàng.


Tăng lưu lượng sử dụng thông qua các dịch vụ giá trị gia tăng hấp
dẫn trên mạng lưới.

Tạo sự khác biệt qua hệ thống chăm sóc khách hàng và cách thức
cung cấp dịch vụ.

Xây dựng các dịch vụ giá trị gia tăng tương thích, độc lập với thiết
bị di động của khác hàng.
Trong những năm gần đây, công nghệ dẫn đầu để cung cấp các dịch vụ giá trị
gia tăng trong mạng GSM và đáp ứng được các điều kiện cần thiết trên là công nghệ
SIM Toolkit. Công nghệ này đã được chuẩn hoá quốc tế trong GSM 11.14. Việc áp
dụng công nghệ SIM Toolkit cho phép các nhà quản trị mạng di động có thể cung
cấp cho các thuê bao của mình một loạt các ứng dụng đa dạng, phong phú và mềm
dẻo.
11


Vào năm 1999, có khoảng 20% nhà quản trị mạng di động (Network
Operator) GSM sử dụng công nghệ SIM Toolkit sử dụng nền này để phân phối các
dịch vụ giá trị gia tăng của họ, và vào cuối năm 2000 con số này đã là 50%.
Theo thống kê của tổ chức SIMAlliance vào cuối năm 2005, xấp xỉ 90% tất
cả các Handset GSM đã tương thích với chuẩn phase 2+. Đây chính là cơ hội rất lớn
cho phép phát triển các dịch vụ dựa trên công nghệ này.

1.1.2 Bùng nổ mạng di động tại Việt Nam

Thị trường thông tin di động trong nước trong thời gian gần đây đang rất sôi
động. Ngoài hai nhà cung cấp dịch vụ thông tin di động truyền thống là GPC và
VMS sử dụng công nghệ GMS, mới đây Viettel cũng đã chính thức tham gia và chia
sẻ thị trường này với số lượng thuê bao lên đến 2 triệu chỉ trong vòng hơn một năm.
Ngoài ra, Công ty Cổ phần Viễn thông Sài Gòn - SPT cũng đã đưa vào khai thác hệ
thống điện thoại di động theo công nghệ CDMA từ năm 2003, có tính bảo mật cao
và nhiều triển vọng, làm cho thị trường thông tin di động nhộn nhịp hẳn lên. Dự báo
sẽ có một cuộc cạnh tranh vô cùng sôi động giữa các nhà cung cấp dịch vụ trong
thời gian tới. Trong năm nay, EVN Telecom và HaNoi Telecom cũng chính thức
khai trương.
Theo số liệu của Viện Chiến lược Bưu chính Viễn thông và Công nghệ thông
tin vào cuối năm 2005, bốn doanh nghiệp viễn thông di động đang chia sẻ thị phần
tại Việt Nam thì VinaPhone chiếm 48,72%, tiếp đó là MobiFone (35,63%), Viettel
(11,41%) và SFone (4,24%). Viettel đã đạt được 2 triệu thuê bao di động tính đến
thời điểm hết năm.

Hình 3. Tỷ lệ phân chia thị phần mạng di động Việt Nam năm 2005
Năm 2005, theo số liệu điều tra của tạp chí e-Chip, trên 50% số người đang
dùng điện thoại di động cho biết sẽ lựa chọn mạng MobiFone, trên 28% chọn
VinaPhone và chỉ 4% chọn S-Fone. Đối với những người hiện chưa dùng điện thoại
di động, trên 43% lựa chọn MobiFone, gần 28% lựa chọn VinaPhone, 25% lựa chọn
Viettel và 2% lựa chọn S-Fone.

12


1.1.3 Nhu cầu sử dụng dịch vụ của các thuê bao di động
Để áp dụng khi triển khai ứng dụng vào thị trường Việt Nam cần chú ý đến
yếu tố nhu cầu của khách hàng. Điều đó sẽ quyết định đến hướng áp dụng cũng như
qui mô phạm vi của ứng dụng. Thị trường viễn thông Việt Nam còn khá non trẻ

trong lĩnh vực không dây.
Hiện nay, có hai loại dịch vụ đang được chú trọng là dịch vụ giá trị gia tăng
và dịch vụ thương mại điện tử trên mạng di động.
1.1.3.1 Dịch vụ giá trị gia tăng
Các dịch vụ giá trị gia tăng trên mạng di động đang được phát triển mạnh
như các dịch vụ cho phép người sử dụng điện thoại di động tải các ứng dụng như
Ringtones, Logo, hoặc các dịch vụ tra cứu thông tin như thông tin ngân hàng, thời
tiết, chương trình vô tuyến. Đặc điểm của loại hình dịch vụ này hoạt động theo mô
hình Client/Server. Các dịch vụ này có thể được cập nhật trên Server của nhà cung
cấp dịch vụ.
Tuy nhiên, xu hướng sắp tới là thay thế các loại hình dịch vụ tra cứu truyền
thống (tra cứu qua nhắn tin SMS) bằng việc xây dựng một ứng dụng trong SIM.
Ứng dụng này đưa ra dưới dạng thực đơn thân thiện với người sử dụng. Nhờ đó, nó
khắc phục được một số hạn chế như người dùng không phải nhớ cấu trúc lệnh và từ
khoá. Hơn nữa, việc kiểm tra lỗi dịch vụ có thể được đưa ra ngay khi người sử dụng
nhập thông tin từ thiết bị di động.
1.1.3.2 Dịch vụ thương mại điện tử
Các dịch vụ thương mại điện tử qua thiết bị di động hiện nay gặp một khó
khăn lớn như sự hạn chế về vấn đề bảo mật. Với thế mạnh của mình, ứng dụng SIM
Toolkit đã khắc phục được hạn chế này.
Song song với công nghệ WAP, công nghệ SIM Toolkit được đánh giá là có
tiềm năng lớn trong việc phát triển dịch vụ thương mại điện tử trên mạng di động.

1.2 Tổng quan về các công nghệ phát triển dịch vụ cho thiết bị di
động
Cùng với sự phát triển của các loại thiết bị di động, các công nghệ áp dụng
để tạo lập ứng dụng trên mạng di động phát triển rất nhanh chóng, Nhờ đó, đã tạo ra
môi trường thuận lợi trong việc phát triển ứng dụng một cách đa dạng và phong
phú.
Tuy ra đời muộn so với hệ thống thông tin hữu tuyến nhưng tốc độ phát triển

của hệ thống mạng thông tin di động cao hơn rất nhiều. Nguyên nhân là do hệ thống
này phù hợp với xu hướng phát triển của thời đại và nhu cầu của thị trường.
Theo biểu đồ trên các thuê bao sử dụng công nghệ điện thoại tế bào tăng
trưởng nhanh. Công nghệ GSM được sử dụng chủ yếu ở Tây Âu, và Châu Á, phần
lớn ở Trung Quốc. Công nghệ CDMA tiếp tục được áp dụng rộng rãi tại Mỹ và bắt
đầu thâm nhập thị trường Châu Á với tốc độ khá nhanh. Hai chuẩn về thông tin di
13


động tế bào khác là IS-136 TDMA và chuẩn PDC (Personal Digital Cellular) của
Nhật không được phát triển mạnh trên thị trường và đang có dấu hiệu suy giảm.
Ngày nay, nhiều hệ thống điện thoại tế bào trên thế giới từ thế hệ thứ hai
đang chuyển dần sang điện thoại thế hệ thứ ba để có thể cung cấp các dịch vụ mới
như: Wireless Video, Internet Web Browsing. Ít nhất có hai chuẩn 3G được triển
khai là: W-CDMA, chuẩn này được biết đến ở Châu Âu như hệ thống UMTS
(Universal Mobile Telephone Service) và CDMA2000 là chuẩn được phát triển từ
mạng CDMA-One [3].
Sau đây là một vài bộ công cụ, giao thức chính hiện đang phổ biến trên thế
giới được áp dụng để xây dựng ứng dụng cho các các thiết bị di động đầu cuối.

1.2.1 WAP (Wireless Application Protocol)
WAP [7] ra đời từ năm 1997 với mục đích tích hợp dịch vụ World Wide Web
trong điện thoại di động. Nokia, Motorola, Ericssons, Unwire Planet chính là các
nhà cung cấp điện thoại di động đi đầu trong việc phát triển các phiên bản đầu tiên
của WAP.
WAP là một chuẩn hỗ trợ cho lập trình ứng dụng không dây. Phần quan trọng
nhất của WAP là WAP Gateway. Wap Gateway thực chất là một cổng giao tiếp giữa
mạng Wireless và mạng Internet. Như đã biết, trước khi có Wap Gateway thì việc
trao đổi thông tin giữa hai mạng này là rất khó khăn. Internet là một kho dữ liệu
khổng lồ trong khi các ứng dụng không dây lúc đó chưa có cách nào để tiếp cận với

kho dữ liệu ấy. Wap Gateway ra đời nhằm giải quyết vấn đề đó. Như vậy, Wap
Gateway là một cầu nối giữa mạng không dây và Internet.
Thiết bị di động muốn truy nhập tới Internet cần quay số tới WAP Gateway.
Sau đó, điện thoại sẽ được cung cấp một địa chỉ IP và có thể truy nhập Internet như
một máy tính bình thường. WAP ra đời tạo ra một hướng mở mới cho phép phát
triển các ứng dụng mới cho điện thoại di động nói riêng hay các thiết bị di động đầu
cuối nói chung.
Hiện nay tại Việt Nam, ba nhà cung cấp điện thoại di động chính là GPC,
VMS và Viettel cũng đã đưa Wap Gateway 2.0 vào sử dụng. Đó chính là những
thuận lợi rất lớn để phát triển các ứng dụng không dây cho các đầu cuối di động .

1.2.2 J2ME (Java 2 Mobile Edition)
J2ME [9] không phải là công nghệ tạo lập ứng dụng cho thiết bị di động đầu
tiên dựa trên nền Java. Trước đó, hãng Sun Microsystems đã đưa ra hai công nghệ là
PersonalJava và EmbeddedJava, cho phép xây dựng ứng dụng Java chạy trên cấu
hình phần cứng tương đối lớn.
Các ứng dụng J2ME chạy trên các thiết bị cầm tay phải có khả năng thích
ứng về các hạn chế của cấu hình thiết bị như dung lượng bộ nhớ thấp, màn hình
hiển thị nhỏ, bộ vi xử lý tốc độ thấp. Khác với SIM Toolkit, ứng dụng J2ME được
cài đặt trên thiết bị cầm tay. Trong khi đó, ứng dụng SIM Toolkit được cài đặt trên
SIM.

14


J2ME được cấu thành bởi ba thành phần chính: Configuration, Profile và các
gói tuỳ chọn.
Configuration chính là môi trường chạy Java đầy đủ, bao gồm: máy ảo Java,
bộ mã giao tiếp, tập các lớp cơ bản của Java.
Profile kết hợp với Configuration để tạo thành bộ phận hoàn chỉnh có thể hỗ

trợ đầy đủ cho thiết bị di động. Hầu hết Profile đều định nghĩa lớp giao diện cho
phép xây dựng ứng dụng giao tiếp.
Các gói tuỳ chọn là một tập các API có khả năng thực hiện các nhiệm vụ
không thuộc Configuration và Profile cụ thể nào. Ví dụ các lớp hỗ trợ Bluetooth
được xem là một trong những lớp tuỳ chọn.

1.2.3 Mobile AppForge
Mobile AppForce [3] do Microsoft phát triển với công cụ là MobileVB được
tích hợp trực tiếp trong Visual Basic tạo ra công cụ hỗ trợ phát triển các ứng dụng
cầm tay Mobile AppForce hỗ trợ trên 90% thiết bị cầm tay trên thế giới với 3
platform là Palm OS, Pocket PC và Symbian OS.
Ưu điểm nổi bật của Mobile AppForce là dễ sử dụng do phát triển trên môi
trường Visual Basic. Nó cho phép phát triển nhiều loại ứng dụng: các ứng dụng
chạy trên các máy đơn hay các ứng dụng mạng kết nối qua mạng không dây phục
vụ cho các lĩnh vực thư tín, thương mại điện tử, tra cứu thông tin. Tuy nhiên,
MobileVB có hạn chế là hỗ trợ chủ yếu các loại máy tính cầm tay như Palm hay
Pocket PC. Trong khi đó, điện thoại di động chỉ được hỗ trợ ở một số loại như
Nokia, Communicator 9210, Sony Ericsson P800.

1.2.4 SIM Toolkit
SIM Toolkit [3] là một công cụ hữu hiệu dành cho các nhà khai thác mạng di
động để phát triển và cung cấp các dịch vụ giá trị gia tăng tới các thuê bao của họ
một cách nhanh chóng và hiệu quả. SIM Toolkit bao gồm một tập các lệnh và thủ
tục cung cấp các đặc tính hỗ trợ các ứng dụng trên thẻ SIM, cho phép các ứng dụng
này có thể tương tác và điều khiển bất kỳ thiết bị di động nào hỗ trợ các đặc tính đó.
Các đặc tính chính này bao gồm: Profile Download, Proactive SIM, tải dữ liệu về
SIM, lựa chọn thực đơn, điều khiển cuộc gọi, bảo mật.
Việc so sánh SIM Toolkit với công nghệ khác để phát triển các dịch vụ giá trị
gia tăng trên điện thoại di động thường được các chuyên gia so sánh với công nghệ
WAP (Wireless Application Protocol).

WAP và SIM Toolkit, cả hai đều có thể cung cấp cơ sở hạ tầng cho thương
mại điện tử di động nhưng theo hai xu hướng khác nhau.
SIM Toolkit được sử dụng cho các ứng dụng cần độ tin cậy cao như Banking
Mobile và các dịch vụ thông tin tĩnh hơn như Hotline, Company Dictionary và
Yellow Page. WAP sẽ được sử dụng cho các dịch vụ động hơn như: tìm kiếm
Internet, các dịch vụ truy nhập thông tin thay đổi.

15


Hệ thống SIM Toolkit có nhiều ưu điểm hơn so với WAP. Dịch vụ “Mobile
Banking” trên hệ thống WAP đã tồn tại nhưng còn nhiều điểm hạn chế như: tính
cồng kềnh (extremely niche) trong cài đặt, giới hạn về giá cả cao, yêu cầu mô hình
thiết bị di động mới. Ngoài ra, trong vấn đề bảo mật các dịch vụ thương mại điện tử,
WAP thực sự không an toàn. Kiến trúc bảo mật của WAP là chưa được chứng minh
còn SIM Toolkit sử dụng công nghệ thẻ thông minh (Smart Card) đã được chứng
minh và đảm bảo cho các ứng dụng thương mại điện tử.
Tuy nhiên, theo các nhà phân tích cả SIM Toolkit và WAP sẽ cùng tồn tại
như các nền khác nhau cho các ứng dụng thương mại điện tử trong nhiều năm tới.

1.3 Kết luận
Hiện nay, trên thị trường Việt Nam có 06 nhà cung cấp dịch vụ di động chính
đó là VinaPhone, MobiFone, SFone, Viettel, EVN Telecom, Hanoi Telecom. Trong
đó VinaPhone, MobiFone và Viettel có các đầu cuối di động được sử dụng theo
chuẩn GSM với tất cả các thiết bị đầu cuối này đều thuộc thế hệ 2 và hỗ trợ các dịch
vụ giá trị gia tăng có hỗ trợ SIM Toolkit. Vì vậy, việc triển khai hệ thống SIM
Toolkit rất có tính khả thi, khách hàng chỉ cần mua một thẻ SIM mới có hỗ trợ SIM
Toolkit, các nhà cung cấp dịch vụ sẽ nạp các ứng dụng mới vào SIM thông qua OTA
cho các thuê bao.
Số lượng người sử dụng điện thoại di động theo chuẩn GSM tại Việt Nam rất

lớn, khoảng gần 10 triệu thuê bao. Do đó, việc phát triển các ứng dụng SIM Toolkit
là một hướng đi mới và rất có triển vọng. Bất kỳ nhà khai thác nào triển khai công
nghệ SIM Toolkit sớm sẽ rất thuận lợi cho việc cạnh tranh nhằm thu hút các thuê
bao về phía mình. Công nghệ này cho phép cung cấp các dịch vụ mới nhanh chóng,
kích thích nhu cầu sử dụng dịch vụ của khách hàng, tăng doanh thu cho các nhà
khai thác mạng.
Từ những phân tích, so sánh giữa các công nghệ nền tảng đã nêu ở phần trên,
việc xây dựng ứng dụng sẽ tập trung vào các điểm mấu chốt sau:

Nghiên cứu công nghệ SIM Toolkit trên nền Java, phân tích khả
năng đáp ứng yêu cầu về tính bảo mật.

Xây dựng mô hình hệ thống kết nối theo chuẩn J2EE áp dụng cho
bài toán thương mại điện tử trên thiết bị di động.
Từ kết quả đạt được đưa ra các khuyến nghị áp dụng cho các nhà quản lý và
khai thác mạng di động ở Việt Nam để tăng lợi nhuận trong việc gia tăng các dịch
vụ trên mạng viễn thông.

16


Chƣơng 2 - KIẾN TRÚC VÀ GIẢI PHÁP TRÊN NỀN CÔNG
NGHỆ SIM TOOLKIT
2.1 SIM Toolkit
2.1.1 Khái niệm về SIM Toolkit
Với xu hướng tích hợp các dịch vụ, một chiếc điện thoại di động không chỉ
sử dụng thông tin đơn thuần nữa mà được tích hợp nhiều chức năng khác như: nhắn
tin, tra cứu thông tin, tải dữ liệu trên mạng, truy cập mạng Internet. Các dịch vụ trên
được xây dựng dựa trên việc tích hợp các công nghệ khác nhau như: SMS, WAP,
J2ME, SIM Toolkit [3].

SIM Toolkit bao gồm một tập các lệnh và thủ tục cung cấp các đặc tính hỗ
trợ các ứng dụng trên thẻ SIM, cho phép các ứng dụng này có thể tương tác và điều
khiển bất kỳ thiết bị di động nào hỗ trợ các đặc tính đó. Các đặc tính chính này bao
gồm: Profile Download, Proactive SIM, tải dữ liệu về SIM, lựa chọn thực đơn, điều
khiển cuộc gọi, bảo mật.
Nhờ những đặc tính trên, ứng dụng được nạp vào SIM thuận lợi qua OTA
(Over The Air) mà không cần khách hàng phải mang thẻ SIM đến các đại lý. Hơn
nữa, dựa trên công nghệ SIM Toolkit, giao diện của ứng dụng được xây dựng thân
thiện với người dùng và đặc biệt là cho phép xây dựng các ứng dụng yêu cầu tính
bảo mật cao.

2.1.2 Các chức năng của SIM Toolkit
Mô đun nhận dạng thuê bao hay SIM (Subscriber Identify Module) được giới
thiệu cách đây hơn 10 năm trước. Ban đầu, nó được định nghĩa giống như một mô
đun bảo mật sử dụng cho mục đích nhận thực người dùng với một bộ nhớ khá nhỏ
cho dữ liệu người dùng và mạng như: các số điện thoại, tên thuê bao. Thêm vào đó,
các SIM ngày nay có khả năng trở thành một nền cho các dịch vụ giá trị gia tăng
bằng cách sử dụng một micro-computer có trong SIM. Ý tưởng sử dụng SIM giống
như một máy tính cá nhân, có thể xử lý các thông tin nhận được qua OTA (Over The
Air), được thảo luận lần đầu tiên trong nhóm chuyên gia SIM (SIM Experts Group),
tiền thân của nhóm SMG9 năm 1991. Ý tưởng này được phát triển xa hơn bởi các
nhà quản lý và khai thác mạng GSM bằng việc dữ liệu được cập nhật vào SIM qua
OTA (Over The Air).
Mục tiêu của SIM Toolkit [3,8] bao gồm các cơ chế cho phép:

Có thể hiển thị Text từ SIM lên thiết bị hiển thị của Mobile
Equipment


Khởi tạo cuộc gọi tới một số được lưu trong SIM.



Gửi một điều khiển dịch vụ bổ sung SS (Supplementary Service),
chuỗi USSD (Unstructured Supplementary Service Data) hay một bản tin
SMS.


Chơi một bản nhạc


17




Thiết lập một giao tác với người sử dụng



Cung cấp thông tin nội bộ từ ME tới SIM


Cho phép các bản tin hỗ trợ người dùng được hiển thị nếu được yêu
cầu

Cho phép thiết lập một kênh GPRS độc lập để trao đổi dữ liệu trong
suốt giữa ứng dụng trong SIM và một thực thể ngoài mạng.
Dựa trên cơ sở các đặc tính của SIM Toolkit, một ứng dụng trên SIM có thể
được xây dựng với các chức năng như:


Cung cấp một bản tin SMS đầy đủ tới thiết bị di động sử dụng SIM
và yêu cầu thiết bị di động gửi bản tin này.

Tải dữ liệu tới SIM từ mạng. Có thể là một ứng dụng mới được nạp
vào SIM, cũng có thể là dữ liệu hay các lệnh cho các ứng dụng SIM. Việc
tải này được thực hiện thông qua một kênh SMS hay một kênh riêng
GPRS nếu được thiết bị di động hỗ trợ.

Điều khiển các cuộc gọi thông minh thông qua các số đã được khách
hàng sử dụng. Do đó, cuộc gọi có thể được thay đổi hay bị khoá bởi SIM.

Nhập các thay đổi về thông tin nội bộ, việc định danh tế bào “cell
identity”, trạng thái cuộc gọi “call status”, trạng thái chung tới ứng dụng
trong SIM.

Thực hiện tìm kiếm thông tin trên Internet qua địa chỉ URL bằng
cách sử dụng một trình duyệt siêu nhỏ (micro-browser) trong SIM.
Ứng dụng của bộ công cụ SIM Toolkit đầu tiên là dịch vụ
“Cellnet/Barclaycard Remote Banking” được khai trương vào 05/1997 tại Thụy
Điển trên thẻ SIM của GemXplore.
Năm 1997, dịch vụ thanh toán từ xa Telia/PostGirot cũng được khai trương
trên các thẻ SIM của GemXplore. Tháng 06/1998, SmartTone HongKong khai
trương dịch vụ thông tin SIM Toolkit Châu Á đầu tiên cũng trên thẻ SIM của
GemXplore.
Hiện nay, trong hệ thống thông tin di động thế hệ hai, SIM Toolkit được định
nghĩa trong chuẩn GSM 11.14. Từ phiên bản 04 trở đi, GSM 11.14 được thay bằng
chuẩn 3GPP 31.111. Trong chuẩn này, định nghĩa các đặc tính Universal SIM
Application Toolkit (USAT) cho mạng di động thế hệ thứ ba.

2.1.3 Nguyên lý hoạt động của thẻ SIM

Kiến trúc thẻ SIM [3] gồm có một CPU có 8 bit hoặc 16 bit chạy với tốc độ
3.7MHz, với 1K RAM và có bộ nhớ EEPROM ít nhất là 16K. Hiện nay, các loại thẻ
SIM thường có bộ nhớ 32K hoặc 64K và có CPU lên tới 32 bit.

18


Hình 4. Kiến trúc thẻ SIM trên điện thoại di động
Ứng dụng SIM Toolkit được nạp vào thẻ SIM, và được thực hiện khi có các
điều kiện như:


SIM có hỗ trợ Java Card.



Handset của SIM có hỗ trợ SIM Toolkit hoặc là kiểu GSM phase 2+.
I speak
SIM Toolkit

I have a STK
application
I wait for your
instructions

Display
1.
Wheather?
2.
Sports?

And send me back
user selection

Hình 5. Hoạt động của ứng dụng trên thẻ SIM
Sau khi bật nguồn, SIM sẽ xác định xem thiết bị di động có hỗ trợ SIM
Toolkit không bằng cách gửi lệnh Profile Download. Tiếp theo, nó sẽ gửi lệnh Set
Up Menu tới thiết bị di động, và các Menu được hiển thị trên màn hình. Khi người
dùng chọn một mục trong Menu, ngay lập tức lệnh này được chuyển tới ứng dụng
trên thẻ SIM để xử lý.
Hình vẽ mô phỏng cách trao đổi thông tin giữa SIM và thiết bị di động của
một ứng dụng SIM Toolkit, các lệnh được trao đổi giữa SIM và thiết bị di động là
các APDU (Application Protocol Data Unit).

19


SIM

Yêu cầu nạp cấu hình
Trả lại dữ liệu cấu hình
Yêu cầu thiết lập thực đơn
Trả lại kết quả lệnh
Yêu cầu hiển thị thực đơn
Trả lại lựa chọn thực đơn

Hình 6. Giao tiếp giữa thẻ SIM và thiết bị di động

2.1.4 Kiến trúc SIM Toolkit Framework
Toolkit
Applet 1


Install/Uninstall

Applet
Triggerring

APDU
Envelopes

GSM Framework
GSM Files
JCRE

Hình 7. Kiến trúc và mô hình hoạt động trên nền SIM Toolkit
Để các ứng dụng có thể hoạt động được trong SIM cần có một hệ nền SIM
Java Card hay còn gọi là SIM Toolkit Framework. Nhờ hệ nền này, các ứng dụng
trên SIM mới có thể trao đổi dữ liệu và điều khiển các Handset. Nền SIM Toolkit


cho phép các nhà phát triển xây dựng các Applet (các ứng dụng trong SIM được gọi
là các Applet) trên SIM. Các Applet này có thể được nạp vào SIM từ xa bởi nhà
cung cấp dịch vụ bằng cách sử dụng cơ chế “Data download to SIM” của SIM
20


Toolkit. Sau khi nạp các Applet vào bộ nhớ của SIM và chạy nhờ các lớp thư viện
API (sim.acccess và sim.toolkit), SIM Toolkit Framework có thể thực hiện hai
nhiệm vụ chính là cài đặt và gỡ bỏ các ứng dụng Applet.
Các thành phần chính của SIM Toolkit Framework bao gồm:



Kích hoạt Applet (Applet Triggering)



Điều khiển lệnh thực thi (Proactive Command Handler)



Cài đặt và gỡ bỏ Applet (Applet Install/Uninstall)



Bảo mật (Security)

Ngoài ra, có các thành phần khác quan trọng là GSM Framework, GSM
Applet, file GSM.
Các thành phần này thực hiện các cơ chế của SIM Toolkit như: cài đặt các
ứng dụng, thực hiện Triggering Applet (kích hoạt các Applet) khi có một sự kiện tới,
thực hiện xử lý gửi hoặc nhận dữ liệu thông qua các lệnh Proactive Command, thực
hiện các chức năng bảo mật như lưu một tập các khoá và thuật toán sử dụng cho bảo
mật.
2.1.4.1 Applet Triggerring
Applet Triggerring là bộ phận kích hoạt ứng dụng của SIM Toolkit có nhiệm
vụ kích hoạt các Toolkit Applet dựa vào các APDU được gửi từ Handset tới như các
sự kiện bấm phím Keypad. Khách hàng lựa chọn một thực đơn trên giao diện ứng
dụng. Khi đó, trên Handset sẽ tạo ra một lệnh được đóng gói dưới dạng APDU để
gửi xuống SIM. Cơ chế này rất quan trọng, được sử dụng để phát triển các ứng dụng
cho phép các Applet có thể đăng ký sự kiện, bắt sự kiện khi xuất hiện.


APDU

Applet
Triggerring

Lựa chọn Menu
Nhận bản tin SMS
Hiển thị Text

Hình 8. Kiến trúc của Applet Triggerring
2.1.4.2 Proactive Handler
Proactive Handler là thành phần xử lý các lệnh Proactive Command của SIM
Toolkit. Sau khi Toolkit Applet đã được kích hoạt thì Proactive Command Handler
sẽ cho phép Applet gửi các lệnh và dữ liệu yêu cầu Handset hay ME xử lý, nhận các
kết quả trả về.
Cấu trúc của một lệnh Proactive Command, do ứng dụng SIM hay Handset
gửi cho, được đưa ra dưới dạng một đối tượng dữ liệu BER-TLV (Tag, Length,
Value), mỗi BER-TLV có thể gồm nhiều SIMPLE-TLV.
21


Hình 9. Cấu trúc BER-TLV theo chuẩn 3GPP-TS 03.48
2.1.4.3 Applet Install/Uninstall
Applet Install/Uninstall là thành phần cung cấp các thủ tục để cài đặt và gỡ
bỏ Applet, tức là bắt đầu và kết thúc một vòng đời của Applet (Cycle of Applet).
Trong mô hình kiến trúc SIM Toolkit Framework, cấu trúc nền GSM
Framework thực hiện chức năng giao tiếp với các file dữ liệu trong SIM gọi là các
GSM Applet. Các ứng dụng trong SIM thường đọc một số GSM như: đọc Applet
chứa Key, đọc Applet chứa SMS nhận được dùng cho cập nhật cây thực đơn của
ứng dụng.

2.1.4.4 Security
Trong SIM hỗ trợ một tập các cơ chế hỗ trợ bảo mật. Việc bảo mật trong
công nghệ SIM Toolkit liên quan tới hai giai đoạn:

Bảo mật trong quá trình quản lý ứng dụng Applet sử dụng chuẩn
GSM
03.48 và


Bảo mật khi phát triển ứng dụng.

Security hỗ trợ một tập các thuật toán mã hoá dữ liệu, các tập khoá (Key Set)
được lưu trong các file GSM.

2.1.5 Các cơ chế của SIM Toolkit
Như khái niệm đã nêu, công nghệ SIM Toolkit cung cấp một loạt các cơ chế
cho phép quản lý và phát triển các ứng dụng trong SIM, cho phép các ứng dụng
được nạp vào SIM điều khiển các Handset nào hỗ trợ chức năng mà ứng dụng trong
SIM yêu cầu.
SIM Toolkit gồm có các cơ chế sau:


Nạp cấu hình (Profile Download)



Kích hoạt ứng dụng SIM (Proactive SIM)




Tải dữ liệu về SIM (Data Download)



Lựa chọn thực đơn (Menu Selection)



Điều khiển cuộc gọi bởi SIM (Setup Call)
22




Điều khiển bản tin gửi (Mobile Originated Source Message Control)



Tải sự kiện (Event Download)



Bảo mật (Security)



Hỗ trợ đa thẻ (Multiple Card)




Hỗ trợ truy cập thời gian (Timer Expiration)



Giao thức truyền dữ liệu độc lập (Bearer Independent Protocol)

Nhờ các cơ chế mà SIM Toolkit hỗ trợ, các ứng dụng trong SIM mới được tải
về. Ứng dụng có thể phát sinh các sự kiện. Ứng dụng có thể được xây dựng dưới
dạng thực đơn lựa chọn thân thiện với người sử dụng.
2.1.5.1 Nạp cấu hình
Profile download cung cấp cơ chế để ME thông báo cho SIM về khả năng có
hỗ trợ cho SIM Toolkit hay không. Trong trường hợp có hỗ trợ thì xác định các khả
năng hỗ trợ cụ thể. Mỗi khả năng hỗ trợ được mã hoá bằng một bít thông tin ME gửi
cho SIM chi tiết về khả năng hỗ trợ được đưa ra trong phần phụ lục.
2.1.5.2 Kích hoạt ứng dụng SIM
Proactive SIM đưa ra đặc tính mà cho phép SIM có thể khởi tạo một hành
động mà sau đó sẽ được thực hiện bởi ME. Ứng dụng trong SIM sẽ gửi một lệnh
yêu cầu ME thực hiện, dĩ nhiên trong trường hợp ME phải hỗ trợ chức năng đó. Các
hành động này là:


Hiển thị một đoạn văn bản từ SIM tới ME



Gửi một bản tin



Thiết lập một cuộc gọi tới số cung cấp bởi SIM




Thiết lập cuộc gọi dữ liệu


Gửi đi một điều khiển SS (Supplementary Service) hoặc một chuỗi
USSD
(Unstructed Supplementary Service Data)


Khởi tạo tương tác với người sử dụng (thao tác với phím)



Phát ra các âm thanh



Nhận các thông tin nội bộ từ ME tới SIM


Thực hiện yêu cầu tìm kiếm thông tin trên mạng khi cung cấp một
URL

Thực hiện xây dựng một kênh GPRS riêng để trao đổi dữ liệu với
mạng ngoài
2.1.5.3 Tải dữ liệu về SIM
Dữ liệu được tải về SIM sử dụng kỹ thuật vận chuyển của SMS Peer to Peer,
SMS Cell Broad hay sử dụng một kênh GPRS riêng. Chức năng này cho phép cài

đặt các ứng dụng vào SIM qua OTA.


×