Safecoin divisibility

Safecoin has many advantages over bitcoin, except the divisibility! With an indivisible safecoin there is a risk that some new altcoin would become more popular on the SAFE network (if that’s possible to implement).

Competition is good, so it could actually be good with several coins on the SAFE network. The problem is that if some other cryptocurrency would become dominating then safecoin would still be used, but only for storing data basically. Would that be problematic for the farming reward?

AFAIK is Safecoin dividable. You should be able to tip me 0.0000000000045 Safecoin for this reply :joy: once the network is live.

1 Like

You mean fractions of safecoins are moved as a transfer of account balances? And for larger amounts, the whole-number part is sent as safecoins?

1 Like

I counted13 digits.

It’s actually 8 digits.

1 Like

Is this really true?

Where’d u hear that?

Can anyone verify?

I don’t know what the point of the Original post was if that where true… Ben would have just “Not a problem at all”

Funny how that happens…

1 Like

As an side issue for your information

I too am in the same boat with IoT. I plan to give each sensor in a group the same client so that the resources are shared, thus one coin for many sensors.

The messaging function is currently planned to not use resources, just a limit on # of unread messages in “outbox”, so in many cases there is no need for each sensor to spend safecoin. It could be left to the monitoring IoT to do any storing of data received from the sensor net

I gather this is at the crux of reasons a divided coin does not exist now. The issue is how. What is the best way to implement it with the equivalent security of using an actual data structure (SD) for each coin. There has been many ideas and none sufficiently developed for the SAFE devs to implement in the current rounds of sprints.

They would certainly love someone to develop a divisible coin with the equivalent security and in most likely hood would need to piggy back on the current work that has gone into the current safecoin proposal. eg transaction processing, etc.

The workload on the devs is too high at the moment to spend time developing divisibility and thus they started this thread to open it up to the community to come up with a way. To do some development work so that they can keep doing their work to get the network developed.

I do believe that you are referring to the proposal that now a coin buys resources and to modify that such that a figure is used instead that allows one to use for resources, sending to others etc. A safecoin is used to “buy” the equivalent in value placed in this figure. Initially thought it would be a floating point figure, and then the problem of inflation was brought up in that after some time you could have many times the safecoin cap worth of this in the network. And so the discussion continued to now.

1 Like

Thanks neo, interesting post. I know where to come with questions if it does turn out the Safe Network is suitable for IoT stuff I am currently working with (health data) :smile:

Sensors sharing the same client would not be feasible in my case for privacy concerns, but I think this one example help highlight the risk of not getting Safecoin divisibility right from day 1: Opportunity cost. How many other project types are not be feasible without divisible Safecoin. How many other digital economy transaction types…

I agree. The devs are 100% focused and up to their eyeballs with high workload and pressure from the community/Safecoin investors to get the network out the door ASAP - I feel for them. Perhaps the “alt-Safecoin” one-way convertibility proposal is seen as good-enough way for divisibility to be approximated that fits nicely with current design and can be tacked on at some later date after launch, “when needed”. All my posts on the topic so far have argued how risky this apparent easy way out is. The quick solution also appears to be just kicking the problem down the road: If a lower valued alt-Safecoin is issued at some future date for “division” purposes and becomes heavily used at any point in time (by our killer IoT apps! - just kidding) then we may see the chatty transactions problem again anyway as apps stick to the lowest valued alt-Safecoin token issued even if transacting multiples of Safecoin, to avoid the complexity of handling alt-Safecoin division system.

As a community member I would be more than happy if the devs have to take another year or so to get the “how” right before live launch because like most here I want to see a Safecoin that becomes the centre of a vibrant digital economy, and to do this it must resoundingly tick all the boxes of becoming a unit of account.

If I was a Safecoin investor I would be more than happy to see the dev team take another 5 years to get the how right, because as it is currently proposed Safecoin is a resource allocation token which means it will have a really hard job becoming the go-to unit of account in any digital economy that may evolve on the Safe Network. The difference to Safecoins final utility value will make a huge difference to it’s actual fiat valuation, which is why I am currently reluctant to invest until I see where the dev team plans to take this issue.

As a side question.

Do you need safecoin usage for a (simple?) sensor? Is it going to be doing more than sending small amount of information to a more central device (or to each other as the case may be). If so then each could have its own “account”/client ID? Or is there something that prevents this?

At this time I see my IoT devices as simple sensors that message their readings back to other IoT devices with only a few needing to actually store data in files. Say a smart home. Looking at lights, the switch sensor would message the light controller to turn on/off/dimmer adj. No need for data storage, just free messaging. (yes I know in this case it could be better to use direct IP messaging to control the light for complete delay less functioning – but its a simple illustration)

