💾 Archived View for gemlog.blue › users › thegemlog_tester › 1718148366.gmi captured on 2024-08-31 at 20:09:41. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2024-06-16)

-=-=-=-=-=-=-

Hello World! This is a test post

I have read about this site (Gemlog . Blue) on another site:

[HTTPS]geminiquickst.art

It mentions "shared hosting", a new keyword I did not have on my radar.

Much is left to learn on Gemini

I am interested in the Gemini Protocol, but do not know much. I have looked into the 100 line python code of a bare bones Gemini Client:

[https] a bare bones python gemini client.

I read through the code. The interactive input parts are easy for me to understand. Things I do not understand (fully) include ...

a) understanding OPENSSL better. This includes building a python application wrapping a tcp socket into an ssl-context. This allows for encrypted communications between 2 parties, but I will need to get into the details.

b) create an identity using a certificate and a private key, in gemini.

- some clients like the "Kristall gemini browser" allow for the easy creation and management of certificates using a "certificate manager".

- an Android gemini client called "Deedum" also allows for the creation of certificates (but they are called identies there). I tried to generate the public/private keypair using openssl, but using it fails.

c) understand sockets and URLS better: Look at a simple gemini URL like "gemini://geminiprotocol.net". This URL includes some parts that can be extracted in python like so:

python repl code example

>>> import urllib.parse
>>> urllib.parse.urlparse("gemini://geminiprotocol.net")
ParseResult(scheme='gemini', netloc='geminiprotocol.net', path='', params='', query='', fragment='')

The netloc `geminiprotocol.net` is used in the creation of the TCP socket and ssl context in the linked bare bones python client.

d) understand the 1X response code of gemini, where X is a DIGIT.

- what are the limitations (Input length?)

This is it for now! Bye!