silverpill

@silverpill@mitra.social · Joined ⁨Nov⁩ ⁨2021⁩

Developer of ActivityPub-based micro-blogging and content subscription platform Mitra. I help maintain the FEP repository and write my own FEPs too. Currently working on ActivityPub Next.

Matrix
@silverpill:unredacted.org
$XMR
48YM8jwJqDkeUvD38vepSXFeMZH1zsjbvGwTTuaNSSq6Q5GyeWaeiheAZUsSmNn72YdyLpw8geb4FL3opZfGbguJLUj8Mi9
PGP
0541 49E3 0F91 C6D7 8FFA C49C 955F 5A6E 2123 25F0
OMEMO fingerprint
689a2fb0ec87a9481fb45cb7d8870da6aeb4d8247bd69a39017701133b901f04
Matrix (backup)
@silverpill:poa.st

Proposal: Replace gateways query parameter in 'ap' URIs with @gateway, which can be used multiple times

https://codeberg.org/fediverse/fep/pulls/890

Before:

?gateways=https%3A%2F%2Fserver1.example,https%3A%2F%2Fserver2.example

After:

?@gateway=https%3A%2F%2Fserver1.example&@gateway=https%3A%2F%2Fserver2.example

Query parameters are often used to specify collection filters. The @ prefix will make it clear that gateway parameter is special.

#fep_ef61

Summary card of an issue titled "WIP: FEP-ef61: Define `@gateway` query parameter" in repository fediverse/fepCodeberg.orgWIP: FEP-ef61: Define `@gateway` query parameterReplacing `gateways` query parameter in 'ap' URIs with `@gateway`, which can be used multiple times. https://socialhub.activitypub.rocks/t/fep-ef61-portable-objects/3738/92

Replying to @⁨lutindiscret@mastodon.libre-entreprise.com⁩

@lutindiscret @happyborg I don't feel that mitra is unwelcome there, my interactions with Codeberg team have been mostly pleasant. But I also don't want to count on favorable interpretations.

I didn't ask, but somebody else mentioned mitra in a discussion 7 months ago, and was ignored: https://codeberg.org/Codeberg/Community/issues/2184#issuecomment-8629041

Summary card of an issue titled "Codeberg must take a stricter stance against cryptocurrency projects" in repository Codeberg/CommunityCodeberg.orgCodeberg must take a stricter stance against cryptocurrency projects### Comment There are a number of cryptocurrency projects that exist on Codeberg such as https://codeberg.org/darkrenaissance/darkfi and https://codeberg.org/Flowee/thehub. Projects like these are already banned on Codeberg alternatives such as SourceHut. Allowing these projects is not a neutral...

Codeberg is banning "cryptocurrency projects":

https://codeberg.org/Codeberg/org/pulls/1254#issuecomment-19820413

I don't know if Mitra qualifies as such, but I guess it is time to move to a self-hosted forge.

Summary card of an issue titled "Proposal for Assembly 2026: Disallow cryptocurrency projects" in repository Codeberg/orgCodeberg.orgProposal for Assembly 2026: Disallow cryptocurrency projectsContext: - https://forum.codeberg.org/d/82-taking-a-stance-against-cryptocurrency - https://codeberg.org/Codeberg/Community/issues/794 - https://codeberg.org/Codeberg/Community/issues/2184

Replying to @⁨greyarea@mitra.vpclmulqdq.moe⁩

@greyarea

>If the proof covers all of that then it's not strictly needed, but it's cheap paranoia.

Do you mean id/actor/to of a plaintext activity, or of an envelope (EncryptedActivity)?

My understanding is that the properties of an envelope have no effect on security. It can even have a different actor.

I added an example of a plaintext activity: https://codeberg.org/silverpill/feps/src/branch/main/0806/fep-0806.md#plaintext-activity

Also added HPKE mode to the parameter list - mode_base.

Summary card of repository silverpill/feps, described as: My FEPsCodeberg.orgfeps/0806/fep-0806.md at mainfeps - My FEPs

Replying to @⁨greyarea@mitra.vpclmulqdq.moe⁩

@greyarea I added HPKE algorithm parameters to the FEP:

https://codeberg.org/silverpill/feps/src/branch/main/0806/fep-0806.md#algorithms

KEM: DHKEM(X25519, HKDF-SHA256)
AEAD: ChaCha20Poly1305
KDF: HKDF-SHA256
"info" string: fep-0806-info
"aad" string: fep-0806-aad

Does it look right?

KEM/AEAD/KDF choices are not my preferences, I just copied them from another HPKE+ed25519 implementation.

Summary card of repository silverpill/feps, described as: My FEPsCodeberg.orgfeps/0806/fep-0806.md at mainfeps - My FEPs

Replying to @⁨greyarea@mitra.vpclmulqdq.moe⁩

@greyarea Hi, I tried to implement the mechanism described in the FEP and decided to use HPKE (RFC-9180). What do you think of it?

HPKE seems to address the issue you pointed out back then: https://www.rfc-editor.org/rfc/rfc9180.html#name-forward-secrecy.

At least if used properly. The library I am using hard-codes "info" and "aad" strings: https://github.com/rustonbsd/ed25519-dalek-hpke/blob/27b010a9ae25ba4ce051510eadfd103a179dd715/src/lib.rs#L98-L104

Anyway, here's an updated FEP: https://codeberg.org/silverpill/feps/src/branch/main/0806/fep-0806.md

@raucao @lain @sozialwelten @koteisaev

www.rfc-editor.orgRFC 9180: Hybrid Public Key Encryption This document describes a scheme for hybrid public key encryption (HPKE). This scheme provides a variant of public key encryption of arbitrary-sized plaintexts for a recipient public key. It also includes three authenticated variants, including one that authenticates possession of a pre-shared key and two optional ones that authenticate possession of a key encapsulation mechanism (KEM) private key. HPKE works for any combination of an asymmetric KEM, key derivation function (KDF), and authenticated encryption with additional data (AEAD) encryption function. Some authenticated variants may not be supported by all KEMs. We provide instantiations of the scheme using widely used and efficient primitives, such as Elliptic Curve Diffie-Hellman (ECDH) key agreement, HMAC-based key derivation function (HKDF), and SHA2. This document is a product of the Crypto Forum Research Group (CFRG) in the IRTF.

Replying to @⁨hongminhee@hollo.social⁩

@hongminhee @phnt I guess I should clarify what my comment was about. I didn't say that people should reject LLMs because using them is unethical or whatever.

The real question is, whether they will be rejected or not. You both seem to be convinced that LLMs are here to stay, like this is some kind of historical inevitability. If this were true, resisting them would indeed be irrational.

But there is no such thing as historical inevitability. Some technologies just come and go, and such examples exist in recent history. Remember NFTs? That technology was relatively benign compared to LLMs, and yet it was effectively un-invented.

Replying to @⁨greyarea@mitra.vpclmulqdq.moe⁩

@greyarea @raucao @lain @sozialwelten @koteisaev Thank you for the advice. I need to start with something simple in order to learn how cryptography works. Then it will be replaced with a more secure scheme.

From what I learned so far, the core principle is pretty much the same in all modern encryption schemes, they differ in how shared symmetric key is generated. Is that correct?