Commits (15)
......@@ -8,15 +8,18 @@ You may want to reproduce this website locally, for developement purposes for ex
Clone the sources
git clone https://github.com/duniter/website_fr.git
git clone https://github.com/duniter/website.git
Install python stuff
cd website_fr
virtualenv .
virtualenv . -p python3
source bin/activate
pip install pelican pelican-youtube markdown beautifulsoup4
pip install -r requirements.txt
Install system dependencies for plantuml plugin (plantuml and GraphViz utilities):
apt install plantuml graphviz
......@@ -28,27 +31,13 @@ Generate the site
Serve it
./develop_server.sh start 8556
The website should be available at : http://localhost:8556
## Manage the development server
cd output
python -m http.server
Parameters available
* default port: 8556
* start <port_number>
* restart <port_number>
* stop
If you want to use an another port number :
1) Edit the ```SITEURL``` variable in ```pelicanconf.py``` file
2) ./develop_server.sh {start|restart} <port_number>
The website should be available at : http://localhost:8000
## Generate production site
To permit a nice-looking license inclusion in the wiki, we use a pre-run script that should be ran before creating the site with pelican:
You just need to give the production configuration file to Pelican:
pelican -s publishconf.py
Title: uCoin at the 5th Freedom Money Meeting
Date: 2015-02-05
Category: RML
Tags: RML, RML5
Slug: ucoin-at-the-5th-freedom-money-meeting
Authors: cgeek
Lang: en
Thumbnail: /images/calendar.svg
The uCoin project will be in the spotlight of the 5th Freedom Money Meeting (FMM) on coming **4th & 5th June 2015 in Paris**! This will be a great occasion for us to:
* make _a live demo_ by creating our FMM5 currency!
* present with more details both _core_ and _client_ softwares
* give plans of the project for the coming months
* explain more precisely the project's philosophy
So if you are a potential developer, tester or promoter of this project, do not hesitate to subscribe this event! Below is the original announcement made on [www.openudc.org](http://www.openudc.org/2015/02/05/5th-freedom-money-meeting-4th-to-7th-june-2015-paris/) website, with subscription & organization details. Looking forward to see you there!
> # 5th Freedom Money Meeting 4th to 7th June 2015 Paris
> ###### *Posted on [February 5, 2015](http://www.openudc.org/2015/02/05/5th-freedom-money-meeting-4th-to-7th-june-2015-paris/) 08:49 by [Galuel](http://www.openudc.org/author/galuel/ "View all posts by Galuel")*
> The 5th freedom money meeting (FMM5, “Rencontres des Monnaies Libres”) will take place in France / Paris – Montreuil, 4th, 5th, 6th and 7th June 2015\. You can subscribe emailing [galuel at glibre dot org](mailto:galuel at glibre dot org "mailto galuel at glibre dot org"). You can also contribute to the event by publishing those informations in your own website. The program is an indication, and will be modified during next months.
> * **4th June 2015 : uCoin core (for developpers only)**
> * Introduction, presentation and running uCoin core
> * Review of different WoT algorithm and how to code them in uCoin core
> * Code review of Nodejs, uCoin, objects, class and code architecture
> * How to compile and produce full uCoin package
> * RoadMap and more…
> * **5th June 2015 : Cutecoin + uCoin Apps (mobile) (for developpers only)**
> * Introduction and presentation of Cutecoin code architecture (Python etc…)
> * Compiling and Running last Cutecoin version, joining a uCoin free money community
> * Introduction and presentation of uCoin Apps, a uCoin mobile client
> * RoadMap and more
> * **6th June 2015 : Game “La Corbeille” new version 3.0 ! (Open to any contributor)**
> * morning (9h00) : subscriptions to the game and rules explanations, choice of money models to play
> * morning (10h00) : Game start with first money code played 80 years
> * Morning (13h00) : Lunch
> * Afternoon (14h00) : Game with next money code played 80 years
> * Afternoon (18h00) : collecting game data, first comments towards video and text production
> * **7th June 2015 : Other contributions**
> * Morning (10h00): Relative Money Theory conference about demonstration a new RTM Theorem “Law of transformation RdB/DU” : full equivalence (not completion) of referentials between free money and basic income based systems + how to contribute to RTM development
> * Afternoon (14h00) : Contributors to freedom money meet developers and exchange about how to join project and testing money community with CuteCoin.
> * How to play “La Corbeille 3.0″, collect data, developp the game community and development of a “Corbeille game data” internet site.
> * How to produce conference about freedom money, with return of experiences, sharing data and graphics.
> France / Paris – Montreuil (near [Métro Mairie de Montreuil](http://www.openstreetmap.org/node/255161399#map=12/48.8761/2.3035 "Mairie de Montreuil on OpenStreet Map") more details after subscription).
> <iframe src="http://www.openstreetmap.org/export/embed.html?bbox=2.2539138793945312%2C48.76592046318992%2C2.6281356811523438%2C48.957228082603905&amp;layer=mapnik&amp;marker=48.8615527456014%2C2.4410247802734375" width="425" height="350" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
> <small>[Afficher une carte plus grande](http://www.openstreetmap.org/?mlat=48.8616&mlon=2.4410#map=12/48.8617/2.4410)</small>
> Propositions of organisation for 6th Freedom Money Meeting, **must be sent before 31st August 2015**. The event needs to take place around November 2015, just send mail to any [OpenUDC](http://www.openudc.org/ "OpenUDC") or[uCoin](http://www.ucoin.io/ "uCoin") contributor or connect to the XMPP chatroom.
Title: Recap of the 5th FMM: 4 days focusing on money systems!
Date: 2015-06-09
Category: RML
Tags: RML, RML5
Slug: recap-of-the-5th-fmm-4-days-focusing-on-money-systems
Authors: cgeek
Lang: en
Thumbnail: /images/calendar.svg
There we are! **5th FMM is now over**. It has been [a very rich experience of 4 days](http://blog.ucoin.io/ucoin-at-the-5th-freedom-money-meeting/ "uCoin at the 5th Freedom Money Meeting") focusing on money systems. Below is quick recap of what happened during these days for those of you who could not be here with us.
## First day: a dive into uCoin protocol
The very first day was a presentation made by your servitor (cgeek) about uCoin software & protocol. This was a travel across technical details about how is uCoin working, which are the rules and what is the life of currency propulsed by uCoin protocol.
The presentation was in French, but I took the time to translate it in case you wanted to read it. You can dowload the file here: [FMM5\_Presentation\_en](/files/FMM5_Presentation_en.odp "FMM5 uCoin presentation by cgeek").
## Second day: more about CuteCoin & uCoinApps softwares!
This day was an opportunity for client softwares to be presented. Let's see the two firsts: *CuteCoin* and *uCoinApps*.
### Cutecoin
The morning was dedicated to [Cutecoin](https://github.com/duniter/sakia), the very first client of uCoin software. We steped through:
* Current state of the application
* Work to be done
* Development process (unit tests, continuous integration)
* And incoming features
Currently, Cutecoin allows you to do all the core operations made possible by uCoin software. It is also the first allowing to have an overview of the network!
<center> ![Web of Trust view from cgeek to inso](/content/images/2015/08/Capture-du-2015-06-09-21-38-05.png) <i>Web of Trust view from cgeek to inso</i> </center> <center> ![Overview of the meta_brouzouf currency network](/content/images/2015/08/network2.png) <i>Overview of the meta_brouzouf currency network</i> </center>
The presentation is also available for download here: [FMM5 Cutecoin Presentation (fr)](/files/FMM5 Cutecoin Presentation \(fr\).odp).
[![cutecoin_pres](/content/images/2015/08/cutecoin_pres.png)](/files/FMM5 Cutecoin Presentation \(fr\).odp)
### uCoinApps
The afternoon was dedicated to uCoinApps, the little brother of Cutecoin as it is the second client for uCoin. uCoinApps is an Android application that allows you to:
* Connect to an existing currency network
* Create your personal account
* Publish your identity
* Certificate other members
* See your account's balance
* Transfer money
The application is available on [Google Play](https://play.google.com/store/apps/details?id=io.ucoin.ucoin). You may also find [a tutorial (french)](http://www.ucoin.fr/utiliser/ucoinapps-android/) for using it at [ucoin.fr](http://ucoin.fr).
The author of the application also made a presentation avaialble for download: [FMM5 uCoinApps Presentation (fr)](/files/FMM5-uCoinApps-Presentation-fr.odp).
## Third day: simulation of 160 years of money systems
This day was an opportunity for non-developers to discover a french game called [La Corbeille](http://www.valeureux.org/blog/les-jeux/jeu-la-corbeille/). This game consists in simulating an **economy** by producing values using the only available currency system. The goal is to understand the underlying code of a currency system and see the consequences of using it. During this session, we have tried 2 money systems:
* Debt Money system (the one used by almost all currencies over the world, including € and $) in the morning
* Freedom Money system (the one used by uCoin) in the afternoon
The results of this session are available for download on GitHub: [LibreOffice Calc file](https://github.com/galuel/Geconomicus/raw/master/Exemple_de_suivi_tableur.ods).
Also, you can access the project [Ğeconomicus](https://github.com/galuel/Geconomicus) which provides a set of free graphics & tools to create your own economy simulations based on 80 years human lifetime. Here is a recap video of this journey (french), so as another resume on [creationmonetaire.info](http://www.creationmonetaire.info/2015/06/video-geconomicus-la-corbeille-aux-5emes-rencontres-des-monnaies-libres.html) :
<iframe width="560" height="315" src="https://www.youtube.com/embed/LdHFPcyjKQA?list=PL0UDqLtXevvHY5rAyFtql5931VqYyRaoK" frameborder="0" allowfullscreen></iframe>
## Fourth day: non-technical contributions
A last day was dedicated to other contributions than coding. These are more around the project, for example explanations, theoretical fundamentals, etc.
### A new mathematical demonstration
The morning has seen the demonstration by Stéphane Laborde, the author of the RTM (Relativity Theory of Money), that a currency with a given rate of money creation and providing a Basic Income to its people by using a tax **have an equivalent Freedom currency** that only uses money creation. This mathematical demonstration can be found in the last version of the RTM in this file: [Relativity Theory of Money (french)](http://trm.creationmonetaire.info/TheorieRelativedelaMonnaie.pdf).
### Presentation of David Chazalviel: "The RTM in color" and "The RTM for the kids"
[David Chazalviel](http://cuckooland.free.fr/index.html) gave us a presentation about his 2 last contributions for spreading about Freedom Money:
**The RTM in color** ([english](http://cuckooland.free.fr/TheRtmInColor.html) or [french](http://cuckooland.free.fr/LaTrmEnCouleur.html) version) is a brilliant web application to simulate and explore the concepts of a Freedom Money.
**The RTM for the kids** (available in [french](http://cuckooland.free.fr/LaTrmPourLesEnfants.html) only) is an interactive presentation trying to explain what is a Freedom Money and the RTM to kids, thanks to Elise and its fairy friend:
### Subscription to metab_brouzouf currency
The afternoon was the occasion for people to try Cutecoin and [subscribe to metab_brouzouf currency](http://forum.ucoin.io/t/subscribing-to-meta-brouzouf-testing-currency)! As you can see, we now are about 23 active members testing uCoin:
And here is the currency overview:
## Conclusion
This 1st edition of 2015 FMM was a very successful meeting with a lot of new people met and introduced to money codes, many technical details were explained and **the very first client applications** Cutecoin & uCoinApps have been presented and tested by final users! What will await us for [next FMM in Valence during November 2015](https://www.google.fr/maps/place/Valence/@44.8679005,4.9135516,11z/data=!4m2!3m1!1s0x47f55799c63221c7:0x408ab2ae4bfb580)? Coming months will tell us, but be sure a lot of work is to be achieved until then!
Title: The Meta_Brouzouf experiment is over!
Date: 2016-03-22
Category: Technical
Tags: Technical
Slug: bye-metabrouzouf
Authors: cgeek
Lang: en
There we are! 14 months after the launch of testing money named *Meta_Brouzouf* on January 21th 2015, it is now time for us to abandon this money and "stop" this experiment in order to go one stage further!
But why? What will happen to this money? And more importantly, what's next?!
Pieces of answer.
## Recalls about Meta_Brouzouf
For those who hadn't followed closely this experiment, here are some recalls to situate the context.
### The initial goal: the birth of new client softwares
The uCoin project started during summer 2013. After a year and a half of development, on January 2015, the bases were considered established and the first pieces of code ready to be tested. It was then important to propose a first currency, was it a testing one, to allow other developers to produce *client softwares* equiped with graphical interfaces easing the money usage.
<center>[![alt](https://camo.githubusercontent.com/39705402deb44e50a1b48b5ed1206394593278dd/68747470733a2f2f7261772e6769746875622e636f6d2f75636f696e2d696f2f73616b69612f6d61737465722f73616b69612e706e67)](http://sakia-wallet.org)</center> <center>_Logo of the first client: Sakia software_</center>
Indeed, even if uCoin is the software at the heart of the money, its role *is not* to manage *your* transactions specifically, *but to handle any document* making it possible to live.
It is the client softwares that allows usage of money supported by uCoin software, by producing the documents corresponding to your actions and *then send these to the network* in order to treat them: it could be a transaction to pay someone, a certification of some individual from the web of trust or even a membership demand to the monetary community.
The uCoin software, on its side, only treats these documents and adds them to the common register of the currency named *Blockchain* which contains the whole set of the money network data: monetary units, made transactions and individuals of the web of trust.
<center>![image](https://cloud.githubusercontent.com/assets/969136/13917314/40084810-ef60-11e5-86f9-eacfb58b9062.png)</center> <center>_Logo of "Android App" application_</center>
#### The first clients
We can only observe that this objective, at the end of the experiment, was reached! Brave developers gave their body and soul to produce the following precious softwares:
* [Sakia](http://sakia-wallet.org), a complete desktop software for Linux, Mac and Windows
* [uCoin App](https://play.google.com/store/apps/details?id=io.ucoin.android), an Android application for your smartphone
* [uCoinWallet](https://play.google.com/store/apps/details?id=io.ucoin.android.wallet), another Android application for your smartphone
* [Cesium](http://cesium.ucoin.fr/), a multiplatform client which works in your favorite browser
#### And even a first server packet!
It's worth noting an active contributor of [YunoHost](http://yunohost.org) team also developed [a uCoin packet for YunoHost](https://github.com/duniter/duniter_ynh) greatly easing the installation of uCoin for self-hosting addicted people!
### The known limits
Nevertheless, this is experiment was though and built from the start to constitute a **testing currency**. So it had no vocation to last, but instead to test the application in more realistic conditions with the aim to fix the most early and rough bugs.
For this case, we chose parameters which are not compliant with long term working:
* a monetary growth of **10% per day** rather than year
* a minimum number of **3 certifications** to be a member
* a certification and membership expiry delay **limited to 1 month**
It has to be understood that **10% per day** rather than per year is tremendous, indeed the monetary mass grows exponentially: by a year (that is, after a complete revolution of the Earth around its orbit), we create in reality **1,166,641,437,000,000 times more money** than in a normal case. Yes, you read it right: it is a **1 million of billion of times** quicker than 10% a year. The money cannot take value at such a rythm, which prevent it to be used as a medium of exchange for both medium and long term.
As well, the minimum number of **3 certifications** to be a member is enough for a dozen member community but becomes way to light for a bigger community because the rules becomes too easy to pass, and fake accounts are no more bothered by this contraint (these still are bothered by distance rule, however).
Finally, the lifetime of **1 month** for certifications and memberships is way too light. Serveral members of the testing community were rapidly excluded just because of this duration, their certifications and membership being expired. A value of **6 months** would be more acceptable.
For these reasons, no chance for this money to stay in time.
## The experiment results
Despite these parameters which promised the early end of this testing currency, this latter totaly played its role notably because [several client software were borns](#thefirstclients), but also no less than **115 users** have actively participated the currency, and this despite of the project youth which requires a certain effort to reach the status of individual creating money.
Indeed to succeed its account creation it was required by each of them to:
* install Sakia client software
* follow an [english tutorial](https://forum.ucoin.io/t/tutorial-subscribe-to-the-testing-currency/143) to create their identity in Sakia, connect to the network and publish their membership demand to the community (and most users were frenchies!)
* make an explicit demande, written on the [uCoin forum](https://forum.ucoin.io) with few identity proofs in order to receive certifications
It is thanks to these people that we could find a good number of bugs, minors or majors, but also identify the limits of the protocol in its initial version which necessited to be modified to handle bigger community sizes, which is important for the currency to have a real efficience.
### Some numbers
To end this post and mark the end of this testing currency, we propose you some numbers extracted from [Blockchain](https://en.wikipedia.org/wiki/Block_chain_(database)), the public database shared by the whole currency network, and which you could yourself consult and exploit:
* **424** simulated year
* **137 identities** published with **115 identities** who reached the member status (and so created money)
* **1676 certifications** of identities were made
* **466** membership / actualizing demands were sent
* **1191 transactions** realized
* **7193** dividends (UD) were created (1 dividend / day / member)
* **1,820,920,587,213,340,000,000** Meta_Brouzouf (money units) created
### The currency stop
> I don't get it, I thought uCoin was based on a peer-to-peer model (P2P) and so this tool was not centralized? How could "stop" the experiment if I, with my personal node, decide to make the adventure going on?
In reality, **we cannot force the stop of the currency**. Indeed, its infrastructure is actually P2P. So if 3 members decide to continue to make the currency live by adding each one there node working and also keep up certifying themselves mutually, then the currency won't stop working.
Simply, these 3 members will have a money "belonging to them", they will be the only ones able to create it and probably the only ones to use it and accept it.
This P2P aspect is crucial to our eyes since it makes extremely hard to take over the control of a libre currency, our common tool of exchange whose lifetime expectancy aims at exceeding human's one.
Yet if we wish to realize a libre currency, this one has to be robust enough and be time proof: for us, only decentralized systems (peer-to-peer) are able to fit this goal. That's why uCoin is P2P software.
### Why stopping this money?
The objectives were reached, and more importantly we were meeting technical limits which no more allow to ensure a good software functionality.
Despite the fact the software still works and users can make it live forever, we do not want to ensure data consistency for this currency anymore.
It might occur to have incorrect amounts of money transfered, or even stranger events! Don't be surprised, we won't: we are already looking in a new direction.
## What's next?
As said earlier, this testing currency was an occasion to discover the limits of this 1st version of the protocol, soberly tagged **0.1**.
We have already implemented its next version **0.2** which carries a lot of newness. And so, what will happen?
The next couple of weeks will tell you.
<center><div style="width: 400px">![alt](http://forum.ucoin.io/uploads/default/original/1X/5deea7ee59d908a917eb2f099d44e8ee05e50198.png)</div></center>
Title: An overview of 0.2 protocol : transactions
Date: 2016-04-04
Category: Technical
Tags: transactions, protocol
Slug: transactions-0-2-overview
Authors: inso
Thumbnail: /images/code.svg
Lang: en
This one will let us realize many new things, like creating advanced applications based on ucoin blockchains or even interface with existing crypto-currencies !
What was missing in 0.1 protocol ? Why did this lacks had to be fixed ? This article, oriented to the developers, should be of interest for anyone interested in blockchains and linked technologies.
## What was missing in 0.1 protocol
We created 0.1 protocol with a really simple goal. To create a blockchain able to track the origin of money, to ensure that [double-spending]((https://en.wikipedia.org/wiki/Double-spending) ) abuses are not feasible, and only individuals could co-create money. To do so, we used the principle initiated by [Bitcoin](https://en.wikipedia.org/wiki/Bitcoin) : a blockchain, which let us, from block to block, track the money, from address to address. Money is trackable from present to its creation. We can check that it was created by a member of the community at this date, and that it was spent only once at a time. This protocol let us develop really fast simple applications using the universal dividend. Any individual member co-creates money, and can transfer it to another address. The form of a transaction was as the following :
ISSUERS: List of identifiers of issuers signing this transaction
INPUTS: List of source transactions, to which the signers must be the owners
OUTPUTS: Identifiers of the recipients of this transaction
But this protocol didn't let us create advanced features really important about money. To understand, we have to get back to a choice realized on the design of our monetary software.
uCoin is a software which identifies its users thanks to a [web of trust](https://en.wikipedia.org/wiki/Web_of_trust). For the individuals to be identified, they certify a trust of existence and uniqueness. This act, from individual to individual, composes a web which lets anyone knowing who is recognized by whom. However, for the individuals to be recognized, and to stop [sybil attacks](https://en.wikipedia.org/wiki/Sybil_attack) from happening, this web has to be tense and tight. A sybil attack consists in creating many fake identities to take the control of the network and the monetary community. Important efforts have to be executed for a cheater to multiply identities, so that cheating remains a minor factor.
The consequence is that individuals have to be able to create many communities (and so, many moneys). Indeed, the web of trust is of a limited diameter (we will talk in details about it in a later article). Individuals need to be able to create many monetary communities so that any individual has the right to co-create a free money. Furthermore, creating many communities let us test many web of trust rules, looking for the best parameters. Thus, dozens of communities could potentially exist, and will have to exchange their money thanks to change rates. This exchange relationships has to be as automated as possible so that it is transparent for the users. Also, we would like to avoid having to introduce any trusted third party.
<center>![Swap exchange](https://framapic.org/uyFv0qtS0yjG/kWXNVu4DAmDg)</center>
In protocol 0.1, it is not possible to automate this inter-community exchange. Indeed, the exchange needs both party to trust each other because no transactional lock is possible in the blockchain :
<center>![Protocol swap exchange with protocol](https://framapic.org/HJy2i4kgTQBv/vnaHkPJdcHFH)</center>
You see : we had to find a solution and enhance our blockchain.
## Never reinvent the wheel
Bitcoin universe is rich, after 7 years of experimentation, their blockchain suffered by defects. Developers had to answer to many limitations, and had to create new features often. Even today, Bitcoin community continues to evolve and to think about developments to realize to enhance this software.
In Bitcoin blockchain, it is notably possible to program [scripted transactions](https://en.bitcoin.it/wiki/Script) in a language which is not [turing complete](https://en.wikipedia.org/wiki/Turing_completeness). This scripting language let us experiment and realize new features using Bitcoin blockchain, without having to develop new versions of the software.
Bitcoin universe has also seen many [alternate crypto-currencies](https://coinmarketcap.com/) appear. Often, these forks are realized using simple cipher algorithm changes, or consensus algorithms. These alternative currencies let them users get their part of monetary creation, because Bitcoin does not anymore. Indeed, first miners have reaped everything, and one must now work for them to get his share.
For users to realize safe places of change, the algorithm of crosschain transactions appeared. It makes users of distinct moneys be able to exchange between them monetary units without trusted third party, and without the need to trust each other. These units are present in different blockchains, and yet, crosschain exchange will link the exchange between the two blockchains.
<center>![Protocol 0.2 swap transactions](https://framapic.org/GsAAbeI5Nk6B/NyzAFH2sPuoS)</center>
Previous example presents an ideal case, where Alice and Mark exchange their money without any interruption in the process. You should note that money can here get stuck in the blockchain : if Mark sends his money to Alice, and Alice does not answer anymore, Mark cannot get his money back. This is why it is necessary to introduce refund documents in the process. These documents are transactions which refund money owners. The algorithm is a bit more complex, so hang on :
<center>![protocol 0.2 refund](https://framapic.org/to5m3slfBWjb/3h2TUn0Wk1Ws)</center>
## Keep It Simple
To develop a scripting language into our transactions would have necessitate to much efforts, while we do not want our blockchain to transform in an application blockchain. We decided to develop this transaction mechanism in his simplest form : a writable condition in the blockchain.
How does it works concretely ? Transactions still have a form of *Input* -> *Output*. Input his what is available for spending, while the output corresponds to money which will become available for spending for the recipient. But new elements makes their apparition : *Unlock parameters* and *locking conditions* of the money placed in this transaction. In practice, this change is simple. The transaction is now of the form of *Input* -> *Unlock* -> *Output lock*. The form a transaction is like the following :
ISSUERS: List of identifiers of the signers of this transaction
INPUTS: List of source transaction, to which the signers must be the owners
UNLOCKS : List of unlock paremeters of the inputs
OUTPUTS: Locking conditions of the money
2 types of locks are possibles.
* A lock **SIG(PUBKEY)** which means *The signature of PUBKEY is necessary to use this money*.
* A second lock is **XHX(HASH)**, which means *X number generating HASH is necessary to use this money*.
These locks can be combined with operators **OR** and **AND**. Finally, it is possible to place a temporal lock **LOCKTIME** on a transaction. This lock prevents a transaction from being written in the blockchain before a fixed time.
## Some examples of the new possibilities
Our simple transaction of 0.1 protocol transforms into a new form. To send money to public key **A** we place a locking condition **SIG(A°** meaning *Transaction has to be signed by pubkey A for this money to be unlocked*.
To send money to a pubkey **A**, while retaining control of the time it will be spendable, we will use a lock **XHX(HASH)** combined with a **SIG(A)**. We will choose a number **X** which, hashed, will generate the **HASH**. We will give this number **X** to **A** only when we will want him to be able to spend his money, for example when he did do his part of a contract.
We can also consider to implement *consumable* bills. A bill will be locked on a money consumable only by a secret number hidden in the bill. Physical destruction of the bill will reveal the number and let one get the money. A lot of physical destruction means are possible, like tickets to scratch, a chemical revealer, etc.
These are only first ideas we had while discussing between us. These new protocol rules will allow a lot of new systems to be developed, always more decentralized. The developers only need to appropriate these new means and develop new applications, for individuals to become always more free !
Article redacted by [@Inso](https://twitter.com/_inso), uCoin contributor and founder of Sakia client
Title: uCoin becomes Duniter!
Date: 2016-04-24
Category: Misc
Tags: uCoin
Slug: ucoin-rename-duniter
Authors: cgeek
Thumbnail: /images/duniter-logo.png
Lang: en
From now, and for the release of protocol 0.2, the project *uCoin* becomes *Duniter*. uCoin was a name chosen at the begining by its creator cgeek, and with hindsight we thought it did not represent anymore the software we aimed to develop.
## Why wasn't uCoin the right name ?
The name uCoin was here to remind cryptocurrencies like Bitcoin. The U of uCoin (pronounced "You") wanted suggest the idea that "You, the user, are going to create the money". But this link with Bitcoin was wrongly chosen for many reasons :
* The term « coin » indicated that uCoin was a money, and more over *only one* money whereas the software is able to create many of them
* the « you » term could suggest it was about individual currencies, where a uCoin money is common and co-produced by its users, and so is not individual
* our software may use a blockchain, but this one is particular in the way where there is no run for power
* a money named uCoin was initiated during our developments but based on Bitcoin, bringing then a confusion with our project *from which it is not apart*
Last point but not the least, was finding a [logo idea](https://forum.duniter.org/t/need-a-logo-for-ucoin/138) for uCoin extremely difficult. After more than a hundred comments on the forum, we were not satisfied. We understood that the current name wasn't communicating enough the founding principles of the project. And since the sixth edition of the free money meetings, we were looking for an alternative name.
## Let's present Duniter
« Duniter » for « Dividend Uniter » : the software which *makes* the Dividend unit.
The name we were looking for had to pass multiples ideas :
### The Concept of Flow
This concept is fundamental to us. Indeed, we acknowledge that humans have a limited life expectancy, and that arrival and departure of individuals in the economy form a continuous flow. This software takes this aspect into account through the form of the money and its members, the individuals.
<center>![flux](https://framapic.org/WAifIBGYQDDg/myfaxrrYVgwL) <br/>*Human flow in France from 1920 to 2020*</center>
Renewal within the flow *through life expectancy* is used to deduce the monetary growth rate which imply a monetary symmetry, spatially and temporally, between the individuals.
### Relativity Concept
A growth rate of 10 % imply a 0.8 % growth of the numbers each month. In this referential, it is not easy to compare values years apart by comparing these numbers. But in our software, individuals issue a universal dividend (abbreviated « UD »). This one is stable and does not change : it is always worth 10 % of the monetary mass each year. Thus, by comparing the numbers *relatively* to the created UD, we can compare and measure in a stable referential in time.
<center>![Relative and Quantitative](https://framapic.org/CTQF2aGTQQmj/fvSbqSqx95zl)</center>
That's why « Duniter » means « Dividend Uniter », because this name wish to evoke the dividend unit, particular to free moneys : the Universal Dividend or « UD » .
### A software to generate moneys, in plural
The name of the software was supposed to mean it would generate free moneys. This is then each one, by initializing its own Duniter network, that will be able to create and give a name to a new money. This name had to suggest a "software" name instead of a "money" name. This is why this new name is sounding like this, and does not suggest the money anymore through the removal of the « coin » term.
Dividend Uniter, or Duniter, express better the concept of a tool to create free moneys with universal dividends.
## Duniter Logo
With this new name, more evocative, this logo was found fast. It evokes the sand dune swept by the wind. The dune is an invisible flow, a perpetual entity. Each new grain of sand feed constantly the dune represented by the Duniter logo, while others are brought away by the wind, making of it a changing but stable entity.
<center>![Duniter logo](https://raw.github.com/duniter/duniter/master/duniter-logos/250×250.png)</center>
## Changes
### A new protocol
This name change is the occasion for us to use a new version of the protocol (0.2), not reverse-compatible with the 0.1. Duniter becomes the new reference implementation which fixes and enhance its ancestor uCoin decisively.
This protocol will notably permit the [inter-money exchange](http://duniter.org/transactions-0-2-overview/) *without any trusted third-party*, a feature particularly interesting to convert a money in another easily, freely and in a totally secured way.
### A graphical interface !
Duniter will introduce a graphical interface to use the software, whose you can have a preview underneath ! *Finally*, the software is available to a wider range of users than the ones used to the Linux terminal.
<center>![Duniter UI](https://framapic.org/7AzhRriA02v3/PX652JMfkflr)</center>
### A new money !
Soon, we will start a new money. This one will aim to being used a real conditions : it will be an **experimental** as was Bitcoin 7 years ago.
The launch will be announced on the blog, forum, newsgroup, Diaspora*, Twitter, and others, follow-us to remain informed as early as possible ! And for the more impatient, you can also come on the [XMPP room](https://jappix.com/?r=duniter@muc.duniter.org) where you will be able to obtain all the latest information .
### Migration of our tools
As the project name changes, the web addresses of our tools change too :
* Development repositories : https://github.com/ucoin-io –> https://github.com/duniter
* Website : http://ucoin.io –> http://duniter.org
* Forum : https://forum.ucoin.io –> https://forum.duniter.org
* Translation tool : http://weblate.ucoin.io –> http://weblate.duniter.org
* Hosting of our XMPP server, chat room : ucoin@muc.jappix.com –> duniter@muc.duniter.org
Please note that any past link using http://ucoin.io will be automatically redirected to the same link with http://duniter.org, so that they remain valid while we switch to a new name.
Do not hesitate to tell us what you think about this new name on the [forum](https://forum.duniter.org/t/ucoin-renames-to-duniter/810) or by participating to the [7th money meeting in Laval from the 2th to the 5th of June](http://www.ucoin.fr/rml/) !
Now, you can tell everyone that uCoin name has changed and is now Duniter !
Title: Introducing members management
Date: 2016-05-13
Category: Web of Trust
Tags: wot
Slug: introduction-a-la-toile-de-confiance
Authors: greyzlii
Thumbnail: /images/network.svg
Lang: en
Duniter is a software which allowing the creation of a free money as described by the RTM (Relative Theory of Money). This theory implies that monetary units are co-produced by each of the members of a given community. It is therefore essential that the members of the community are identified and recognized.
In a word without dishonest people, a simple declaration of identity could be enough to become a member (and thus co-produce monetary units). But in our world, when it is about money, cheating cases can potentially come.
Actually, it is tempting to register with many identities and thus produce a surplus of monetary units for its own advantage. This is even more true when it is about digital identities and when it is easy to create as much as we wish. We call such a thing a *« sybil attack »*.
One should ensure sure that the members are disposing of only one digital identity.
## Who is to trust ?
How to ensure that the members are disposing of only one digital identity ? Which organization is necessary ?
There are two types of possible organization : the organizations with a trusted third-party, and the self-regulated organizations.
To illustrate the organization with a trusted third-party, let's take the example of population census. These is the administration of the state which « creates » the identities and registers them in different files (aka, data bases) of the state. These officials are acting like « trusted third-party » in the name of the state. The control means used can be administrative documents (maternity declaration, proof of address, ...). These means are far from being foolproof since it is trivial to create fake documents (and then obtain real-fake papers). This system is based on the judiciary system to deter fraudulent behaviors.
To illustrate an auto-regulated organization, we can use the example of the queue area. People arrive one after the others, even if no one is really delighted to wait for his turn, each one respects the rule, which regulates a queue ; first-come, first-served. Given that everyone knows who came first and who came later, anyone is able to control that there is no cheating. To violate these rules expose us to a strong social disapproval, and an exclusion of the queue.
## Web of trust
Duniter makes the choice of a self-regulated system by its own members.
Let's not forget the goal which is to ensure that the individuals are able to register with only one digital identity.
The system distinguish two types of digital identities : the *member identities* and the *non-member identities*. Only the members identities are co-producers of money.
Any individual which is already a member is in capacity, thanks to a signed digital document, to certify identities (members and non-members). That is to deliver **certificates of authenticity**.
These certificates, given from ones to the others, makes a mesh called « **web of trust** ». This web of trust is used by Duniter to determinate who is a member and who is not.
<center>![Global Web of trust of the test money Meta Brozouf in June of 2015](https://moul.re/blog/data/medias/duniter/wot_fmm5.png)</center>
## Operating rules of the web of trust
Rules governing the web of trust of a Duniter money is parametrized when the money is being created (initialized) by it's founders, and *cannot be modified later*. It is thus important to pay a particular attention to these parameters.
**Self-declaration of a digital identity**
An individual, who whishes to become a member of a community, has to issue its digital identity.
On Duniter, a digital identity is composed of :
* a private cryptographic key, knew only by the individual and not broadcasted to the network, is used to sign digital documents
* a public cryptographic key, knew be anyone, is used to check that a document has been signed by the private key of the individual
* a pseudonym
The self-declaration of identity by itself is not enough to become a member but is the first step of the process.
As any identity card, a digital identity has an **expiration date**. If it is not renewed regularly, it becomes invalid.
In a money created with Duniter, the maximum validity duration of a member identity is configured with the parameters *msValidity (Membership expiry Delay)*
To become a member, an individual must collect a given number of certifications from existing members. These certifications have an expiration date. To keep a member status, a digital identity must be continually re-certified by members.
The number of necessary certifications to become a member is configured by the parameter *sigQty (Min Required Certs)*. The life expectancy of a certification is configured with the parameter *sigValidity (Cert Expiry Delay)*.
**Anti-sybil protections**
Complementary rules are applied to ensure the safety of the web of trust against a group of attackers.
* The number of steps
A group of members could associate to create fake identities and certify them to let them become members. Even more, they could use these fake members to certify new fake identities, creating then a really big number of illegitimate members.
<center>![Sybil Network](https://framapic.org/qh2PZc9A2Unk/IDZe8MfG6yh0.jpg)</center>
To prevent this attack, Duniter ensures that members are close enough one to the others in the web of trust. In the example below, the member C is two steps from A.
<center>![2 steps](https://framapic.org/4LNI8XX2JAJt/HY1s3QndhJS7.jpg)</center>
When an individual is susceptible to become a member (that is, he obtained enough certifications), Duniter runs the following verification procotol :
The number of certifications to be issued **and** to receive depends on the number of current members. N is the number of members, Y(N) is the number of certifications to be issued **and** received for the member to be considered "referent".
For an identity to become a member, there must be a path of *stepMax* no or less than *xpercent* % of referring members to the identity in question.
In the case of the currency Ğ1 *stepMax* = `5` and *xpercent* =` 0.8` (80%)
Y (N) = CEIL (N ^ (1 / stepMax))
With stepMax = 5
N Y(N)
1 1
2 2
33 3
244 4
1025 5
3126 6
7777 7
**Limiting the powers**
To protect against a massive creation of sybil members, the members are given a limited stock of signature. This stock is emptied when the member issue certifications, and fills when the certifications expire.
The stock of certifications is configured with the parameter *sigstock* (Max cert stock).
In addition, to stops an eventual attack, Duniter does not authorize a member to issue many certifications simultaneously. Duniter handles them one by one and apply a pause between each processing.
This period is configured with the parameter *sigPeriod* (Delay between two certs).
**Expiration of certifications while they are being treated**
A certification which has not been treated in a given time is destroyed. This happens when a member issue many signatures at the same time. Duniter apply a pause between each processing, the certifications which did not had the time to be treated are destroyed.
This delay is configured with the parameter *sigWindow* (Cert Time Window).
There is one similar parameter used when new members are registering.
As we saw previously, to become a member, an individual must :
* publish is declaration of identity
* collect a sufficient number of certifications
* respect the steps rule
These three steps must be realized in a window of time configured by *idtyWindow*.
Title: Forum update
Date: 2016-10-07
Category: Misc
Tags: forum
Slug: forum-update
Authors: cgeek
Thumbnail: /images/forum.png
Lang: en
The forum [https://forum.duniter.org](https://forum.duniter.org) is presently under maintenance, we try to stop using the SparkPost mailing service, which is way too much restrictive.
We will update this post as soon as the forum is available again.
> Edit on October 11th 2016: The forum is still available, but be warned: we can interrput it at any moment to process our maintenance scripts.
> Edit on October 15th 2016: Maintenance is over!
Title: New version Duniter 0.40
Date: 2016-10-17
Category: Misc
Tags: release
Slug: release-0.40
Authors: cgeek
Thumbnail: /images/box.svg
Lang: en
Duniter upgrades again to a superior version and is now very close to exploitation level! This version allows to tune the last technical details before thinking seriously about the setup of a real, in-production libre money.
To get more details concerning this version, and to update your installation, [please go to the official announcement (french)](https://forum.duniter.org/t/nouvelle-version-0-40-vers-un-protocole-dexploitation/1334) made on the forum.
Title: New GTest currency!
Date: 2017-01-23
Category: ĞTest
Tags: ĞTest
Slug: monnaie-gtest
Authors: cgeek
Thumbnail: /images/races.svg
Lang: en
Since this morning 11 o'clock, a new Duniter powered currency has come to life: it's name is **GTest**, the very last « testing » currency whose goal is to validate Duniter's code.
This currency won't last more that 2 months, but is opened to any active user who would like to contribute by sending us suggestions and track bugs.
For more details, see [the official announcement on our forum](https://forum.duniter.org/t/lancement-officiel-de-gtest/1619).
Title: Ğ1: let's go!
Date: 2017-03-08
Modified: 2017-03-09
Category: Ğ1
Tags: Ğ1, ĞTest
Slug: g1-go
Authors: cgeek
Thumbnail: /images/g1.png
Lang: en
The Ğ1 pre-registrations phase has ended. In fact, we have officially launched the blockchain: **Ğ1 is now fully running!**
The currency has been launched this day, March 8<sup>th</sup> 2017 at 15:32 UTC+0 and at this time there are:
* **59 initial members**
* **551 certifications** connecting these members
* **590,00 Ğ1** have been produced via the first Universal Dividend
* **8 transactions** have already been validated
* **6 members are computing blocks** to fuel the currency
You just need to use it! For now, only [Cesium for Ğ1](https://g1.duniter.fr) is available. Sakia software will be as well, but only in few days.
## First Ğ1 units
The very first units have been immediately produced by the 59 initial members, 10.00Ğ1 per member. Hence a total monetary mass of 590.00Ğ1. The following units will be produced the same way, through a daily Universal Dividend (at 11:00 UCT+0) with an amount of 10.00Ğ1.
Ğ1 is a libre currency, its Universal Dividend will be regularly and automatically reassessed (increasing in the case of Ğ1). The next reassessment will happen on March 21<sup>st</sup> 2017, those have been scheduled to happen on terrestrials equinoxes in order for them to be remembered easily.
<div style="background-color: #ddffdd; border-left: 6px solid #4CAF50; margin-bottom: 15px; padding: 4px 12px;">
Note: <sub>Ğ1</sub> UD is created daily, based on an increase at every equinox (approximately March 21<sup>st</sup> and September 21<sup>st</sup>), for a growth rate target of c = 4,88% / equinox, according to <a href="http://www.creationmonetaire.info/2016/09/dug-et-dividende-universel-dordre-n.html" target="_blank">(fr) the differential formulation of order 2</a> :<br>
<center><b>DU(t+1) = DU(t) + c² M/N / (182.625 days)</b></center>
<img src="https://forum.duniter.org/uploads/default/original/2X/3/3e568f348689bd7ac611e9deacd28372727f6967.jpg" width="700" height="297">
## First exchanges
You can already start trading in free currency now: the 590.00Ğ1 that have been produced can move freely from one account to another with each transaction you will perform. We have already done 8 transactions successfully.
## Come and join the Ğ1 Web Of Trust
If you believe you can join the Web Of Trust (you will need certifications for that) and you already know tools such as Cesium and Sakia, you can register now. Still, if the people who certify you have already certified other members in the past few days, their certifications may need up to 5 days to get accepted. To explain all this, we will soon publish new articles to explain how all this works in detail.
Even if you are not a member, as soon as your account has been created, you can already receive some money and exchange it: you just need to receive some from someone who already has some (he may or may not be a member himself).
# What happens to ĞTest?
The test currency is still running. Undiscovered bugs may appear on this one, so we keep it alive for now. But within a few days or weeks, we will start again a new test currency, in parallel of Ğ1 and running on the same software version.
> Watch out: Duniter v1.0.0 and later versions are not compatible with ĞTest! Don't try to install one of them, your node won't work.
Title: Ğ1-Test : the test blockchain
Date: 2017-06-07 16:00
Category: Ğ1
Tags: Ğ1, Ğ1-Test
Slug: g1-test-restarted
Authors: cgeek
Thumbnail: images/g1-test.png
Lang: en
The test blockchain is **officially restarted**, the first blocks have just been calculated.
The network consists of 7 initial members, with parameters substantially equivalent to those of the *Ğ1* (/g1-go.html).
## How useful?
If we already have a "production" currency, the Ğ1 (pronounced "june"), then why with a second currency, the *Ğ1-Test*?
As the name suggests, the Ğ1-Test currency is made for *tests*: this is the sandbox in which we can deploy the new Duniter versions to test them, before intervening on the main network (The network Ğ1).
It would be a pity to notice that a new version would contain a major bug, and to deploy this version directly on the network Ğ1: the damage could be considerable (network inoperative, money stuck, etc.) We could have detected the problems by first going through the test currency. In addition, a new version takes time to deploy: each user needs to update their Duniter software, which can take days, weeks or months depending on the number of users.
The test network is therefore the antechamber of the main network, it is a guarantee of its stability.
This sandbox also benefits Duniter customers such as [Sakia](http://sakia-wallet.org/), [Cesium](https://github.com/duniter/cesium) or [Silkaj](https: //github.com/duniter/silkaj), which can test new features without risking users to lose their currency, or cause bugs that make the software unusable.
## Is it a currency that will grow in value?
We have chosen the parameters of Ğ1-Test **so that it takes no value, or very little**: money is created at a much higher rate than the main currency, making it possible to save minimal.
## Can I register?
Yes, and you will have much easier to sign up than on the network Ğ1: the license does not apply, you can be certified and certified in a light way without hindering anyone.
You can use Sakia or [Cesium for Ğ1-Test](https://g1-test.duniter.org/cesium).
To run Sakia on Ğ1-Test, use the command:
sakia --currency g1-test
Note also that the Ğ1-Test network can be restarted from scratch if necessary.
## Is certification automatic?
No: as in Ğ1, you will have to apply for certifications from the current members of the test currency. If you do not know anyone, you can post a message on a social network like Mastodon or Diaspora* with the tag #ğ1-test to attract some certifiers. You will probably have to present yourself a minimum to convince them to certify you, it is a habit taken in previous test currencies.
And then, this prepares for the fact that certification is anything but automatic in the production network Ğ1.
## What are the currency settings?
They are roughly the same as the Ğ1, but with shorter deadlines:
Currency: "g1-test"
C: 0.0488 # 4.88%
Dt: 86400 # of all the 24h precise
DtReeval: 631152 # DU re-evaluated every 7,305 days
Ud0: 1000 # 10.00 Ğ1
UdTime0: 1496527200 # 04 June 2017 00:00: 1st DU
UdReevalTime0: 1496570400 # 04 June 2017 12h00: 1st revaluation of the DU
SigPeriod: 86400 # 24 hours waiting time
SigStock: 100 # 100 certifications
SigWindow: 1051920 # 12,175 days
SigValidity: 12623040 # 146,1 = more than 4 months
SigQty: 5 # 5 signatures
IdtyWindow: 1051920 # 12,175 days
MsWindow: 1051920 # 12,175 days
Xpercent: 0.8 # 80%
MsValidity: 6311520 # 73,05 days
StepMax: 5 # 5 steps
MedianTimeBlocks: 24 # 24 blocks = 24/2 delay = 12 blocks = 12 * 2'30 = 30min
AvgGenTime: 150 # 2'30 "of calculation per block on average
DtDiffEval: 12 # Reassessment of difficulty every 12 blocks => 30 minutes
PercentRot: 0.67 # => 33.5% of calculators are excluded
## How do I add my node to the network Ğ1-Test?
[On the home page](/), click the orange "Ğ1-TEST" button to download the latest version available on this network. Then synchronize to the network:
### With Duniter Desktop:
### With Duniter Server:
Duniter sync g1-test.duniter.org 443
See you soon on Ğ1-Test!
Title: RML9 : videos of the technical days
Date: 2017-06-07 09:00
Category: RML
Tags: site, blog
Slug: videos-rml9
Authors: cgeek
Thumbnail: /images/play.svg
Lang: en
## Videos of the two technical days are now available!
Watch back at your own pace the tutorials to develop plugins Sakia, Cesium and Duniter.
<iframe width="560" height="315" src="https://www.youtube.com/embed/videoseries?list=PL0UDqLtXevvH2GRaD5-HUPWExVxY_MuwK" frameborder="0" allowfullscreen></iframe>
You will also find the interventions of:
* Moul about the use of Silkaj and the HTTP API of Duniter
* Turtle about [paperwallet](https://duniter.tednet.fr/paperwallet/)
* Gpsqueeek for the installation of Duniter on an Internet brick
* Eloïs which presents its specialized node [duniter-currency-monit](https://github.com/duniter/duniter-currency-monit)
* Kimamila which presents the new features of Cesium
## RML10 in Montpellier
Rendez-vous for the next technical interventions of [**RML10 from 16 to 19 NOVEMBER 2017 in MONTPELLIER**](https://rml10.duniter.org/)!
Title: Duniter at the RMLL 2017 in Saint-Étienne !
Date: 2017-06-13
Category: RML
Tags: RMLL2017
Slug: duniter-rmll2017
Authors: cgeek
Thumbnail: /images/calendar.svg
Lang: en
The 2017 Worldwide Free Software Meeting (RMLL) will take place in Saint-Étienne from 1st to 7th July 2017.
Two developers of the Duniter team will be rushed to the spot to talk to you about libre currency, Ğ1 and its ecosystem software ! We offer **2 lectures on Thursday, July 6**, in french.
### Conference #1
#### "If exchange is free, where is the libre money? "
The conference will take place *on Thursday, 6 July 2017 at 09:20*, room J106. Duration: 20 min.
Speaker: cgeek
[https://prog2017.rmll.info/programme/partage-aspects-collectifs-du-libre/si-l-echange-est-libre-ou-est-la-monnaie-libre](https://prog2017. rmll.info/programme/partage-aspects-collectifs-du-libre/si-l-echange-est-libre-ou-est-la-monnaie-libre)
### Conference #2
#### "Libre money for a free society"
The conference will take place *on Thursday 6 July 2017 at 2 pm*, room J106. Duration: 40 min.
Speaker: Moul
[https://prog2017.rmll.info/programme/partage-aspects-collectifs-du-libre/une-monnaie-libre-pour-une-societe-libre](https://prog2017.rmll.info/programme/sharing-aspects-the-collective-free/a money-free-for-a-company-free)
### Notes
It is very likely that the room J106 is a classroom, thus comprising about twenty places.
Title: Duniter version 1.3
Date: 2017-06-13
Category: Technique
Tags: release
Slug: duniter-version-1.3
Authors: cgeek
Thumbnail: /images/box.svg
Lang: en
Duniter version 1.3 is now [available for download](https://github.com/duniter/duniter/releases/tag/v1.3.8)!
## News
### Performances
The main characteristic of this new version is certainly the speed of the software to record new blocks: in version 1.2, the initial synchronization had become particularly long as the blockchain progressed. ARM nodes, often equipped with low-performance SD cards compared to conventional hard drives or SSDs, were particularly slow to process new blocks.
From now on, the reception of new blocks and the initial synchronization are up to 200 times faster than before!
As an indication, the initial synchronization takes less than 15 minutes to synchronize 26,000 blocks on a Raspberry PI 3. It could take [more than 2 days in version 1.2](https://forum.duniter.org/t/duniter-sur-yunohost-behind-a-box-type-privatrice livebox/2169/30).
### The arrival of modules!
It was a feature [announced during the RML9 at Le Havre] (/videos-rml9.html): Duniter 1.3 would connect modules on its own node!
As an example, it is now possible to add [the duniter-currency-monit plugin](https://github.com/duniter/duniter-currency-monit/releases) to its local node:
<img class="screenshot" src="../images/duniter-1.3/g1-monit.png"> </img>
A documentation of the modules is available on the [Wiki] (wiki/duniter/modules/).
### Cesium is no longer delivered by default
The Cesium client was historically delivered with Duniter. With the arrival of modules, this choice to install Cesium is left to everyone. The address of the Cesium module is:
## Synchronization
> <span class="icon">![alt](../images/icons/white_check_mark.png)</span> No need to resynchronize.
## Compatibility
> <span class="icon">![alt](../images/icons/white_check_mark.png)</span> Compatible with Ğ1.
## Update version
* Link to [install the new version] (https://github.com/duniter/duniter/blob/master/doc/install-a-node.md) from a fresh workstation
* Link to [upgrade to the new version] (https://github.com/duniter/duniter/blob/master/doc/update-a-node.md) from an existing installation
Title: Rework of the website /en !
Date: 2017-06-14
Modified: 2017-06-14 13:18
Category: Divers
Tags: site, blog
Slug: rework-of-website
Authors: cgeek
Thumbnail: /images/www.svg
Lang: en
Some people may have noticed it : the French version of duniter.org had changed its look for quite a while ! It was time to adapt the english website to have the same look'n'feel.
In reality, it goes beyond a simple ergonomic change. Small tour of the owner.
## A new ergonomics
First, the ergonomics was revised: we wanted the site to be more attractive and not hinder its consultation. Some extra images and a revised layout avoid a too austere reception:
## A fully editable site
One of the great novelties: the site is now [entirely editable](../wiki/enhance-website/)!
You will find on each page in the sidebar a button "Edit page on GitHub" or "Edit article on GitHub". It looks like this:
You will be able to propose modifications or even add new content to this site. A simple validation of our part, and here is the modified site!
## A wiki!
The edition of the site takes on its full meaning with the appearance of a [Wiki](../wiki) part: it allows to centralize the known resources about Duniter.
So it becomes easier to accompany newcomers by directing them to relevant articles and tutorials, while providing a knowledge base for ourselves.
#### Hope you like this new version!
Title: Duniter version 1.3.14
Date: 2017-07-05
Category: Technique
Tags: release
Slug: duniter-version-1.3.14
Authors: cgeek
Thumbnail: /images/box.svg
Lang: en
Duniter version 1.3.14 is now [available for download](https://github.com/duniter/duniter/releases/tag/v1.3.14)!
## Fixes
This version compiles the patches up to version 1.3.13, and brings a final touch to the Duniter network that had a tendency to fork regularly in recent weeks.
It seems that a bug in the IPv6 contact is causing the problem. IPv6 is now the last choice to contact a node, the order of preference is now: DNS, IPv4, IPv6.
This patch has been tested on a network node Ğ1, which immediately reveals nodes considered extinct for a long time from the point of view of this node, which considers them again *on and available*.
## Synchronization
> <span class="icon">![alt](../images/icons/white_check_mark.png)</span>No need to resynchronize.
## Compatibility
> <span class="icon">![alt](../images/icons/white_check_mark.png)</span> Compatible with Ğ1.
## Update version
* Link to [install the new version](https://github.com/duniter/duniter/blob/master/doc/install-a-node.md) from a new server
* Link to [upgrade to the new version](https://github.com/duniter/duniter/blob/master/doc/update-a-node.md) from an existing installation
Title: Duniter version 1.4
Date: 2017-08-11
Category: Technical
Tags: release
Slug: duniter-version-1.4
Authors: cgeek
Thumbnail: /images/box.svg
Lang: en
Duniter version 1.4 is now [available for download](https://github.com/duniter/duniter/releases/tag/v1.4.15)!
## Changes
This version brings several improvements in network stability, notably through faster resolution of the * forks * of the blockchain. Also, pool identities and certifications are now more regularly resynchronized.
But the major change of this version is **the migration of JavaScript source code to TypeScript**.
For details on all these changes, see [release notes](https://github.com/duniter/duniter/releases/tag/v1.4.13).
<center><img class="screenshot" src="../images/duniter-1.4/typescript.png" width="300px"/></center>
## Synchronization
> <span class="icon">![alt](../images/icons/white_check_mark.png)</span> No need to resynchronize.
## Compatibility
> <span class="icon">![alt](../images/icons/white_check_mark.png)</span> Compatible with Ğ1.
## Update version
* Link to [install the new version](https://github.com/duniter/duniter/blob/master/doc/install-a-node.md) from a new server
* Link to [upgrade to the new version](https://github.com/duniter/duniter/blob/master/doc/update-a-node.md) from an existing installation
Title: Duniter version 1.5
Date: 2017-08-22 16:07
Category: Technical
Tags: release
Slug: duniter-version-1.5
Authors: cgeek
Thumbnail: /images/box.svg
Lang: en
Duniter version 1.5 is now [available for download](https://github.com/duniter/duniter/releases/tag/v1.5.4)!
## Changes
This new version brings mainly a lot of important fixes for the stability of the currency:
* the nodes under ARM architecture functioned abnormally (CPU power divided by 2 with each working proof, getting regularly desynchronized)
* a node could easily isolate itself in a fork
* the nodes in version 1.4 were indicated in gray in Sakia (nodes in error)
* Duniter returned erroneous information to Cesium+
**It is important to pass this update** if you are in version 1.3 or lower because these older versions contain an old version of the protocol and regularly cause forks on the network. Soon, these nodes will also isolate themselves and will no longer be of any use.
## Synchronization
> <span class="icon">![alt](../images/icons/white_check_mark.png)</span> No need to resynchronize.
## Compatibility
> <span class="icon">![alt](../images/icons/white_check_mark.png)</span> Compatible with Ğ1.
## Update version
* Link to [install the new version](https://github.com/duniter/duniter/blob/master/doc/install-a-node.md) from a new server
* Link to [upgrade to the new version](https://github.com/duniter/duniter/blob/master/doc/update-a-node.md) from an existing installation
Title: Ğ1 Web of Trust report (September 2 of 2017)
Date: 2017-09-02
Category: Web of trust
Tags: wot
Slug: report-state-wot
Authors: elois
Thumbnail: /images/network.svg
Lang: en
Since [4 July 2017](https://forum.duniter.org/t/currency-monit-monitoring-dune-monnaie- and-sa-toile-de-confiance/2770/17?u=elois) I keep detailed statistics on the status of the web of trust that you can view on [g1-monit.elois.org](https://g1-monit.elois.org).
*These statistics are produced by the [duniter plugin](https://duniter.org/fr/wiki/duniter/liste-modules/) `duniter-currency-monit` (duniter-currency-monit), which is used directly in the local block of the duniter node on which it is installed.*
I decided to take advantage of these statistics to publish regularly a short report on the global state of the web of trust Ğ1.
## The spirit of these short regular reports
The objective of these short regular reports is not to be exhaustive, but rather to highlight certain indicators that seem relevant at a given moment to visualize a given phenomenon. There is no defined frequency, I will publish a report whenever there seems to be something relevant to describe and that I will have time for.
If you regularly read my reports, which you regularly read *g1-monit* and you want to write reports, you can [contact me](https://librelois.fr/contact/) to be discussed :)
# Prerequisites
Before reading these reports, it is strongly recommended that you review the [license Ğ1]({filename}/files/LICENCE_G1-EN.txt) and read all the following pages:
* [Becoming a member of the Ğ1 web of trust](/en/wiki/become-member)
* [**How the web of trust works**](/introduction-a-la-toile-de-confiance.html/)
In particular, reading the article [**Introduction to the web of trust**](/introduction-a-la-toile-de-confiance.html) is essential to know the function of each of the rules of the web.
I will also use notions of graph theory, but I will try to define each time the terms used.
Finally, you must know a specific scale to the duniter web of trust, **the quality of a member**.
## Quality of a member
What I call quality of a member is the ratio between the rate of referring members that can be achieved by a certification of that member and the rate of referring members that must be reached in order to respect the rule of distance.
I will give an example to make it clearer: let's take a web of trust with 10 referring members and xpercent = 0.8.
The quality of a member in such a web of trust is the ratio of the number of referring members that it allows to join in less than 5 steps (numerator) on the number 8 (denominator).
So if a member Bob allows to join 4 referents it will have a quality of 0.5.
And if Bob allows to join 10 referents it will have a quality of 10/8 = 1.25.
What do I mean by "join"? When I say that Bob allows to join x referring members I hear that if Bob certifies a new identity (which is only certified by Bob) then there will be x referring members for which there will exist a path of less than 5 steps towards the new identity.
Thus, a member with a quality greater than or equal to 1 could let in a new member by itself if the sigQty rule did not exist.
When the average quality is greater than 1, the distance rule is not limiting. When the average quality approaches 1, the rule of distance will become limiting for some minority cases. And when the average quality becomes less than 1, then the rule of distance becomes limiting for the majority of identities (by identities I mean new members but also members wishing to renew!)
Currently the average quality is **1.04**, which means that the rule of distance is not limiting, so the web of trust is not "too tight". 1.04 is close to 1, so if all the members only certify outwards from now on the rule of distance could become limiting quickly (which may be a desirable and desired situation in some cases, it is also a freedom of the members to tend or relax the web of trust).
# Ğ1 Web of Trust report (September 2 of 2017)
## Observations
We are two weeks after the passage of the level Y[n]=4, here is a reminder of the effect that this level had had:
> The quality of the web of trust will increase slightly after this stage, approximately 88% of members will have a quality >= 1 against 83.75% currently. A gain of 4%. The rule of distance will therefore be globally less constraining but not of much, and at the current rate of growth of the number of members, the web will quickly stretch again! The number of referents will increase from 150 to 140, which shows that the members do not stop with 3 certifications issued, they continue to issue.
The densification effect of the level has already dissipated, the web of trust is again as taut as before the passage of the level, or even slightly more:
* The proportion of members with a quality >= 1 fell to **82%** about the same level as before the level (83%).
* In addition, a dozen members begin to fall to very low quality levels (less than 0.9), which means that they start to be too far from the referring members, black areas on this graph on page [web of trust quality](https://g1-monit.elois.org/gaussianWotQuality?lg=en): </BR><img src="https://librelois.fr/public/qualite-toile-020917.png" width="690" height="339">
* Moreover, of the 79 future members who have received at least 1 certification, 7 of them do not respect the rule of distance, 3 have been certified by the same member. Nevertheless these are **4 different cases of non-compliance with distance rule**.
* Another indicator shows the tension of the web of trust, **the increase in the average length of the shortest path between two members** which is now **4.13**. This value has increased continuously even when passing the level because it is independent of the notion of referent member. It shows the state of tension of the entire web of trust where the quality of a member only shows the state of tension of a subset of the web (the subset of referent -> member links).
* Lastly, the number of referring members has risen above its pre-stage value (153):
<img src="https://librelois.fr/public/fin-effet-palier-yn-4.png" width="690" height="339">
## Interpretations
The rule of distance is still very far from being blocking, but the web has never been so tense since I keep very detailed statistics on its state, that is to say since July 4, 2017.
The Ğ1 web of trust is becoming tense because the flow of new entrants goes faster than the internal recognition between the members already members. This phenomenon is perfectly normal at the beginning of currency and will accelerate as the Ğ1 will gain in popularity. The web of trust will therefore most likely continue to tighten until the distance rule becomes blocking.
At that point, the new entry flow will slow down and the members who were then very active outward will have to certify inward to densify a bit the web so that it can again welcome.
Again this is a normal phenomenon at the beginning of the currency and even desirable because this constraint on the inputs will also limit the possible sybil micro-attacks in progress (the small frauds) so that they remain microscopic with respect to the size of the canvas.
* Aparté: I remind you that it is impossible to prevent small frauds, there will necessarily, perhaps even already, the only thing one can and must do is to constrain these small frauds to remain marginal so that the globality of the web remains trustable and it is precisely the role of the rule of distance.
This is why it is important to insist that the other members of the Ğ1 you meet on the fact that they must certify the members they know personally even if they are already members and must do so without waiting.
This point is not always well explained and even less understood, and it is understandable given the quantity of new concepts to be integrated elsewhere. If we do not insist sufficiently on the importance of internal certifications then there may be many misunderstandings when the rule of distance becomes blocking, and this misunderstanding could cause mistrust and inhibit the popularity of Ğ1.
It is necessary to qualify this global statement by specifying that the web is regionalized, so the rule of distance will become limiting only in certain regions and not at all in others. To anticipate that, it is enough to monitor members with the weakest quality, and if it starts to concentrate a lot in the same area, we can very well directly contact local groups in this area, and by the same occassion teach them to use g1-monit to monitor their own situation in the future.
## Conclusion
The various indicators of the state of tension of the web of trust will allow us to anticipate, and that is the whole objective of the development of g1-monit and the writing of these reports: awaken your vigilance so that you watch - even your web of trust, after all it is a common good :)
Some people are of the opinion that the distance rule is too restrictive and will have to be relaxed, other than the current rules are perfectly suited and that members of the Ğ1 are able to regulate their own balance between their internal and external certifications. Will the members of the Ğ1 be vigilant enough to regulate the web of themselves? I hope the answer is yes, tracking detailed statistics of the web will tell us :)
Title: Is Duniter energy consuming ?
Date: 2017-11-18
Category: Technical
Tags: proof of work
Slug: is-duniter-energy-consuming
Authors: cgeek
Thumbnail: /images/light.svg
Lang: en
The Bitcoin has a reputation for being an energy consuming network. Duniter inherits some of the Bitcoin's properties, such as the proof of work and the blockchain. People are therefore legitimately asking this question:
> Is Duniter also energy consuming ?
### A little bit of definition
First of all, we should focus on the term *energy consuming*. But just about any system is energy-consuming, for example our human cells. This definition is not the problem, as it is readily understood that Bitcoin or Duniter requires energy to function.
On the other hand, one might think that this is a quantity problem: for example, 10 Wh is less than 10 kWh by a factor of 1000. Yes, but is 10 kWh a lot?
### A connection to other uses
As such, we are unable to say that "10 kWh is a lot". On the other hand, we could say "10 kWh is a lot of energy if it's just to produce light for 1 hour in my living room". Indeed, today a 100 W bulb (even an old generation) would be more than enough to illuminate a living room of 50m² and would consume only 100 Wh in one hour (by definition), and so we are far from 10 kWh: it is 100 times less!
This is my point: a system is said to be "energy-intensive" **in relation to the service provided**, and therefore in comparison with other uses of the same amount of energy.
For example, in the case of Bitcoin, [each transaction consumes 215 kWh](https://digiconomist.net/bitcoin-energy-consumption). What can you do with that much energy? The equivalent of 32 days of electricity consumption for an average French person can be provided. This may sound high to simply perform *a single bitcoin transfer*. Bitcoin makes 300,000 transactions *per day*. I'll let you do your math.
> Yes, it's *a lot*! Relative to other possible uses of this same amount of energy.
### And Duniter in all this?
A first point to understand is that there is no race for power in Duniter, **for the simple reason that there is no particular reward to calculate blocks** unlike in Bitcoin. This simple measure cuts the grass under the foot of a possible run.
However, Duniter does have a proof-of-work mechanism to allow network nodes to speak synchronously. This task is the source of Bitcoin's energy consumption. But here again, Duniter benefits from unique mechanisms because of its web of trust: first, only members of the currency can calculate blocks, which limits the number of potential participants. But also, Duniter has a mechanism *that permanently excludes 1/3 of the computer network from proof of work*. This means that at each block there are 1/3 of the computers that turn their thumbs. And so, only 2/3 of them actually make calculations. This excluded 1/3 can then adjust its power consumption to perform only simple operations, such as receiving transactions on the network.
<center><image src="../images/networking.svg" width="200px"/></center>
Does this mean that the remaining 2/3 of the electricity consumption is high? Contrary to the Bitcoin, the machines used for calculation are home computers, possibly servers or simply Raspberry PI. And all that is enough. Besides, Bitcoin's ultra-efficient machines (the famous[ASIC](https://en.bitcoin.it/wiki/ASIC) ) are totally useless in Duniter because the proof of work mechanism is not the same.
**And so in reality, each Duniter node consumes as much energy as a bulb of 10 W to 100 W, which runs continuously.**
<center><image src="../images/light.svg" width="200px"/></center>
### How much is that for the Ğ1 ?
Today the Ğ1 has about 30 member nodes that calculate blocks. If an average of 55 W of instantaneous consumption per node is counted, then `55*24 = 1.32 kWh` of electricity consumption per day per node, or `1.32*30 = 39.6 kWh` of total grid consumption per day.
Is that a lot? We now have about 12 transactions per day. It may seem high to have 30 light bulbs of 55 W on at all times just to make 12 transactions a day.
Yes, but there is nothing to prevent you from increasing to 120 transactions per day with the same network size. Duniter is currently under-registered, 120 transactions, it's quite feasible! As well as 1200 or 12000 transactions per day (40 transactions per block). In this case, would 30 light bulbs be a lot of energy compared to this number of transactions?
I'll let you answer that question on your own. :-)
<center><image src="../images/duniter-logo.png" width="200px"/></center>
Title: Migration to gitlab
Date: 2018-01-10
Category: Technical
Tags: gitlab
Slug: migration-gitlab
Authors: inso
Thumbnail: /images/code.svg
Lang: en
In 2018, we migrate our Duniter code repositories to [Gitlab](https://git.duniter.org).
From now on, we no longer depend on a private platform to publish our releases and maintain our issues.
Everything has been migrated: issues, Git repositories, and even user accounts!
It is also possible to connect using Github logins.
You will find in particular the following repositories :
The repository of [Duniter Typescript](https://git.duniter.org/nodes/typescript/)
The deposit of [Duniter Rust](https://git.repository.org/nodes/rust/)
The repository of [Cesium](https://git.duniter.org/clients/cesium)
As on Github, if you want to contribute, you can fork the project, create issues, etc. I
We are also taking advantage of this migration to **change the way we develop the protocol.**
We have set up a [protocol RFC repository](https://git.duniter.org/nodes/common/doc).
Proposals for improvements and changes to the protocol are managed through [merge requests](https://git.duniter.org/nodes/common/doc/merge_requests)
on the repository.
Title: Duniter, why and how?
Date: 2018-02-23
Category: duniter
Tags: gitlab
Slug: duniter-pourquoi-comment
Authors: inso, thomasbromehead
Thumbnail: /images/logos/duniter.png
Lang: en
save_as: duniter-why-how.html
url: duniter-why-how.html
Last year (2017) will go in history as the first year of production of the [ğ1](https://g1.duniter.fr/) currency.
A milestone to be remembered as the community’s efforts had until then been almost entirely devoted to launching production of the world’s first 100% P2P “freedom-enabling” cryptocurrency. Looking back at 2017, we have grown from the initial 59 members to well over 600 as of early January of 2018. Local ğ1 networks have sprouted across France and in nearby French-speaking countries and the project is gathering growing attention and gaining momentum
Here’s an example conversation we heard repeatedly in the last year.
- “What’s this Duniter cryptocurrency all about?”
- “It’s a crypto protocol with universal income (members co-create the money) working on blockchain with a Web of Trust, no ASIC frenzy here.”
- “Wow that sounds very interesting! But how does it work then? How does it fight off Sybil attacks? How does the blockchain work? How hard is it to become a member?
In twenty eighteen we’ll be going into depth on the project and on how Duniter works. We’ll kick off with a series of 12 articles which we hope will give everyone a better understanding of the Duniter protocol and its intricacies.
# A "libre" currency?
Duniter’s goal is to create money following the principles of the [Relative Theory of Money](http://en.trm.creationmonetaire.info/) in which the currency is “minted” by way of a Universal Dividend (UD or DU for Dividende Universel in French). Because each vetted member is a co-creator, the money offers symmetry for all: whatever the age and whether alive or not. Each individual (companies do not create the ğ1 but can participate in the network) co-creates the same percentage of the total money supply in a given timeframe (40 years with the ğ1):
- Money being co-created by every vetted member, it can be seen as **a universal income emerging from the creation of the currency itself.** Think of mining fees and mining rewards evenly distributed to each holder of a bitcoin wallet.
- Money creation grants no privileges to some at the detriment of others, at any given time t or over larger periods of time.
- The co-creation allows us to measure exchanges between individuals with an unbiased meter and therefore becomes **a common yardstick** in the true sense of the word.
The Universal Dividend gives the ğ1 some unique characteristics:
- **Money from the deceased is constantly replaced by money from the living.** The money is constantly "circulating" at the expense of no-one.
-The money supply slowly reaches a cap of around 3800 UDs (in the ğ1) over the course of a member’s life.
We’ll go into greater detail on this in the next articles.
# A “Web of Trust”?
In order to clearly identify each member and ensure that no-one receives two or more UDs we resorted to a WoT. We borrowed the term from [PGP](https://en.wikipedia.org/wiki/Pretty_Good_Privacy), the famous open-source encryption software although our implementation is vastly different. The WoT is there to make sure a **real-world identity matches that on the network.**
The WoT is woven by members themselves. The 59 members who minted the genesis block asserted that they knew each other in person and each then proceeded with “certifying” others around them. When a new member joins, he or she is given the right to certify future members.
However the process **can’t go on forever** as the web has a maximum diameter. Each member only has a set number of certifications he can grant and cannot be “too far” from other members. If you’re interested in the fine print, I invite you to read this article from 2016 called “[Introduction to member management](/en/introduction-a-la-toile-de-confiance.html)” .
> *The WoT is the aggregate of all links between human beings. I know someone who knows someone. Legend has it that we are only 5 levels from each other.*
-- [@paidge](https://www.youtube.com/watch?v=coFgDw2yH0g) --
# A blockchain without “mining”?
Duniter’s blockchain moves forward thanks to the nodes provided by members. These nodes **calculate new valid blocks** but there is **no mining** involved here as the ğ1 is created by the Universal Dividend!
Whether a member’s node is active or a mirror, **it always contributes to the co-creation of the money**. Members are invited to run a node if only to strengthen the blockchain and make sure that exchanges do happen.
To help distribute the cost of running nodes across all members a redistribution [service](https://remuniter.cgeek.fr/) was created. It works on a voluntary basis whereby members make a small donation which is then split between all nodes working on blocks at the given time. Bear in mind we are talking about money that already exists here. This service is not a core feature of the money creation itself.
The more members contributing in hash power the sturdier the blockchain (less likely to be compromised). The software must be as cost-efficient as possible to keep calculating costs at a minimum. We’ve therefore opted for a **personalized difficulty** tailored to each member. In practice this means that a member with a potent computer is slowed down so that even a Raspberry PI will be able to generate blocs in the future. We’ll cover this better in a coming article!
# We’re done with the basics
As you’ll have gathered, Duniter’s main difference is that **it puts humans first**.
The money creation is taken care of by humans themselves, not by machines or private corporations. Humans meet and validate each other’s capacity to create the money.
In the best of worlds each member would have a calculating node giving each and everyone a say in the growth of the network and in future decisions.
To avoid confusion between the protocol and the currency, we’ve distinguished the two, the former being Duniter and the latter the **ğ1**. **Tech and economics are two very different subject matters!**
Duniter (DU – unit – er) is a way of saying "Machine calculating UDs". The software allows the instantiation of a currency, in our case the ğ1. It allows humans having confirmed knowing each other through the WoT and the blockchain to calculate the UDs for the community and… greater good!
**Is is indeed the mere action of validating your peers’ real-life identities and of running nodes that are the source of the money creation.**
# Coming soon...
We hope you’ll enjoy the upcoming articles which will allow you to get better acquainted with the technology.
\ No newline at end of file
Title: About
Order: 9
Date: 2017-03-27
Tags: about
Slug: about
Authors: cgeek
Lang: en
## License
All the content of this site is under [CC-BY-SA](https://creativecommons.org/licenses/by-sa/4.0/deed.fr) license except where said otherwise.
Its code is fully availablge on a GitHub repository [github.com/duniter/website_en](https://github.com/duniter/website_en) with the instructions for reproducing it on your machine.
## Images used on this site
Some logos and imagaes are the production of other people, you can find their origin on the [Credits](/credits) page.
## Who are we?
We are simple citizens, mostly french people, trying to produce a new economic value nammed « libre currency », of digital form, and respecting the principles established by the [Relative Theory of Money (RTM)](http://en.trm.creationmonetaire.info/)
There is currently no official organization behind Duniter, even if the project is supported bien the *Art et Zerty* company, French EURL owned by the Duniter software founder Cédric Moreau a.k.a *cgeek*, and owning the Duniter tradmark in France.
If the project takes off on long term, the creation of a Foundation is already considered by its initiators. The trademark would then be transfered to the Foundation.
## Contact
More informations on the [Contact](/contact) page.
Title: Contribute
Order: 4
Date: 2017-03-27
Tags: wiki, blockchain, rtm, yunohost
Slug: contribute
Authors: cgeek
Lang: en
# Contribute
> This page is an improved copy of the FAQ section [Getting involved](/faq#gettinginvolved).
### How may I help?
You can help on project developement in many ways, depending on your available time, energy and skills. Please read the requirements and possibilities below. If you feel comfortable with one these profiles, do not hesitate to [contact us](/contact).
#### As a backend developer
You may participate in Duniter server's development, which is the core software implementing [UCP](https://github.com/duniter/ucoin/blob/master/doc/Protocol.md). You will need some technical skills:
* Node.js development involving:
* JavaScript (ES5 code only, but ES6 ready with [Promises/A+](https://promisesaplus.com/))
* lots of asynchronous JavaScript