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.
{
"@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'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'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"
}