Содержание
Введение 3
Глава 1. Основная информация о приложении «Data Defender» 5
1.1. Общие сведения 5
1.2. Проектирование и дизайн интерфейса. 6
1.2.1. Предпроектный анализ 6
1.2.2. Сбор требований 8
1.2.4. Дизайн интерфейса 12
1.3. Функции установки и смены пароля 13
1.4. Функция ввода пароля для входа в приложение 13
1.5. Структура «Менеджер файлов» 14
Глава 2. Методы защиты данных 16
2.1. Алгоритм шифрования AES 16
2.2. MD5 18
Заключение 19
Список использованной литературы 20
Введение
В настоящее время трудно представить современного человека без мобильного устройства. Рынок «носимых гаджетов» постоянно растет и уже давно обогнал рынок персональных компьютеров. С каждой новой моделью мобильного устройства растут его возможности и вычислительная мощность. Конечно, совокупность этих факторов заставляет задуматься об обеспечении информационной безопасности.
К данному моменту смартфоны и планшетные компьютеры обладают огромным функционалом, сопоставимым с таковым у персональных компьютеров. Удаленное администрирование, браузеры, синхронизация и обмен любой информацией и файлами. Все это необходимо и очень удобно, однако рынок средств защиты этих устройств развит слабо, так как поиск уязвимостей происходит не так оперативно как для операционных систем на персональных компьютерах. Современное программное обеспечение мобильных устройств уже догнало настольные аналоги, но расширение функционала всегда влечет за собой большую сложность и меньшую защищенность. Далеко не каждый производитель выпускает исправления, позволяющие закрыть критические уязвимости для своей продукции – дело в сроке жизни каждого отдельного устройства и в коммерческой выгоде.
.........................................................
1.1. Общие сведения
Приложение разработано на языке программирования Java с подключенным пакетом Android SDK.
Приложение «Data Defender», предназначенное для шифрования и дешифрования пользовательских данных разработано для платформы Android версии 4.1 и выше. Данная версия операционной системы было выбрана, так как она поддерживается 91% мобильных устройств.
Особенности приложения «Data Defender»:
- Шифрование пользовательских данных, таких как: фото, видео, документы и другие важные данные.
- Зашифрованные и расшифрованные файлы хранятся в папках, где содержались их исходные файлы.
- Файлы, имеющие свои зашифрованные аналоги, удаляются.
- Все файлы шифруются 128-битным алгоритмом шифрования AES.
- ....................................................
.................................. public class FileMan extends ListActivity { private List<String> directoryEntries = new ArrayList<String>(); private File currentDirectory = new File("/"); //when application started @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); //set main layout setContentView(R.layout.activity_file_man); //browse to root directory browseTo(new File("/")); } //browse to parent directory private void upOneLevel(){ if(this.currentDirectory.getParent() != null) { this.browseTo(this.currentDirectory.getParentFile()); } } //browse to file or directory private void browseTo(final File aDirectory){ //if we want to browse directory if (aDirectory.isDirectory()){ //fill list with files from this directory this.currentDirectory = aDirectory; fill(aDirectory.listFiles()); //set titleManager text TextView titleManager = (TextView) findViewById(R.id.titleManager); titleManager.setText(aDirectory.getAbsolutePath()); } else { //if we want to open file, show this dialog: //listener when YES button clicked OnClickListener okButtonListener = new OnClickListener(){ public void onClick(DialogInterface arg0, int arg1) { //intent to navigate file Intent i = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse("file://" + aDirectory.getAbsolutePath())); //start this activity startActivity(i); } }; //listener when NO button clicked OnClickListener negativeButtonListener = new OnClickListener() { public void onClick(DialogInterface arg0, int arg1) { encr(aDirectory); } }; OnClickListener neutralButtonListener = new OnClickListener() { public void onClick(DialogInterface arg0, int arg1) { decr(aDirectory); } }; //create dialog new AlertDialog.Builder(this) .setTitle("Caution") //title .setMessage("What do you want to do with "+ aDirectory.getName() + "?") //message .setPositiveButton("Open", okButtonListener) //positive button .setNegativeButton("Encrypt", negativeButtonListener) //negative button .setNeutralButton("Decrypt", neutralButtonListener) .show(); //show dialog } } //fill list private void fill(File[] files) { //clear list this.directoryEntries.clear(); if (this.currentDirectory.getParent() != null) this.directoryEntries.add(".."); //add every file into list for (File file : files) { this.directoryEntries.add(file.getAbsolutePath()); } //create array adapter to show everything ArrayAdapter<String> directoryList = new ArrayAdapter<String>(this, R.layout.row, this.directoryEntries); this.setListAdapter(directoryList); } .............................................
VadOS