Next step of safecoin algorithm design

I think you are missing the point a little @lubinew it’s a classic innovators trick. I do it all the time with nearly any attack, for instance, first imagine the attack is good, how can we make it easier or promote it and see what the problem looks like then. Maidsafe started a bit like that, how can we make servers secure, the answer was to not have them at all, it was mental but did lead to amazing findings.

Here then option is put for a radically different answer to still have the network fundamentals be met, but looking at apparently crazy situations, but very importantly have thought these crazy ideas in line with many of the features of the network, so not just a crazy persons rant, like what about time travel, or what if we used servers etc.

I think these are perfectly OK thoughts to have and for brainstomring then I am a big believer in thinking way outside the box as they say. It’s all good and as a community, we will not let down token holders or investors in the company either. That part is not a place to have crazy ideas about :wink: that part will be A OK.

Good to always consider it though.


No worries at all

I think this is the key, but it really has to be an open mind with a lot of knowledge of the networks workings. This is where a load of thinkers here are spectacular, hard to separate these crazy ideas from just noise, but in this case, it’s an intriguing one. Mav has thought this through as a crazy idea to consider so it is worth an exploration.

Cheers though.


The network could punish the nodes that drop sacrificial chunks by not promoting this nodes or even reducing their age. We can also encourage a good behaviour by the threat that these nodes could be replaced, as elders, by other nodes.

Not knowing, how the rest of the nodes will act, is a very powerful asset that the network should use.


And we are going to waste time counting? Ever tried counting the potential MDs within the sections responsibility for that tag type. Something like 2^256/#sections that have to be attempted to read.

No I was told clearly that NC was the active clients as determined by active connections to the section.

And the network total is just sections * active connections in the section BUT the calculations are using figures from the sections itself. And assumed to represent the average for the network.

The chunks (TP & TS) and the clients (NC) are for the section.

They are the PUT balance units.


Yes, but I was just trying to refute that counting registered users is more difficult than counting actively connected ones.

I claim that it is strictly the same difficulty: for a vault counting the number of MDs with type tag 0 in its own chunk store is similar to counting the active client connections to itself.

Then extrapolation to the whole network is the same. Consolidation inside a section would be same also. Method used doesn’t matter, we have the choice of the base metrics because none is more difficult than the other.


One is searching 2^256/#sections which is impossible in our lifetime and the other is scanning/counting a table held in the node.

That is a huge difference

No need since the assumption was that the section is a representative portion of the network and if one uses the values from the section itself when doing the calculation then the assumption was that the calculation results would also be a representation of the whole network.

1 Like

There is really a misunderstanding here. The vault effectively scans a table to get the chunks in its own chunk store and counts the MDs with type tag 0.

I make the same assumption.

1 Like

Ok, I’ll play along.

How about this for an idea to limit the barrier to entry for new users? Instead of making PUTs completely free, consider the situation where classic safecoin PUT balance and economic mechanisms considered so far in forum threads are maintained, with the following slight modification.

  1. Every client account earns PUTs at a ratio of their GETs up to a certain limit. (Maybe 1000 PUTs just like alpha 2?)

This would be an analogy to the Level 1 restriction put on new users to this forum. In other words, as a new client account is used to read and download a certain number of chunks, they would be allowed to upload small amounts of data. This eliminates the situation where a) users are unable to farm successfully to earn safecoin, or b) users don’t have access to an off-network exchange or other 3rd party where they can buy safecoin.

Other alternatives :

  1. All clients receive PUT balance at a rate proportional to the rate of PARSEC consensus events, up to a certain limit. This treats consensus events or the addition of blocks to the datachain as an internal notion of “time” as opposed to receiving PUTs at a rate proportional to real world time. The basic idea is that everyone has access to a trickling “faucet” of PUTs up to a limit.

  2. The PUT ‘faucets’ or constant rate of PUT balance distributed to every active client is balanced with the normal safecoin economics through setting aside a special safecoin account that earns at some ratio of the farming rate. This would be similar to how developer rewards and/or PtP are managed. This global faucet account might be viewed as a kind of “profit sharing” or “subsidy” of the network’s safecoin with all active clients. This account would buy PUTs automatically (perhaps for every unit safecoin earned) and distribute the PUT balance to all active clients.

Problems? Spam and lots of spam from bots who create hundreds of accounts, then write use the PUTs in a coordinated attack. Perhaps spam could be minimized as @mav has suggested.


