Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - georgem

Pages: [1] 2
New to Spreadcoin? Start here / Main discussion thread (similar to BCT)
« on: September 06, 2016, 01:44:51 pm »
Feel free to talk any way you like in this thread here.
Think of it as a "main thread" similar to the one on BCT.

Any news/updates that I post in the main thread on BCT, I will also post in that main thread here.

When a discussion needs to be discussed in more detail we can create a thread in one of the subforums.

Alright then.  :)

Data Market Discussion / Accuracy of IP geolocation?
« on: March 02, 2016, 09:02:43 pm »

Quoting coins101 Big Data Overview Paper:

Code: [Select]
"IP data can be converted to non-personal Geo reference data before being released to third parties."
How acurate are IP to geolocation conversions anyway?
What are their limiting factors?
Can it be improved?
What margin of error are we talking about here?

Please discuss this very important topic in this thread.


UBA stands for Universal Blockchain Analyzer.

It's a built-in module that specializes in reading other coins blockchain data.
It creates indexed and secured datastructures that are optimized for their distribution
over the servicenodes network to be used for the decentralized blockexplorer
UNA stands for Universal Network Analyzer.

Once we have agreed on a methodoly for anonymous and decentralized big data,
we will start development of another built-in module that scans network traffic caused by the hosted daemons.
We will leave the daemons alone and not use their RPC services to ask them for info,
we will rather deduce any info from the network streams themselves.

Decentralized Blockexplorer

Competitive collateral servicenodes each running a UBA module will enable spreadcoin's first decentralized service:
A decentralized blockexplorer operating from within the spreadcoin wallet, allowing servicenodes to host any coin they like.
The ongoing "Altcoin Taxonomy Project" and its implementation of coinURIs will create the largest best reviewed database of altcoins,
encouraging a more informed decision-making among both users and servicenode operators.
Anonymous & Decentralized Big Data Methodology

Big Data done the wrong way can pose a great danger to both privacy and decentralization.
Therefor preliminary research is currently done to explore privacy, security and validity issues.
Note that the potential monetization and profitability of Big Data is completely irrelevant at this stage.
It is entirely possible that Big Data will turn out to be incompatible with true decentralization principles,
in which case we will limit the use of all analyzed network data to merely improve the operation of servicenodes.
Proof Of Bitcoin Node / Proof Of Any Node

Proving that a full bitcoin node is exclusively installed and used by a single servicenode requires a
solution similar in complexity and about as groundbreaking as solving the double-spend problem in bitcoin.
Solving PoBN will likely allow the creation of a decentralized exchange and (should a valid big data methodology be found) a big data market.

Altcoin Taxonomy / List of all processed and unprocessed Altcoins.
« on: January 17, 2016, 04:04:07 pm »
coming soon!

Altcoin Taxonomy / List of non-standard, exotic wallets/daemons
« on: January 17, 2016, 03:51:57 pm »
When using the GenesisExtractor you will stumble upon daemons that simply won't work.
They will either crash or not follow standard procedure (like for example they might not accept external -datadir parameter to tell the coin where to save its blockdata).
Their daemon/tool might be very specific and not accept any of the usual commands you would expect, like getinfo, etc...

We need to get a better understanding of how many altcoins behave differently than all the rest, and why.

It would be helpful if you could post about non-standard coins in this thread (preferably also with screenshot).
This way you will help us improve the GenesisExtractor and also our coinID list.

Genesis Extractor

The Genesis Extractor is a tool that automatically extracts official P2P port and genesisblock data out of daemons.
This tool has been created for Spreadcoin's "Altcoin Taxonomy Initiative".
Read more about it here:

Win (32bit):

Linux and Mac Versions coming soon.

SourceCode and more info at github:

You will also find a small Guide/Tutorial with screenshots at github:

If you are interested in helping us extract information out of altcoin daemons for identification and classification purposes, you can copy/paste your extraction results here in this thread.

Please only post plain RAW copy/paste data from the GenesisExtractor here.
If you have any questions or comments create a new thread here:

Altcoin Taxonomy / Why do we need "Altcoin Taxonomy" ?
« on: January 17, 2016, 03:48:06 pm »
For the decentralized blockexplorer to work perfectly, we are going to need to create a unique coin identification system.

Every coin hosted is going to need a coinID.

Much like the internet needs domain URLs to be able to give meaningless IPs a more recognizable identifier, our decentralized explorer will need a way to tie the blockchain of a coin to the design of a coin.
And much like the internet could work even if we didn't have URLs and typed in only IPs into the browser, the decentralized blockexplorer will work without coinIDs, it will just not look that good and require that the user has some additional knowledge.

