Merge pull request 'thereisnoanderson-patch-1' (#4) from thereisnoanderson/hypatia:thereisnoanderson-patch-1 into stable

Reviewed-on: https://codeberg.org/divested-mobile/hypatia/pulls/4
This commit is contained in:
ContentedGoat 2024-03-11 15:32:50 +00:00
commit 81c7e4efa7
4 changed files with 68 additions and 18 deletions

View file

@ -14,8 +14,8 @@ Funktionen
- Nahezu keine Auswirkungen auf den Akku: Sie werden keinerlei Auswirkungen auf den Akku bemerken
- Extrem schnell: kleine Dateien (1MB) werden in <20ms gescannt, große Dateien (40MB) in 1000ms.
- Speichereffizient: mit den standardmäßig aktivierten Datenbanken verbraucht es weniger als 120MB.
- Regelmäßiger Scan: erlaubt die Auswahl von /system, internem Speicher, externem Speicher und installierten Apps
- Echtzeit-Scanner: kann Malware in Echtzeit beim Schreiben/Umbenennen im internen Speicher erkennen
- Manueller Scan: erlaubt die Auswahl von /system, internem Speicher, externem Speicher und installierten Apps
- Echtzeit-Scanner: kann Malware direkt bei neugeschriebenen oder unbenannten Dateien im internen Speicher erkennen
- Vollständig offline: Das Internet wird nur zum Herunterladen von Signaturdatenbanken verwendet, die Dateien verlassen niemals Ihr Gerät
- Persistenz: automatischer Neustart beim Booten/Update
- Winzige Codebasis: mit weniger als 1000 Sloc kann sie sogar von jemandem mit grundlegenden Programmierkenntnissen geprüft werden
@ -24,31 +24,32 @@ Funktionen
Technische Details
------------------
- Signaturdatenbanken sind ClamAV .hdb (MD5-Hashes) und .hsb (SHA-1/SHA-256) Format
- Signaturdatenbanken sind im seriellem Guava-BloomFilter Objektformat
- Signaturdatenbanken werden nicht erneut heruntergeladen, wenn sich die Datei auf dem Server nicht geändert hat (HTTP-Code 304 -> nicht modifiziert)
- Signaturen werden mit BloomFilters für O(k) Lookup gespeichert
- Dateien haben ihre MD5/SHA-1/SHA-256-Hashes in einem Durchgang berechnet
- Der Echtzeit-Scanner ist multithreaded und nutzt die Hälfte der Kernanzahl des Geräts für das asynchrone Scannen mehrerer Dateien
- Echtzeit-Scanning wird von einem rekursiven FileObserver unterstützt
- Echtzeit-Scanning mittels rekursivem FileObserver (Datei-Beobachter)
- Netzwerkverbindungen werden zu Adressen nach dem Folgendem Muster hergestellt: https://divested.dev/MalwareScannerSignatures/hypatia-*-bloom.bin{,.sig}
- Statistiken und generierte Zusammenfassung der aktuellen Datenbank zu finden auf https://divested.dev/MalwareScannerSignatures/
Geplante Updates
----------------
- Option zum Scannen beim Zugriff
- Scannen von Dateien über Share Intent
- Scannen neu installierter/aktualisierter Anwendungen
- Option zum Aufrufen von Scans durch Drittanbieter-Apps
- Option zum Anstoßen von Scans durch Drittanbieter-Apps
- Automatische Datenbank-Updates
- Automatische Datenbankerstellung
- Datenbank-Sanity-Checks
- Datenbank-Sanity-Tests
- Prüfung
- Bessere GUI
- Bessere Benutzeroberfläche (GUI)
- Übersetzungen
- Scannen des gesamten Systems mit root (niedrige Priorität)
- Scannen des gesamten Systems mittels root Zugriff (niedrige Priorität)
Ziele
-----
- Schnell sein
- Schnelle Performance
- Minimaler Akkuverbrauch
- Das nötige Minimum an Berechtigungen verwenden
- Bibliotheken nur bei Bedarf verwenden
@ -57,12 +58,31 @@ Credits
-------
- ClamAV für die Datenbanken (GPLv2)
- ESET für die zusätzlichen Datenbanken (BSD 2-Clause)
- Nex (@botherder) für extra Datenbanken (CC BY-SA 4.0)
- Amnesty International für extra Datenbanken (CC BY 2.0)
- Echap für extra Datenbanken (CC BY 4.0)
- MalwareBazaar für extra Datenbanken (CC0)
- RecursiveFileObserver.java (GPLv3): Daniel Gultsch, ownCloud Inc. und Bartek Przybylski
- GPGDetachedSignatureVerifier.java (GPL-2.0-or-later): Federico Fissore, Arduino LLC
- Petra Mirelli (@iNtEgraIR2021) für die deutsche/spanische/italienische Übersetzung, das App-Banner/Feature-Grafik und verschiedene Optimierungen.
- Jean-Luc Tibaux und Petra Mirelli (@iNtEgraIR2021) für die französischen Übersetzungen.
- @srccrow für die italienischen Übersetzungen.
- @inkhorn für die portugiesischen Übersetzungen.
- @jontaix für die portugiesischen Übersetzungen.
- @q1011 für die russischen Übersetzungen.
- Oswald van Ginkel für die afrikanischen Übersetzungen.
- huuhaa für die finnischen Übersetzungen.
- Marcin Mikołajczak für die polnischen Übersetzungen.
- @Manuel-Senpai für die spanischen Übersetzungen.
- @Balthazar1234 für die deutschen Übersetzungen.
- @Sdarfeesh für die vereinfachte Chinesische übersetzungen.
- @cardpuncher für die französischen und türkischen Übersetzungen.
- Tommaso Fonda für die italienischen Übersetzungen.
- @thereisnoanderson für die deutschen Übersetzungen.
- Dimitris Vagiakakos für die griechischen Übersetzungen.
- @gallegonovato für die spanischen Übersetzungen.
- @Fjuro für die tchechischen Übersetzungen.
- Icons: Google/Android/AOSP, Lizenz: Apache 2.0, https://google.github.io/material-design-icons/
Hinweise

View file

@ -1,11 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_license">Lizenz: GPL-3.0</string>
<string name="app_copyright">Urheberrecht 2017-2024 Divested Computing Group</string>
<string name="app_version">Versionsnummer: %s</string>
<string name="app_db_type_clamav">Basierend auf Signaturen im Stil von ClamAV</string>
<string name="lblOnionRoutingToggle">Über Tor laden</string>
<string name="lblOnionRoutingEnabledHint">Herunterladen wird zur Anonymisierung über das Tor-Netzwerk geleitet und kann daher länger dauern.</string>
<string name="lblOnionRoutingEnabledHint">Downloads werden zur Anonymisierung über das Tor-Netzwerk geleitet und können daher länger dauern.</string>
<string name="lblOnionRoutingNotInstalled">Orbot ist nicht installiert!</string>
<string name="lblUpdateDatabase">Datenbank aktualisieren</string>
<string name="lblDatabaseServer">Datenbankserver überschreiben</string>
@ -15,9 +16,9 @@
<string name="lblScanInternal">Internen Speicher scannen</string>
<string name="lblScanExternal">Externen Speicher scannen</string>
<string name="lblNotificationMalwareDetectionTitle">Schadsoftware-Erkennung</string>
<string name="lblNotificationMalwareDetectionDescription">Dient zur Warnung in Echtzeit wenn Schadsoftware erkannt wird</string>
<string name="lblNotificationMalwareDetectionDescription">Dient zur direkten Warnung bei erkannter Schadsoftware</string>
<string name="lblNotificationRealtimeTitle">Echtzeit-Scanner</string>
<string name="lblNotificationRealtimeDescription">Dient dazu bereits durchsuchte Dateien aufzuzählen und den Echtzeit-Scanner aktiv zu halten</string>
<string name="lblNotificationRealtimeDescription">Dient zur Aufzählung bereits dursuchter Dateien und der Aufrechthaltung des aktiven Scan's im Hintergrund</string>
<string name="lblNotificationRealtimeText">Bekannte Schadsoftware wird in Echtzeit erkannt</string>
<string name="lblNotificationRealtimeStopped">Hypatia: Echtzeit-Scanner wurde gestoppt</string>
<string name="lblNotificationRealtimeDetection">Schadsoftware gefunden:</string>
@ -33,7 +34,7 @@
<string name="main_database_released_on">Veröffentlicht am %s</string>
<string name="main_database_not_changed">Keine Veränderung der Datenbank(en)</string>
<string name="main_database_not_modified_since">seit %s</string>
<string name="main_database_download_error_logcat">Herunterladen ist fehlgeschlagen. Details können im logcat eingesehen werden</string>
<string name="main_database_download_error_logcat">Download ist fehlgeschlagen. Details können im logcat eingesehen werden</string>
<string name="main_starting_scan">Schadsoftware-Prüfung startet…</string>
<string name="main_cancelling_scan">Prüfung wird abgebrochen…</string>
@ -43,6 +44,34 @@
<string name="main_hashing_files">Generiere Prüfsummen der Dateien…</string>
<string name="main_hashing_done">Prüfsummen für alle Dateien generiert</string>
<string name="main_hash_scan_done">Alle %s Prüfsummen wurden mit den Signaturen der Datenbank(en) verglichen</string>
<string name="main_scanning_done">Überprüfung nach %s Sekunden abgeschlossen @ %sMB/s!</string>
<string name="main_scanning_done">Überprüfung nach %s Sekunden und bei %sMB/s abgeschlossen</string>
<string name="main_files_scanned_count">%s Dateien überprüft</string>
</resources>
<string name="scan_control">Scan Steuerung</string>
<string name="lblScanRunning">Vorhaben wurde übersprungen, ein aktiver Scan läuft bereits!</string>
<string name="lblSigningKey">Datenbank Signierschlüssel</string>
<string name="lblNoNetwork">Mit keinem Netzwerk verbunden!</string>
<string name="self_test_result_success">Der Selbsttest war erfolgreich.</string>
<string name="self_test_result_failure">Der Selbsttest ist fehlgeschlagen!</string>
<string name="lblDatabaseLoading">Vorhaben wurde übersprungen, Datenbank wird geladen!</string>
<string name="lblDatabasesUpdated">Alle Datenbanken wurden aktualisiert!</string>
<string name="lookupVT">Suchen</string>
<string name="deleteFile">Löschen</string>
<string name="deleted">Gelöscht!</string>
<string name="ignoreDetection">Ignorieren</string>
<string name="detections_none">Keine Schadsoftware gefunden :)</string>
<string name="detections_found">Schadsoftware erkannt! :(</string>
<string name="confirm_lookup_title">Suche bestätigen</string>
<string name="confirm_lookup_summary">Wollen Sie wirklich VirusTotal.com in Ihrem Web Browser mit der Folgenden Signatur öffnen?</string>
<string name="confirm_delete_title">Löschen bestätigen</string>
<string name="confirm_delete_summary">Wollen Sie wirklich die Folgende(n) Datei(en) Löschen?</string>
<string name="delete_failed">Löschen fehlgeschlagen!</string>
<string name="ignored">Ignoriert!</string>
<string name="uninstallApp">Deinstallieren</string>
<string name="lblSelfTest">Selbsttest Dateien plazieren</string>
<string name="lblExtendedDatabaseToggle">Erweiterte Datenbank laden</string>
<string name="confirm_extended_title">Erweiterte Datenbank aktivieren?</string>
<string name="confirm_extended_summary">[EXPERIMENTELL]\nDiese Funktion ermöglicht das erkennen weiterer ~40 Millionen Signaturen.\nDies erfordert den Download von 125MB, eine über zweiminütige vorbereitung beim jeweiligen ersten Scan und eine hohe Anzahl falscher Schadsoftware funde.\nDiese Datenbank wird nur vierteljährlich aktualisiert.</string>
<string name="confirm_update_summary">Sie laufen wahrscheinlich über eine getaktete Verbindung. Wollen Sie die Datenbanken wirklich aktualisieren? Es werden bis zu %s Megabytes heruntergeladen.</string>
<string name="lblUpdateRunning">Vorhaben wurde übersprungen, ein aktiver Update läuft bereits!</string>
<string name="lblWroteTestFiles">Selbsttest Dateien wurden geschrieben!</string>
</resources>

View file

@ -5,11 +5,11 @@
<li>Nahezu keine Auswirkungen auf den Akku: Sie werden keinerlei Auswirkungen auf den Akku bemerken</li>
<li>Extrem schnell: kleine Dateien (1MB) werden in 20ms gescannt, große Dateien (40MB) in 1000ms.</li>
<li>Speichereffizient: mit den standardmäßig aktivierten Datenbanken verbraucht Hypatia weniger als 120MB.</li>
<li>Regelmäßiger Scan: erlaubt die Auswahl von /system, internem Speicher, externem Speicher und installierten Apps</li>
<li>Echtzeit-Scanner: kann Malware in Echtzeit beim Schreiben/Umbenennen im internen Speicher erkennen</li>
<li>Manueller Scan: erlaubt die Auswahl von /system, internem Speicher, externem Speicher und installierten Apps</li>
<li>Echtzeit-Scanner: kann Malware direkt bei neugeschriebenen oder unbenannten Dateien im internen Speicher erkennen</li>
<li>Vollständig offline: Das Internet wird nur zum Herunterladen von Signatur-Datenbanken verwendet, die Dateien verlassen niemals Ihr Gerät</li>
<li>Persistenz: automatischer Neustart beim Booten/Update</li>
<li>Winzige Codebasis: mit weniger als 1000 sloc kann sie sogar von jemandem mit grundlegenden Programmierkenntnissen geprüft werden</li>
<li>Minimale Abhängigkeiten: die App verwendet nur Bibliotheken, wenn es nötig ist</li>
<li>Signatur-Datenbanken können auf Wunsch des Benutzers aktiviert/deaktiviert werden</li>
</ul>
</ul>

View file

@ -0,0 +1 @@
Ein Echtzeit Schadsoftware-Scanner