abueide has quit [Remote host closed the connection]
<dkeav>
you would never end up with a file you hadn't requested on your node right
<dkeav>
that solves the CP fear of being part of intermixed nodes
<TUSF>
Nope. Far as I know, the only way something like CP could end up on your node is if you looked it up, or if it was part of some big folder structure that you pinned without verifying.
<TUSF>
Or if you have a public gateway and someone else requested it
<ex-parrot>
how long on average should it take from initialising ipfs on a new machine and adding a file before I can load that file elsewhere?
<dkeav>
right, i was trying to explain this IPFS thing to some other nerds and that was their holdup, said you would be liable for others like a tor exit node
<ex-parrot>
not if you don't run a gateway I would think
<TUSF>
Yeah, if you don't expose your gateway, then you should be fine.
<dkeav>
i think the trueos guys were using it for their updates
<dkeav>
err or are rather
<TUSF>
I think there was some other IPFS-like project that might have actually had nodes cache random objects, (to ensure they remained on the network) which of course led to a fear of having CP sent to you.
<d4ve9>
how can I allocate a harddrive space to the ipfs network?
<TUSF>
Pin things.
<d4ve9>
i have an 8tb drive not being used.. can't I just dedicate it for other people?
<TUSF>
Set IPFS_PATH to a location on your harddrive, so when you run your daemon is saves everything there?
<ex-parrot>
d4ve9: that is not really how IPFS works. you only store files you pin the hashes of
<d4ve9>
ok
d4ve9 is now known as d4ve
<TUSF>
Yeah, what you could do is open up a pinning service so others can request you keep their files up and running
<dkeav>
that seems dangerous
<TUSF>
Yep.
<TUSF>
Well, if you have a system set up to keep track of them and all, you can later go back and verify the data
<darkdrgn2k[m]>
so what you guys think of cloudflare running ipfs gateways
<TUSF>
Actually, something I haven't seen is something that pins and regularly updates an ipns address.
lanlink has quit [Quit: lanlink]
<d4ve>
eternum should give me a cut from letting them host on my hd
ex-parrot has left #ipfs [#ipfs]
zane_ has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
mthiel has quit [*.net *.split]
Ekho has quit [*.net *.split]
fxrs has quit [*.net *.split]
jpaa has quit [*.net *.split]
jin has quit [*.net *.split]
jpaa has joined #ipfs
jin has joined #ipfs
peterix has joined #ipfs
fxrs has joined #ipfs
Ekho has joined #ipfs
zane has joined #ipfs
zane is now known as Guest20872
Fessus has quit [Ping timeout: 240 seconds]
Guest20872 has quit [Client Quit]
Fessus has joined #ipfs
mthiel has joined #ipfs
hurikhan77 has joined #ipfs
tribrid has joined #ipfs
Fessus has quit [Remote host closed the connection]
Fessus has joined #ipfs
mauz555 has joined #ipfs
mauz555 has quit [Read error: Connection reset by peer]
rdesfo[m] has joined #ipfs
Jesin has quit [Quit: Leaving]
lassulus_ has joined #ipfs
lanlink has joined #ipfs
notkhris[m] has joined #ipfs
lassulus has quit [Ping timeout: 244 seconds]
lassulus_ is now known as lassulus
jin has quit [Changing host]
jin has joined #ipfs
jin has left #ipfs ["WeeChat 1.0.1"]
redfish has quit [Ping timeout: 240 seconds]
Steverman has quit [Ping timeout: 244 seconds]
Mateon2 has joined #ipfs
bblindy has joined #ipfs
Mateon1 has quit [Ping timeout: 272 seconds]
Mateon2 is now known as Mateon1
bblindy has quit [Ping timeout: 252 seconds]
redfish has joined #ipfs
<Mayeu>
darkdrgn2k[m]: if I was cynical I would say that CloudFlare is in the business of centralising decentralised web protocol. But that may be because I woke up on the wrong side of the bed.
<TUSF>
I'd definitely buy that
<darkdrgn2k[m]>
hmmm
<TUSF>
Less cynically, they might actually want widespread adoption of IPFS in browsers so they can offload their storage costs to others and still charge normies.
<Mayeu>
TUSF: yup.
<Mayeu>
I also feel it is cool to see adoption of a new promising protocol.
<Mayeu>
more widespread adoption*
<TUSF>
It's also just possible that it's a PR stunt to distract from something else. Who knows. ¯\_(ツ)_/¯
<TUSF>
That said, on its own starting up just another gateway doesn't really help IPFS, I think?
cratliff has joined #ipfs
<TUSF>
Well, someone said it'd probably be very good as a bootstrap node, tho
<Mayeu>
TUSF: yup, load of datacenter accross the world for you data to enjoy
crepuscular has joined #ipfs
user_51 has quit [Ping timeout: 272 seconds]
user_51 has joined #ipfs
colatkinson has joined #ipfs
roygbiv has joined #ipfs
zane has joined #ipfs
zane is now known as Guest96767
bblindy has joined #ipfs
roygbiv has quit [Quit: ™]
bblindy has quit [Ping timeout: 252 seconds]
colatkinson has quit [Read error: Connection reset by peer]
bblindy has joined #ipfs
bblindy has quit [Ping timeout: 240 seconds]
colatkinson has joined #ipfs
reit has quit [Ping timeout: 240 seconds]
dqx has joined #ipfs
Guest96767 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
colatkinson has quit [Quit: colatkinson]
chevybowtie_ has joined #ipfs
nonlinear has quit [Ping timeout: 244 seconds]
nonlinear has joined #ipfs
<TUSF>
Huh
<TUSF>
I just noticed the "log" subcommand isn't mentioned at all in "ipfs --help"
<TUSF>
It does appear that CloudFlare has multiple IPFS nodes running
<TUSF>
What's more, when I tried to access their site, it looks like they tried to ping me twice for content from two different nodes, so maybe they try to auto-mirror stuff?
zane has joined #ipfs
zane is now known as Guest68752
MDude has quit [Ping timeout: 260 seconds]
lilduckie6431[m] has joined #ipfs
<TUSF>
Anyways, maybe it'd be a good idea for "ipfs stats bitswap" to tell you which blocks have had the most bandwidth usage?
<TUSF>
Instead of guessing based on how often "Bitswap.TaskWorker.Work" pops up.
<swedneck[m]1>
I suspect they want to use ipfs as CDN, it probably makes their job waaay easier
<swedneck[m]1>
They get good PR, they get a much simpler system, and other ipfs users will help make their sites faster
<swedneck[m]1>
Win win win
konubinix has quit [Ping timeout: 272 seconds]
konubinix has joined #ipfs
tribrid has joined #ipfs
tribrid has quit [Client Quit]
tribrid has joined #ipfs
tribrid has quit [Remote host closed the connection]
fazo has quit [Quit: fazo]
<JCaesar>
Mmmh. Then again, why is the usual cloudflare system running in front of cloudflare-ipfs.com? if you ask for a hash that timeouts, you'll get to see the usual "it's down but we're not"…
<r0kk3rz>
yeah, just abuse their ipfs nodes to seed your content :)
<swedneck[m]1>
can we ban this guy? he goes around posting this everywhere
leeola has joined #ipfs
<r0kk3rz>
damn matrix spammers
<r0kk3rz>
let just ban matrix :D
<jcgruenhage>
jackyx:'s account has been deactivated
<swedneck[m]1>
>inb4 this is the start of the matrix movie
jackyx[m] has left #ipfs ["User left"]
<swedneck[m]1>
nice
gmoro has joined #ipfs
Corran26 has joined #ipfs
Corran26 has quit [Remote host closed the connection]
itachi170623 has joined #ipfs
discopatrick has joined #ipfs
itachi170623 has quit [Ping timeout: 240 seconds]
dqwdqwsqw has quit [Ping timeout: 256 seconds]
zorprime has quit [Ping timeout: 250 seconds]
cratliff has joined #ipfs
bblindy has joined #ipfs
cratliff has quit [Ping timeout: 252 seconds]
loybeek has left #ipfs [#ipfs]
shizy has joined #ipfs
Sunflowery has quit [Read error: Connection reset by peer]
Sunflowery has joined #ipfs
ulrichard has quit [Remote host closed the connection]
<lgierth>
ping the ops next time
<swedneck[m]1>
ah right, sorry
TUSF has quit [Ping timeout: 264 seconds]
TUSF has joined #ipfs
rodolf0 has joined #ipfs
grumble has quit [Remote host closed the connection]
cratliff has joined #ipfs
fxrs has left #ipfs ["Leaving"]
grumble has joined #ipfs
abueide has joined #ipfs
crepuscular has quit [Remote host closed the connection]
toxync01 has quit [Ping timeout: 260 seconds]
toxync01 has joined #ipfs
MDude has joined #ipfs
lanlink has joined #ipfs
<Kolonka[m]>
lgierth: can you clear up my confusion (above)?
<lgierth>
everything that's served through a gateway is stored in that ipfs node's repo
<lgierth>
until it eventually gets garbage collected
<lgierth>
so it stays for a while
sethfork has joined #ipfs
d4ve9 has joined #ipfs
dadabidet has quit [Quit: Leaving]
d4ve has quit [Ping timeout: 252 seconds]
lanlink has quit [Ping timeout: 252 seconds]
Guest81098 has quit [Quit: Leaving]
tsglove has joined #ipfs
Sunflowery has quit [Remote host closed the connection]
Sunflowery has joined #ipfs
<Kolonka[m]>
I see
<Kolonka[m]>
so couldn't that create some sort of legal precedent for investigating users, or banning the protocol altogether?
<TUSF>
Not really. Because you only really cache things you see.
<lgierth>
if you run a gateway you'll have to live with the risk that people can request all sorts of stuff through it
<TUSF>
This is only really a problem for those that have a public gateway exposed to the internet.
<lgierth>
legal processes exist for this, DMCA, abuse forms, etc.
<Kolonka[m]>
I'm talking about BitSwap
<lgierth>
bitswap only fetches what the ipfs node tells it to
<lgierth>
if you run a gateway, it'll fetch what's requested through the gateway
<Kolonka[m]>
my bad, it seems lgierth was referring to a gateway too
<Kolonka[m]>
I'm not concerned with how the gateways work
<lgierth>
if you don't run a gateway, it'll only fetch what you yourself as the user of the ipfs node request
tbodt24 has joined #ipfs
<Kolonka[m]>
the node will want to exchange any wanted block that gets passed to it, it has no idea of the content beforehand
<TUSF>
Don't think the node will actually download any blocks that weren't requested.
tbodt24 has quit [Remote host closed the connection]
abueide has quit [Ping timeout: 246 seconds]
<lgierth>
Kolonka[m]: are you referring to the whitepaper section where it says it'll try to find blocks that are widely demanded so that it can boost its reputation?
<lgierth>
that part isn't implemented
<lgierth>
it currently only ever fetches what the ipfs node itself requests
<Kolonka[m]>
the idea of bitswap is that it fetches blocks that other nodes request, TUSF
<lgierth>
and that's likely not gonna change
<Kolonka[m]>
how is it working right now lgierth ?
<lgierth>
as i'm saying
nvmq has joined #ipfs
<nvmq>
gonna use this nick because matrix latency sucks
<lgierth>
we need to update that whitepaper...
<lgierth>
it's >4 years old
<nvmq>
isn't the protocol itself only around that age
<swedneck[m]1>
oh wow really?
<bennofs[m]>
is it normal that more than 50% of the providers for a block are not pingable?
<bennofs[m]>
For example, look at ipfs dht findprovs QmRUp2sy7PJSWxWT1GUM8tZe1KKZaPkCvNYt8iWJT8jg9c | xargs -n1 ipfs ping
<lgierth>
bennofs[m]: yeah nodes go offline when people shut down their computers :)
<lgierth>
and the dht provider records eventually get evicted if they don't get refreshed
<TUSF>
So the DHT holds onto records of people that *had* the block too?
<nvmq>
so was the decision to not allow requests from other nodes made because of the potential legal issues i mentioned?
<nvmq>
i've seen that being a big point of contention on places like hackernews
<lgierth>
no simply because it's hard
abueide has joined #ipfs
<lgierth>
and there's more important stuff
<lgierth>
and it's actually been an advantage to be able to say "ipfs is pull-only"
<bennofs[m]>
TUSF: i haven't found any RPC to remove things from the provider list in the DHT, so I'd assume yes
<nvmq>
what do you mean by pull-only lgierth
<lgierth>
TUSF bennofs[m]: well yeah for some time. every provider record has a TTL and when that's reached, it gets remoevd
ylp has quit [Quit: Leaving.]
<TUSF>
pull-only as in, you only get what you request, right?
<bennofs[m]>
lgierth: isn't this a problem though? i get that you will always have some out-of-date records, but having the majority be non-reachable sounds scary
<lgierth>
nvmq: that nodes only every fetch what was requested. freenet for examples pushes blocks to other nodes. and there's a ton of hybrid modes imaginable (e.g. the mode mentioned in the ipfs whitepaper)
<nvmq>
ah ok
cwahlers has joined #ipfs
<nvmq>
actually, i'm still a tad confused
<lgierth>
bennofs[m]: yeah higher reachable-to-unreachable ratio is obviously better
captain_morgan has quit [Remote host closed the connection]
captain_morgan has joined #ipfs
<nvmq>
the nodes only fetch what that node itself has requested, and not of any others?
cwahlers_ has quit [Ping timeout: 252 seconds]
fazo has quit [Remote host closed the connection]
<lgierth>
yes
<nvmq>
in that case, what purpose does bitswap serve?
<nvmq>
well
tbenett has quit [Ping timeout: 252 seconds]
<nvmq>
(scratch that "well")
<lgierth>
to fetch the requested blocks from other nodes, while being sharing resources relatively fairly between everybody who's fetching the same blocks, or from the same node
lnostdal has quit [Ping timeout: 272 seconds]
<nvmq>
so block exchange only happens with blocks that you also have on your want list?
<nvmq>
and the principle is the same as described in the paper otherwise
<lgierth>
other nodes can fetch any blocks from you that you have in your repo
<nvmq>
sure
<lgierth>
and you fetch blocks by adding them to your wantlist, which gets replicated to your peers
mauz555 has joined #ipfs
<lgierth>
then peers will start sending them to you
<lgierth>
and bitswap tries to keep the duplications in that low
<nvmq>
but only if they already want them?
<nvmq>
because otherwise, you are transmitting unknown data
<lgierth>
yeah they only send it to you if you "want" it
<nvmq>
i mean
lnostdal has joined #ipfs
<nvmq>
you will only fetch blocks for others if you also want it?
<lgierth>
you don't ever fetch blocks for others
<nvmq>
rather than at 'random' like the paper suggests
<nvmq>
oh
<lgierth>
that part of the whitepaper is not implemented
<lgierth>
probably never will
<lgierth>
that's why i said "we need to update the whitepaper" when you joined
<bennofs[m]>
lgierth: yeah well but I am only getting 2/20 reachable nodes for providers of /ipns/ipfs.io (which resolves to /ipfs/QmS4fTD7Rh8NouNhp9uZbawUdBpgHaUTeL3EnxX8Tiiu7H for me)
<lgierth>
dejavu
<nvmq>
i'm Kolonka[m] btw
<lgierth>
ah got it
<bennofs[m]>
2/20 feels like absurdly small rate
<nvmq>
irc is just quicker
<nvmq>
one more thing i wanted to clear up if you don't mind
<nvmq>
is there some level of initial 'buffer' in allowing a person to leech from you, before subjecting them to the share ratio rule?
<nvmq>
ie
<nvmq>
if someone downloads 1B from you
<nvmq>
and you've downloaded 0B from them
<nvmq>
you've shared >∞ as much as them
<nvmq>
when the formula cuts off as it approaches 2x
<nvmq>
but it's still a tiny amount of data
<lgierth>
i'm not too sure about which share formula is currently implemented
<nvmq>
alright
<lgierth>
but you can definitely fetch a ton of stuff
lnostdal has quit [Remote host closed the connection]
<nvmq>
that would have to be necessary as far as i know
<nvmq>
but at the same time i feel the exchange system is neutered
<nvmq>
by not fetching for anyone
lnostdal has joined #ipfs
<nvmq>
in a way that, something like a sybil attack may not even be a worry
<nvmq>
because it's so unlikely that you will find a random node on the network that will have the blocks you want
<nvmq>
but you will also have what they want
<nvmq>
that's why i'm still struggling to picture how bitswap in it's current incarnation even works
toxync01 has quit [Ping timeout: 252 seconds]
TUSF has quit [Quit: Leaving]
TUSF has joined #ipfs
<swedneck[m]1>
reading this makes me wonder: should i be using a server profile or something if i want a node to just output as much data as possible?
toxync01 has joined #ipfs
<bennofs[m]>
nvmq: maybe it doesn't actually work and noone noticed :)
<nvmq>
lol, maybe
<nvmq>
today i've sent 618 blocks
<nvmq>
but i only have a few mb of files pinned
<bennofs[m]>
or more likely, someone knows it doesn't work but nobody cares right now as it's not the most relevant problem
<lgierth>
swedneck[m]1: server profile doesn't affect fetching/providing performance. it only disables mdns and stops random dials into private IP address ranges (some hosters don't like that)
<nvmq>
i've sent 130mb of data, so that's unlikely that it's stuff i've pinned
<nvmq>
not impossible
<nvmq>
but quite unlikely
<nvmq>
the share ratio was presumably conceived to make sure nodes you don't personally know will share data fairly
<bennofs[m]>
nvmq: not sure if that counts DHT traffic as well?
<swedneck[m]1>
mdns?
<bennofs[m]>
zero conf dns in local lan via broadcasting
<lgierth>
swedneck[m]1: local discovery
<bennofs[m]>
used to discover neighbours in local lan
<lgierth>
yeah
<nvmq>
oh does it
<swedneck[m]1>
ah
<nvmq>
that would make sense since it's constant
TUSF2 has joined #ipfs
TUSF2 has quit [Client Quit]
TUSF has quit [Ping timeout: 250 seconds]
TUSF has joined #ipfs
anoemi has joined #ipfs
sakalli_ has joined #ipfs
abueide has quit [Remote host closed the connection]
abueide has joined #ipfs
sakalli_ has quit [Client Quit]
shizy has quit [Quit: WeeChat 2.2]
dimitarvp has quit [Read error: Connection reset by peer]
sethfork has quit [Remote host closed the connection]
sethfork has joined #ipfs
abueide has joined #ipfs
gmoro has quit [Remote host closed the connection]
gmoro has joined #ipfs
aru18 has joined #ipfs
sethfork has quit [Remote host closed the connection]
sethfork has joined #ipfs
aru18 has quit [K-Lined]
sethfork has quit [Read error: Connection reset by peer]
mauz555 has quit [Read error: Connection reset by peer]
abueide has quit [Remote host closed the connection]
anoemi has quit [Remote host closed the connection]
Encrypt has joined #ipfs
Clueless404 has joined #ipfs
sethfork has joined #ipfs
reit has joined #ipfs
Clueless404 has quit [Quit: Page closed]
TUSF has quit [Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org]
TUSF has joined #ipfs
spencerhughes[m] has joined #ipfs
sethfork has quit [Remote host closed the connection]
clarknelson8 has joined #ipfs
<TUSF>
btw, botbot.me will be Shutting Down early November, so may need a new way to log irc.
clarknelson8 has quit [Remote host closed the connection]
<swedneck[m]1>
matrix? :3
Kubuxu_ has quit [Remote host closed the connection]
Magik6k has quit [Remote host closed the connection]
<TUSF>
could always have our own bot that saves everything to ipns.
<lidel>
btw: anyone using matrix in weechat? (cli irc client)
sethfork has joined #ipfs
<swedneck[m]1>
nope, riot here
<TUSF>
maybe we should all just migrate to Orbit 🤔
pvh has quit [Quit: Connection closed for inactivity]
Kubuxu has joined #ipfs
<TUSF>
maybe if we all use Orbit, it'll force development in it to speed up, lol
<lidel>
irc ←→ matrix ←→ orbit
sethfork has quit [Ping timeout: 272 seconds]
<lidel>
would be cool :)
<daed>
is there something in orbit dev that's lacking speed?
<TUSF>
i was under the impression that it isn't considered stable or something? 🤷
<daed>
well it's based on IPFS and IPFS pubsub, which by itself is not considered stable
<daed>
the pubsub part specifically
<TUSF>
haha, true.
<daed>
can't fault orbit for that part at the moment
<daed>
altho i've been pretty interested in orbit for a few months now
<daed>
trying to use it in a real prod app somewhere
<daed>
architecture/design adding orbit/ipfs into the mix is not nearly as easy as centralized apps
plate3 has joined #ipfs
<TUSF>
how does it even work, anyways?
<daed>
which part?
plate3 has quit [Remote host closed the connection]
ddahl has joined #ipfs
Magik6k has joined #ipfs
cehteh has joined #ipfs
Alpha64 has joined #ipfs
bomb-on has quit [Quit: SO LONG, SUCKERS!]
papalizer has joined #ipfs
mauz555 has joined #ipfs
lord| has quit [Quit: WeeChat 2.2]
<TUSF>
like, what does orbit actually *do*. i understand irc will enough as a client/server sort of relay (hence the name) but what of orbit?
tenchooo has quit [Remote host closed the connection]
tenchooo has joined #ipfs
<TUSF>
daed
Encrypt has quit [Quit: Quit]
bomb-on has joined #ipfs
djdv has quit [Quit: brb]
<bennofs[m]>
isn't orbit just a distributed log store on top of ipfs? (plus a database built on that log store)
astrofog has joined #ipfs
papalizer has quit [Read error: Connection reset by peer]
<TUSF>
that's orbitdb. was asking how orbit the chat application works, (and how it actually distributes the database, i guess)
astrofog has quit [Remote host closed the connection]
dkjii has joined #ipfs
<dkjii>
I see ipfs had multihash support, doesn't this mean ipfs can have more than one URL for a file if this one was added before a hash change?
djdv has joined #ipfs
drrty has quit [Ping timeout: 244 seconds]
tbenett has joined #ipfs
<lgierth>
dkjii: correct
drrty has joined #ipfs
<dkjii>
is there any interporability that's planned to prevent multiple people storing the files under the same hash? e.g. You could see if a weaker hash was used for a file already, download the file and ensure both point to the same file
<dkjii>
under different hashing algo*
<lgierth>
do you mean hash collisions where there's two different files for the same hash, or duplication where the same data is available under two different hashes?
<dkjii>
duplication
<dkjii>
e.g. one stored in it sha-256 and someone else in sha512
<nvmq>
personally i wonder about collision
<dkjii>
so they both have different links which can't be interpolated
<nvmq>
say if somebody decided to use md5
<lgierth>
ipfs splits files into blocks, so only the unique blocks are duplicated. if two blocks are the same, they'll result in the same block hash
<nvmq>
(something that would probably be fine if you were on a private network)
<nvmq>
although
<nvmq>
they're not going to collide with any sha-256 hashes
<nvmq>
so i doubt it'll be a problem
<lgierth>
ah, between different hash functions. it'll be separate data. but you *can* point link to sha256-hashed blocks from sha512-hashed blocks
djdv has quit [Quit: again]
<lgierth>
and vice versa, and with any other hash functions
<lgierth>
so you can intermix them, and reuse the data and links that are already out there
<nvmq>
and two people on the public network both using md5
<nvmq>
should really expect something like that to happen
<lgierth>
hash collisions are "solved" by multihash
rendar has quit []
rendar has joined #ipfs
rendar has quit [Changing host]
rendar has joined #ipfs
<nvmq>
that and using a default alg with a super high number of possibilities
djdv has joined #ipfs
<dkjii>
but let's say collisions are found in sha-256, how does on ensure it uses the garantees of a newer algorithm while keeping links with old files?
<dkjii>
I mean sure you can still use the old links, but the new links are preferable and I'm not sure anyone is going to bother ensure that another hash algo wasn't used to store the file they're trying to store
<lgierth>
when hash functions are attackable, there's two issues: collisions (two "random" pieces of data resulting in the same hash) and pre-image attacks (being able to partially choose data that will result in a specific hash)
<lgierth>
the latter being worse
<lgierth>
anyway, when sha256 (the current default) eventually gets dangerously weakened, there should already be a recommended replacement in place, i.e. the default on `ipfs add` should already be changed to something else, and data should transparently be re-hashed in the background
<dkjii>
that's what i was wondering, ipfs will rehash all the pinned content on default change?
<dkjii>
but if someone forces the use of a different hash algorithm when pinning a file, does that mean that his node will have a different link for the same file as others using the default?
<lgierth>
no, the rehashing of existing data doesn't exit yet as a feature. just an idea
<lgierth>
but if you add the same data with a new hash function on your own, it'll be duplicated, yeah
<dkjii>
alriight thanks i understand better now
<dkjii>
perhaps a note in the man page to take care using ipfs add --hash should be added
<lgierth>
yeah i agree, i've brought explicitness-about-the-defaults in the past, we'll get to it
<lgierth>
*brought up
<swedneck[m]1>
what if you download a file via a hash, and then try to download it via another hash that's the same file?
<swedneck[m]1>
or the same situation, but with pins?
<lgierth>
if you want full control over the resulting hashes, you need control over hash function, chunking algorith, etc., so you'll want to set explicit options on `ipfs add`
<lgierth>
swedneck[m]1: it'll be considered different data
<dkjii>
swedneck[m]1 from my understand you'll have two identical files with different names
<swedneck[m]1>
if you pin a different hash for the same file, it should probably point both to the same data and announce that it has both hashes
<dkjii>
hmm perhaps the ipfs link should contain a weak hash algo (e.g. crc32) + a strong one to ensure integrity
<lgierth>
if you want consistent names for changing data, IPNS is for you
<dkjii>
that way the crc32 ensure no duplication and the sha512 ensure integrity
<lgierth>
eeh crc32 is pretty useless for all this. maybe for cases where you want to catch typos by humans :)
<lgierth>
but i get your idea
<dkjii>
perhaps crc32 is a bad idea but md5 might be better, becausse if you want to ensure no duplication you'd need to hash the file for all supported algos which would take so long
<lgierth>
just for one algo - the newly recommended one
<dkjii>
I was reading about ipfs and thought adding multihash support adds way too much complexity and it should be changed by version change
<lgierth>
but then you can't tell what version a hash belongs to
<lgierth>
and you get fragmentation
<dkjii>
you'll get fragmentation if you allow people to change their hash
<dkjii>
ensuring the ipfs daemon speaks only to the ones it understands the algo fixes the version problem
<dkjii>
so e.g. if sha256 becomes obsolete you throw a ipfs-v2 which has sha512 as a default, but perhaps knows to look for sha-256 for retrocompatibility
<lgierth>
i gotta run :) time for swimming
<dkjii>
have a nice one, thanks for explaining things :)
<lgierth>
just one last comment: imagine HTTP would make web pages more than X years old inaccessible every few years - as a normal operation of the core protocol
TUSF has quit [Ping timeout: 260 seconds]
<lgierth>
or do you mean restricting the has creation when adding the data to ipfs?
<lgierth>
(generally i think people have some idea of what they're doing if they use the hash function option on `ipfs add`)
<lgierth>
bai!
ddahl has quit [Remote host closed the connection]
keegans_ has joined #ipfs
<dkjii>
I mean not allowing --hash yes, or ensuring ipfs has a way to ensure duplication does not happen for different hashes, since that defeats a lot of its purpose
mauz555 has quit [Ping timeout: 252 seconds]
Alpha64 has quit [Read error: Connection reset by peer]
keegans_ has quit [Killed (Unit193 (Spam is not permitted on freenode.))]
pecastro has joined #ipfs
mooman21910 has joined #ipfs
mooman21910 has quit [Remote host closed the connection]
discopatrick has quit [Quit: Connection closed for inactivity]
Guest68752 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
TUSF has joined #ipfs
rendar has quit []
zane has joined #ipfs
zane is now known as Guest43834
shizy has joined #ipfs
trn has quit [Ping timeout: 264 seconds]
anthraxx17 has joined #ipfs
dkjii has quit [Remote host closed the connection]
anthraxx17 has quit [Remote host closed the connection]
bblindy has quit [Ping timeout: 252 seconds]
tombusby has quit [Ping timeout: 256 seconds]
tombusby has joined #ipfs
TrUsT_n1 has joined #ipfs
TrUsT_n1 has quit [Remote host closed the connection]
joeyh has quit [Ping timeout: 252 seconds]
Sunflowery has quit [Read error: Connection reset by peer]
SunflowerSociety has joined #ipfs
joeyh has joined #ipfs
shizy has quit [Quit: WeeChat 2.2]
shizy has joined #ipfs
philr[m] has joined #ipfs
JJonah10 has joined #ipfs
JJonah10 has quit [Remote host closed the connection]
paccer5 has joined #ipfs
paccer5 has quit [Remote host closed the connection]
<swedneck[m]1>
hold on wtf
<swedneck[m]1>
ipns is fast now?
hydroquinol has joined #ipfs
vmx has quit [Quit: Leaving]
ThatOneRoadie17 has joined #ipfs
ThatOneRoadie17 has quit [Remote host closed the connection]
<bennofs[m]>
swedneck: is it? how did you check?
<swedneck[m]1>
i ran `ipfs name publish`
<swedneck[m]1>
iirc i've enabled pubsub, i presume it's because of that
<bennofs[m]>
seems likely it's pubsub related
<bennofs[m]>
because it still seems slow for me
<swedneck[m]1>
it took like 5 seconds for me
TUSF has quit [Read error: Connection reset by peer]
TUSF has joined #ipfs
<bennofs[m]>
could also just have gotten lucky to get good responsive DHT nodes
hugo___14 has joined #ipfs
hugo___14 has quit [Remote host closed the connection]
TUSF has quit [Client Quit]
joeyh has quit [Read error: Connection reset by peer]
TUSF has joined #ipfs
joeyh has joined #ipfs
DISENENS[m] has joined #ipfs
bblindy has joined #ipfs
lemonpepper24 has joined #ipfs
TUSF has quit [Client Quit]
TUSF has joined #ipfs
<TUSF>
Yeah, IPNS can be updated quicker through pubsub
<TUSF>
It basically publishes updates to an pubsub room called "/ipns/<hash>", and nodes that also have pubsub subscribe there to get live updates, instead of waiting on the DHT
trn has joined #ipfs
xpitr has joined #ipfs
zorprime has joined #ipfs
joeyh_ has joined #ipfs
joeyh has quit [Ping timeout: 245 seconds]
bblindy has quit [Ping timeout: 252 seconds]
<xpitr>
hi. i assume all data i pinned will be stored somewhere in ~/.ipfs and impossible to browse, right? but how would i update pinned /ipns/ entry? i should ipns name resolve (and keep track of them) and manually replace as it changes? but then files removed in new version would still persist i think?
cratliff has quit [Ping timeout: 264 seconds]
<xpitr>
mhhh sorry for 4 questions in one line, heh.
<TUSF>
If you unpin old versions, you'll still keep it cached until the next GC, yes.
<TUSF>
You can trigger GC yourself with `ipfs repo gc`, but this will take a while.
Adbray has quit [Remote host closed the connection]
SamM has quit [Ping timeout: 252 seconds]
<xpitr>
the "indirect" pinned files will be gone then?
<TUSF>
Anything that is not a child of a pinned node, and not within your mfs, will be gone, yes.
<xpitr>
cool, thanks
<lidel>
xpitr, there is a handy `ipfs pin update` command that will be faster than unpinning and pinning
tombusby has quit [Remote host closed the connection]
tombusby has joined #ipfs
rodolf0 has quit [Ping timeout: 252 seconds]
<xpitr>
yeah that was the plan. basically uhhh... ipfs pin update /ipfs/$(ipfs pin ls --type recursive | awk '{print $1}') /ipfs/$(ipfs name resolve /ipns/something)
pecastro has quit [Read error: Connection reset by peer]
sethfork has quit []
lnostdal has quit [Read error: Connection reset by peer]
Guest43834 has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
bblindy has joined #ipfs
rodolf0 has joined #ipfs
joeyh has joined #ipfs
bblindy has quit [Ping timeout: 252 seconds]
<edd[m]>
<swedneck[m]1 "it took like 5 seconds for me"> Am I right that all local users on a system running an ipfs Daemon have access to change the mutable store for the node?
rodolf0 has quit [Client Quit]
<edd[m]>
Oops, that wasn't supposed to be a reply, sorry
<edd[m]>
Question stands though
<edd[m]>
Also wondering if you can only have one mutable store per node
<TUSF>
I believe that the answer is yes
<TUSF>
To both
joeyh has quit [Read error: Connection reset by peer]
drbobbeaty has joined #ipfs
<TUSF>
I'm fairly certain that when you run ipfs commands, they end up connecting to any running API, and thus any user should be able to make modifications, unless the API somehow tries to verify which user is making those modifications.
drbobbeaty has quit [Remote host closed the connection]
joeyh has joined #ipfs
<edd[m]>
That's something to bear in mind...
zane has joined #ipfs
<TUSF>
You can open nodes with different API ports, and force users to only use their own port, maybe.
ljhms has joined #ipfs
zane is now known as Guest23917
<edd[m]>
Ideally each user would have a mutable hash of their own
lilduckie6431[m] has left #ipfs ["User left"]
<edd[m]>
Kind of undermines privelege separation
<TUSF>
Yeah
<edd[m]>
Might raise a bug for that tomorrow
<TUSF>
I was thinking of a certain webhost over IPFS earlier, where a UI would abstract the command away from users, so they can only make changes to some sub-folder in the global mfs.
<TUSF>
So the main node would have an mfs with a /users/TUSF folder, and the front facing UI would treat that as the only folder I can interact with.
<edd[m]>
That'd be neat too
SamM has joined #ipfs
<TUSF>
In any case, I'm not sure how to fix this within the command itself, given that the API works over HTTP
<edd[m]>
Maybe some kind of authentication?
tribrid has joined #ipfs
<edd[m]>
I know some firewalls can block by local user
<edd[m]>
But I feel ipfs should support this
<TUSF>
Well, if you can block ports by local user, you can thus force users to only use a specific port for their own API
<TUSF>
user1 can only use port 5001, user2 port 5002, etc…
<edd[m]>
Right, that's what I mean
<edd[m]>
Not exactly ideal
<TUSF>
That said, I don't fell IPFS as it is right now should have more than one instance running at a time.