{"id":13654024,"url":"https://github.com/jobe-m/ownkeepass","last_synced_at":"2025-04-23T07:30:23.595Z","repository":{"id":199671115,"uuid":"60558644","full_name":"jobe-m/ownkeepass","owner":"jobe-m","description":"ownKeepass is a password safe application for Sailfish OS. It is build on top of KeepassXC database sources.","archived":true,"fork":false,"pushed_at":"2019-11-26T09:19:10.000Z","size":8152,"stargazers_count":34,"open_issues_count":10,"forks_count":15,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-23T03:10:00.054Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"QML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jobe-m.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2016-06-06T20:28:49.000Z","updated_at":"2023-05-19T10:30:57.000Z","dependencies_parsed_at":"2023-10-11T14:23:46.098Z","dependency_job_id":null,"html_url":"https://github.com/jobe-m/ownkeepass","commit_stats":null,"previous_names":["jobe-m/ownkeepass"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jobe-m%2Fownkeepass","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jobe-m%2Fownkeepass/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jobe-m%2Fownkeepass/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jobe-m%2Fownkeepass/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jobe-m","download_url":"https://codeload.github.com/jobe-m/ownkeepass/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250390772,"owners_count":21422777,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T02:01:22.162Z","updated_at":"2025-04-23T07:30:22.914Z","avatar_url":"https://github.com/jobe-m.png","language":"QML","funding_links":[],"categories":["QML"],"sub_categories":[],"readme":"# ownKeepass\n\n__I am sorry to say but I don't have the time to continue working on ownKeepass. That might change but currenlty I am too exhausted by private issues and duties.__\n\n[Bug reports go here] - [Translations here]\n\n## Status\n\nDevelopment towards 2.0.0\n* Removed legacy code for Keepass 1 support\n* New created databases have now Keepass 2 file format\n* Default encryption algorithm, key derivation function (kdf) and key transformation rounds for a new Keepass 2 database can be adjusted in application settings\n\nRelease 1.2.6\n* Added support for KDBX 4 database format by changing database code from KeepassX to [KeepassXC] (many thanks to [24mu13](https://github.com/24mu13))\n* Added support for new database cipher algorithms and key derivation functions like Twofish, Chacha20 and Argon2 for Keepass 2 databases\n* Show used database cipher, key derivation function and key transformation rounds for a Keepass 2 database in database settings dialog\n* Added new translation for Belgisch-Nederlands\n* Updated translations from transifex\n\n## Roadmap\n\nList of planned features for ownKeepass to happen somewhere the next time. Priority\nin descending order.\n\n*   Implement importing old Keepass 1 database into a new Keepass 2 database\n*   Do some art work: new icons, wall paper, better support for light ambiances\n*   Merge databases (local and remote copy) which have diverged e.g. when using Syncthing for syncing databases across devices\n*   Integrate WebDav support for loading and saving Keepass database to a server (Has low prio since Syncthing works flawlessly here)\n\n## Building\n\nIn order to succesfully build this application, you need the following steps:\n- Clone this repository including the [KeepassXC] submodule (`git clone --recursive`)\n- Make sure the _Sailfish OS Build Engine_ has the following packages. Currently these packages are only available from **3rd-party repositories**.\n  - libgcrypt18-devel (**special handling needed, see below**)\n  - libargon2-devel \n  - libsodium-devel \n- Build the project using _Qt Creator_\n\n### How to use a _3rd-party repository_ on Sailfish OS Build Engine\n\nIn order to use a 3rd-party repository, you need to add it to the _Build Engine_.\nFirst ssh into Sailfish OS build engine:\n\n    $ ssh -p 2222 -i ~/SailfishOS/vmshare/ssh/private_keys/engine/mersdk mersdk@localhost\n    \nAdd the repository to all applicable Kits, e.g.:\n\n    $ sb2 -t SailfishOS-3.1.0.12-armv7hl -m sdk-install -R zypper ar -f http://repo.merproject.org/obs/home:/yeoldegrove:/crypt/sailfish_latest_armv7hl crypt\n    $ sb2 -t SailfishOS-3.1.0.12-armv7hl -m sdk-install -R zypper ar -f http://repo.merproject.org/obs/home:/nielnielsen/sailfish_latest_armv7hl sodium\n    $ sb2 -t SailfishOS-3.1.0.12-armv7hl -m sdk-install -R zypper ref\n    $ sb2 -t SailfishOS-3.1.0.12-i486 -m sdk-install -R zypper ar -f http://repo.merproject.org/obs/home:/yeoldegrove:/crypt/sailfish_latest_i486 crypt\n    $ sb2 -t SailfishOS-3.1.0.12-i486 -m sdk-install -R zypper ar -f http://repo.merproject.org/obs/home:/nielnielsen/latest_i486 sodium\n    $ sb2 -t SailfishOS-3.1.0.12-i486 -m sdk-install -R zypper ref\n\nSee also: https://gist.github.com/skvark/49a2f1904192b6db311a\n\nNow with these repositories added the build engine can automatically install libargon2-devel and libsodium-devel as they are listed under PkgConfigBR in the harbour-ownkeepass.yaml config file.\n\nHowever the libgcrypt18-devel package needs special handling. The build engine will refuse to install it automatically because it clashes with version 1.5 of libgcrypt-devel package from jolla official repo.\n\nThus it needs to be installed manually in the Sailfish OS Manage Targets tool or from command line:\n\n    $ sb2 -t SailfishOS-3.1.0.12-i486 -m sdk-install -R zypper in libgcrypt18-devel\n    $ sb2 -t SailfishOS-3.1.0.12-armv7hl -m sdk-install -R zypper in libgcrypt18-devel\n\nNow building ownKeepass in Qt Creator should proceed succesfully.\n\n## What is this?\n\nownKeepass is a password safe application for the Jolla Smartphone with the purpose to\nprotect sensible data like passwords for web pages, credit card numbers,\nPINs, TANs and other bits of information which should be kept secret. All that information\nis saved in a database file which is encrypted and stored locally on your phone. To open\nthe database you need to know the master password of the database. ownKeepass can use Keepass\nversion 1 and 2 databases. That means you can use [Keepass] or [KeepassX] on your desktop\nsystem to decrypt and open that database file, too.\n\n## Why?\n\nI started to work on this project beginning of 2012 when QML started to get usable from development point\nof view for the Nokia N9. Writing a QML UI for the stable KeepassX 0.4.3 version was just born out of the\nidea to take my favourite Password Safe application to new Qt platforms like the Nokia N9. Although\nownKeepass was quite usable for me on my Nokia N9 I never released it for the Nokia N9 due to lack of\ntime and motivation (Nokia's Qt strategy disruption) to make the application usable for a wider audience.\nMid of 2013 I decided to continue development on the new Sailfish OS platform from the finnish Smartphone\nstart-up Jolla. This platform offers Qt5 with QtQuick2 and Wayland which really marks the edge of UI\ndevelopment. This is so much of technical motivation to me to do some great UI stuff with ownKeepass :)\n\n## Some words about Keepass database security\n\nThe database code in ownKeepass is based on the [KeepassX] project and as such contains a lot of\nsecurity related features. It uses proven encryption algorithms like Advanced Encryption Standard\n(AES / Rijndael) or Twofish with 128 bits block size and 256 bits key size, SHA-256 as hashing\nalgorithm and in-memory encryption of all passwords. Furthermore it protects the master\npassword against Brute-Force and Dictonary Attacks by hashing and encrypting it before\nusing it to decrypt the Keepass database. This feature is called key transformation rounds and can be\nadjusted in database settings. Anyway that all just adds additional security to two points which\nyou should be aware of:\n\n*   Always use a long enough and difficult to guess master password.\n*   Protect your system from spyware which might be specialized to attack ownKeepass.\n\nThe second is law #1 of the [10 Immutable Laws of Security]: \"If a bad guy can persuade you to run\nhis program on your computer, it's not your computer anymore\".\n\n## Sharing Keepass database between your jolla phone and your desktop PC\n\nThe Keepass database file format is perfect to share your password safe between different\nsystems like phones, tablets, desktop PC and so on. That is because there are a lot of Keepass\nimplementations available for those platforms. Have a look at the [Keepass download page] to get the classic Keepass 1 or\nthe new Keepass version 2 for the desktop PC. There is also a list of alternative Keepass implementations on that page.\nI would also like to point you to [KeepassX] which is also compatible with Keepass version 1 and 2 databases.\nYou can share your Keepass database file via SD card or via a cloud service like Dropbox.\nWhen using a cloud server I would recommend to use a key file in addition to the master password.\nThe additional key file will be used by ownKeepass to decrypt the database. Store this key file\nonly locally on your phone and on your desktop PC. Do not upload it to the cloud service. If an attacker\nhacks your cloud service he will be left without the key file. By doing so you make it even\nharder for an attacker to crack your Keepass database because the key file content is usually\nimpossible to guess.\n\nOptionally you could use [Syncthing] to sync the password safe between different devices. Syncthing is available for\nall platforms including Sailfish OS. For Sailfish OS it is available in openrepos as the [core] and a [GUI].\nSyncthing does not require a sync over the internet but it can sync locally between devices.\n\nCopyright 2014 - 2017 Marko Koschak. Licensed under GPLv2. See LICENSE for more info.\n\n\n[openrepos.net]: https://openrepos.net/content/jobe/ownkeepass                             \"Beta and testing releases\"\n[Keepass]: http://www.keepass.info/help/v1/setup.html                                      \"Official Keepass homepage for version 1\"\n[KeepassX]: http://www.keepassx.org                                                        \"KeepassX project homepage\"\n[KeepassXC]: http://www.keepassxc.org                                                      \"KeepassXC project homepage\"\n[10 Immutable Laws of Security]: http://technet.microsoft.com/en-us/library/cc722487.aspx  \"10 Immutable Laws of Security\"\n[Keepass download page]: http://www.keepass.info/download.html                             \"Download classic Keepass\"\n[Bug reports go here]: https://github.com/jobe-m/ownkeepass/issues\n[Translations here]: https://www.transifex.com/projects/p/jobe_m-ownKeepass/\n[Syncthing]: https://syncthing.net/                                                        \"Syncthing homepage\"\n[core]: https://openrepos.net/content/fooxl/syncthing-inotify-bin                          \"Syncthing core for SFOS\"\n[GUI]: https://openrepos.net/content/fooxl/syncthing-sf                                    \"Syncthing GUI for SFOS\"\n[SFOS manual building]: https://sailfishos.org/wiki/Tutorial_-_Building_packages_manually  \"Tutorial - Building packages manually\"\n[libsodium]: https://openrepos.net/content/birdzhang/libsodium                             \"Libsodium on OpenRepos.net\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjobe-m%2Fownkeepass","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjobe-m%2Fownkeepass","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjobe-m%2Fownkeepass/lists"}