I did something very similar with https://truefriender.com/ with a shared key and a private key. If you added a friend you would have the shared key and could then decrypt the content. The content however was invisible to me. I couldn't monetize or get people interested, but I learned a lot from it.
That's cool, I had an idea to do something like that:
For each piece of content (e.g. a photo or video), generate a ~32-byte random string, and symmetrically encrypt the content using that random string as the key. Then encrypt the random string N times using each of your N friends' public keys and give them the result. That way you control access per-item, people you unfriend can't decrypt content you post after the unfriending, and the content itself only has to get encrypted and stored once.
Is that how your thing works? Was it successful from a technical perspective?
What I read - and I can't vouch for it - is that performance was very important for developing the hybrid model.
Besides, it'd add more complexity to an already sensitive algorithm. As the Zen of Python says, special cases aren't special enough to break the rules.