Good day, Community!
My name is Yanis Slav Basyuk. I am the coordinator of the community organization "Medium."
In this article, I have tried to gather the most comprehensive information about what this decentralized internet provider operating in the territory of the Russian Federation is. .
I will discuss:
What "Medium" represents
What Yggdrasil is and why "Medium" uses it as the main transport
How to properly set up the environment to use the resources of the "Medium" network

M. P.:
Medium (English, Medium — "intermediary", the original slogan — Don’t ask for your privacy. Take it back; in English, the word medium means "intermediate") — a Russian decentralized internet provider offering network access services on a non-profit basis.
When, where, and why was "Medium" created?
Initially, the project was conceived as downward API support (simultaneously with this in .
Medium was established in April 2019 as part of creating an independent telecommunications environment by providing end users with access to the Yggdrasil network resources through the use of wireless data transmission technology, Wi-Fi.
Where can I find the complete list of all network points?You can find it at .

What is Yggdrasil and why does Medium use it as the primary transport?
— it is a self-organizing , capable of connecting routers both in overlay mode (on top of the Internet) and directly to each other via wired or wireless connections.
Yggdrasil is a continuation of the project . The main difference between Yggdrasil and CjDNS is the use of the (spanning tree protocol).

By default, all routers in the network use for data transmission between other participants.
The choice of the Yggdrasil network as the main transport was driven by the need to increase connection speed (until August 2019, Medium used ).
Switching to Yggdrasil also provided project participants with the opportunity to start deploying a Full-Mesh topology mesh network. This network organization is the most effective antidote against censorship.

Yggdrasil by default uses end-to-end encryption. Why do the services of the "Medium" network use HTTPS?
There is no need to use the HTTPS protocol to connect to web services in the Yggdrasil network if you are connecting to them through a locally running Yggdrasil network router.
Indeed: the Yggdrasil transport at the level allows the secure use of resources within the Yggdrasil network — the possibility of conducting is completely excluded.
The situation fundamentally changes if you access Yggdrasil's internal resources not directly, but through an intermediary node — a point of access to the "Medium" network administered by its operator.
Who can compromise the data you transmit in such a case:
- Access point operator. It is clear that an active operator of the "Medium" network access point can eavesdrop on unencrypted traffic passing through their equipment.
- Malicious actor (). "Medium" has a problem similar to , but concerning entry and intermediary nodes.
This is how it looks
Solution: to access web services within the Yggdrasil network, use the HTTPS protocol (layer 7 ). The problem is that for Yggdrasil network services, it is impossible to issue a valid security certificate by ordinary means, such as .
Therefore, we established our own certification authority — . The vast majority of the services in the "Medium" network are signed with the root security certificate of this certification authority.

The possibility of compromising the root certificate of the certification authority was certainly taken into account — but here the certificate is primarily needed to confirm the integrity during data transmission and to prevent the possibility of MITM attacks.
The services of the 'Medium' network from various operators have different security certificates, which are signed by the root certificate authority. However, the operators of the root certificate authority do not have the ability to eavesdrop on the encrypted traffic of the services for which they have issued security certificates (see. ).
Those who care especially about their security can use additional protective measures such as and .
Currently, the public key infrastructure of the 'Medium' network has the capability to verify the status of a certificate via the protocol or by using .
Does 'Medium' have its own domain name system?
Initially, the 'Medium' network did not have a centralized domain name server that would allow participants to access the most frequently visited resources in a simpler, more familiar way (as opposed to using the IPv6 address of a specific server).
We at 'Medium' decided to breathe life into this idea — and to jump ahead a bit, we succeeded!

Domain name registration occurs automatically — you just need to specify the IPv6 address of the server where the service is running. The robot will check whether this address actually belongs to the person attempting to register the domain name.
In case of success, the domain name will be added to the domain name database within 24 hours. If the server stops responding to the robot and remains unavailable for more than 72 hours, the domain name will be released.
It will not be possible to register a domain name at ::1.
A copy of the full list of registered domain names can be found at . This ensures maximum transparency regarding the current state of domain names and eliminates the possibility of their blockage due to potential ambiguous situations arising from human factors. What if the DNS operator doesn't like something?.

And what about issuing SSL certificates for web services?
The creation of domain name servers was also driven by the need to deploy public key infrastructure — in order to issue a certificate, it is necessary to include a CN (Common Name) field that represents the domain name for which the certificate is issued.
The procedure for issuing certificates signed by the certification authority is carried out automatically — a robot checks the accuracy and authenticity of the data entered by the user. If successful, the end user is sent an email containing the signed certificate.
Here's such a

How to properly configure the environment for utilizing resources of the 'Medium' network?
The specifics of setting up the working environment depend on the operating system you are using.
Choose wisely (the image is clickable):
A free Internet in Russia starts with you
You can contribute to the establishment of a free Internet in Russia today. We’ve compiled a comprehensive list of ways you can help the network:
Tell your friends and colleagues about the "Medium" network
Share to this article on social networks or your personal blog
Participate in the discussion of technical issues regarding the "Medium" network
Create your web service on the Yggdrasil network and add it to
Lift your to the "Medium" network
Also read:
We are on Telegram:
Only registered users can participate in the survey. , please.
Alternative Voting: We value the opinions of those who do not have a full-fledged account on Habr.
↑
↓
A total of 138 users voted. 65 users abstained.
Source: habr.com
