Содержание
Введение 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);
}
.............................................
Телеграм
-