#social 2019-09-14

2019-09-14 UTC
heluecht[m] joined the channel
#
heluecht[m]
I've got a question concerning account deletion and tombstones. Would you place a tombstone immediately - or would you wait with this until the account deletion messages had been transmitted and processed?
#
trwnh
heleucht[m]: why wouldnt you put the tombstone immediately? what happens locally should happen instantly.
#
heluecht[m]
We are transmitting the deletion message. Then one can argue that at that time the profile still had to work, so that the signature can be checked.
xmpp-social joined the channel
#
heluecht[m]
BTW: Mastodon seems to not use a tombstone, but immediately return a "410 gone" HTTP error.
hellekin and LukasMatt[m] joined the channel; etjet[m] left the channel
#
fr33domlover
heluecht[m], good question! Hmm I'll need to decide this too. Hmmm idea: instantly switch to Tombstone, but for an hour or so, have the tombstone specify a public key ^_^ hmm but nope this won't work if implementations reject Tombstone as a potential actor (do they? need to check)
#
fr33domlover
I've been avoiding deletions so far, for various reasons, but it's time to code them :p
#
fr33domlover
heluecht[m], trwnh, the idea of delaying the actual deletion for a bit doesn't sound too bad to me, are there examples where that behavior causes problems
#
jaywink[m]
wonders what is the average time implementations cache public keys for? Socialhome does it forever currently. Deletion is immediate and permanent, after sending it out to the network. There is no Tombstone even left after deletion.
#
heluecht[m]
Well, it would be good to not forget a key, once it had been received. And it should never be updated to avoid identity theft.
#
heluecht[m]
Just think of some AP server that goes down and the domain is deceased. Then someone else is registering this domain and opens up another AP server.
#
jaywink[m]
well, in that case you could argue the new owner of the domain now owns the domain ;)
#
jaywink[m]
and since identifies in AP are basically URL's
#
jaywink[m]
* and since identidies in AP are basically URL's
#
heluecht[m]
I'm not sure if every AP server prevents you from deleting an account and then creating a new one with the same nick name.
#
heluecht[m]
This could be ... interesting.
#
jaywink[m]
if a receiver respects the delete - it's basically a new identity after created again. if they don't, they'll probably reject the new messages?
#
nightpool[m]
there's no reason for the profile to be able to be checked to transmit the deletion message
#
nightpool[m]
if the server knows about the account, then presumably they know the public key. if they don't know about the account, then they don't need to delete it
#
heluecht[m]
BTW: Later I read the specs about this: https://www.w3.org/TR/activitypub/#delete-activity-outbox
#
heluecht[m]
"If the deleted object is requested the server SHOULD respond with either the HTTP 410 Gone status code if a Tombstone object is presented as the response body, otherwise respond with a HTTP 404 Not Found."
#
nightpool[m]
that's for the c2s API
#
heluecht[m]
So Friendica now is immediately sending a 410 with the tombstone in the body.
#
heluecht[m]
Örgs
#
nightpool[m]
although it's probably a good guideline to follow
#
heluecht[m]
I know, I shouldn't have a look at specs, I'm always misunderstanding them 😬
#
nightpool[m]
the distinction between the c2s spec and the s2s spec is always a little murky
#
heluecht[m]
Whatever "murky" means ;-) But I guess I understand.
#
heluecht[m]
So the question stays what you do when you receive a delete activity? Do you check if the profile still is present? Or do you check if it responds with either 404 or 410?
#
heluecht[m]
And what do you do with the cached messages from that account? Do you delete them?
#
jaywink[m]
Socialhome deletes all the messages stored locally for a remotely deleted user. But this is something really not in scope of ActivityPub what to do inside a partciular platform.
#
jaywink[m]
From a privacy point of view personally it would be odd if messages were not deleted for a delete request 🤔
#
jaywink[m]
once could even view it as going against things like GDPR
#
nightpool[m]
heluecht: in this case, murky means unclear or poorly specified
#
nightpool[m]
literally, "like dark or muddy water"
cjd_ and trwnh joined the channel