ActivityPub Viewer

A small tool to view real-world ActivityPub objects as JSON! Enter a URL or username from Mastodon or a similar service below, and we'll send a request with the right Accept header to the server to view the underlying object.

Open in browser →
{ "@context": [ "https://www.w3.org/ns/activitystreams", "https://w3id.org/security/v1", { "Hashtag": "as:Hashtag", "sensitive": "as:sensitive", "manuallyApprovesFollowers": "as:manuallyApprovesFollowers", "alsoKnownAs": { "@id": "as:alsoKnownAs", "@type": "@id" }, "movedTo": { "@id": "as:movedTo", "@type": "@id" }, "toot": "http://joinmastodon.org/ns#", "featured": { "@id": "toot:featured", "@type": "@id" }, "Emoji": "toot:Emoji", "blurhash": "toot:blurhash", "votersCount": "toot:votersCount", "schema": "http://schema.org#", "PropertyValue": "schema:PropertyValue", "value": "schema:value", "ostatus": "http://ostatus.org#", "conversation": "ostatus:conversation" } ], "type": "Article", "id": "https://chrichri.ween.de/o/269e88fbc870469ebb6fce4f7ced614d", "attributedTo": "https://chrichri.ween.de", "content": "<p>The <a href=\"https://chrichri.ween.de/t/gpg\" class=\"mention hashtag\" rel=\"tag\">#<span>GPG</span></a> key I use to decrypt my harddrive and passwords and to validate my boot configuration is stored inside a <a href=\"https://chrichri.ween.de/t/libremkey\" class=\"mention hashtag\" rel=\"tag\">#<span>LibremKey</span></a>. On a monday I had problems using the key. Since the GPG key had been generated in 2019. I decided it would be time to create a new one.</p>\n<ul>\n<li>created a new gpg key on an airgapped system (Raspberry Pi 2 without wifi)</li>\n<li>made a backup of that key</li>\n<li>copied the key into a new <a href=\"https://chrichri.ween.de/t/openpgpcard\" class=\"mention hashtag\" rel=\"tag\">#<span>OpenPGPcard</span></a></li>\n<li>made the new OpenPGPcard usable in a <a href=\"https://chrichri.ween.de/t/reinersct\" class=\"mention hashtag\" rel=\"tag\">#<span>ReinerSCT</span></a> komfort terminal</li>\n<li>reencrypted my <a href=\"https://chrichri.ween.de/t/pass\" class=\"mention hashtag\" rel=\"tag\">#<span>pass</span></a> stores content to be able to use both keys\n<ul>\n<li>this didn&#x27;t work, because of lack of space inside the <a href=\"https://chrichri.ween.de/t/tomb\" class=\"mention hashtag\" rel=\"tag\">#<span>tomb</span></a></li>\n<li>extending the tomb failed, because there&#x27;s still a problem with btrfs on tombs</li>\n<li>made a new tomb and copied manually all the content over</li>\n<li>replaced my pass-tomb with the bigger new one</li>\n<li>finally reencrypted my passwords</li>\n</ul>\n</li>\n<li>reencrypted the secret to unlock my harddrive</li>\n<li>put the new public key and the re-encrypted luks secret into initramfs</li>\n<li>replaced the OpenGPGcard inside the <a href=\"https://chrichri.ween.de/t/libremkey\" class=\"mention hashtag\" rel=\"tag\">#<span>LibremKey</span></a> by the new one containing my new gpg keys</li>\n<li>rebooted and found <a href=\"https://chrichri.ween.de/t/heads\" class=\"mention hashtag\" rel=\"tag\">#<span>heads</span></a> would only drop me to a rescue shell (instead of allowing an <em>unsafe</em> boot)</li>\n<li>started the system by calling <a href=\"https://chrichri.ween.de/t/kexec\" class=\"mention hashtag\" rel=\"tag\">#<span>kexec</span></a></li>\n<li>disk decryption using the new gpg key worked fine</li>\n<li>after another reboot pressed some key to get into the <a href=\"https://chrichri.ween.de/t/pureboot\" class=\"mention hashtag\" rel=\"tag\">#<span>PureBoot</span></a>/heads menu</li>\n<li>imported the new public gpg key into heads and wrote it to the bios area</li>\n<li>signed my boot files</li>\n<li>rebooted and got stopped by PureBoot, because the <a href=\"https://chrichri.ween.de/t/bios\" class=\"mention hashtag\" rel=\"tag\">#<span>bios</span></a> had changed</li>\n<li>created a new totp secret for the bios check and wrote it to the LibremKey</li>\n<li>used the camera on my <a href=\"https://chrichri.ween.de/t/librem5\" class=\"mention hashtag\" rel=\"tag\">#<span>Librem5</span></a> to get the <a href=\"https://chrichri.ween.de/t/totp\" class=\"mention hashtag\" rel=\"tag\">#<span>totp</span></a> secret into <a href=\"https://chrichri.ween.de/t/authenticator\" class=\"mention hashtag\" rel=\"tag\">#<span>Authenticator</span></a> (in case I do not have the LibremKey around I still can check the validity of my Bios using my Phone)</li>\n</ul>\n<p>A reboot showed that everything works like with the former gpg key.</p>\n<ul>\n<li>re-encrypted my pass entries to only let the new gpg key decrypt my passwords</li>\n<li>re-encrypted the pass-tomb to only be decryptable using the new gpg key</li>\n<li>deleted the git information stored for the password-store</li>\n<li>initialized a new git repository and connected it to a newly created remote repository</li>\n<li>pushed the content</li>\n<li>deleted the remote git repository containing the passwords encrypted with my old gpg key</li>\n</ul>\n<p>Besides some small annoyances the process worked very well.</p>\n", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://chrichri.ween.de/followers" ], "published": "2023-10-10T09:05:09Z", "context": "https://chrichri.ween.de/contexts/553879d9e7884b8f834b42bdd4711280", "conversation": "https://chrichri.ween.de/contexts/553879d9e7884b8f834b42bdd4711280", "url": "https://chrichri.ween.de/articles/269e88f/gpg-monday", "tag": [ { "href": "https://chrichri.ween.de/t/gpg", "name": "#gpg", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/libremkey", "name": "#libremkey", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/openpgpcard", "name": "#openpgpcard", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/reinersct", "name": "#reinersct", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/pass", "name": "#pass", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/tomb", "name": "#tomb", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/heads", "name": "#heads", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/kexec", "name": "#kexec", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/pureboot", "name": "#pureboot", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/bios", "name": "#bios", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/librem5", "name": "#librem5", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/totp", "name": "#totp", "type": "Hashtag" }, { "href": "https://chrichri.ween.de/t/authenticator", "name": "#authenticator", "type": "Hashtag" } ], "summary": null, "inReplyTo": null, "sensitive": false, "attachment": [], "name": "gpg monday" }