With "design of a coin" we specifically mean things like logo or name (which both might change over time), and the problem we are trying to solve arises since the decentralized blockexplorer only analyzes the blockchain data itself, it has no clue whatsoever what the actual name and logo of a coin is. (or if suddenly the coin goes by a different name.)

There is no way to derive a coin's name or its logo or even its official P2P port just by looking at the blockchain.

Therefor we need a system that creates a bridge between the blockchain of a coin (that the UBA dissects completely) and the design of a coin (which the decentralized blockexplore wants to use within the wallet).

Since the decentralized explorer must be capable of showing a coin's name / logo, as demonstrated here...

...or here...

...we are going to need an external feed of all the data that can give us this extra knowledge about the design of all available coins.
For the spreadcoin wallet this will be solved by using an external folder with lots of 16x16 pixel logo icons and a JSON file that lists relevant coin design data (like name, abbreviation, official port, etc..)

Finally the subsequent question is: what is the best format for such an identifier?

Can't it be just the name of a coin?
No, we have for example two different coins which are both called bytecoin, which is hilarious.  ;D Also as mentioned earlier a coin name can change at any time, and its blockchain couldn't care less.

So for the coinID we need something that is much more stable and fixed, and that we can expect will never ever change.

Currently, for our project, we are going to use a combination of the 4 magic bytes of a coin's blockchain and the 4 bytes of the timecode of the genesis block's creation.

This leads for example to the following coinIDs for a few well-known coins:

Spreadcoin = 4f3c5cbb53d75160
Bitcoin = f9beb4d9495fab29
Dash = bf0c6bbd52db2d02
Litecoin = fbc0b6db4e8eaab9

This means, that the wallet can now easily choose the right logos and read out the correct name of a coin from the JSON.(format to be specified)
It can do that, because it will understand what the UBA means when it says "4f3c5cbb53d75160".

The coinID folder will look similar to this:

Now, we are still not 100% sure that this coinID format is completely collision-free (meaning, no 2 coins have the same ID) that's why we are also considering other genesis block variables.

If you want to take a look at how we are extracting and processing all known coins with the goal to create a system of collision-free coinIDs, you might take a look at the

Read more about this tool at github:
or in this thread here:

New official Version is now

I replaced the old links with the new ones, so just use the official download links to get the newest wallet-versions (and daemons):

List of new features/updates:

– Better implementation of Fallbacknodes (react quicker, and more of them available), so you’ll probably never need to addNode in conf file ever again.
– Better control of vanitygen (you can use DELETE-Key to erase VanGen-Patterns you don’t need anymore and RETURN key to add a VanGen-Pattern, meaning you don’t need to click “add pattern” anymore while you type, this makes adding many patterns very easy.)
– Version Nr is now visible in splashscreen and header.
– removed a few layout bugs (depending on what linux system you used (KDE, GNOME) it had problems showing the nativeMenu-Bar (or the menubar within the window) correctly).
– minor improvements and removements of old unneeded stuff.

Let me know if everything works.

Thanks, and stay tuned for more.

PS Donations are highly welcomed: SexyAssJBcpQmmcypt6ENaQ1tNoFDysZvi

So finally here it is, the update about the current state of work regarding servicenodes and spreadcoin.

I'm happy to report that development is going very well, much better than before,
also because finally there is a very clear vision about the direction we will take with servicenodes.

Contrary to previous estimations that saw "blank servicenodes" (whatever that meant) arrive on testnet at the end of 2015,
the insights I gathered during nov/dec 2015 led me to the invention of an actually useful first service which will allow us
to build a network of servicenodes that will be valuable way beyond just the spreadcoin community.

So, instead of you further waiting for "Something something servicenodes" to arrive soon, you will now know exactly what to expect as the first basic service, namely a...

Decentralized Blockexplorer

I'll let a few Screenshots of the current wallet speak:

(the ugly welcoming screen of the old wallet has disappeared, and people are directly seeing the input field of the decentralized blockexplorer, ready for immediate use)

(As an example I show one of the top Bitcoin addresses. It works exactly as you would expect from the many hundreds of centralized blockexplorers out there)

(And one of the top Dash Addresses.)

So what does this mean?

The first fully functioning service that will be enabled through servicenodes is a distributed decentralized blockexplorer, accessible thrugh the spreadcoin wallet (and spreadcoin daemon / RPC)

People who run a servicenode can host any other coin they like on the same server and register it with the servicenode.
Any such coin will then be searchable through the decentralized blockexplorer. (If a coin isn't atleast hosted by a certain amount of servicenodes (to be determined) the coin isn't considered.)

All hosted coins need to be full node daemons, but they can run without tx-indexing and disable their wallet-functionality.
The only requirement is that those daemons create and maintain a full blockchain by themselves, on the same server.