Scripting is perhaps the issue here. It is a real shame, but “hackers” (which they are not) will script this and flood the network with dead accounts. It seems unlike transactions which can be made free, making creating accounts free is an area that “genius hackers” will target with a script.

Again we need to watch out for scripted attacks here as well.

Something along those lines that issues a safecoin to twitter/facebook etc. accounts that are a few months old with some kind of relevant history is an interesting one. Then a faucet type idea could perhaps work? The link to real-world identities is a worry, but would disappear as the safecoin is anonymous., This is one advantage of safecoin as data, but there are alternatives.


I am not sure we have a solid mechanism there yet, I am also sure though that we can find one.


What about a faucet (server) using captchas that are resistant to AI or similar?


Like Google’s capture which can be made to require the “human” to do the image select about 10 times correctly in order to pass.

It’s hard enough for a human let alone a bot

Then add a delay before receiving the coin


I think that is hard to solve this by giving stuff away without a way to discriminate between those who are genuine and those who will exploit the gift.

I have found that one of the best ways to solve a hard problem like this is to give it to somebody else :wink: So I propose we do exactly that! But who? Well anybody really, speaking as the network I think humans are responsible for this problem, so they should have to deal with it…

[borg computer voice] What do we want these humans to do for us?

  • select another human who is worthy of a gift of an account with some credit
  • use their own Safecoin to fund that gift to ensure they chose widely

I think we can design mechanisms that manipulate er, incentivise and reward humans into doing this. Useful motivators: fun, ease, sharing, rewards (non monetary, so status perhaps, such as badges - with grades like we do for vaults. Eg helper, enthusiast, community builder, etc. Or something else consistent with SAFE values). I think it would be best to use positive social motivators with this approach, rather than monetary or overly competitive motivations, ie use the relevant social values of the network such as inclusiveness, sharing, empowering individuals and so on.

Designing this is for another topic though. I’m not saying we shouldn’t try to do this in other ways as well. I think that it’s going to be very hard, so we can have a range of measures.


100% on the button.

I suspect this is true if we are to be global then different cultures will probably react best to different schemes.


Absolutely, and the kind of solution that isn’t baked into the network (but can be an app) can easily be re-skinned for different groups (culture, age, language etc).


I think it’s quite likely that app devs will set up their own faucets for promotions or even to do some work - validating/verifying/rating/ranking some supplied data used on their app(s). So I would expect that there will be many ways to get Safecoin as the network moves forward.


Why can people not just farm to earn fractions of a safecoin? Seems like things are being overcomplicated here.


This is a great point too. If we have small enough rewards, it shouldn’t take long to earn enough put some data. Most people consume much more than they upload, so I suspect they wouldn’t need much to get started.


The idea of farming will be intimidating to a lot of folks. If applied sparingly some initial free puts will minimize barriers to entry. Users can get the full network experience of writing and reading data, but limit it so that the free puts can’t hurt the basic safecoin economics. I think it is a good idea. Thanks mav. :smile:

Maybe just give an initial 10 MB put balance with each new account and require enough POW like @Antifragile says to make spamming too painful.

You might also do it with POR, where for every free PUT given to an active client, they would need to provide 100x the space to the network for example.


Wouldn’t it be enough with just the PUT balance needed to create a login + wallet?

Then you have free access to it all, and somewhere to send purchased coins.

From there you’d need to farm or purchase as to upload data.

And that low amount of free PUT balance would make the overhead quite large for the spam potential. Maybe not large enough though…

1 Like

I also feel we need a phone APP that allows at least the purchase of SAFEcoin and if Fraser’s solution is adopted then it can be small amounts too. For many in the western world this is not an issue since a few cents (fiat) would buy enough safecoin to create their account and get going. How many spend dollars on APP/Games?

For the poorer maybe gifting could become a thing. The APP allow a person to sell a safecoin for “X” number of tokens that they can gift to their friends, relatives or anyone by giving them the token code.

This way you have a human in the loop to help stamp out the misuse and since the human used their own resources, they will be more careful.

Then for the ones who cannot buy some/portion of a safecoin or get a token off someone, then @happybeing gives some great ideas.

But we have to have a way to stop the spamming of accounts. So some limiting of this is needed. As soon as you can create an Account for free you can then spam the network.