ĐẠI HỌC QUỐC GIA HÀ NỘI<br />
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ<br />
<br />
ĐINH THỊ THÚY<br />
<br />
NGHIÊN CỨU VÀ PHÁT TRIỂN ỨNG DỤNG<br />
JAVACARD<br />
<br />
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN<br />
<br />
Hà Nội - 2017<br />
<br />
Hà Nội - 2017<br />
<br />
ĐẠI HỌC QUỐC GIA HÀ NỘI<br />
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ<br />
<br />
ĐINH THỊ THÚY<br />
<br />
NGHIÊN CỨU VÀ PHÁT TRIỂN ỨNG DỤNG<br />
JAVACARD<br />
Ngành: Công nghệ thông tin<br />
Chuyên ngành: Quản lý Hệ thống thông tin<br />
Mã số: Chuyên ngành đào tạo thí điểm<br />
<br />
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN<br />
<br />
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. PHÙNG VĂN ỔN<br />
TS. LÊ PHÊ ĐÔ<br />
<br />
Hà Nội - 2017<br />
<br />
i<br />
LỜI CẢM ƠN<br />
Lời đầu tiên tôi xin gửi lời cảm ơn sâu sắc nhất đến thầy TS. Lê Phê Đô và thầy<br />
TS. Phùng Văn Ổn, đã tận tâm, tận lực hướng dẫn, định hướng cho tôi, đồng thời,<br />
cũng đã cung cấp nhiều tài liệu và tạo điều kiện thuận lợi trong suốt quá trình học tập<br />
và nghiên cứu để tôi có thể hoàn thành luận văn này.<br />
Tôi xin chân thành cảm ơn đến các thầy, cô trong Bộ môn Quản lý hệ thống<br />
thông tin và Khoa Công nghệ thông tin, Trường Đại học Công nghệ - Đại học Quốc<br />
gia Hà Nội cùng với ban lãnh đạo nhà trường đã nhiệt tình giảng dạy và truyền đạt<br />
những kiến thức, kinh nghiệm qúy giá trong suốt quá trình học tập rèn luyện tại<br />
trường.<br />
Tôi xin gửi lời cảm ơn đến các bạn học viên lớp K22-QLHTTT, nhóm bảo mật<br />
UET đã đồng hành cùng tôi trong suốt quá trình học tập. Cảm ơn gia đình, bạn bè đã<br />
quan tâm và động viên giúp tôi có nghị lực phấn đấu để hoàn thành tốt luận văn này.<br />
Do kiến thức và thời gian có hạn nên luận văn sẽ không tránh khỏi những thiếu<br />
sót nhất định. Tôi rất mong nhận được những sự góp ý quý báu của thầy cô, đồng<br />
nghiệp và bạn bè.<br />
Một lần nữa xin gửi lời cảm ơn chân thành và sâu sắc.<br />
Hà Nội, tháng 07 năm 2017<br />
Học viên thực hiện<br />
<br />
Đinh Thị Thúy<br />
<br />
ii<br />
LỜI CAM ĐOAN<br />
Tôi xin cam các kết quả đạt được trong luận văn “Nghiên cứu và phát triển<br />
ứng dụng JavaCard” do tôi thực hiện dưới sự hướng dẫn của TS. Lê Phê Đô và<br />
TS.Phùng Văn Ổn.<br />
Trong toàn bộ nội dung nghiên cứu của luận văn, các vấn đề được trình bày đều<br />
là những tìm hiểu và nghiên cứu của cá nhân tôi hoặc là trích dẫn các nguồn tài liệu và<br />
một số trang web đều được đưa ra ở phần Tài liệu tham khảo.<br />
Tôi xin cam đoan những lời trên là sự thật và chịu mọi trách nhiệm trước thầy<br />
cô và hội đồng bảo vệ luận văn thạc sĩ.<br />
Hà Nội, tháng 07 năm 2017<br />
<br />
Đinh Thị Thúy<br />
<br />
iii<br />
MỤC LỤC<br />
<br />
1.1 Lịch sử phát triển thẻ thông minh ............................................................................. 3<br />
1.2 Cấu tạo và phân loại thẻ thông minh ......................................................................... 5<br />
1.3 Ưu nhược điểm của thẻ thông minh .......................................................................... 9<br />
1.4 Thách thức trong việc phát triển ứng dụng thẻ thông minh .................................... 12<br />
1.5 Các hình thức tấn công trên thẻ thông minh ........................................................... 12<br />
<br />
2.1 Giới thiệu JavaCard ................................................................................................. 15<br />
2.2 Kiến trúc JavaCard .................................................................................................. 17<br />
2.3 Tập ngôn ngữ JavaCard ........................................................................................... 18<br />
2.4 Máy ảo để chạy Java Card ....................................................................................... 18<br />
2.5 Cài đặt Java Card và chương trình cài đặt trên thiết bị (Off-Card) ......................... 20<br />
2.6 Môi trường chạy JavaCard ...................................................................................... 22<br />
2.7 API Java Card ....................................................................................................... 23<br />
2.8 Package và quy ước đặt tên Applet ......................................................................... 25<br />
2.9 Java Card Applet ..................................................................................................... 26<br />
2.9.1 Tiến trình phát triển Applet .................................................................................. 26<br />
2.9.2 Cài đặt applet ........................................................................................................ 27<br />
2.10 Phương thức truyền nhận, trao đổi dữ liệu ............................................................ 29<br />
3.1 Cơ sở lý thuyết ....................................................................................................... 32<br />
3.2 Những chú ý để lựa chọn đường cong Elliptic phù hợp ......................................... 34<br />
3.2.1 Trường K .............................................................................................................. 35<br />
3.2.2 Dạng của đường cong elliptic ............................................................................... 35<br />
3.2.3 Phương pháp lựa chọn .......................................................................................... 35<br />
<br />