💾 Archived View for gemi.dev › gemini-mailing-list › 000589.gmi captured on 2023-11-04 at 12:57:47. Gemini links have been rewritten to link to archived content

View Raw

More Information

➡️ Next capture (2023-12-28)

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

[tech] Proposed reversed Gemini for uploads to servers - Feedback wanted

benthor <benthor (a) posteo.de>

Hi all,

I may have come up with a practical way to upload content to 
Gemini servers in-band, that is, speaking only valid Gemini 
(mostly) within the Gemini protocol specification.

The proposed mechanism allows a Gemini client to temporarily act 
as a Gemini server, with the Gemini server briefly playing the 
part of a Gemini client. Entirely within an otherwise standard 
Gemini transaction, a server and client can agree to swap roles, 
with the server then waiting for any content that the client may 
send (i.e., "upload") to the server.

Being in a sense, "reversed Gemini", I've decided to call this 
mechanism "Inimeg"[1].

Inimeg strictly follows the Gemini spec and only extends it in 
three respects:


  Inimeg "upload" request

  to an Inimeg request

  reversal

I was careful not break or be in conflict with solarpunk's 
excellent Gemini spec. A heavily inspired "speculative 
specification" for Inimeg can be found at [2].

Do not hesitate to try out Inimeg in the open Playground, as 
mentioned in [1]. Much less work has gone into the crude server 
implementation[3] than the spec but it should serve to demonstrate 
the general idea. (Note that the same server process that hosts 
the spec [2] also hosts the playground, so please don't be too 
unfriendly with it. It should hold up to casual experimentation 
though.)

So. What do you think?

benthor

[1]: gemini://inimeg.space/
[2]: gemini://inimeg.space/specification.gmi
[3]: https://git.sr.ht/~benthor/lunokhod

(gemini://inimeg.space only speaks TLS 1.3 at the moment, I humbly 
apologize to the folks who are stuck with TLS 1.2)

Link to individual message.

Petite Abeille <petite.abeille (a) gmail.com>



> On Dec 30, 2020, at 01:29, benthor <benthor at posteo.de> wrote:
> 
> Being in a sense, "reversed Gemini", I've decided to call this mechanism "Inimeg"[1].

Fantastic idea :)

But I'm afraid Sean own that trademark already. The entire concept actually.

Search the archive, circa June 14th, something related to "Uploading Gemini content"

Link to individual message.

Sean Conner <sean (a) conman.org>

It was thus said that the Great Petite Abeille once stated:
> > On Dec 30, 2020, at 01:29, benthor <benthor at posteo.de> wrote:
> > 
> > Being in a sense, "reversed Gemini", I've decided to call this mechanism
> > "Inimeg"[1].
> 
> Fantastic idea :)
> 
> But I'm afraid Sean own that trademark already. The entire concept
> actually.
> 
> Search the archive, circa June 14th, something related to "Uploading
> Gemini content"

  Specifically, this message:

	https://lists.orbitalfox.eu/archives/gemini/2020/001650.html

  -spc

Link to individual message.

Petite Abeille <petite.abeille (a) gmail.com>



> On Dec 30, 2020, at 01:37, Sean Conner <sean at conman.org> wrote:
> 
> 	https://lists.orbitalfox.eu/archives/gemini/2020/001650.html

Still love the concept :)

Very simple, and very elegant: inverse the command flow. Pure Gemini. What 
is there not to like.

Link to individual message.

benthor <benthor (a) posteo.de>


Sean Conner writes:
>   Specifically, this message:
>
> 	https://lists.orbitalfox.eu/archives/gemini/2020/001650.html
>
>   -spc

Fascinating thread! Now I'm angry with myself that I haven't gone 
far enough in time on the ML to find this. 

My consolation price is the knowledge, that all the stuff I came 
up with on my own is apparently not completely silly. I've added a 
"Credits" section to the site, mentioning your names and the 
thread.

Are you interested in fleshing this idea out a bit further with 
me? Anything you'd like to see changed in the speculative spec? I 
hope to at least contribute "inimeg.space" to the cause. (Oh how 
clever I felt when I came up with that one. Sigh.)

Cheers,
benthor

PS: Solderpunk, I apologize for calling you "solarpunk" 
earlier. *shakes head*

Link to individual message.

Sean Conner <sean (a) conman.org>

It was thus said that the Great benthor once stated:
> 
> Sean Conner writes:
> >  Specifically, this message:
> >
> >	https://lists.orbitalfox.eu/archives/gemini/2020/001650.html
> 
> Fascinating thread! Now I'm angry with myself that I haven't gone 
> far enough in time on the ML to find this. 

  There's also the titan: protocol:

	https://communitywiki.org/wiki/Titan

