Meanwhile our HTTP servers happily log every URI it received in access logs. Oh, and if you ever send a link in non E2EE messenger it's likely their server generated the link preview for you.
Example 1:
Alice wants Bob to see CoolDocument. Alice generates a URL that has the snowflake in the URL and gives it to Bob. Eve manages to see the chat, and can now access the document.
Example 2:
Alice wants Bob to see CoolDocument. Alice clicks "Share with Bob" in the app, grabs the URL to the document with no authentication encoded within and sends it to Bob. Bob clicks the link, is prompted to login, Bob sees the document. Eve manages to see the chat, follows the link, but is unable to login and thus cannot see the document.
Later, Alice wants to revoke Bob's access to the document. Lots of platforms don't offer great tools to revoke individual generated share URLs, so it can be challenging to revoke Bob's access without potentially cutting off other people's access in Example 1, as that link might have been shared with multiple people. In example 2, Alice just removes Bob's access to the doucment and now his login doesn't have permissions to see it. Granted, better link management tools could sovle this, but it often seems like these snowflake systems don't really expose a lot of control over multiple share links.
Or are you saying its a pain for you, Eve, not being able to see Bob's documents so easily?
And when I'm replying to someone on HN, I never have to worry "do they have an HN account already?".
This is indexable by search engines.
> Here's the URL to the thing: https://example.com/a/url and the password is "hunter2".
This is indexable by search engines.
Yes, the latter is marginally harder, but you're still leaning on security through obscurity, here.
The number of times I have had "we need to securely transmit this data!" end with exactly or something equivalent to emailing an encrypted ZIP with the password in the body of the email (or sometimes, some other insecure channel…) …
Any tradeoffs should be viewed in that context.
I’m not sure if short lived temporary private links fit the model of private links as described above.
If that counts as a private link, what if I’m using a conventional session based app, I go into dev tools and “copy as curl”, does that qualify as a private link?
You mean mathematically there is no difference. Functionally there is a very, very big difference.