Since anyone is allowed to host any coin they like (power to the people!), we are going to see a spread of different setups of course.
See for example this servicenode overview screen that lists all the current servicenodes that I run in my small homework right now:

(People can add completely new coins, or drop old ones, it's completely their own decision)

So how does it work?

Within every servicenode runs a tool called Universal Blockchain Analyzer (UBA).
It is capable of identifying and dissecting any blockchain (as long as it doesn't divert too much from current standards, but this can be further improved),
and creates its own optimized datastructure from all the data it gathers, for every coin that is registered with the servicenode (happens through the .conf file)

While this process happens, the UBA communicates and compares key data elements with other servicenodes in the network.

That's the job of the UBA: to convert relevant blockchain data for fast and easy distributed access thru the servicenode network.

The coin daemons themselves run without any disturbance. In fact the admin needs to start / stop them himself, the servicenodes won't interfere in any way with that procedure.
It is merely required that the servicenode daemon has read access to the blockchain folder of each coin, and nothing else!

Now a few more details about the servicenodes themselves.

Servicenodes that host full nodes and distribute derived blockchain data to the network to be used in the decentralized blockexplorer will earn a certain percentage of the mining reward (to be determined).

As has been planned for a long time, servicenodes won't require a fix collateral, instead the collateral will be determined by the free market.
An artificial competitive situation is created by only allowing a certain maximum amount of servicenodes to exist.
This limit isn't fixed either, it grows slowly over time.

As an example, in my home network I implemented a limit that is calculated with this formula: (total coinsupply) / 2000:

This means that with every 2000 coins that are mined there is one servicenode allowed.
(But 2000 is just an example, and will have to be determined in testnet. A few months ago we used 2880 to make a few interesting calculations.)

As you can see in the screenshots I currently run 9 Servicenodes on 9 computers.
Current total coinsupply in my very new fork is 19119, which divided by 2000 allows for 9 servicenodes to exist (or fewer, but not more).

As you can see each of these Servicenodes has its own idea about the collateral it wants to use, and this diversification creates yet another spread!

All Servicenodes are sorted according to the collateral they are willing to invest, from smallest to biggest. (the more the better)
In my example, the weakest Servicenode uses just over 100 SPR, and the strongest about 3000 SPR.

As seen in the last screenshot (Spread Distribution Screen) the distribution will probably most of the time look similar to a ski-jump.

Now why is the Servicenode with the smallest collateral called "weakest link"?

("weakest link")

Well, because an available seat isn't assigned to the same servicenode forever.
All seats are constantly on sale even the ones that are currently occupied (  ;D )

This means that when a newcomer arrives and he finds no empty seat, he might decide to grab one of the seats away from someone else's arse.
(but he can also come a little later when a new additional seat was created, but so will others... )

Let's imagine a few scenarios, using my example.

The 9 Servicenodes in my home network use these collaterals:


Now, imagine a newcomer arrives and wants a seat.
He could be a cheap shot and just invest 100.002, but this would be enough to "kick" the servicenode currently sitting at the weakest seat out of the race.

(BTW, "kicking" in this context merely means that the servicenode doesn't receive any rewards anymore. It does not shut down the server or any full node, or anything like that.
But what happens is that the UBA stops working, since it doesn't recognize its servicenode as valid anymore.)

What then happens, is that the newcomer becomes the new weakest link with his 100.002 collateral.

But say he would want to invest 2000 as collateral.
Now the same weakest link loses the seat, but the next 7 seats all slip down one seat, since they all must make room at the second highest seat, because that's where the 2000er is going to sit.

In this situation the servicenode that was sitting at the second lowest seat now suddenly finds itself in the weakest link position and runs the risk of losing its status next time someone appears.

And that's basically how this game will be played: a continuous switching of seats, particularly in the lower area.
If you hate this situation already, I suggest you invest lots of SPR as collateral.

Because there is a way how you can basically completely secure a seat for the foreseeable future.

This symbol indicates a servicenode that has such a high collateral, that it would require more than the current total coinsupply to kick this node 9 seats down!
Since this servicenode has a collateral of 3000 and it would require 9 newcomers to each invest MORE than these 3000, this would add up to an amount larger than all money that currently exists.

And therefor this seat can be considered truly secure.

... since the total coinsupply continues to grow everyday (but slower and slower) even a now truly secured servicenode can easily be dropped down a few seats, the more free money is around and gets locked in servicenodes.

It is important to understand that "holding a high seat" has no benefits whatsoever, other than keeping you away as far as possible from the weakest link (the only "point of departure").

So the best place to actually be in is somewhere in the middle, as indicated by this symbol:

This symbolises the seat that represents the arithmetic mean of the sum of all money locked in servicenodes divided by amount of servicenodes.

It can be argued that this seat (and seats close to it) are very secure, and a user that keeps adding to his collateral so that he keeps being near this mean will basically never lose his reward.


Alright, I could go on forever, but it's getting late.

Last thing I wanted to mention for today is the actual "servicenode manage screen":

It's where you will create new servicenodes and control the ones you already run.
(ofcourse everything will also be possible through commandline)
My goal will be to make the handling of servicenodes very easy and straight forward.
I do have a few fancy ideas about this that I want to further explore.

There is much more to mention and discuss but that's for another day.
(particularly how we tie an actual logo and name to a hosted coin is interesting)

The future looks very clear now for spreadcoin.
What I just presented is what the first testnet version will look like.

By implementing this first service we are going to build the perfect playground for the further development of the servicenode network (which will see the likes of "Proof of Bitcoin Node", a decentralized searchengine and exchange, and possibly Big Data Services in some form or another. There is lots to explore and only one rule: it needs to follow the principles of "true decentralization").

And last but not least:

I expect that I need another 50 hours or so to finish everything and put all the loose ends together before we can start testing it.

This could mean best case, that I will be ready in 1 week, or worst case by the end of january.

I will keep you updated about the progress in much more detail from now on!

Stay tuned!

Off-topic / Mr. Spread - The Hamster - Guess his weight COMPETITION.
« on: October 12, 2015, 07:25:31 am »
I am glad to introduce to the community Mr. Spread - The Hamster.

Mr. Spread didn't actually disappear back in february 2015... he was in fact transformed into a hamster by some evil scientist.
This explains why we never heard of him again.

But he's back and I was able to get ahold of him and give him a caring home.
After all, we OWE HIM, for giving birth to spreadcoin.

In celebration of this we are doing a small contest, called "Guess Mr. Spread's weight".

How much does he weigh?

Please post your guess here and you might win 1000 SPR (kindly sponsored by stonehedge)

The closest guesses at 1700 GMT on Tuesday win the prize and if more than one person is closest then the pot is shared


Community Projects / DRAFT for new ANN thread / Website
« on: April 06, 2015, 09:11:14 am »
So it really is high time to finally introduce a new ANN thread on BCT, coupled with a new website which has the same format and infos as the ANN thread.
Those two things must appear on the stage at the same time.
There are still many things we have to fix, but we are getting close to the finishing line.

In this thread the first 3 posts will represent

1) general info/todolist
2) ANN Thread DRAFT
3) Website layout / design DRAFT