also an upload method for Gemini, and also originally an idea of mine (but
developed almost exclusively by Alex Schroeder).

There is also Dioscuri:

	gemini://rawtext.club/~sloum/geminilist/002792.gmi

  I have nothing to do with this one.  So there's quite a bit of interest
and work in this.

> Are you interested in fleshing this idea out a bit further with 
> me? Anything you'd like to see changed in the speculative spec? I 
> hope to at least contribute "inimeg.space" to the cause. (Oh how 
> clever I felt when I came up with that one. Sigh.)

  I'd like to at least read the spec, but I'm still stuck at TLS 1.2 until I
check out the newer LibreSSL library.  But at the very least, check out the
others methods as well.

  -spc

Link to individual message.

John Cowan <cowan (a) ccil.org>

On Tue, Dec 29, 2020 at 9:34 PM Sean Conner <sean at conman.org> wrote:


> There is also Dioscuri:
>
>         gemini://rawtext.club/~sloum/geminilist/002792.gmi
>

That is the original version and no longer current.  Please use
http://tinyurl.com/dioscuri-home instead; that address is permanent. Note
that Dioscuri is intended as a POST protocol rather than a PUT protocol.



John Cowan          http://vrici.lojban.org/~cowan        cowan at ccil.org
A: "Spiro conjectures Ex-Lax."
Q: "What does Pat Nixon frost her cakes with?"
  --"Jeopardy" for generative semanticists

Link to individual message.

Petite Abeille <petite.abeille (a) gmail.com>



> On Dec 30, 2020, at 02:28, benthor <benthor at posteo.de> wrote:
> 
>  (Oh how clever I felt when I came up with that one. Sigh.)

My exact feeling every day: surely NO ONE must have thought of this :D

inimeg ftw!

> PS: Solderpunk, I apologize for calling you "solarpunk" earlier. *shakes head*

Haha. Good one :)

Link to individual message.

Petite Abeille <petite.abeille (a) gmail.com>



> On Dec 30, 2020, at 03:34, Sean Conner <sean at conman.org> wrote:
> 
> but I'm still stuck at TLS 1.2 until I check out the newer LibreSSL library. 

Perhaps take a look at "[gentoo-dev] [RFC] Discontinuing LibreSSL 
support?". Fascinating dynamic.

Link to individual message.

benthor <benthor (a) posteo.de>

Sean Conner writes:
>   There's also the titan: protocol:
>
> 	https://communitywiki.org/wiki/Titan
>
> also an upload method for Gemini, and also originally an idea of 
> mine (but
> developed almost exclusively by Alex Schroeder).

Very interesting. If I understand 
gemini://communitywiki.org/page/Titan correctly, the following 
should have worked:

     echo -en 
     "titan://communitywiki.org/raw/Test;token=hello;mime=text/plain;size=12\r\nHello 
     World\n" | socat - ssl:communitywiki.org:1965,verify=0

However, gemini://communitywiki.org/page/Test remained empty. Even 
after creating the page via the http interface, I couldn't update 
it. In general, I am not sure whether the token requirement 
couldn't be dropped in favor of exclusively client 
certificate-based authentication.

> There is also Dioscuri:
>
> 	gemini://rawtext.club/~sloum/geminilist/002792.gmi
>
>   I have nothing to do with this one.  So there's quite a bit of 
>   interest
> and work in this.

Oh, I like this approach! Unfortunately the Gemini version of that 
page is a bit taxing to read due to issues with newline 
conversion. Here is the HTML version for anyone who is interested:

      https://lists.orbitalfox.eu/archives/gemini/2020/002792.html

Does anyone know whether at least a toy implementation of this 
already exists? The ML thread seems to have derailed pretty 
quickly unfortunately...


>   I'd like to at least read the spec, but I'm still stuck at TLS 
>   1.2 until I
> check out the newer LibreSSL library.  But at the very least, 
> check out the
> others methods as well.

Could you check again if you can access the site? It's now using a 
taditional ECDSA certificate instead of the previous newfangled 
ED25519 cert.

      gemini://inimeg.space

benthor

Link to individual message.

Sean Conner <sean (a) conman.org>

It was thus said that the Great Petite Abeille once stated:
> 
> 
> > On Dec 30, 2020, at 03:34, Sean Conner <sean at conman.org> wrote:
> > 
> > but I'm still stuck at TLS 1.2 until I check out the newer LibreSSL library. 
> 
> Perhaps take a look at "[gentoo-dev] [RFC] Discontinuing LibreSSL
> support?". Fascinating dynamic.

  Thanks for the pointer.  Interesting read.  I don't use Gentoo, so this
