freenet / freenetorg-website Goto Github PK
View Code? Open in Web Editor NEWThe code behind https://freenet.org/ and https://staging.freenet.org/
License: GNU Affero General Public License v3.0
The code behind https://freenet.org/ and https://staging.freenet.org/
License: GNU Affero General Public License v3.0
When I visit http://staging.freenet.org/ I momentarily just see the bullet points before the page renders properly.
Looking at the page source, it looks like the text of the HTML isn't being populated in the initial render:
<div id="K7" class="ui text center aligned container" background-color="e8e8e8">
<div id="K8" class="ui text left aligned container">
<div id="K9">
<h1 id="Ka" class="ui text"></h1>
<h2 id="Kb" class="ui text"></h2>
</div>
<br id="Kc">
Looking at the logs in Google Cloud, here is an example log entry:
{
"textPayload": "[main] INFO Application - Responding at http://0.0.0.0:8080",
"insertId": "r7iddfioc0p12ds0",
"resource": {
"type": "k8s_container",
"labels": {
"location": "us-east1",
"cluster_name": "freenet-org-east1",
"pod_name": "freenet-org-staging-6bd8c784dd-grvkg",
"namespace_name": "freenetorg",
"project_id": "freenet-353920",
"container_name": "freenet-org-app-staging"
}
},
"timestamp": "2022-09-17T17:29:00.064010148Z",
"severity": "ERROR",
"labels": {
"compute.googleapis.com/resource_name": "gk3-freenet-org-east1-nap-qxu2i4zq-61f7e03d-ttwd",
"k8s-pod/pod-template-hash": "6bd8c784dd",
"k8s-pod/app": "freenet-org-staging"
},
"logName": "projects/freenet-353920/logs/stderr",
"receiveTimestamp": "2022-09-17T17:29:04.819376748Z"
}
Note that the SEVERITY is ERROR even though this is an INFO level log message. Is this because its being logged to stderr
?
Bug report:
The web site is unclear about the naming. This is confusing and puts people off getting involved in either bit of software or the project in general.
Please add something friendly to the website which makes it absolutely clear, for people from the future, what the different networks, bits of software and projects are. Any form of confusion in this will
Quick summary for those not involved (like myself) according to my understanding:
Until 2023 there was one peer to peer network which was called freenet by everyone and had been created by the "Freenet Project". That peer to peer network has been renamed Hyphanet.
At the same time the Freenet Project, owners of this website started working on a new piece of software, which at the time was called "Locutus". Locutus has now become the primary project of the Freenet Project.
Please add RSS for news so that we can stay in touch :)
In the browser a user keypair is generated locally, the user public key part is "blinded" using the RSA blind signature algorithm, this symmetric key is retained in the browser so it can be "unblinded" later.
The user selects whether they want to purchase a bronze ($10), silver ($20), or gold ($50) identity and enters their cc info in the Stripe dialog, this information is passed to the server along with the blinded user public key.
The server has an elliptic curve master keypair that serves as the "parent" of all Freenet keys. Note that we can use an EC keypair here because this key won't directly be used in the blind signature algorithm.
This master key is used to create several "subkeys", one for each of bronze, silver, and gold. We create 3 RSA keypairs, and for each we use the master key to sign the JSON:
{
"type" : "Freenet-identity",
"version" : 1,
"level" : "Bronze",
"RSA-public-key" : "...base64 encoded RSA public key..."
}
This JSON plus the master key signature is a certificate that validates the respective RSA public key.
The server then signs the blinded user public key using the relevant subkey depending on whether the level is bronze, silver, etc - and this is sent back to the browser along with that subkey's certificate.
The browser then unblinds the signed user public key and it plus the subkey certificate is stored by the user somewhere safe (via QR code, etc).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.