I will update those 3 first posts as the ideas start coming in ...
You can post and discuss below.

Technical Todolist:

1) Build mac and linux wallets. (georgem working on it, windows 32 bit wallet and daemon already built:
2) Add a new alertmessage public/private keypair
3) Add new dns seeders (currently they point to


georgem dev account address: SVfWTjSqBVHebJW1ADr79ohUdDx2W2qELi

We got used to this word "Masternodes", but like any "bad" habit we can replace it over time and get used to something different, why not?

There is a rumour out there (not sure if true) that darkcoin/dash is going to trademark all it's features and names, (masternodes, darksend, instantx), and this will make the usage of those terms more restrictive...

But even if that rumour is not true, I strongly advocate that we move away from those fancy darkcoin names and finally find our own identity.

I like generic self-explanatory names like "servernodes" etc because by definition they can't be trademarked and will always stay in public domain, which is a good thing.

F**k trademarks, this doesn't have any place in opensource anyway.

Community Projects / Spreadcoin Transition (DNS Seeds)
« on: March 12, 2015, 04:48:13 pm »
Another thing, now that Mr.Spread's website is down, we also don't have a dns seeder for our wallets anymore,
this makes synching take a little longer than usual.

When we make the transition we will have to install atleast one (preferably more) dns seeds,

and then create new wallets for all systems.

See for more info.

Marketing & Media /
« on: February 12, 2015, 11:10:50 pm »
Ok, coinmarketcap reacted to our request to point the "Discussion" link on their spreadcoin subpage to spreadcointalk.

Maybe we can tell them to add a link to our most used blockexplorer too?

I think that's right?

Main Development / Proof-reading Mr. Spread's texts and whitepaper...
« on: February 11, 2015, 09:58:17 pm »
I thought I'd start a thread here where people who have good knowledge about the english language could help proof-read some of the texts that Mr. Spread has posted.

This will serve two purposes:

Make the texts more readable, and help Mr. Spread learn the language better.

I will start by posting obvious errors I have found in one text, others can please join me, and post what they find in any text...

It's a false kind of respect to not dare telling Mr. Spread about those obvious errors.
That's why I am doing that.

Ok, here we go.

Pages: [1] 2