• NNCP

    From nristen@21:1/161 to All on Saturday, October 01, 2022 14:40:53
    Greetings,

    I have been experimenting with NNCP (node to node copy - https://www.nncpgo.org) lately and was interested that it was not mentioned
    (at least on the message groups that my bbs has).

    NNCP provides tools that allow for packet(file) transfers between and through configured nodes. These packets are encrypted as security is one of the main goals of this protocol.

    A while back Avon and several other people were experimenting using keybase (https://keybase.io) as a secure way to exchange data and message packets between BBSs but I believe that NNCP could provide a better match.

    The goal of NNCP is to be a modern replacment for UUCP. Some of its features are:
    * encrypted packets
    * store and forward
    * static routing between and through multiple nodes
    * packet multicasting
    * resuming interupted packet transfer
    * large file/packet transfer using chunks
    * remote execuction
    * scheduling (connections can be scheduled)
    * priority configuration

    Anyway, I would like to know what others think of the possibilities.

    nristen (Karl Harris)
    bbs: bbs.theharrisclan.net SSH/2222
    gemini: gemini.ctrl-c.club/~nristen

    --- Mystic BBS v1.12 A46 2020/03/07 (Linux/64)
    * Origin: The Search BBS bbs.theharrisclan.net (34123/2222) (21:1/161)
  • From Avon@21:1/101 to nristen on Sunday, October 02, 2022 08:34:43
    On 01 Oct 2022 at 02:40p, nristen pondered and said...

    Anyway, I would like to know what others think of the possibilities.

    thanks for the link and i am interested in exploring this

    Kerr Avon [Blake's 7] 'I'm not expendable, I'm not stupid and I'm not going' avon[at]bbs.nz | bbs.nz | fsxnet.nz

    --- Mystic BBS v1.12 A47 2021/12/24 (Linux/64)
    * Origin: Agency BBS | Dunedin, New Zealand | agency.bbs.nz (21:1/101)
  • From Exodus@21:1/176 to Nristen on Saturday, October 01, 2022 17:14:23
    I have been experimenting with NNCP (node to node copy - https://www.nncpgo.org) lately and was interested that it was not mentioned (at least on the message groups that my bbs has).

    NNCP provides tools that allow for packet(file) transfers between and throug configured nodes. These packets are encrypted as security is one of the main goals of this protocol.

    Why are we always trying to reinvent the wheel?

    --- Renegade vY2Ka2
    * Origin: Joey, do you like movies about gladiators? (21:1/176)
  • From deon@21:2/116 to nristen on Sunday, October 02, 2022 11:05:32
    Re: NNCP
    By: nristen to All on Sat Oct 01 2022 02:40 pm

    Howdy,

    I have been experimenting with NNCP (node to node copy - https://www.nncpgo.org) lately and was interested that it was not mentioned (at least on the message groups that my bbs has).

    Anyway, I would like to know what others think of the possibilities.

    I recall NNCP coming up in the past, and I made a mental note to check it out (but forgot).

    On paper, it looks like it could be a replacement/alternative for a binkd mailer.

    I still wouldnt mind checking it out and playing with it - so if you want to play too, let me know and I'll set up something with Hub 3.


    ...δεσ∩
    --- SBBSecho 3.15-Linux
    * Origin: I'm playing with ANSI+videotex - wanna play too? (21:2/116)
  • From deon@21:2/116 to Exodus on Sunday, October 02, 2022 11:07:08
    Re: Re: NNCP
    By: Exodus to Nristen on Sat Oct 01 2022 05:14 pm

    Why are we always trying to reinvent the wheel?

    Not re-inventing - its curiousity... Somethings stick and some dont.


    ...δεσ∩
    --- SBBSecho 3.15-Linux
    * Origin: I'm playing with ANSI+videotex - wanna play too? (21:2/116)
  • From Avon@21:1/101 to deon on Sunday, October 02, 2022 20:17:20
    On 02 Oct 2022 at 11:05a, deon pondered and said...

    On paper, it looks like it could be a replacement/alternative for a binkd mailer.

    I still wouldnt mind checking it out and playing with it - so if you
    want to play too, let me know and I'll set up something with Hub 3.

    I wondered that also, keep me posted perhaps we can set up some links between 1/100 and 3/100 to test stuff?

    Kerr Avon [Blake's 7] 'I'm not expendable, I'm not stupid and I'm not going' avon[at]bbs.nz | bbs.nz | fsxnet.nz

    --- Mystic BBS v1.12 A47 2021/12/24 (Linux/64)
    * Origin: Agency BBS | Dunedin, New Zealand | agency.bbs.nz (21:1/101)
  • From Oli@21:3/102 to Exodus on Sunday, October 02, 2022 12:17:05
    Exodus wrote (2022-10-01):

    I have been experimenting with NNCP (node to node copy -
    https://www.nncpgo.org) lately and was interested that it was not
    mentioned (at least on the message groups that my bbs has).

    NNCP provides tools that allow for packet(file) transfers between and
    throug configured nodes. These packets are encrypted as security is
    one of the main goals of this protocol.

    Why are we always trying to reinvent the wheel?

    Because aerodynamic wheels with pneumatic tires are much faster and more comfortable than wheels made out of wood with leather or steel tires.

    Even basic Fidonet security is broken by design (packets, EMSI, binkp). NNCP has some nice new features and improvements over UUCP / FTN / SMTP:

    https://nncp.mirrors.quux.org/Comparison.html

    I#M still not sure if it would be possible to replace FTN echomail with NNCP https://nncp.mirrors.quux.org/Multicast.html



    ---
    * Origin: War is Peace. Freedom is Slavery. Ignorance is Strength. (21:3/102)
  • From Charles Blackburn@21:1/221 to Exodus on Sunday, October 02, 2022 08:35:56
    Re: Re: NNCP
    By: Exodus to Nristen on Sat Oct 01 2022 17:14:23

    I have been experimenting with NNCP (node to node copy - https://www.nncpgo.org) lately and was interested that it was
    not mentioned (at least on the message groups that my bbs has).

    NNCP provides tools that allow for packet(file) transfers between and throug configured nodes. These packets are
    encrypted as security is one of the main goals of this protocol.

    Why does it need to be encrypted? if the "original" file is encrypted or for example, even just zipped.... it doesn't matter if it's a plain text connection.

    Why are we always trying to reinvent the wheel?

    Totally agree. UUCP has always worked fine for me. in fact it's funny... i still use it lol

    regards
    ===

    Charles Blackburn
    The F.B.O BBS 21:1/221 618:250/36
    bbs.thefbo.us IPV4/V6
    DOVE-Net FSX-Net MicroNET USENET
    --- SBBSecho 3.15-Linux
    * Origin: The FBO BBS - bbs.thefbo.us (21:1/221)
  • From Charles Blackburn@21:1/221 to Oli on Sunday, October 02, 2022 08:43:24
    Re: NNCP
    By: Oli to Exodus on Sun Oct 02 2022 12:17:05

    Why are we always trying to reinvent the wheel?

    Even basic Fidonet security is broken by design (packets, EMSI, binkp). NNCP has some nice new features and improvements
    over UUCP / FTN / SMTP:

    i beg to differ... dont forget the era that this was designed in... also dont forget that UUCP can be encrypted anyway... in fact i still do :D if you have something that's already encrypted going into uucp then the uucp is going to be encrypted minus the routeing stuff but if you're on a network, does that really matter.

    anso think about the speeds of the transmission medium at the tim, it was slow AF compared to today. UUCP can and actually is pretty fast using the modern trnasport medium of tcp etc.

    you're also talking about people that (at the time) were experimenters and tdiy'ers not cybersecuroty professionals... hell that title didnt even exist back then.

    https://nncp.mirrors.quux.org/Comparison.html

    I#M still not sure if it would be possible to replace FTN echomail with NNCP https://nncp.mirrors.quux.org/Multicast.html

    i don't even se the point of trying it in the first place. because that's not how an FTN works.

    what you're effectively asking is to redisgn the FTN from the ground up. because that's what it would take.

    if we were just talking about transfer protocols that's one thing. but at that point, why not just go with email attachments and be done with it.

    regards
    ===

    Charles Blackburn
    The F.B.O BBS 21:1/221 618:250/36
    bbs.thefbo.us IPV4/V6
    DOVE-Net FSX-Net MicroNET USENET
    --- SBBSecho 3.15-Linux
    * Origin: The FBO BBS - bbs.thefbo.us (21:1/221)
  • From NuSkooler@21:1/121 to Oli on Sunday, October 02, 2022 11:11:52

    On Sunday, October 2nd Oli said...
    Even basic Fidonet security is broken by design (packets, EMSI, binkp). NNCP has some nice new features and improvements over UUCP / FTN / SMTP: I#M still not sure if it would be possible to replace FTN echomail with NNCP https://nncp.mirrors.quux.org/Multicast.html

    I need to poke around on this more. For many years I've realy liked the idea of a 'modern' message network that is decentralized, 'offline first', etc. but also with full e2e encryption. Part of the tirck is ensuring that system isn't then exposed to non-encrypted setups (you can't really force this) but having it detached from FTN helps.



    --
    |08 ■ |12NuSkooler |06// |12Xibalba |08- |07"|06The place of fear|07"
    |08 ■ |03xibalba|08.|03l33t|08.|03codes |08(|0344510|08/|03telnet|08, |0344511|08/|03ssh|08)
    |08 ■ |03ENiGMA 1/2 WHQ |08| |03Phenom |08| |0367 |08| |03iMPURE |08| |03ACiDic
    --- ENiGMA 1/2 v0.0.13-beta (linux; x64; 16.16.0)
    * Origin: Xibalba -+- xibalba.l33t.codes:44510 (21:1/121)
  • From deon@21:2/116 to Avon on Monday, October 03, 2022 10:05:35
    Re: Re: NNCP
    By: Avon to deon on Sun Oct 02 2022 08:17 pm

    I still wouldnt mind checking it out and playing with it - so if you want to play too, let me know and I'll set up something with Hub 3.

    I wondered that also, keep me posted perhaps we can set up some links between 1/100 and 3/100 to test stuff?

    We certainly could.

    I had a play with it last night, just to see how it works.

    As a store->forward capability it does very well (as you would expect). I didnt look at the security of it (one of its claims), nor performance (in terms of compression, and transfers).

    To use it for FTN, I think it would need a little bit of script foo to make it work with a mail tosser (so it becomes a viable alternative for binkd).

    It's probably the same level off complexity to configure, ie: you need your uplinks public keys, you need to specify the inbound path, and you need to script to send stuff out. Its intuitively a little easier to use than binkd...

    For each node, you define an "incoming", where incoming data for that node is placed. This would be the normal mailer secure inbound directory that hpt finds mail/files and tosses. Stuff only appears here after "nncp-toss" is called.

    For data going out, you would need to call "nncp-file" with the name of the file and destination (didnt check if it could bundle up multiple files at the same time), so somehow need to hook that into hpt after it has finished bundling up mail to nodes.

    Transfers can be scheduled automatically, it has a built in cron functionality and it looks like you can poll anyway, or poll only if you have stuff to send.

    After a poll session, you need to call "nncp-toss" to finally receive what was sent to you - I think the cron functionallity could do that for you.

    It seems you can execute commands at various times, but might need some script foo to call the right commands for the right type of file received, ie: hpt toss or htick toss.

    As a transport, I think it is great, but it's probably a bit niche - ie: you still need a binkd to talk to most systems, and I'm not sure there is a nncp for all platforms that have a BBS on it (eg: dos, windows).


    ...δεσ∩
    --- SBBSecho 3.15-Linux
    * Origin: I'm playing with ANSI+videotex - wanna play too? (21:2/116)
  • From deon@21:2/116 to Oli on Monday, October 03, 2022 10:08:33
    Re: NNCP
    By: Oli to Exodus on Sun Oct 02 2022 12:17 pm

    Hey Oli,

    I#M still not sure if it would be possible to replace FTN echomail with NNCP https://nncp.mirrors.quux.org/Multicast.html

    I dont think so. A packet today is addressed to a node, so you cant send the same packet to multiple nodes :( A change in packet format could allow that though...

    You're normally interested in this stuff - would you use it instead of tor or BINKPS?


    ...δεσ∩
    --- SBBSecho 3.15-Linux
    * Origin: I'm playing with ANSI+videotex - wanna play too? (21:2/116)
  • From Oli@21:3/102 to deon on Monday, October 03, 2022 11:53:28
    deon wrote (2022-10-03):

    As a transport, I think it is great, but it's probably a bit niche - ie: you still need a binkd to talk to most systems, and I'm not sure there is
    a nncp for all platforms that have a BBS on it (eg: dos, windows).

    It's written in Go, so portability and support for cross-platform compilation is great for non-retro platforms. If you're still using Windows XP or running your BBS on DOS, Amiga or OS/2, you are stuck with older software. But Windows, Linux, *BSDs, OS X, Android, Plan9 should work.

    NNCP is packaged in Debian.



    ---
    * Origin: War is Peace. Freedom is Slavery. Ignorance is Strength. (21:3/102)
  • From NuSkooler@21:1/121 to Oli on Monday, October 03, 2022 11:55:48

    On Monday, October 3rd Oli muttered...
    It's written in Go, so portability and support for cross-platform compilation is great for non-retro platforms. If you're still using Windows XP or running your BBS on DOS, Amiga or OS/2, you are stuck with older software. But Windows, Linux, *BSDs, OS X, Android, Plan9 should work.

    Man, they should have wrote it in Rust. It's so easy to make binaries for literally anything with that language.



    --
    |08 ■ |12NuSkooler |06// |12Xibalba |08- |07"|06The place of fear|07"
    |08 ■ |03xibalba|08.|03l33t|08.|03codes |08(|0344510|08/|03telnet|08, |0344511|08/|03ssh|08)
    |08 ■ |03ENiGMA 1/2 WHQ |08| |03Phenom |08| |0367 |08| |03iMPURE |08| |03ACiDic
    --- ENiGMA 1/2 v0.0.13-beta (linux; x64; 16.16.0)
    * Origin: Xibalba -+- xibalba.l33t.codes:44510 (21:1/121)
  • From Oli@21:3/102 to NuSkooler on Tuesday, October 04, 2022 10:32:41
    NuSkooler wrote (2022-10-03):

    On Monday, October 3rd Oli muttered...
    It's written in Go, so portability and support for cross-platform
    compilation is great for non-retro platforms. If you're still using
    Windows XP or running your BBS on DOS, Amiga or OS/2, you are stuck
    with older software. But Windows, Linux, *BSDs, OS X, Android,
    Plan9 should work.

    Man, they should have wrote it in Rust. It's so easy to make binaries for literally anything with that language.

    Rewrite it in Rust has become a running gag.

    Would Rust (cross-) compile for OS/2, DOS, Amiga?

    Why not FreePascal or some other language that compiles to C? ;)



    ---
    * Origin: War is Peace. Freedom is Slavery. Ignorance is Strength. (21:3/102)
  • From NuSkooler@21:1/121 to Oli on Tuesday, October 04, 2022 08:53:59

    Oli around Tuesday, October 4th...
    Rewrite it in Rust has become a running gag.
    Would Rust (cross-) compile for OS/2, DOS, Amiga?
    Why not FreePascal or some other language that compiles to C? ;)

    FPC compiles to machine language, just like C does.

    The same reason they chose Go, I imagine: It's modern, supported, and rids itself of a lot of legacy baggage.

    I've compiled Rust for DOS. I'm not sure if someone has got OS/2 or Amiga working, but I woudln't doubt it.

    The probelem isn't as much the compiler, but the crypto/etc. is very hard to do on older hardware (read: too slow to be of use). I'm sure it can all be ported ignoring that issue.


    --
    |08 ■ |12NuSkooler |06// |12Xibalba |08- |07"|06The place of fear|07"
    |08 ■ |03xibalba|08.|03l33t|08.|03codes |08(|0344510|08/|03telnet|08, |0344511|08/|03ssh|08)
    |08 ■ |03ENiGMA 1/2 WHQ |08| |03Phenom |08| |0367 |08| |03iMPURE |08| |03ACiDic
    --- ENiGMA 1/2 v0.0.13-beta (linux; x64; 16.16.0)
    * Origin: Xibalba -+- xibalba.l33t.codes:44510 (21:1/121)
  • From Oli@21:3/102 to NuSkooler on Wednesday, October 05, 2022 11:41:32
    NuSkooler wrote (2022-10-04):

    Why not FreePascal or some other language that compiles to C? ;)

    FPC compiles to machine language, just like C does.

    I know. I meant that there are other languages/compilers (not including FPC) that do compile to C. FreeBasic seems also be interesting for DOS (and it optionally transpiles to C).

    Anyway, I think Go is perfect for network applications and building Go apps is easy. My user experience with building rust apps was not that great, but it was quite some time ago. Is it still slow?




    ---
    * Origin: War is Peace. Freedom is Slavery. Ignorance is Strength. (21:3/102)
  • From Oli@21:3/102 to deon on Wednesday, October 05, 2022 13:40:15
    deon wrote (2022-10-03):

    Re: NNCP
    By: Oli to Exodus on Sun Oct 02 2022 12:17 pm

    Hey Oli,

    I#M still not sure if it would be possible to replace FTN echomail
    with NNCP https://nncp.mirrors.quux.org/Multicast.html

    I dont think so. A packet today is addressed to a node, so you cant send the same packet to multiple nodes :( A change in packet format could
    allow that though...

    That would be a trivial change in the FTN packet format. But I guess it's simpler to replace only the binkp transport with NNCP. And we also could use Netnews format (RFC 5536) with NNCP.

    You're normally interested in this stuff - would you use it instead of
    tor or BINKPS?

    Maybe. I don't have any experience with NNCP and only read the documentation on the website and some blog posts. NNCP with Yggdrasil might be a good replacement for binkp over Tor. I did compile the latest version on the Raspberry. So maybe we could test it with some file transfers.

    I wonder why the git repository is down. Can we trust the tar ball from Russia with all dependencies included or might it be compromised? ;)



    ---
    * Origin: War is Peace. Freedom is Slavery. Ignorance is Strength. (21:3/102)
  • From NuSkooler@21:1/121 to Oli on Wednesday, October 05, 2022 11:58:11

    Twas Wednesday, October 5th when Oli said...
    Anyway, I think Go is perfect for network applications and building Go apps is easy. My user experience with building rust apps was not that great, but it was quite some time ago. Is it still slow?

    I'm not sure what you mean by slow? It's certainly much different than years ago. I played with it a number of years ago and wrote some stuff, but now I'm doing it professionally in some projects and it's a breeze.

    The compiler is quick and the output is much faster than what you'll find with Go, etc. Really does compare to well written C/C++ perfomance wise. I'd argue generally better because writing performant code in C/C++ is beyond most devs.



    --
    |08 ■ |12NuSkooler |06// |12Xibalba |08- |07"|06The place of fear|07"
    |08 ■ |03xibalba|08.|03l33t|08.|03codes |08(|0344510|08/|03telnet|08, |0344511|08/|03ssh|08)
    |08 ■ |03ENiGMA 1/2 WHQ |08| |03Phenom |08| |0367 |08| |03iMPURE |08| |03ACiDic
    --- ENiGMA 1/2 v0.0.13-beta (linux; x64; 16.16.0)
    * Origin: Xibalba -+- xibalba.l33t.codes:44510 (21:1/121)
  • From deon@21:2/116 to Oli on Thursday, October 06, 2022 08:53:54
    Re: NNCP
    By: Oli to deon on Wed Oct 05 2022 01:40 pm

    Howdy,

    I dont think so. A packet today is addressed to a node, so you cant send the same packet to multiple nodes :( A change in
    packet format could
    allow that though...

    That would be a trivial change in the FTN packet format. But I guess it's simpler to replace only the binkp transport with NNCP.
    And we also could use Netnews format (RFC 5536) with NNCP.

    So while I'd happily write a new format - I could do it in php, since that is the language I know best, and I can already read current packets with it. I could probably fumble my way to get it into go, and possibly in javascript for synchronet.

    Writing a packet conversion tool would be fairly easy, but no good if the receiver cannot convert it back to a packet. (I guess a utility in go could be the strategy, since you can complile it for multiple targets.)

    Maybe. I don't have any experience with NNCP and only read the documentation on the website and some blog posts. NNCP with
    Yggdrasil might be a good replacement for binkp over Tor. I did compile the latest version on the Raspberry. So maybe we could
    test it with some file transfers.

    I havent played with Yggdrasil, but interested in looking at it too..

    I wonder why the git repository is down. Can we trust the tar ball from Russia with all dependencies included or might it be
    compromised? ;)

    Perhaps if you compared it to the debian src tar that would leave some confidence in the code? I'm assuming all the dependencies are public utilities?

    So I see a few challenges with using nncp as a transport:
    * It doesnt negate the usage of binkp (or emsi) - those utilities enable anonymous transfers (to support direct/crash netmails, where a link definition doesnt exist). With NNTP you need the remotes public keys in your configuration to initiate a transfer. (So that is OK for known netmail/echomail transfers.)

    I dont see that as a bottleneck per se, since it forces routing of netmails, but if there is a broken link in the chain, you dont know that your netmail was delivered.

    * There doesnt seem to be a way to trigger an event after sending with nncp-file. That could be implemented with nncp-exec, optionally with the contents being piped in via STDIN, however, I see that as being problematic. (The exec command, to toss the contents, would be implementation specific.) Alterantively, I regular cron could look for stuff in the inbound and process it.

    * I like the idea of the multicast transfer, but a new fido packet technique would be required.

    All in all, if there were several folks keen to play with this, then the effort may be worth it.



    ...δεσ∩
    --- SBBSecho 3.15-Linux
    * Origin: I'm playing with ANSI+videotex - wanna play too? (21:2/116)