It has always been sad by the Devs that Safecoin would be great for micropayments. So one could tip the other a few cents.

Different types of simple (and possibility for more multi-complex) sensors each with their own account, most storing really small amounts of event data (sometimes a few kb every few months, if lucky) but accumulating over years. Users could also opt to collate, share and/or compare from their own and other peoples sensor arrays or contract value added data analysis services, in which case slightly more significant amounts of data would be moved around (and maybe even bought/sold in a microtransaction market). Note I have not actually taken any time (don’t have much time) to look into exactly how to best leverage to Safe Network at this point, it is just a future possibility.

With the Smart home example, a sensor data storage option could then tie into security monitoring and secondary services by others etc, ideally all vendor/project neutral. As I am sure you know the possibilities are quite large and the Safe Network could possibly be well positioned for bringing privacy and own-data ownership to the end users of these devices - a valid criticism/concern with the IoT future as device manufacturers whisk all our data off to their servers where they get to keep and sell it on, and we might get to peek at it through whatever API/web interface they toss our way if lucky. Would be cool to see the Safe Network become a de-facto standard for IoT device data storage, transmission and exchange attracting yet more IoT device manufacturers and a microtransaction data market ecosystem spring up with the users firmly in control of their own data. In this vein the proof of concept by IBM using the blockchain is pretty cool, video here.

My thinking is to wait and see how this all plays out and settles down first then see if it will be suitable, and if Safecoin becomes a proper unit of account to oil the process.

1 Like

But that still leaves 1 full SafeCoin (0.017¢) as the smallest denomination

Right??

Sorry, just this point right here is crucial to this topic

1 Like

I don’t get why we are even debating this in such length of a 132 post thread. If safecoin really is an exchange of computer resources then isn’t it obvious that it NEEDS to be divisible because it’s being exchanged for an easily divisible resource? It’s like trading gold for water. You could argue smelting and dividing a gold bar up into coins is “hard” or “unnecessary” but if you really want to divide it then you simple trade it for an equal value amount of water and divvi it up. Simple. If I want to divide a safecoin I simply find out how much data 1 safecoin is worth and then pay people in data not safecoin. How many TB, GB, MB and KB is that product worth? But ultimately it would make things so much simpler if safecoin was directly divisible so one could just say it was worth 0.001 safecoin or whatever.

I would also like to remind everyone that safecoin does not exist in a vaccume. Aside from the whole resource balance dance the network will play between data costs and safecoin awarded to farmers, safecoin itself can be traded for other currencies. Also keep in mind that the price of safecoin will be affected by the price of buying phsyical hardware. If I can go out and buy a TB hard drive to store my data on far cheaper than storing my data on the safe network I’ll be motivated to store, or even transfer, data on local storage mediums or to go out and buy up a bunch of hard drives to use to farm. And physical hardware costs physical resources to create. If 1 safecoin costs $500 and 1TB costs $100 in hard drives then it doesn’t matter what the network charges for safecoin because I can sell that safecoin for bitcoin and then fiat and go down to the store and buy a bunch of hard drives. There seems to be this fear the price of safecoin will go up above the dollar value like bitcoin is. Currently bitcoin is selling at what? $400 ish per bitcoin? What of it? If I can farm safecoin sell that for fiat and go out and buy a bunch of stuff that’s awesome. How do you introduce inflation to the safe network? Sell safecoin for fiat. If safecoin value gets too high for people’s liking they’ll just sell it for fiat. In fact that’s probably what a lot of them will be trying to do a lot of the time. Actually selling safe for bitcoin would probably have the same effect. The more people want to own a currency the more valuable it is. The less people want to own it the less valuable it is.

I like this idea. Both the WoW style “coins” idea and infinite divisiblity models appeal to me for different reasons. I would like to point out that there shouldn’t be anything stopping people from creating “coins” via structured data and selling them for whatever value. One could even have such a system governed by an app. My point is not only could both systems exist simutaneously but one could create alternate systems as well or alternate value amounts.

2 Likes

Because the most optimal solutions have many design issues concerning security and/or performance.

2 Likes

Okay fair enough. But isn’t safecoin already a data value? Seems it already has the ability to divide, it just has that feature switched off. Wouldn’t the simplest solution just be to switch it on?

I think trying the worst performing option on the test nets will be a great way to quantify this. I think part of the problem is, we just don’t know how well the network will cope with sending 1000s of tiny coins about the place.

