Files
Wallenc/Report/Пояснительная_записка_ПытковРЕ.typ

82 lines
4.6 KiB
Typst
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#import "@preview/modern-g7-32:0.2.0": abstract, appendixes, enum-numbering, gost
#set enum(numbering: enum-numbering)
#set heading(numbering: "1.1.1.1")
#show: gost.with(
ministry: "Министерство науки и высшего образования Российской Федерации",
organization: (
full: "Федеральное государственное автономное образовательное учреждение высшего образования «Южный федеральный университет»",
short: "ЮФУ",
),
about: "пояснительной записке",
subject: "разработке мобильного приложения Wallenc — универсального кошелька для безопасного хранения данных на небезопасных хранилищах без собственного сервера",
approved-by: (
name: "Беликов А. Н.",
position: "старший преподаватель кафедры системного анализа и телекоммуникаций",
),
manager: (
name: "Беликов А. Н.",
position: "научный руководитель ВКР, старший преподаватель",
),
city: "Таганрог",
year: 2026,
performers: (
(name: "Пытков Р. Е.", position: "студент гр. КТбо4-9"),
),
)
#set text(font: "Times New Roman")
#import "includes/common.typ": pz-appendix-title, pz-fig
#abstract(
"мобильное приложение",
"клиентское шифрование",
"Android",
"vault",
"zero-knowledge",
"синхронизация",
)[
Пояснительная записка посвящена разработке мобильного приложения Wallenc клиентского кошелька для безопасного хранения данных на недоверенных хранилищах без собственного сервера приложения. Описаны анализ предметной области и аналогов, формирование требований, проектирование архитектуры и пользовательского интерфейса, программная реализация на Kotlin (Android, Jetpack Compose, Room, Hilt), тестирование и краткая экономическая оценка. Реализованы управление локальными и удалёнными vault, клиентское AES-шифрование, OAuth Яндекс, служебное хранение метаданных в Room; спроектирован контур синхронизации без передачи ключей провайдеру. Исходный код размещён в приватном репозитории Gitea ЮФУ. Полный листинг исходных файлов приложение А; программная документация приложение Б.
]
#include "includes/abstract-en.typ"
#outline()
#include "includes/intro.typ"
#include "includes/ch01.typ"
#include "includes/ch02.typ"
#include "includes/ch03.typ"
#include "includes/ch04.typ"
#include "includes/ch05.typ"
#include "includes/ch06.typ"
#include "includes/conclusion.typ"
#include "includes/abbreviations.typ"
// Заголовок списка источников задаётся в gost (bibliography.title).
#bibliography("references.bib")
#show: appendixes
#pz-appendix-title[Листинги исходного кода проекта Wallenc]
#include "listings/generated/appendix-a.typ"
#pz-appendix-title[Программная документация]
#include "appendices/appendix-b.typ"
#pz-appendix-title[Скриншоты пользовательского интерфейса]
#pz-fig("fig_05_local_vaults.jpg", [Локальные vault], "fig-05-app")
#pz-fig("fig_06_encrypt_dialog.jpg", [Диалог шифрования], "fig-06-app")
#pz-fig("fig_07_open_close_dialog.jpg", [Открытие и закрытие vault], "fig-07-app")
#pz-fig("fig_08_rename_delete_dialog.jpg", [Переименование и удаление], "fig-08-app")
#pz-fig("fig_09_remote_vaults.jpg", [Удалённые vault], "fig-09-app")
#pz-fig("fig_10_yandex_oauth.jpg", [OAuth Яндекс], "fig-10-app")
#pz-fig("fig_11_room_schema.png", [Схема Room], "fig-11-app")
#pz-fig("fig_12_tasks_screen.jpg", [Экран задач], "fig-12-app")
#pz-fig("fig_13_tasks_notification.jpg", [Уведомление о задачах], "fig-13-app")