isn't affecting me, but I doubt it would anyway, as I have downloaded and
installed LibreSSL myself (on a system with an older OpenSSL---what fun!
[1]).  I was happy to find a libtls for OpenSSL:

	https://git.causal.agency/libretls/

which would simplify things for me quite a bit.  Might have to play around
with that.  Seriously, I wish libtls was more popular because it's a *very
easy* library to use.

  -spc

Link to individual message.

Sean Conner <sean (a) conman.org>

It was thus said that the Great benthor once stated:
> Sean Conner writes:
> >  There's also the titan: protocol:
> >
> >	https://communitywiki.org/wiki/Titan
> >
> >also an upload method for Gemini, and also originally an idea of 
> >mine (but
> >developed almost exclusively by Alex Schroeder).
> 
> Very interesting. If I understand 
> gemini://communitywiki.org/page/Titan correctly, the following 
> should have worked:
> 
>     echo -en 
>     "titan://communitywiki.org/raw/Test;token=hello;mime=text/plain;size=12\r\nHello 
>     World\n" | socat - ssl:communitywiki.org:1965,verify=0

  You might want to talk about Alex about that.  I think he has the only
titan: enabled server right now.

> However, gemini://communitywiki.org/page/Test remained empty. Even 
> after creating the page via the http interface, I couldn't update 
> it. In general, I am not sure whether the token requirement 
> couldn't be dropped in favor of exclusively client 
> certificate-based authentication.

  If I were doing it, I would use a certificate, but Alex doesn't want that
complication, thus the token.

> > I'd like to at least read the spec, but I'm still stuck at TLS 1.2 until
> > I check out the newer LibreSSL library.  But at the very least, check
> > out the others methods as well.
> 
> Could you check again if you can access the site? It's now using a 
> taditional ECDSA certificate instead of the previous newfangled 
> ED25519 cert.

  That works.  Thanks.

  -spc

Link to individual message.

John Cowan <cowan (a) ccil.org>

On Wed, Dec 30, 2020 at 11:50 AM benthor <benthor at posteo.de> wrote:


> > There is also Dioscuri:
>


>  Oh, I like this approach! Unfortunately the Gemini version of that

page is a bit taxing to read due to issues with newline
> conversion. Here is the HTML version for anyone who is interested:
>

Please, everyone, stop propagating the mailing-list link to Dioscuri!  The
permanent HTML link is <http://tinyurl.com/dioscuri-home>.  I'm pretty much
done changing it until I get some feedback, so I would be glad for someone
to convert it to text/gemini (it is currently Git-flavored Markdown) and
host it on Gemini, somewhere handy.

There is no implementation right now because I haven't found a toy thing to
do with it yet.

Link to individual message.

Luke Emmet <luke.emmet (a) gmail.com>



> On 31 Dec 2020, at 14:15, John Cowan <cowan at ccil.org> wrote:
> 
> 
> 
>> On Wed, Dec 30, 2020 at 11:50 AM benthor <benthor at posteo.de> wrote:
>>  
>> > There is also Dioscuri:
>  
>>  Oh, I like this approach! Unfortunately the Gemini version of that 
>> page is a bit taxing to read due to issues with newline 
>> conversion. Here is the HTML version for anyone who is interested:
> 
> Please, everyone, stop propagating the mailing-list link to Dioscuri!  
The permanent HTML link is <http://tinyurl.com/dioscuri-home>.  I'm pretty 
much done changing it until I get some feedback, so I would be glad for 
someone to convert it to text/gemini (it is currently Git-flavored 
Markdown) and host it on Gemini, somewhere handy.
> 
> There is no implementation right now because I haven't found a toy thing 
to do with it yet.

Link to individual message.

Petite Abeille <petite.abeille (a) gmail.com>



> On Dec 31, 2020, at 00:27, Sean Conner <sean at conman.org> wrote:
> 
>  Seriously, I wish libtls was more popular because it's a *very easy* library to use.

Gentoo has reached the same conclusion:

[gentoo-dev] [News review] LibreSSL support discontinued 

"To the best of our knowledge, the only benefit LibreSSL has over OpenSSL
right now is the additional libtls library.  For this reason, we have
packaged dev-libs/libretls which is a port of this library that links
to OpenSSL."

? ???

Link to individual message.

---

Previous Thread: Hello all

Next Thread: [users] flounder.online updates