{"id":15201903,"url":"https://github.com/offlinedevice/offlinedevice","last_synced_at":"2026-02-12T15:03:44.681Z","repository":{"id":246550646,"uuid":"821451365","full_name":"Offlinedevice/Offlinedevice","owner":"Offlinedevice","description":"A device to create and manage encryption keys offline. ","archived":false,"fork":false,"pushed_at":"2024-10-11T10:00:25.000Z","size":9047,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-10-11T20:22:01.428Z","etag":null,"topics":["bitcoin","bitcoin-wallet","boltcard","digitalidentity","fido2","gpg","passwordmanager","yubikey-manager"],"latest_commit_sha":null,"homepage":"","language":"Python","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/Offlinedevice.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-28T15:09:58.000Z","updated_at":"2024-10-11T09:18:52.000Z","dependencies_parsed_at":null,"dependency_job_id":"56920474-4341-413d-90ab-89ccdf73bb65","html_url":"https://github.com/Offlinedevice/Offlinedevice","commit_stats":{"total_commits":59,"total_committers":1,"mean_commits":59.0,"dds":0.0,"last_synced_commit":"148b38641ac2475d3420ba81e9a93fb0201b8a78"},"previous_names":["offlinedevice/project","offlinedevice/offlinedevice"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Offlinedevice%2FOfflinedevice","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Offlinedevice%2FOfflinedevice/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Offlinedevice%2FOfflinedevice/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Offlinedevice%2FOfflinedevice/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Offlinedevice","download_url":"https://codeload.github.com/Offlinedevice/Offlinedevice/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241945473,"owners_count":20046865,"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":["bitcoin","bitcoin-wallet","boltcard","digitalidentity","fido2","gpg","passwordmanager","yubikey-manager"],"created_at":"2024-09-28T03:42:21.074Z","updated_at":"2026-02-12T15:03:44.676Z","avatar_url":"https://github.com/Offlinedevice.png","language":"Python","readme":"\n# Offline device\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/Offlinedevice/blob/bac3ae3b1d51cccb709c672649967c02344d325c/OfflineDevice3D.gif\"\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/Offlinedevice/blob/54d39481d8eace0fbba3bd1291bab6b6cc4e155e/3D/DockingStation/DockingStationPi2W.PNG\"\u003e\u003c/p\u003e\n\nOffline device is a hardware device that runs on a Raspberry OS (Linux based) operating system. It can be built with standard components found in the Internet and all the plastic parts can be printed on a 3D-printer.\n\nThe Graphical User Interface is written in Python 3 (GUIApp.py).\n\nFollow on Nostr: [npub1srsejseljs22kg580hvcqs3uj3l0fwh8tamhaumdu2gfn3sxs3lskp3chs](https://primal.net/p/npub1srsejseljs22kg580hvcqs3uj3l0fwh8tamhaumdu2gfn3sxs3lskp3chs)\n\n## Features\n\n- [x] Create strong encryption keys offline (GnuPG)\n- [x] Manage your keys and do backups/export or add subkeys etc\n- [x] Sign and validate keys and documents in a secure way\n- [x] Fully open source (APGLv2)\n- [x] Manage your Yubikey 5C, including loading subkeys\n- [x] Secure archive of files that can be encrypted and backed-up (RSA encryption acc. to RFC 4880)\n- [x] Encrypt and sign files or messages \n- [x] Decrypt files or messages and check its signature (GnuPG)\n- [x] Backup and restore function including complete system cloning\n- [x] Generate Bitcoin keys offline and store/access through graphical interface\n- [x] Add Bitcoin wallets created from Jade hardware wallet or others with Air-gapped transaction signing etc (Native Segwit supported, BIP84)\n- [x] Create new Bitcoin wallets using the Offline device and with Air-gapped function\n- [x] Create Bitcoin wallets with dice throws\n- [x] Inheritance package\n- [x] Sign Bitcoin transactions offline and Air-gapped (PSBT, according to BIP174)\n- [x] Create and manage wallet transactions statements \n- [x] Sign Bitcoin wallet messages to prove ovnership of wallet \n- [x] Encrypted password storage\n- [x] Encrypted bitcoin wallet storage (seed's words, LNURLs etc) \n- [x] Generate and manage your own digital ID's (Web of Trust, OpenPGP)\n- [x] Generate your own Nostr Keys\n- [x] Transfer a Nostr private Key to a Nostr Signing Device\n- [x] Export IDs as image or as file (for upload to the \"web-of-trust\")\n- [x] Validate others digital ID's (standard (RFC 4880)\n- [x] Store Bolt cards data for accessing load links (lighning Bitcoin), programming and resetting cards\n- [x] Read and program Bolt cards with a connected Smart card reader\n- [x] Customize your user settings with theme and colors\n- [x] Include support for Real Time Clock (battery powered hardware clock)\n- [x] Option for strong password generation (also with user entropy) (NEW from version 0.4.2)\n\n## Using the Offine device\n\nConnect the Offline device with cables to a monitor, a keyboard and a mouse. It supports multiple account on the same device. Import or generate GPG keys without being connected to the Internet. During setup a backup USB- device is created. The Offline device facilitates complete privacy and unbreakable encryption for sensitive data and also provides a mechanism for securely send and receive data over the Internet. Others features include Bitcoin wallet generation/storage and transaction signing.\n\n### Guides\n\n* [Getting started guide](https://github.com/Offlinedevice/Offlinedevice/blob/057806e96a671aa06b3eac34bdbc17a77e54d67b/help/getstartedHelp.txt)\n* [GPG guide](https://github.com/Offlinedevice/Offlinedevice/blob/e34fb841eac5e7634a74db3f75f62b0f8ab91fca/help/gpgHelp.txt)\n* [Yubikey guide](https://github.com/Offlinedevice/project/blob/291037e6e33de97521e22a7abb742123ab7c2843/help/yubikeyHelp.txt)\n* [Secure archive guide](https://github.com/Offlinedevice/project/blob/291037e6e33de97521e22a7abb742123ab7c2843/help/securearchiveHelp.txt)\n* [Digital ID guide](https://github.com/Offlinedevice/project/blob/291037e6e33de97521e22a7abb742123ab7c2843/help/digitalIDHelp.txt)\n* [Bolt card guide](https://github.com/Offlinedevice/Offlinedevice/blob/e34fb841eac5e7634a74db3f75f62b0f8ab91fca/help/boltcardHelp.txt)\n\n## Start here\n### Build hardware\nBuild the Offline device using common parts. See [Getting started guide](https://github.com/Offlinedevice/Offlinedevice/blob/057806e96a671aa06b3eac34bdbc17a77e54d67b/help/getstartedHelp.txt)\n\n### 3D- print parts \nPrint the plastic parts you need (for the Pi2W version):\n* [Base part](https://github.com/Offlinedevice/Offlinedevice/blob/d2cac1ccb760c72b4b48687ddf011962df0110b7/3D/PIzerobox/PIzeroBoxRoundedwithCamera_v2.stl)\n* [Lid for build with camera model 1/2](https://github.com/Offlinedevice/Offlinedevice/blob/d2cac1ccb760c72b4b48687ddf011962df0110b7/3D/PIzerobox/LidPIzeroBoxwithCameraModel3_v2.stl)\n* [Alt. lid for camera model 3 (12 MP and auto focus lens)](https://github.com/Offlinedevice/Offlinedevice/blob/d2cac1ccb760c72b4b48687ddf011962df0110b7/3D/PIzerobox/LidPIzeroBoxwithCameraModel3_v2.stl)\n* [LED guide](https://github.com/Offlinedevice/Offlinedevice/blob/c830ffdbb2a946e84a4a98436ece2bb4b4ff8ee4/3D/PIzerobox/LEDguide.stl)\n\nSee also the folder for other featured 3D- parts (such as for the Pi 4B and Pi 5).\n\nFor printing the Docking station (Raspberry Pi Zero 2W) check out the 3D- files [here](https://github.com/Offlinedevice/Offlinedevice/tree/e2da6f363b4a89710f28b96b2bca7a48f4137ae9/3D/DockingStation) and the build guide for it [here](https://github.com/Offlinedevice/Offlinedevice/blob/e2da6f363b4a89710f28b96b2bca7a48f4137ae9/3D/DockingStation/Readme).\n\n### Download and burn image\nDownload the latest full image and verify it with the corresponding signature. Select the one suitable for your system. Latest update files are found [here](https://github.com/Offlinedevice/Offlinedevice/tree/4855b2368ff977ab67ade932a3cff6f1e0c0f80c/code/GUIApp0_5_0).\n* [Raspberry Pi 2 W Image (1,61 gb)](https://www.mediafire.com/file/dyqf31nfti865c9/GUIApp_0_5_0_Pi2W.img.gz/file)\n* [Raspberry Pi 2 W Signature](https://www.mediafire.com/file/v9lav3185x2y1vu/GUIApp_0_5_0_Pi2W.img.gz.sig/file)\n* [Raspberry Pi 4b Image (1,55 gb)](https://www.mediafire.com/file/p8svg9ldnuqoj0k/GUIApp_0_5_0_Pi4B.img.gz/file)\n* [Raspberry Pi 4b Signature](https://www.mediafire.com/file/9bytf9l9o66xoxc/GUIApp_0_5_0_Pi4B.img.gz.sig/file)\n* [Raspberry Pi 5 Image (2,39 gb)](https://www.mediafire.com/file/a0lqe5oyme5s0so/GUIApp_0_5_0_Pi5.img.gz/file) \n* [Raspberry Pi 5 Signature](https://www.mediafire.com/file/kqq5zuoguliizik/GUIApp_0_5_0_Pi5.img.gz.sig/file)\n \nMake sure you have the correct public key (see below) imported to your local keychain. Then place the two downloaded files (the signature and the image) in the same directory and run command: gpg --verify signature_files_name.sig image_files_name.img.gz (insert the real name for the files..).\n\nThen burn it to a microSD-card (min 32 gb) with BalenaEtcher (recommended) or the Raspberry Pi Imager. Please note that it might be necessary to restart the device after initial power ON for it to start.\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/project/blob/291037e6e33de97521e22a7abb742123ab7c2843/balenaEtcher_screenshot.PNG\"\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/project/blob/291037e6e33de97521e22a7abb742123ab7c2843/Raspberry_Pi_imager.PNG\"\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/project/blob/291037e6e33de97521e22a7abb742123ab7c2843/Raspberry_Pi_imager_Use_custom.PNG\"\u003e\u003c/p\u003e\n\n### Install the software yourself\nYou can choose to install the operating system, programs and libraries yourself. See details in the \"Getting started\"- document. \n\n## Many accounts\nHave multiple accounts on the same device. \n\n## Personalized settings\nChange the look and feel of your account. \n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/Offlinedevice/blob/7a977ce4c080ca685e4d9f3b3a0b47ce3544cad8/Settings_screenshot.png\"\u003e\u003c/p\u003e\n\n## Manage encryption keys\nManage the encryption keys on the local keychain. \n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/Offlinedevice/blob/690bbbc3bd5d7f13e14d1bdd59786dc39a22e526/GPG_compact044.jpg\"\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/Offlinedevice/blob/7fe51c74bd154c4e46089281617a19783bcfaa3d/ViewKey_v0_4_5_DEMO.JPG\"\u003e\u003c/p\u003e\n\n## Add and create Bitcoin wallets\nA wallet can be generated by a trusted hardware wallet such as Blockstream Jade and then inported to get air-gapped functionality while the keys are encrypted on the Offline device. \n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/Offlinedevice/blob/825b7a1e2841eee8a0a62df85680b776251257ac/BitcoinWallet_Demo044.jpg\"\u003e\u003c/p\u003e\n\n## Statement for each Bitcoin wallet\nA statement for each Bitcoin wallet. Transactions signed by the Offline Device are added automatically. Good for reporting and managing KYC questions. You can interact with each client/employer/exchange etc with an unique wallet (and statement).  \n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/Offlinedevice/blob/67f4b982cd9f29e2814f1f9446354b705cd52dd5/Example_wallet_statement.jpg\"\u003e\u003c/p\u003e\n\n## Digital IDs\nControlling your own digital ID is as important as controlling your own digital money. The Offline device gives an easy way to create IDs and encrypted files that can be uploaded to public keyservers around the word. Including picture ID/key. \n\nFor personal use:\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/Offlinedevice/blob/c0d7a2a3463dd7f58e6bc44cba59d105d26ab20c/ID_Karin_Demo.JPG\"\u003e\u003c/p\u003e\n\nAnd maybe one for epic gamer ID:\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://github.com/Offlinedevice/project/blob/291037e6e33de97521e22a7abb742123ab7c2843/ID_gamer_demo.png\"\u003e\u003c/p\u003e\n\n### Update GUI\nMake sure you are running the latest graphical interface, GUIApp.py. Download the latest tar- file from the download section and select \"settings -\u003e Update software\" on the Offline device. \n\n## Locales\n\nUsing a Raspberry Pi keyboard and mouse supports in getting the Locales (correct layout of keys etc.). Always set the correct time and date before staring to use the device. This is important for encryption key generation and date/time stamps. \n\n## Release + Commit Verification\n\nAll releases and commits as of June 28, 2024 are signed by key `BEF873B4691EB2C24E399445FE86F26704C3F74A` (offlinedevice@cyb.org).\n\n### Past Keys\nNone.\n\n## Donations\nIf you'd like to help us with the cost of running the Offline device project you can send a payment to us via our BTC address bc1qyufesfamy2qvuc0twce3xsqh8nwrs48placp6f.\n\nThank you.\n\n## License\n\nDistributed under the GNU Affero General Public License (AGPL v2). See [LICENSE file](LICENSE).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fofflinedevice%2Fofflinedevice","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fofflinedevice%2Fofflinedevice","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fofflinedevice%2Fofflinedevice/lists"}