Nghiên cứu ứng dụng OTP trên thiết bị di động

23 1K 8
Nghiên cứu ứng dụng OTP trên thiết bị di động

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG NÔNG THỊ LÂM NGHIÊN CỨU ỨNG DỤNG OTP TRÊN THIẾT BỊ DI ĐỘNG Chuyên ngành: Truyền dữ liệu và Mạng máy tính Mã số: 60.48.15 TÓM TẮT LUẬN VĂN THẠC SỸ KỸ THUẬT Người hướng dẫn khoa học: TS. PHẠM HOÀNG DUY HÀ NỘI - 2011 2 MỞ ĐẦU Hiện nay cùng với sự phát triển nhanh chóng của các dịch vụ online (trực tuyến) đã đưa đến việc tăng nhanh số lượng các chứng thực số khác nhau mà mỗi người dùng cần quản lý. Kết quả là người dùng cảm thấy quá tải với những chứng thực này, việc này làm cho người dùng khó khăn trong việc quản lý chúng được an toàn. Hiện nay mật khẩu chính là kiểu chứng thực được sử dụng phổ biến. Tuy nhiên những mật khẩu yếu và những thói quen xấu lại chính là những mối đe dọa an ninh trong giao dịch trực tuyến. Một giải pháp được đưa ra để giúp người dùng trong việc tạo và quản lý các mật khẩu là cung cấp cho người dùng một thiết bị phần cứng để tạo ra OTP (One- Time-Password) – mật khẩu được sử dụng một lần cho một phiên giao dịch. Tuy nhiên hầu hết những giải pháp này không đủ khả năng mở rộng hoặc không tiện dụng cho người dùng hoặc không đủ an toàn. Giải pháp đưa ra là có thể sử dụng các thuật toán đáng tin cậy trên điện thoại di động để tạo OTP. Do vậy tôi đã chọn đề tài nghiên cứu là “Nghiên cứu ứng dụng OTP trên thiết bị di động”. Nội dung nghiên cứu bao gồm:  Nghiên cứu lý thuyết về OTP: khái niệm, mô hình sinh, hàm băm (tập trung vào SHA), các khuyến nghị.  Nghiên cứu ứng dụng OTP trong các giao dịch trực tuyến trên môi trường di động.  Xây dựng chương trình mô phỏng. Cấu trúc nội dung của luận văn bao gồm các phần sau: 3 Chương 1: Cơ sở lý thuyết. Chương này trình bày những khái niệm cơ bản về OTP, các mô hình sinh mã OTP, hàm băm và khuyến nghị tiêu chuẩn cho việc tạo và xác thực mã OTP. Chương 2: Ứng dụng OTP cho các giao dịch trực tuyến trong môi trường di động Chương này nghiên cứu về mô hình ứng dụng OTP trên môi trường di động cũng như việc ứng dụng OTP trong các giao dịch trực tuyến. Chương 3: Xây dựng phần mềm ứng dụng OTP trong môi trường di động Chương này trình bày ngắn gọn về chương trình thử nghiệm đã xây dựng trong luận văn, trong đó tập trung xây dựng quá trình sinh và xác thực sử dụng mã OTP. Chương 4: Nhận xét, đánh giá và đề xuất Chương này khái quát lại hệ thống đã xây dựng và đưa ra một số nhận xét. Kết luận: Phần này tóm tắt những kết quả mà luận văn đã đạt được và đề xuất hướng nghiên cứu trong thời gian tới. 4 CHƯƠNG 1 – CƠ SỞ LÝ THUYẾT 1.1. Khái niệm OTP OTP là một mật khẩu chỉ có giá trị trong một phiên đăng nhập làm việc. OTP có thể được sử dụng một lần cho việc xác thực người dùng hoặc cho người dùng xác thực một giao dịch. OTP thường được sử dụng trong các giao dịch điện tử hoặc các hệ thống xác thực chặt chẽ. 1.2. Khái niệm hàm băm 1.2.1 Khái niệm hàm băm Chức năng chính của hàm băm là thực hiện ánh xạ các bản tin có chiều dài khác nhau thành một đoạn băm có kích thước cố định. Đoạn băm mới tạo ra thường có kích thước nhỏ hơn rất nhiều so với bản tin ban đầu. Một giá trị đoạn băm h được sinh ra bởi hàm băm H có dạng: h = H (M) trong đó: M là bản tin có chiều dài tùy ý. h là giá trị băm chiều dài cố định. 1.2.2 Thuật toán băm bảo mật SHA 1.3 Khái niệm tính toán tin cậy (TC - Trusted computing) 1.4 Các mô hình sinh OTP Có hai mô hình thường được sử dụng để sinh mã OTP là: sinh mã OTP theo thời gian và sinh mã OTP theo sự kiện. 5 1.4.1 Mô hình sinh mã OTP theo thời gian Theo cơ chế này, người dùng sẽ được cấp một thiết bị sinh mã được gọi là token. Bên trong token gồm có ba thành phần là: một mã seedcode, một đồng hồ đếm thời gian, và một thuật toán mã hóa một chiều.  Mã seedcode: là mã được nhà sản xuất cài đặt sẵn trong token. Mỗi token có một mã seedcode khác nhau. Và mã seedcode này cũng được lưu lại trong hệ thống của nhà cung cấp dịch vụ tương ứng với tên truy nhập của người dùng.  Đồng hồ đếm thời gian: là đồng hồ của token, nó được đồng bộ với đồng hồ của hệ thống trước khi giao cho người dùng. Mỗi khi người dùng bấm nút sinh mã, token sẽ lấy biến thời gian của đồng hồ. Biến thời gian được lấy chi tiết đến từng phút, hoặc 30 giây.  Thuật toán mã hóa: sử dụng thuật toán băm SHA. Hình 1.3 Mô hình của cơ chế sinh mã ngẫu nhiên dựa theo thời gian. 6 1.4.2 Mô hình sinh mã OTP theo sự kiện Trong cơ chế này người dùng cũng được cấp một token như ở trên, nhưng bên trong token sẽ có một bộ đếm sự kiện thay vì đồng hồ đếm thời gian. Sự kiện được nhắc đến ở đây là sự kiện mà người dùng bấm nút sinh mã trên Token. Mỗi token sẽ chứa một số mã hữu hạn, có thứ tự và không thay đổi. Số lượng các mã hữu hạn đó được gọi là cửa sổ. Kích thước của cửa sổ này càng lớn thì độ bảo mật của giải pháp càng cao. Để hiểu rõ hơn cơ chế ta sẽ xét một ví dụ. Trong ví dụ này, token lấy kích thước cửa sổ là 10, tức là token chứa 10 mã cố định có thứ tự, như hình 1.4. Hình 1.4 Mô hình của cơ chế sinh mã ngẫu nhiên dựa theo sự kiện 7 1.5 Các khuyến nghị tiêu chuẩn cho OTP Thuật toán băm: Độ an toàn của mã OTP phụ thuộc tính bảo mật của hàm băm. Tất cả các hệ thống sử dụng OTP phải hỗ trợ MD5, nên hỗ trợ SHA và có thể hỗ trợ MD4. Các thuật toán băm chấp nhận đầu vào tùy ý nhưng đầu ra cố định. Khuôn dạng đầu vào: Cấu trúc của từ đố: otp-<tên thuật toán> <chuỗi số nguyên> <seed> Khuôn dạng đầu ra: OTP tạo bởi thủ tục trên có 64 bit chiều dài. Việc nhập vào 64 bit khó khăn và dễ gây lỗi cho người sử dụng khi nhập bằng tay. Do vậy OTP có thể chuyển đổi thành một chuỗi 6 từ ngắn (mỗi từ bao gồm 4 ký tự) theo chuẩn ISO-646 IVCS. Mỗi từ được chọn từ một từ điển gồm 2048 từ, 11 bit cho mỗi từ, tất cả OTP có thể được mã hóa. 8 CHƯƠNG 2 – ỨNG DỤNG OTP CHO CÁC GIAO DỊCH TRỰC TUYẾN TRONG MÔI TRƯỜNG DI ĐỘNG 2.1 Mô hình triển khai OTP trên môi trường di động 2.2 Ứng dụng OTP cho việc xác thực tài khoản trong giao dịch trực tuyến Trong phạm vi của luận văn, tôi đã xây dựng hệ thống sử dụng OTP để xác thực tài khoản trong các giao dịch trực tuyến. Hệ thống bao gồm: khách hàng, web server và thiết bị di động của người sử dụng được dùng để tạo mã OTP. Để thực hiện việc xác thực hai yếu tố khách hàng phải đăng kí tài khoản với nhà cung cấp dịch vụ (server). Server cung cấp cho người sử dụng thông tin tài khoản để xác thực trên hệ thống. Những thông tin này sẽ được lưu vào cơ sở dữ liệu trên server. Tiến hành cài đặt phần mềm và đồng bộ thời gian với server cho thiết bị di động. 9 Quá trình đăng kí: Hình 2.1 Quá trình đăng kí Người sử dụng khi cần xác thực trên trang web sẽ chạy chương trình ứng dụng trên điện thoại của họ. Sau đó nhập những thông tin mà chương trình yêu cầu để lấy mã OTP. Người sử dụng khi cần xác thực trên trang web sẽ chạy chương trình ứng dụng trên điện thoại của họ. Sau đó nhập những thông tin mà chương trình yêu cầu để lấy mã OTP. Đăng kí thông tin (usename, password, pin, seedcode…) Account(usename, password, pin, seedcode…) User Server User Server Lưu thông tin vào CSDL 10 Quá trình tạo mã OTP: Hình 2.2 Quá trình tạo mã OTP Sau khi lấy được mã OTP sẽ nhập vào trang web cùng với usename và password mà họ đã đăng kí với nhà cung cấp dịch vụ. Server sau khi nhận được thông tin xác thực của khách hàng sẽ tiến hành kiểm tra sự hợp lệ của thông tin và trả lại kết quả xác thực cho khách hàng. Nhập (PIN, seedcode) Mã OTP User Mobile Sinh mã OTP [...]... phần mềm cho server xác thực và phần mềm sinh mã OTP trên thiết bị di động Thiết bị di động và server cùng sử dụng hàm băm an toàn SHA1 cho việc sinh và xác thực mã OTP Bên thiết bị di độngOTP được tạo ra với các tham số: thời gian thực, seed và mã PIN của từng người sử dụng Mã PIN không lưu trữ trên thiết bị di động được dùng để đảm bảo người sử dụng là hợp pháp Mã PIN có chiều dài 8 ký tự Bên... OTP đang được sử dụng để tăng thêm độ an toàn cho hệ thống và đồng thời phải tiện dụng cho người sử dụng Xuất phát từ yêu cầu đó luận văn đã nghiên cứu và trình bày một số vấn đề sau:  Nghiên cứu tầm quan trọng và lý thuyết cơ bản của việc tạo mã OTPNghiên cứu các mô hình sinh mã OTPNghiên cứu việc ứng dụng OTP vào thanh toán trực tuyến  Xây dựng chương trình thử nghiệm sử dụng điện thoại di. .. thời gian xác định tương ứng với người dùng nhập vào Người sử dụng khởi động phần mềm trên thiết bị di động của họ Người sử dụng nhập username và mã PIN Người sử dụng lấy mã OTP vừa được tạo ra để xác thực trên website Người sử dụng lựa chọn nút tạo mã OTP của chương trình Hình 3.1 Quá trình tạo mã OTP phi kết nối 13 Thứ hai là quá trình tạo mã OTP dựa trên tin nhắn SMS Người sử dụng cần đăng nhập Ví... Xác thực mã OTP: User Web Server Nhập (username, password , OTP) Xác thực tài khoản Thông tin xác thực Hình 2.3 Quá trình xác thực mã OTP 12 CHƯƠNG 3 – XÂY DỰNG PHẦN MỀM ỨNG DỤNG OTP TRONG MÔI TRƯỜNG DI ĐỘNG 3.1 Mô tả hệ thống sử dụng OTP trên điện thoại di động Hệ thống xác thực phi kết nối Quá trình tạo mã OTP phi kết nối Người sử dụng cần đăng nhập Ví dụ vào trang web yêu cầu bảo mật Mã OTP được tạo... mã hóa sử dụng khóa đối xứng duy nhất được chia sẻ giữa server và người sử dụng Server gửi mã OTP đến người sử dụng thông qua tin nhắn SMS Hình 3.2 Quá trình tạo mã OTP dựa trên tin nhắn SMS 3.2 Xây dựng ứng dụng Để mô phỏng ứng dụng OTP cho việc xác thực tài khoản trong giao dịch trực tuyến, luận văn tập trung xây dựng chương trình ứng dụng theo phương pháp phi kết nối Ứng dụng gồm hai phần: phần thứ... hàng cũng như tài khoản của họ Cơ sở dữ liệu sử dụng trong ứng dụng này là mysql Phía client chạy một chương trình ứng dụng tạo mã OTP cho khách hàng Chương trình ứng dụng này được xây dựng trên nền tảng ngôn ngữ java chạy trên nền hệ điều hành android Android là hệ điều hành trên điện thoại di động được phát triển bởi Google dựa trên nền tảng Linux sử dụng các thư viện Java (một số trong các thư viện... phỏng thiết bị cầm tay, tài liệu, mã mẫu và các hướng dẫn 16 3.2.1 Giao di n bên server Hinh 3.5 Giao di n trang chủ Hình 3.6 Giao di n xác thực tài khoản 17 3.2.2 Giao di n bên client Hình 3.7 Giao di n tạo mã otp trên giả lập Android 18 CHƯƠNG 4 – NHẬN XÉT ĐÁNH GIÁ VÀ ĐỀ XUẤT Luận văn đã xây dựng chương trình mô phỏng sử dụng xác thực OTP cho một thanh toán trực tuyến dựa trên mô hình sinh mã dựa trên. .. trình xác thực bên server và thứ hai là 14 chương trình chạy trên thiết bị di động để tạo mã OTP Hình 3.3 dưới đây mô tả về quy trình sử dụng OTP trong luận văn Mobile Phone Khách hàng Trình duyệt Web Yêu cầu thanh toán Bắt đầu Server Gửi thông tin đến Server Yêu cầu xác thực tài khoản Sinh mã OTP Xác thực thông tin tài khoản (tên, mật khẩu, mã otp) Gửi thông tin tài khoản đến server Nhận thông tin Thông... đọc cho người sử dụng gồm 3 từ với 12 ký tự Mật khẩu OTP hợp lệ trong mười phút sẽ giảm nguy cơ bị tấn công đồng thời tạo thuận tiện cho người sử dụng, vì người sử dụng cần một khoảng thời gian để đọc và nhập mã OTP Mã PIN có độ dài 8 ký tự bao gồm các chữ số không chứa dấu cách đảm bảo khó đoán hoặc bị tấn công brute-forced bởi các hacker Mã PIN không được lưu trữ trên điện thoại di động của người dùng... Mô hình sử dụng OTP trong xác thực tài khoản - Điều kiện tiên quyết: o Khách hàng phải đăng kí thông tin tài khoản với server và cài phần mềm sinh mã OTP trên thiết bị di động của mình - Chú thích: o Kiểm tra OK khi khách hàng nhập đúng các thông tin xác thực: username, mật khẩu, mã OTP 15 Phần mềm bên server được xây dựng dưới dạng web server Phía server dựa vào thông tin tài khoản và mã OTP mà người . đã chọn đề tài nghiên cứu là Nghiên cứu ứng dụng OTP trên thiết bị di động . Nội dung nghiên cứu bao gồm:  Nghiên cứu lý thuyết về OTP: khái niệm,. mã OTP trên thiết bị di động. Thiết bị di động và server cùng sử dụng hàm băm an toàn SHA1 cho việc sinh và xác thực mã OTP. Bên thiết bị di động mã OTP

Ngày đăng: 14/02/2014, 08:43

Hình ảnh liên quan

1.4.1 Mơ hình sinh mã OTP theo thời gian - Nghiên cứu ứng dụng OTP trên thiết bị di động

1.4.1.

Mơ hình sinh mã OTP theo thời gian Xem tại trang 5 của tài liệu.
1.4.2 Mơ hình sinh mã OTP theo sự kiện - Nghiên cứu ứng dụng OTP trên thiết bị di động

1.4.2.

Mơ hình sinh mã OTP theo sự kiện Xem tại trang 6 của tài liệu.
Hình 2.1 Quá trình đăng kí - Nghiên cứu ứng dụng OTP trên thiết bị di động

Hình 2.1.

Quá trình đăng kí Xem tại trang 9 của tài liệu.
Hình 2.2 Quá trình tạo mã OTP - Nghiên cứu ứng dụng OTP trên thiết bị di động

Hình 2.2.

Quá trình tạo mã OTP Xem tại trang 10 của tài liệu.
Hình 2.3 Quá trình xác thực mã OTP - Nghiên cứu ứng dụng OTP trên thiết bị di động

Hình 2.3.

Quá trình xác thực mã OTP Xem tại trang 11 của tài liệu.
Hình 3.1 Quá trình tạo mã OTP phi kết nối - Nghiên cứu ứng dụng OTP trên thiết bị di động

Hình 3.1.

Quá trình tạo mã OTP phi kết nối Xem tại trang 12 của tài liệu.
Hình 3.2 Quá trình tạo mã OTP dựa trên tin nhắn SMS - Nghiên cứu ứng dụng OTP trên thiết bị di động

Hình 3.2.

Quá trình tạo mã OTP dựa trên tin nhắn SMS Xem tại trang 13 của tài liệu.
chương trình chạy trên thiết bị di động để tạo mã OTP. Hình 3.3 dưới đây mô tả về quy trình sử dụng OTP trong luận văn - Nghiên cứu ứng dụng OTP trên thiết bị di động

ch.

ương trình chạy trên thiết bị di động để tạo mã OTP. Hình 3.3 dưới đây mô tả về quy trình sử dụng OTP trong luận văn Xem tại trang 14 của tài liệu.
Hình 3.6 Giao diện xác thực tài khoản - Nghiên cứu ứng dụng OTP trên thiết bị di động

Hình 3.6.

Giao diện xác thực tài khoản Xem tại trang 16 của tài liệu.
3.2.1 Giao diện bên server - Nghiên cứu ứng dụng OTP trên thiết bị di động

3.2.1.

Giao diện bên server Xem tại trang 16 của tài liệu.
Hình 3.7 Giao diện tạo mã otp trên giả lập Android - Nghiên cứu ứng dụng OTP trên thiết bị di động

Hình 3.7.

Giao diện tạo mã otp trên giả lập Android Xem tại trang 17 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan