Just use a public key as your address, and make signed pointers to the actual content. That's how people have been solving the update problem for ages.
Naming things continues to be one of the hard problems in computer science.
Naming things continues to be one of the hard problems in computer science.
I think that's a fine road to go down for addressing data, but it's not content addressing.
What is actually the difference in any way that matters? What property does content addressing have that this doesn't.