DI ĐỘNG DÙNG HỆ ĐIỀU HÀNH WINDOWS MOBILE
4.1. Thực trạng và mục tiêu giải pháp bảo mật thông tin cho PDA
Việt Nam là một nước có sự triển khai mạng di động nhìn chung là muộn so với các nước trong khu vực và thế giới. Tuy nhiên, trong một thời gian ngắn mạng di động của Việt Nam đã tăng nhanh về cả số lượng thuê bao và chất lượng của dịch vụ của các nhà cung cấp. Tính đến thời điểm hiện tại thì số thuê bao di động đã tính đến con số hàng triệu. Thời gian đầu thì các nhà cung cấp dịch vụ cung cấp cho khách hàng của mình những dịch vụ cơ bản đó là:
– Dịch vụ tin nhắn SMS – Dịch vụ thoại
– Dịch vụ truy cập Internet
– Ngoài ra là một số dịch vụ tiện ích khác
Từ tháng 4/2009, một số nhà mạng như VNPT, Viettel…được cấp phép triển khai hệ thống 3G. Đây cũng chính là công nghệ cung cấp cho các thuê bao những dịch vụ mới, các tiện ích mới. Tuy nhiên cùng với công nghệ này thì cũng xuất hiện các nguy cơ mất an toàn thông tin.
Hiện nay, các mạng điện thoại di động hầu như chưa cung cấp dịch vụ bảo mật thông tin (Tin nhắn SMS, thông tin cuộc gọi…) cho khách hàng.
Các mạng điện thoại di động được cấp phép triển khai 3G tại Việt Nam cũng chỉ dừng lại ở mức cung cấp dịch vụ hiện có của công nghệ 3G.
Đối với những thiết bị di động PDA, thì với tính năng như một chiếc máy tính, nó có thể kết nối vào các mạng cục bộ, mạng Wifi, trao đổi thông tin thông qua cổng Bluetooth…Chính những khả năng này lại là một lỗ hổng cho các kẻ tấn công ăn cắp các thông tin của người dùng như: nội dung tin nhắn, lấy cắp thông tin trong danh bạ, các lịch trình công việc…
50
4.2. Windows Mobile và .NET Compact Framework [8, 9]
.NET Compact Framework là một nền tảng phát triển cho các thiết bị di động, là một phần của thư viện .NET Framework trên desktop đã được thiết kế lại để thích hợp với việc phát triển các ứng dụng trên PDA. Các ứng dụng viết trên nền .NET Compact Framework vẫn chạy tốt trên nền .NET Framework
.NET Compact Framework có đặc tính nhỏ gọn, một số hàm API của .NET Framework được loại bỏ trong .NET Compact Framework để thích hợp với môi trường phát triển. .NET Compact Framework hoạt động tương một máy ảo, cho phép các ứng dụng được viết một lần có thể chạy trên bất kỳ CPU nào, kể cả máy tính để bàn. Tuy .NET Compact Framework mới phát triển trên Windows mobile nhưng kế hoạch xây dựng nó trên các hệ điều hành khác đang được tiến hành, bắt đầu từ Embedded Linux.
.NET Compact Framework sử dụng bộ gom rác tự động giúp các lập trình viên giảm tối đa các lỗi về rò rỉ bộ nhớ (điều này đặc biệt quan trọng với các thiết bị PDA vì nó có bộ nhớ nhỏ) làm tăng hiệu quả hoạt động của các ứng dụng và giảm chi phí về thời gian phát triển ứng dụng.
Các lập trình viên có thể sử dụng các hàm sẵn có trong thư viện .NET Compact Framework đã được kiểm tra chạy ổn định và tối ưu trên PDA. Đồng thời các lập trình viên có thể tái sử dụng các ứng dụng đã phát triển trên các phân hệ khác nhau.
Với những ưu thế nổi bật trên, xu hướng hiện nay là sử dụng .NET Compact Framework để phát triển ứng dụng trên PDA, đặc biệt là các ứng dụng chạy trên Windows mobile và cũng như các biến thể của nó.
4.3. Các hỗ trợ trong lập trình Windows Mobile
Như đã trình bày ở trên, các thiết bị PDA có những đặc điểm mà người phát triển các ứng dụng cho nó, đặc biệt là các ứng dụng bảo mật cần phải quan tâm. Các thiết bị di động thông minh dùng hệ điều hành Windows mobile ngoài những đặc điểm chung của các thiết bị PDA còn có những đặc điểm riêng về cả phần cứng và phần mềm. Windows mobile có những ưu thế riêng, được nhà sản xuất tạo ra những hỗ trợ giúp cho người phát triển có thể thuận tiện hơn trong quá trình xây dựng các ứng dụng.
51
Do PDA mới được công bố và đưa vào sử dụng chưa được lâu nên hệ thống thư viện hàm để xây dựng ứng dụng còn hạn chế về số lượng cũng như các chức năng thực hiện. Hầu hết cá ứng dụng hiện tại đang chạy trên PDA đều được các lập trình viên xây dựng từ đầu. Các công cụ hỗ trợ cho lập trình PDA còn chưa phong phú. Thư viện tốt nhất đang được sử dụng chính là hệ thống hàm API Windows mobile của hãng Microsoft.
Năm 2001, Microsoft phát hành phiên bản đầu tiên của thư viện lập trình .NET Compact Framework. Thư viện này cung cấp các hàm dựng sẵn để hỗ trợ cho việc phát triển ứng dụng trên PDA. .NET Compact Framework được tích hợp sẵn trong bộ công cụ Visual Studio .Net và hệ điều hanh Windows mobile. Khi thư viện .NET Compact Framework ra đời thì cũng đồng nghĩa với số lượng các ứng dụng viết cho các thiết bị di động thông minh dùng hệ điều hành Windows mobile cũng ngày một nhiều và nâng cao về số lượng. Đây chính là một trong các lợi thế mà các thiết bị di động dùng hệ điều hành Windows mobile có thể cạnh tranh với các đối thủ khác.
Do thư viện lập trình trên PDA còn ít, việc bảo mật ứng dụng trên các thiết bị này mới chỉ được quan tâm gần đây nên các hàm hỗ trợ chức năng bảo mật còn chưa nhiều. Windows mobile cung cấp bộ thư viện CryptoAPI để thực hiện mã hóa thông tin trên PDA. Thư viện này đã được nhà sản xuất nghiên cứu và có các đánh giá về độ an toàn trước khi đưa ra sử dụng. Nhìn chung mức độ bảo mật của CryptoAPI được đánh giá là khá an toàn cho tới thời điểm hiện tại, thư viện này đang được dần hoàn thiện thêm để nâng cao tính bảo mật của nó. Đây chính là tiền đề để cho các lập trình viên có thể phát triển các ứng dụng bảo mật cho các thiết bị PDA dùng hệ điều hành Windows mobile.
CryptoAPI là bộ thư viện dựng sẵn của Microsoft dành cho hệ điều hành Windows mobile. CryptoAPI cung cấp cho lập trình viên các chức năng mã hóa bí mật và mã hóa công khai, tạo và xác nhận chữ ký điện tử…Phiên bản mới nhất hiện nay của CryptoAPI mới cung cấp trên 197 hàm phục vụ cho mã hóa.
Ưu điểm của thư viện CryptoAPI là tốc độ xử lý, do nó được thiết kế chỉ để sử dụng trên hệ điều hành Windows mobile nên mã nguồn được tối ưu hóa với tốc độ cao nhất khi chạy trên Windows mobile.
CryptoAPI cung cấp khá đa dạng các thuật toán và chiều dài khóa hỗ trợ ở mức độ cho phép, ví dụ như RSA hỗ trợ khóa có chiều dài lớn hơn 128 bit.
52
Ngoài ra CryptoAPI còn hỗ trợ các thuật toán mới và được xem là an toàn vào thời điểm hiện tại.
Với các đặc điểm trên, thư viện CryptoAPI thích hợp với các ứng dụng xây dựng để sử dụng hệ điều hành Windows mobile với mức độ bảo mật được xem là an toàn tính đến thời điểm hiện nay.
4.4. Xây dựng giải pháp
Có nhiều cách để bảo mật thông tin cho các thiết bị di động thông minh PDA. Tuy nhiên ở phạm vi đề tài này là bảo mật thông tin cho các thiết bị di động PDA dùng hệ điều hành Windows mobile nên có những đặc thù riêng.
Do các thiết bị di động thông minh ngày nay có chức năng giống như một máy tính cầm tay. Khả năng kết nối là một trong những lợi thế của các thiết bị này, nhưng đi cùng với nó là các nguy cơ về mất an toàn thông tin. Khi một thiết bị di động kết nối với Wifi, thì các thiết bị khác trong mạng đó có thể dùng các biện pháp tấn công để có thể lấy các thông tin như: nội dung tin nhắn SMS, các lịch trình làm việc, các thông tin cá nhân, thư điện tử… Chính vì thế cần phải xây dựng các biện pháp bảo vệ ngay cả khi bị tấn công, kẻ tấn công có thể lấy được các thông tin trên nhưng hoàn toàn không có khả năng giải mã được thông tin.
Ngoài các nguy cơ về mất an toàn thông tin cá nhân của các thiết bị di động khi kết nối, thì nguy cơ bị kẻ gian lấy cắp hay người sử dụng vô tình đánh mất thiết bị của mình cũng là một vấn đề cần phải tính đến. Với tính năng như một máy tính cầm tay thì ngày nay rất nhiều người sử dụng các thiết bị di đông thông minh này như là một máy tính cá nhân. Trên các thiết bị đó họ lưu hầu như là tất cả các dữ liệu của cá nhân, thông tin về khách hàng, các mối quan hệ… Từ các phân tích trên thì yêu cầu bảo mật cũng như lấy lại được các thông tin đã mất cũng là một yêu cầu rất quan trọng trong khi xây dựng chương trình mà người phát triển cần giải quyết
Qua các phân tích trên, phần mềm bảo mật thông tin được xây dựng trong phạm vi đề tài sẽ giải quyết các vấn đề sau:
53
Hình 4.1: Sơ đồ các chức năng bảo mật của ứng dụng
Trong đó:
– Bảo mật tin nhắn: Chức năng này sẽ quản lý các sự kiện tin nhắn, nó có chức năng phát hiện sự kiện tin nhắn đến và sẽ mã hóa nội dụng tin nhắn rồi lưu vào thư mục Inbox. Khi xem tin nhắn thì người dùng phải nhập mật khẩu, sau đó chương trình sẽ thực hiện đọc tin nhắn từ thư mục Inbox giải mã rồi hiện thông tin lên màn hình
– Bảo mật danh bạ: Bao gồm các chức năng là lấy lại danh bạ khi bị mất điện thoại và xóa danh bạ khi bị mất điện thoại.
– Chức năng bảo mật dữ liệu: Cho phép người dùng có thể xóa các dữ liệu cá nhân nhạy cảm khi bị mất điện thoại chỉ với một tin nhắn.
4.4.1. Bảo mật SMS
Như đã phân tích ở các phần trước về hệ điều hành Windows mobile với những đặc điểm riêng của mình, đi liền với nó là thư viện bảo mật CryptoAPI được Microsoft xây dựng riêng cho hệ điều hành này. Chính vì lý do trên mà bộ thư viện CryptoAPI này được xây dựng, thử nghiệm và đánh giá là đủ đảm bảo an toàn tính đến thời điểm hiện tại. Bên cạnh đó với mục đích là mã hóa các tin nhắn đến và lưu vào thư mục trên bộ nhớ cục bộ của máy nên phần này sẽ sử
dụng phương pháp “mã hóa khóa đối xứng”. Trong khuôn khổ đề tài, thuật toán
được dùng để mã hóa các tin nhắn SMS là TripleDES.
Mục đích của phần mềm là bảo mật thông tin (tin nhắn SMS) nên Bảo
mật sẽ là chức năng chính của phần mềm.
Phần mềm thực hiện việc bảo mật đối với tin nhắn SMS nên phần mềm
phải có chức năng Quản lý tin nhắn SMS.
Để thực hiện mã hóa và gửi tin nhắn thì người gửi phải có định danh của người nhận. Định danh của người nhận gồm số điện thoại di động và một số
Bảo mật tin nhắn SMS
Ứng dụng bảo mật
54
thông tin liên quan như họ tên, nên phần mềm phải cho phép người dùng Quản
lý danh bạ.
Để đảm bảo tính an toàn, người sử dụng có thể thay đổi khóa của mình vì
vậy phần mềm phải hỗ trợ chức năng Thay đổi khóa.
Hình 4.2: Sơ đồ chức năng bảo mật tin nhắn Trong đó:
Chức năng “Bảo mật tin nhắn” gồm: Mã hóa tin nhắn và Giải mã tin nhắn. Chức năng “Quản lý tin nhắn” bao gồm: Soạn tin nhắn, gửi tin nhắn, nhận tin nhắn, lưu tin nhắn và xóa tin nhắn.
Chức năng “Quản lý danh bạ” gồm: Thêm, Sửa và Xóa Contacts.
Chức năng thay đổi khóa: Cho phép người dùng thay đổi khóa bí mật dùng để mã hóa tin nhắn bởi thuật toán TripleDES.
4.4.2. Bảo mật danh bạ
Hiện nay, một vấn đề đặt ra cho người dùng điện thoại di động đó là khi
mất điện thoại thì không có khả năng lấy lại “danh bạ” và cũng không thể xóa
nó. Chính vấn đề này là một kẽ hở để kẻ tấn công có thể lợi dụng để có thể lấy được thông tin của những người nằm trong danh bạ đó. Từ những phân tích trên,
trong phạm vị của đề tài này cũng xây dựng một chức năng nữa đó là “Bảo mật
danh bạ”. Với chức năng này người dùng khi bị mất máy có thể lấy lại danh bạ của mình đồng thời cũng cho phép xóa toàn bộ danh bạ cùng với những thông tin liên quan đến nó. Để làm được điều này chức năng bảo mật danh bạ đi xây dựng một cú pháp tin nhắn, khi nhận được tin nhắn chức năng này sẽ phân tích cú pháp và so sánh mật khẩu mà người gửi tin nhắn cung cấp. Nếu đúng cú pháp và mật khẩu thì chức năng này sẽ tự động gửi toàn bộ danh bạ đến máy số máy
55
vừa gửi tin nhắn. Chức năng này giải quyết được tính bảo mật danh bạ bởi vì chỉ có người nào có mật khẩu mới có khả năng lấy được danh bạ.
4.4.3. Bảo mật dữ liệu
Ngày nay với sự phát triển mạnh của khoa học và công nghệ, những thiết bị thông minh PDA được trang bị những tính năng không khác gì một chiếc máy tính cá nhân. Cũng chính vì lý do trên mà những người sử dụng thường dùng nó để thiết kế và lưu trữ những tài liệu, dữ liệu cá nhân. Chức năng này là một điều tuyệt vời và nó là một trong những điều làm nên sức mạnh của các thiết bị này. Tuy nhiên, nó lại trở nên một thảm họa nếu như những thiết bị này không may rơi và tay của những kẻ phá hoại, hay đối thủ của chúng ta. Để giải quyết vấn đề trên, chức năng bảo mật dữ liệu sẽ được xây dựng nhằm cho phép người dùng có thể xóa các tài liệu đó ngay cả khi bị mất máy chỉ với một tin nhắn. Cũng giống như chức năng bảo mật tin nhắn thì chức năng này cũng được xây dựng một cú pháp dành riêng, và để đảm bảo rằng chỉ có chủ nhân của nó mới có thể làm được điều này thì người gửi cũng phải cung cấp khóa bí mật.
4.4.4. Triển khai cài đặt và thử nghiệm chương trình
Để kiểm chứng hiệu quả của phần mềm bảo mật đã được xây dựng. Đề tài đã tiến hành triển khai cài đặt và chạy thử phần mềm trên thiết bị di động thông minh PDA dùng hệ điều hành Windows mobile.
Với ưu thế của ngôn ngữ lập trình C# và bộ thư viện .NET Compact Framework đã được xây dựng riêng cho những thiết bị dùng hệ điều hành Windows mobile thì chương trình cài đặt sau xây dựng và triển khai đã đạt được một số điểm như:
- Dễ cài đặt
- Tốc độ mã hóa và giải mã chấp nhận được
- Tốn ít dụng lượng bộ nhớ của điện thoại di động
- Dễ dàng nâng cấp phần mềm trong tương lai
Kết luận
Trên cơ sở phân tích hiện trạng và giải pháp bảo mật thông tin cá nhân cho các thiết bị di động thông minh PDA, chương 4 đã đưa ra giải pháp bảo mật
56
thông tin cho các thiết bị này. Chương trình đã được xây dựng và cài đặt và bước đầu đã đạt được những yêu cầu chính đề ra.
57
KẾT LUẬN
Việc thực hiện bảo mật thông tin mạng điện thoại di động là rất cần thiết đặc biệt với nhu cầu bảo mật thông tin cá nhân. Việc triển khai và cài đặt đánh giá chương trình là khá thuận lợi bởi vì bộ công cụ lập trình Visual Studio .NET được xây dựng nhằm đáp ứng tối đa những thuận tiện cho người phát triển phần mềm nói chung và cho điện thoại di động nói riêng. Bên cạnh đó bộ thư viện do Microsoft xây dựng riêng nhằm phát triển cho các thiết bị dùng hệ điều hành Windows mobile cũng là một yếu rất quan trọng khai xây dựng ứng dụng.
Đề tài đã nghiên cứu các giải pháp bảo mật thông tin cá nhân cho các thiết