Nhan đề : Nghiên cứu công nghệ NFC và ứng dụng ví điện tử trong thanh toán Tác giả : Đinh Thanh Tùng Người hướng dẫn: Nguyễn Kim Khánh Từ khoá : Ví điện tử; Công nghệ NFC Năm xuất bản : 2013 Nhà xuất bản : Trường Đại học Bách khoa Hà Nội Tóm tắt : Trình bày tổng quan về công nghệ NFC. Nghiên cứu và xây dựng ứng dụng ví điện tử sử dụng NFC. Kết quả và đánh giá.
Trang 1NGHIÊN CỨU CÔNG NGHỆ NFC
VÀ ỨNG DỤNG VÍ ĐIỆN TỬ TRONG THANH TOÁN
LUẬN VĂN THẠC SĨ KỸ THUẬT
KỸ THUẬT MÁY TÍNH VÀ TRUYỀN THÔNG
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-
Đinh Thanh Tùng
NGHIÊN CỨU CÔNG NGHỆ NFC
VÀ ỨNG DỤNG VÍ ĐIỆN TỬ TRONG THANH TOÁN
Chuyên ng ành : Kỹ thuật máy tính và truyền thông
LUẬN VĂN THẠC SĨ KỸ THUẬT
KỸ THUẬT MÁY TÍNH VÀ TRUYỀN THÔNG
NGƯỜI HƯỚNG DẪN KHOA HỌC
TS NGUYỄN KIM KHÁNH
Trang 3LỜI CẢM ƠN
Để hoàn thành luận văn này, tôi đã nhận được rất nhiều sự giúp đỡ, hướng dẫn
Thông, đại học Bách Khoa Hà Nội đã tạo điều kiện thuận lợi cho tôi có thể hoàn thành
Trang 4MỤC LỤC
LỜI CẢM ƠN 1
MỤC LỤC 2
LỜI CAM ĐOAN 4
DANH MỤC TỪ VIẾT TẮT, THUẬT NGỮ 5
DANH MỤC HÌNH VẼ 6
MỞ ĐẦU 7
1 Lý do chọn đề tài 7
2 Lịch sử nghiên cứu 7
3 Mục đích, đối tượng và phạm vi nghiên cứu 7
4 Tóm tắt các luận điểm cơ bản và đóng góp của luận văn 7
5 Phương pháp nghiên cứu 9
NỘI DUNG 10
CHƯƠNG 1 TỔNG QUAN VỀ CÔNG NGHỆ NFC 10
1.1 Tổng quan 10
1.1.1 Ứng dụng của NFC 10
1.1.2 Thông số kỹ thuật 12
1.1.3 So sánh với Bluetooth 13
1.1.4 Bảo mật cho NFC 13
1.2 Cấu trúc và tập lệnh giao tiếp của đầu đọc thẻ NFC 15
1.2.1 Giao tiếp 15
1.2.3 Biều đồ trao đổi dữ liệu của đầu đọc thẻ 15
1.2.3 Cấu trúc tập lệnh của đầu đọc thẻ 16
1.3 Đặc tính và chuẩn giao tiếp của thẻ NFC Mifare 24
1.3.1 Đặc tính 24
1.3.2 Thông tin mô tả chung 25
CHƯƠNG 2 NGHIÊN CỨU VÀ XÂY DỰNG ỨNG DỤNG VÍ ĐIỆN TỬ SỬ DỤNG NFC 33
Trang 52.1 Thanh toán điện tử và các mô hình, phương thức thanh toán 33
2.1.1 Khái niệm thanh toán điện tử 33
2.1.2 Phương thức thanh toán trong thanh toán điện tử 33
2.2 Phân tích và xây dựng ứng dụng ví điện tử sử dụng công nghệ NFC 38
2.2.1 Tổng quan mô hình hệ thống 38
2.2.2 Các thành phần trong hệ thống 39
CHƯƠNG 3 KẾT QUẢ VÀ ĐÁNH GIÁ 50
3.1 Kết quả 50
3.1.1 Kết quả đạt được 50
3.1.2 Giao diện chương trình 50
3.2 Đánh giá 54
3.2.1 Ưu điểm 54
3.2.2 Các điểm còn hạn chế 54
3.2.3 Định hướng phát triển 54
KẾT LUẬN 55
TÀI LIỆU THAM KHẢO 56
Trang 6LỜI CAM ĐOAN
Tôi xin cam đoan đề tài nghiên cứu của tôi hoàn toàn do tôi tự làm dưới sự hướng
đại học Bách Khoa Hà Nội Những kết quả nghiên cứu, thử nghiệm được thực hiện trên
Trang 7DANH MỤC TỪ VIẾT TẮT, THUẬT NGỮ
S ố thứ tự Từ viết tắt Ý nghĩa
Trang 8DANH MỤC HÌNH VẼ
Hình 1 Ứng dụng của NFC 11
Hình 2 Biểu đồ trao đổi dữ liệu 15
Hình 3 Thẻ Mifare 26
Hình 4 Chuối kí tự UID 27
Hình 5 Mô hình thẻ tín dụng 34
Hình 6 Mô hình thẻ ghi nợ 35
Hình 7 Mô hình ví điện tử 37
Hình 8 Mô hình tổng quan hệ thống thanh toán 38
Hình 9 Thiết bị thanh toán đầu cuối Kiosk 39
Hình 10 Sơ đồ khối thiết kế Kiosk 40
Hình 11 Máy in nhiệt TG2480H 40
Hình 12 Sơ đồ Adapter 41
Hình 13 Máy nhận tiền 41
Hình 14 Đầu đọc thẻ NFC 42
Hình 15 Phần mềm VTC Kiosk 43
Hình 16 Sơ đồ máy trạng thái phần mềm Kiosk 43
Hình 17 Cơ sở dữ liệu Kiosk 44
Hình 18 Sơ đồ tầng quản lý giám sát 45
Hình 19 Giao diện chức năng web quản lý, giám sát 46
Hình 20 Thiết kế cơ sở dữ liệu tầng quản lý, giám sát 47
Hình 21 Sơ đồ tầng dịch vụ thanh toán 48
Hình 22 Mô hình tầng quản lý 49
Hình 23 Ảnh chụp Kiosk 50
Hình 24 Ảnh màn hình trang chủ 51
Hình 25 Ảnh màn hình nạp thẻ di động 51
Hình 26 Ảnh màn hình chọn phương thức thanh toán 52
Hình 27 Ảnh màn hình thực hiện giao dịch 52
Hình 28 Ảnh kết quả thực hiện giao dịch 53
Hình 29 Ảnh người dùng thao tác tại Kiosk 18 Tam Trinh 53
Trang 9MỞ ĐẦU
đổi thông tin ngày càng phong phú và đa dạng.Công nghệ giao tiếp khoảng cách gần NFC ra đời giúp cho việc trao đổi thông tin dễ dàng và thuật tiện Do đó, tôi chọn đề tài
• Luận văn được bắt đầu nghiên cứu từ tháng 10/2012 và hoàn thành vào tháng 03/2013
Intecom Mô hình ví điện tử đưa ra chưa thực sự đáp ứng đầy đủ các quy định
pháp lý do nhà nước ban hành về kiểm soát tiền và giao dịch tài chính điện tử
Trang 10thanh toán điện tử hiện đang được áp dụng rộng rãi, qua đó đề xuất mô hình thanh toán
NFC và đưa vào áp dụng thực tế
Chương 1 Tổng quan về công nghệ NFC
Chương này trình bày những kết quả nghiên cứu về mặt lý thuyết, đưa ra các mô
C hương 2.Nghiên cứu và xây dựng ứng dụng ví điện tử sử dụng NFC
Đi sâu vào mô hình và phương thức thanh toán Từ đó phân tích và đưa ra mô hình
Trang 11C hương 3 Kết quả và đánh giá
Chương này tập trung đánh giá kết quả đạt được, phân tích ưu và nhược điểm của
• Phương pháp nghiên cứu lý thuyết
thống để hỗ trợ việc lập trình, xây dựng ứng dụng
dựng hệ thống thanh toán điện tử với ứng dụng ví điện tử
Trang 12NỘI DUNG
CHƯƠNG 1.TỔNG QUAN VỀ CÔNG NGHỆ NFC
Walton vào năm 1983.Năm 2004, Nokia, Philips và Sony thành lập NFC Forum.NFC Forum đóng vai trò rất lớn trong sự phát triển của công nghệ NFC.Forum luôn khuyến khích người dùng chia sẻ, kết hợp và thực hiện giao dịch giữa các thiết bị NFC.Thêm vào
đó, đối với các nhà sản xuất thì NFC Forum khuyến khích phát triển và nhận định những
Sprint Nextel, Rogers, SK, Google, Microsoft, PayPal, Visa, Mastercard, American
đã cho ra đời chiếc điện thoại hỗ trợ NFC đầu tiên là Nokia 6131 Tháng 1 năm 2009,
Android đầu tiên hỗ trợ NFC Cuối cùng, tại sự kiện Google I/O năm nay, NFC một lần
định hướng để trở thành một công cụ thanh toán trên di động hiệu quả Một chiếc
1.1.1 Ứng dụng của NFC
• Mạng xã hội
đã trở thành một yếu tố không thể thiếu song song với những tính năng cơ bản khác Với
ự hỗ trợ của NFC, người dùng có thể mở rộng và khai thác hiệu quả các tính năng như:
Trang 13o Chia sẻ tập tin: với việc kết nối 1 chạm giữa 2 thiết bị hỗ trợ NFC, người
game
Trang 14o Thanh toán qua điện thoại: Một thiết bị hỗ trợ NFC có thể thực hiện các
công;
được gọi chung là SmartPoster, người dùng chỉ việc cho máy quét qua
SmartPoster, người dùng có thể nhận được phiếu giảm giá;
(tương tự mã QR);
khóa nhà, văn phòng hay thậm chí xe hơi
1.1.2 Thông s ố kỹ thuật
thường dưới 4 cm NFC hoạt động theo tần số 13.56 MHz và tốc độ truyền tải khoảng từ
106 kbit/s đến 848 kbit/s NFC luôn yêu cầu một đối tượng khởi động và một đối tượng
Trang 15sản xuất hoặc sử dụng những thông số riêng do NFC Forum cung cấp Thẻ NFC có thể lưu trữ an toàn các dữ liệu cá nhân như thông tin tài khoản tín dụng, tài khoản ghi nợ, dữ
NFC trong đó mỗi loại lại có tốc độ giao tiếp và khả năng được tùy biến, bộ nhớ, bảo mật
• Loại thẻ nhận dạng NFC hiện đang được cung cấp có bộ nhớ từ 96 đến 512 byte;
động trên tần số 13.56 MHz;
• Trên lý thuyết thì cự ly hoạt động giữa 2 ăng-ten tối đa là 20 cm nhưng trên thực
• NFC hỗ trợ tốc độ truyền tải dữ liệu theo các mức từ 106, 212, 424 đến 848 kbit/s;
1.1.3So sánh v ới Bluetooth
NFC và Bluetooth đều là 2 công nghệ giao tiếp tầm ngắn và đều có thể tích hợp vào điện thoại di động.Như đã đề cập trong phần thông số kỹ thuật, NFC hoạt động với
độ truyền tải dữ liệu tối đa của NFC chỉ 424 kbit/s, thấp hơn nhiều so với Bluetooth 2.1
Trái ngược với Bluetooth, NFC tương thích với cấu trúc RFID bị động (13.56
1.1.4 B ảo mật cho NFC
Klemens Breitfuss đã mô tả những hình thức tấn công khác nhau nhằm vào NFC cũng như cách thức khai thác khả năng phản khán của NFC trước các hành vi tấn công nhằm
Trang 16chuẩn ISO, NFC vẫn không có khả năng bảo vệ trước nguy cơ bị đánh cắp thông tin và
như SSL nhăm thiết lập một kênh giao tiếp an toàn giữa các thiết bị hỗ trợ Để bảo mật,
mã độc từ các hệ thống phát tán
ăng-ten Khoảng cách mà kẻ tấn công có thể khai thác và đánh cắp tín hiệu RF phụ thuộc
năng hacker có thể "nghe lén" tín hiệu RF bị tác động rất lớn bởi 2 chế độ này.Nếu một
được tín hiệu RF hơn là một thiết bị chủ động
RF
đường" cho người nhặt được khai thác chức năng của nó Vd: Bạn sử dụng điện thoại để
máy hay mã PIN
Trang 171.2 Cấu trúc và tập lệnh giao tiếp của đầu đọc thẻ NFC
1.2.1 Giao ti ếp
COM
1.2.3 Bi ều đồ trao đổi dữ liệu của đầu đọc thẻ
Trang 181.2.3 C ấu trúc tập lệnh của đầu đọc thẻ
6A}
Trang 191.2.3.2 L ệnh Get Data
Trang 201.2.3.3 L ệnh Load Authentication Key
authentication key được sử dụng để xác thực với thẻ
APDU = {FF 82 00 00 06 FF FF FF FF FF FF }
Trang 221.2.3.5 L ệnh Read Binary Blocks
Trang 23Ví dụ: Đọc 16 byte từ block dữ liệu 0x04
APDU = {FF B0 00 04 10}
Trang 24Ví dụ: Update dữ liệu ở block 0x04 với dữ liệu { 00 01 0f}
APDU = {FF D6 00 04 10 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F}
Trang 251.2.3.8 L ệnh Restore Value Block
Trang 261.2.3.9 Các l ệnh Value Block Operation
1.3 1 Đặc tính
Trang 27• Tần số hoạt động: 13.56 MHz
• Thời gian lưu trữ giữ liệu là 10 năm
• Hỗ trợ đọc ghi 100.000 lần
• Hệ thống file system linh hoạt
• Tối đa 28 ứng dụng riêng biệt trên một thẻ
• Hỗ trợ 16 file cho mỗi ứng dụng
• Xác thực trên tầng ứng dụng
• Cảm biến tách biệt với phần cứng
• Hệ thống file system tự bảo mật
1.3.2Thông tin mô t ả chung
Trang 28Trong hệ thống MIFARE, MF3 IC D40 được kết nối với một cuộn dây được thiết
được đặt ở vị trí tiếp xúc với anten PCD giao tiếp RF tốc độ cao cho phép truyền dữ liệu
Cơ chế chống xung đột thông minh cho phép giao tiếp với nhiều thẻ Thuật toán
Trang 29Hình 4 Chuối kí tự UID
0x88 và ba byte đầu tiên là UID, SN0 tới SN2 và BCC Tiếp theo, trả về các byte SN3 đến SN6 và BCC
trợ
cơ chế này bảo vệ cấu trúc file khi bị lỗi Nếu rollback là cần thiết, nó sẽ thực hiện mà
Để đảm bảo tính toàn vẹn của dữ liệu, một giao dịch theo hướng backup được cài đặt cho tất cả các loại file có thể backup Có thể sử dụng chung cả loại file backup và
15 không có cơ chế backup
Trang 30Trước khi dữ liệu được truyền, việc thực hiện xác thức 2 bên có thể thực hiện trước giữa đầu đọc và thẻ phụ thuộc vào cấu hình áp dụng là DES hay 3DES
khóa session :
đầu phiên xác thực Nó được thực
được lưu trữ trong bộ nhớ của thẻ,
Trang 31Ek_keyNo(RndB) mã hóa bằng thuật
khóa được lựa chọn
ek_keyno(RndB) và
đọc thẻ
Trong bước tiếp theo, RndB được
quay trái 8 bit thu được RndB’
RndA này được nối với RndB’ và
4
<-
8 byte ek_KeyNo(RndA’)
toán mã hóa
thu được RndA +
Trang 32đọc thẻ, nó thực
bit và thu được RndA’, sau đó là mã hóa được kết quả là ek_keyNo(RndA’)
đọc thẻ
được ek_KeyNo(RndA’) thu được
ứng dụng hiện tại đang lựa cho hoặc
ẻ (trong
Trang 33trường hợp AID = 0x00)
+ 4 byte sau RndA + 4 byte sau RndB
Trong trường hợp muốn sử dụng DES đơn, chỉ sử dụng 8 byte đầu của session key ( 4 byte đầu RndA + 4 byte đầu RndB), 8 byte sau không phải sử dụng
ứng dụng có tối đa 14 khóa được người dùng định nghĩa riêng có thể cho phép truy cập
1.3.2.7 Mã hóa DES/3DES
Định nghĩa mã hóa DES gồm hai hoạt động cơ bản: mã hóa và giải mã
Điều này tránh chiếm dụng thời gian và việc load lại khóa trên phần cứng DESFire
Trang 34Tất cả các hoạt động mã hóa được thực hiện ở chế độ CBC, chế độ này định nghĩa
0x00 00 00 00 00 00 00 00
được điền vào thành n*8 byte với “0x00”
ghi đè bit parity với key version, nếu không sẽ gây nguy cơ cho hệ thống mã hóa.Phiên
Để lưu trữ phiên bản của khóa vào thẻ, số phiên bản mới cần được ghi bởi ứng
Trang 35CHƯƠNG 2.NGHIÊN CỨU VÀ XÂY DỰNG ỨNG DỤNG VÍ ĐIỆN TỬ SỬ DỤNG NFC
2.1.1 Khái ni ệm thanh toán điện tử
2.1.2 Phương thức thanh toán trong thanh toán điện tử
Trong các phương tiện thanh toán điện tử thì thẻ thanh toán được coi là phương
MasterCard, American Express và EuroPay
Để chấp nhận thanh toán bằng thẻ tín dụng, doanh nghiệp cần đảm bảo tính
điện tử để xác thực và mã hóa thông điệp dữ liệu nhằm đảm bảo tính riêng
tư hay bí mật của các thông tin dùng trong thanh toán điện tử
Trang 36o Người mua hàng sau khi lựa chọn sản phẩm, quyết định mua hàng sẽ nhập
đơn hàng hoặc từ chối
Khi quá trình thanh toán được thực hiện bằng thẻ ghi nợ(là thẻ chi tiêu dựa trên số
dư tài khoản thẻ hay tài khoản tiền gửi), tiền trong tài khoản của người mua ngay lập tức
Trang 37Hình 6 Mô hình thẻ ghi nợ
đơn thanh toán để thanh toán gộp cho ngân hàng vào cuối kỳ thông qua phương thức
• Thẻ dịch vụ khách hàng: Sử dụng thẻ thông minh để định ra những khách hàng
Trang 38phổ biến trong mua vé máy bay, mua sắm, thẻ tín dụng… Ví dụ: Thẻ hội viên
điện tử đang được cung cấp
• Thẻ công nghệ thông tin: Hầu hết các nhà phát hành thẻ sẽ tận dụng chức năng an
đánh giá và ứng dụng thẻ thông minh để giảm các chi phí liên quan tới việc thực
• Visa Cash: Visa Cash là một thẻ trả trước, dùng để thanh toán cho những giao dịch
• Mondex: Là thẻ gắn bộ vi xử lý của MasterCard, có chức năng tương tự như Visa
Mondex Hơn nữa, sử dụng thẻ Mondex có thể chuyển được tiền từ tài khoản này
Ví điện tử là một phần mềm trong đó người sử dụng có thể lưu trữ số thẻ tín dụng
kích vào ví điện tử, phần mềm sẽ tự động điền các thông tin khách hàng cần thiết để thực
Trang 39Cách thức vận hành của ví điện tử như sau:
• Phần xác minh/đăng ký của ví điện tử tạo ra một cặp chìa khóa Phần này sẽ mã
đó được mã hóa cùng với khóa công cộng của người bán Cả hai phần mã hóa được gửi cho người mua cùng với thông điệp
người mua gửi và có được tên người mua Nếu 2 tên này trùng nhau, người bán sẽ
Trang 402 2 Phân tích và xây dựng ứng dụng ví điện tử sử dụng công nghệ NFC
• Thiết bị thanh toán đầu cuối – kiosk: Là máy bán hàng tự động, cung cấp các dịch
NFC
như xác thực thông tin thẻ, thêm mới, gia hạn, sửa thông tin thẻ
Trang 412.2.2 Các thành ph ần trong hệ thống
Trang 42a Thi ết kế phần cứng
• Main Control Unit
Trang 43• Adapter
• Cash Acceptor
đến 500.000 VND Phát hiện tiền giả, nhàu nát Có stacker để chứa tiền vào
• NFC Reader
Đầu đọc các loại thẻ sử dụng công nghệ NFC, nhận thông tin tài khoản, thanh toán
Trang 44Hình 14 Đầu đọc thẻ NFC
• Sensor
• Electronic Lock
• Alarm
Trang 45b Thi ết kế phần mềm
API cung cấp bởi Monitor bao gồm:
Máy in nhiệt
Cash Acceptor
NFC Reader
Trang 46o Trạng thái Ngừng hoạt động: khi máy có trục trặc hoặc 1 thiết bị nào đó
Trang 47o tblCategories : Lưu trữ các thông tin về các nhóm dịch vụ, sản phẩm được
Kiosk
trong Stacker
qua internet, đường truyền bảo mật SSL để chuyển tiếp các yêu cầu giao dịch bán hàng trên Kiosk
Trang 48Hình 19 Giao diện chức năng web quản lý, giám sát
Trang 49b Thi ết kế cơ sở dữ liệu
Trang 50o Kiosks: Lưu trữ thông tin các thông tin chung của toàn bộ Kiosk trong hệ thống
Kiosk
ứng với từng dịch vụ
các đối tác game, các nhà cung cấp dịch vụ khác để xử lý các giao dịch bán hàng, thanh
Trang 512.2.2.4 T ầng quản lý thẻ
Monitor Server
Card Management Server
Card Issuer
Trang 52CHƯƠNG 3.KẾT QUẢ VÀ ĐÁNH GIÁ
3.1 Kết quả
3.1.1 K ết quả đạt được
ứng dụng thanh toán sử dụng NFC, luận văn nghiên cứu đã thu được một số kết quả sau:
• Xây dựng và triển khai thành công mô hình thanh toán điện tử sử dụng NFC
3.1.2 Giao di ện chương trình
Trang 53Hình 24 Ảnh màn hình trang chủ
Trang 54Hình 26 Ảnh màn hình chọn phương thức thanh toán
Trang 55Hình 28 Ảnh kết quả thực hiện giao dịch
Trang 563.2 Đánh giá
3.2.1 Ưu điểm
• Nghiên cứu và xây dựng thành công mô hình thử nghiệm thanh toán điện tử sử
• Hệ thống thử nghiệm chạy khá ổn định, đáp ứng được số lượng lớn giao dịch
3 2.2 Các điểm còn hạn chế
• Mới tìm hiểu và viết ứng dụng giao tiếp cho thẻ NFC, chưa đi sâu vào tìm hiểu
• Thống nhất chuẩn chung của ví điện tử sử dụng NFC để ví điện tử có thể thanh
Trang 57KẾT LUẬN
đồng nghiệp trong công ty VTC Intecom luận văn thực hiện đã đạt được một số kết quả
V ề mặt lý thuyết:
• Tìm hiểu về ứng dụng ví điện tử
V ề mặt ứng dụng:
• Thiết kế và lập trình phần mềm trên Kiosk
• Thực hiện kết nối với hạ tầng thanh toán của VTC
• Triển khai và kiểm thử hệ thống với 02 Kiosk được triển khai thực tế
định về khả năng, công nghệ, luận văn còn một vài thiếu sót.Nhưng dưới sự giúp đỡ của
hướng dẫn TS Nguyễn Kim Khánh cùng các thầy cô giáo bộ môn Kỹ Thuật Máy Tính,