Ultimately, the data being moved is tiny. We are literally only changing ownership of the coin. I know there is a substantial overhead in doing the ‘simple’ thing and repeating it over and over isn’t ideal. However, if it is at all feasible, imo it should be strongly considered.

Simple designs are always easier to understand and maintain. That may prove to be more important in the long run.

Maybe this is actually pointing to a use case which could do with attention in general. That is, changing ownership of 1000s of data elements simultaneously. Perhaps the network could group some of these transactions in bundles, allowing some of the work to be done once for the whole bundle? If the calculations can take advantage of parallelism, it could scale much better.

In fact, maybe such transaction bundling would help in other areas, where many files/chunks need to be changed frequently. If they could be buffered into bundles too, then he same benefits may avail themselves (using SIMD features in CPUs/GPUs too, etc).

Just thinking aloud without understanding what is technically possible, but maybe worth considering.

3 Likes

Coin Conversions
I think the conversion system (SC <~> mSC) is complex and could be problematic.

Safecoins exist in an address range with 2 status (unowned, owned).

  • Unowned coins can be farmed/minted.
  • Owned coins must be transferred.
  • Recycled changes the status from owned to unowned.

When a user converts 1 SC to 1000 mSC, the Network must find 1000 unowned addresses for mSC. Just like farming, if an addresses is owned, it cannot be minted.

Initially, most of the mSC addresses are unowned. But when more mSC become owned, the conversion (minting) might take longer. The Network has to sift through billions of addresses to find the unowned ones for minting.

In farming, the mint attempt fails if the address is already owned. But we can’t have a failed attempt with conversions. That wouldn’t be right. So the Network has to keep trying to mint until 1000 mSC addresses are found.

Now imagine thousands of conversions happening simultaneously…


Possible Solution?

The SAFE Network needs a DAES (Decentralized Autonomous Exchange System) that initially owns all mSC.

When you convert your SC to mSC, you’re transferring your ownership to that DAES. It transfers 1000 mSC back to you. Vice versa, when you transfer 1000 mSC to the DAES, it transfers 1 SC from its ownership back to you.

Conversions both ways are instant, and hassle free.

But the DAES is centralized, in that all mSC and (converted SC) addresses belong to 1 account. If the DAES gets compromised, it would be very VERY bad! This is why it takes a group of 32 nodes for just 1 SC address.

I think it’s too risky to do it this way. But it’s worth brainstorming.


Possible Solution 2?

Convert SC into a ledger account. This means it works the same way as the PUT balance. It may cause confusion having 2 types of Safecoin.

SC (Savings) = Individual Coin Units, not divisible, very secure.
SC (Checking) = Ledger Account, decimal, less secure.

With SC (Checking), the amount of transaction workload is reduced significantly. It also enables micro payments. But there is less security using a ledger. It is a trade off, but the solution is viable and has been discussed on older threads.

Converting SC (Savings) to SC (Checking) is easy, but going back is more difficult.


[edit: this post moved from Is the Safecoin Economy Deflationary and would it be better with Inflation built in?]

5 Likes

@dyamanaka Thanks for thinking through the details David, option 2/ledger seems to work. I also wonder if there could be other ways, but that seems good enough to me. I think users could be protected from holding to much mSC by the conversion app prompting them to cover large holdings back to SC.

[edit: this post moved from Is the Safecoin Economy Deflationary and would it be better with Inflation built in?]

3 Likes

I think you will find that a simple solution to this is that the mSC address for the SC starts with the SC address and the next 10 bits are the 1000 coins in that range. This way the search is quick and the system knows which SC was frozen to activate these 1000 mSC

This would likely mean that in most cases this ends up a one way process since the chances of getting the 1000 mSC coins in one “wallet” which belong to the SC that has the root address is unlikely after a time, but is it necessary? when the network is large it can handle the extra processing of mSC and the “wallet” functions would mean that unlike real heavy coins one can transact with mSC+SC as easily as with SC (when network large the processing is spread far enough)

It looks like the devil really is in the details for these simulating division methods, complexity for implementation is not so bad the real risk is if the final product is also complex for the people who will be trying to use Safecoin everyday. Most will not understand and even be highly suspicious of SC <~> mSC <~> nSC, DAES complexity just to divide their Safecoin in half to pay for a movie ticket.

Solving the chatty transactions problem as @Traktion was brainstorming above could turn out to be of similar complexity (or more straightforward) but either way it would certainly give us a simple easy to use Safecoin with guaranteed no concerns for adoption failure due to complex usability concerns because the model is in production use by every crypto and fiat currency out there.

2 Likes