Ethereum
Payments Logic
IPFS
Content retrieval
Mediachain
Content index
Blockstack
Entity index
Can't store on-chain
Can't route through IPFS DHT
Can't store as dumb blobs or even bare IPLD
Better routing is possible
“AC/DC — T.N.T.” → Elektra Records → Atlantic Records Group → Warner Music Group → RIAA → Music Industry
[~]% blockstack lookup arkadiy.id
{
"profile": {
"@type": "Person",
"account": [
{
"@type": "Account",
"identifier": "0cfe308259f0eb23d38fd7f274c18706ec52ce25",
"service": "openbazaar"
},
{
"@type": "Account",
"identifier": "Qmefn9NSUDVXqM9fuGN93Up....",
"service": "mediachain"
},
{
"@type": "Account",
"identifier": "parkan",
"proofType": "http",
"service": "twitter"
}
...
Proofs transitively valid in Mediachain!
(related to, but different from, Blockstack namespaces)
music.riaa.wmg.arg.elektra
(semantics/format *NOT FINAL*)
Permissionless (universe.*) or governed
Permissions model can derive from underlying blockstack ns
[~]% blockstack lookup arkadiy.id
{
"profile": {
"@type": "Person",
"account": [
...,
{
"@type": "Account",
"identifier": "Qmefn9NSUDVXqM9fuGN93Up....",
"service": "mediachain"
},
...
],
"mediachain": {
"namespaces" : [
"universe.dogs",
"mediachainlabs"
"music.warprecords"
]
}
...
podcasts.ethereum namespace + some smart contract magic = decentralized podcast marketplace
Golang and JS peers on top of libp2p
IPLD serialization (more or less)
multistream compatible ("mc" protocol), plays nice with IPFS
active now, 100MM+ routable objects from CC, museums, etc
Finalize blockstack profile/ns semantics
Ditto for mediachain namespaces
blockstack server integration
IPFS Kad DHT peer lookup
@mediachain_
mediachain/concat
@parkan
arkadiy.id
mediachain/aleph