123 lines
4.9 KiB
Markdown
123 lines
4.9 KiB
Markdown
# Montana iOS — Юнона везде
|
||
|
||
**Все приложения = диалог с Юноной**
|
||
|
||
## Навигация (4 вкладки)
|
||
|
||
```
|
||
[ Контакты ] [ Папки ] [ Юнона ] [ Настройки ]
|
||
```
|
||
|
||
## Уровни приватности
|
||
|
||
| Уровень | Шифрование | По умолчанию |
|
||
|---------|------------|--------------|
|
||
| **Интимное** | ML-KEM-768 + ChaCha20 (постквантовое) | ✅ ДА |
|
||
| Приватное | E2E шифрование | |
|
||
| Публичное | Без шифрования | |
|
||
|
||
## Приложения
|
||
|
||
### Junona VPN (App Store)
|
||
| Файл | Описание |
|
||
|------|----------|
|
||
| [JunonaAIApp.swift](Apps/JunonaAI/JunonaAI/JunonaAIApp.swift) | MainTabView + 4 вкладки |
|
||
| [FoldersView.swift](Apps/JunonaAI/JunonaAI/Views/FoldersView.swift) | Папки с уровнями приватности |
|
||
| [ContactsView.swift](Apps/JunonaAI/JunonaAI/Views/ContactsView.swift) | Контакты Montana |
|
||
| [SettingsView.swift](Apps/JunonaAI/JunonaAI/Views/SettingsView.swift) | Настройки + VPN |
|
||
| [VPNView.swift](Apps/JunonaAI/JunonaAI/Views/VPNView.swift) | UI для VPN |
|
||
| [MontanaVPN.swift](Apps/JunonaAI/JunonaAI/VPN/MontanaVPN.swift) | VPN Manager, присутствие по времени |
|
||
| [InstallOtherAppsView.swift](Apps/JunonaAI/JunonaAI/Views/InstallOtherAppsView.swift) | Ссылки на Wallet/Contracts |
|
||
| [PacketTunnelProvider.swift](Apps/JunonaAI/JunonaVPNExtension/PacketTunnelProvider.swift) | Network Extension |
|
||
| [PostQuantumTunnel.swift](Apps/JunonaAI/JunonaVPNExtension/PostQuantumTunnel.swift) | ML-KEM-768 + ChaCha20 |
|
||
|
||
### Junona Wallet (Сертификаты)
|
||
| Файл | Описание |
|
||
|------|----------|
|
||
| [MontanaWalletApp.swift](Apps/MontanaWallet/MontanaWallet/MontanaWalletApp.swift) | Диалог Юнона + Кошелёк Ɉ |
|
||
|
||
### Junona Contracts (Сертификаты)
|
||
| Файл | Описание |
|
||
|------|----------|
|
||
| [MontanaContractsApp.swift](Apps/MontanaContracts/MontanaContracts/MontanaContractsApp.swift) | Диалог Юнона + Контракты |
|
||
|
||
## MontanaCore (SPM)
|
||
|
||
| Файл | Описание |
|
||
|------|----------|
|
||
| [Package.swift](MontanaCore/Package.swift) | SPM manifest |
|
||
| [MontanaCore.swift](MontanaCore/Sources/MontanaCore/MontanaCore.swift) | Theme, Keychain, Links, Address, **PrivacyLevel**, **Folder**, **Contact** |
|
||
| [AppStoreGuard.swift](MontanaCore/Sources/MontanaCore/AppStoreGuard.swift) | Мониторинг удаления из App Store |
|
||
|
||
### Модели данных (MontanaCore.swift)
|
||
|
||
| Модель | Описание |
|
||
|--------|----------|
|
||
| `PrivacyLevel` | Интимное (default), Приватное, Публичное |
|
||
| `MontanaFolder` | Папка с уровнем приватности |
|
||
| `MontanaFolderItem` | Элемент в папке (note, photo, video, audio, file) |
|
||
| `MontanaContact` | Контакт с адресом mt... |
|
||
| `MontanaFolderStorage` | Менеджер хранения папок |
|
||
| `MontanaContactStorage` | Менеджер контактов |
|
||
|
||
## Distribution
|
||
|
||
| Файл | Описание |
|
||
|------|----------|
|
||
| [server.py](Distribution/MontanaSign/server.py) | LazyShop-style Flask API |
|
||
|
||
## Документация
|
||
|
||
| Файл | Описание |
|
||
|------|----------|
|
||
| [README.md](README.md) | Обзор iOS проекта |
|
||
| [ARCHITECTURE.md](ARCHITECTURE.md) | Архитектура 3 приложений |
|
||
| [DISTRIBUTION_STRATEGY.md](DISTRIBUTION_STRATEGY.md) | App Store + Сертификаты |
|
||
| [VPN_ARCHITECTURE.md](VPN_ARCHITECTURE.md) | Постквантовый VPN |
|
||
|
||
## Криптография
|
||
|
||
| Алгоритм | Назначение | Стандарт |
|
||
|----------|------------|----------|
|
||
| ML-KEM-768 | Ключевой обмен VPN | FIPS 203 |
|
||
| ML-DSA-65 | Подписи кошелька | FIPS 204 |
|
||
| ChaCha20-Poly1305 | Симметричное шифрование | RFC 8439 |
|
||
| HKDF-SHA256 | Деривация ключей | RFC 5869 |
|
||
|
||
## Bundle IDs
|
||
|
||
```
|
||
network.montana.junona # App Store
|
||
network.montana.junona.vpn # VPN Extension
|
||
network.montana.wallet # Сертификаты
|
||
network.montana.contracts # Сертификаты
|
||
```
|
||
|
||
## URL Schemes
|
||
|
||
```
|
||
montana-wallet:// # Открыть кошелёк
|
||
montana-junona:// # Открыть Юнону
|
||
montana-contracts:// # Открыть контракты
|
||
```
|
||
|
||
## VPN Узлы
|
||
|
||
| Узел | IP | Регион | Ping |
|
||
|------|-----|--------|------|
|
||
| Amsterdam | 72.56.102.240 | Европа | ~40ms |
|
||
| Almaty | 91.200.148.93 | Азия | ~80ms |
|
||
|
||
## Присутствие = Время VPN
|
||
|
||
```
|
||
1 секунда VPN = 1 Ɉ
|
||
|
||
НЕ трафик! Только время подключения.
|
||
VPN включён 1 час = 3600 Ɉ
|
||
```
|
||
|
||
---
|
||
|
||
*11 Swift файлов • 3 приложения Юноны • Постквантовая криптография*
|