inet256 VS concise-encoding

Compare inet256 vs concise-encoding and see what are their differences.

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
inet256 concise-encoding
14 22
133 255
0.0% -
4.6 7.2
10 months ago 7 months ago
Go ANTLR
GNU General Public License v3.0 only GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

inet256

Posts with mentions or reviews of inet256. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-19.
  • Show HN: A version control system based on rsync
    6 projects | news.ycombinator.com | 19 Jan 2023
    My approach to hosting with Got has been to make it easy and secure for users to host from any machine.

    INET256 solves that problem nicely. If you have access to an INET256 network, then all you have to do is swap addresses and two Got instances can communicate.

    https://github.com/inet256/inet256

    Also, end-to-end encryption is table stakes. Any data that leaves the user needs to be encrypted in transit, and if it hangs around away from the user, at rest.

  • Ask HN: What Are You Working on This Year?
    49 projects | news.ycombinator.com | 2 Jan 2023
    I'm working on INET256, an API for secure identity based networking. The reference implementation, mesh256 is a mesh network using a distributed routing algorithm. There is also diet256, which is a centrally coordinated network with direct connections using QUIC over The Internet.

    https://github.com/inet256/inet256

    https://github.com/inet256/diet256

  • SourceHut terms of service updates, cryptocurrency projects to be removed
    2 projects | news.ycombinator.com | 31 Oct 2022
    Thanks for sharing RocketGit. This is the first time I've heard of it, and yes, it does look like a cool copyleft solution to self-hosted Git.

    Another interesting option is Brendan Caroll's got[0], which allows sharing of repositories over INET256[1]. I'm sure there are other P2P approaches to Git, but this one just piqued my interest. Unfortunately it has a naming conflict with OpenBSD's Game of Trees[2].

    [0] https://github.com/gotvc/got

    [1] https://github.com/inet256/inet256

    [2] https://gameoftrees.org/

  • INET256 is a 256 bit network address space for p2p applications
    1 project | /r/programming | 10 Apr 2022
  • Ask HN: Who Wants to Collaborate?
    50 projects | news.ycombinator.com | 1 Feb 2022
    I'm working on INET256, a 256 bit network address space for easily and securely connecting applications.

    https://github.com/inet256/inet256

    - The API is focused around sending and receiving messages to addresses derived from public keys.

    - Each application can have its own stable address.

    - Runs as a daemon process which is configured with peering information. Additional network nodes can be spawned through the API.

    - Can easily support arbitrary routing algorithms through a well defined interface.

    - A TUN device (similar to CJDNS or Yggdrasil) is included as a separate application. (The IP6 Portal)

    58 projects | news.ycombinator.com | 1 Jan 2022
    https://github.com/inet256/inet256

    Developers, applications, and end-users are under-served by the network layer. INET256 provides necessary features (stable addresses, encryption) to client applications, which usually have to reimplement those features themselves.

  • Show HN: Got is like Git, but with an 'o'
    3 projects | news.ycombinator.com | 20 Dec 2021
    There is an interface for address discovery [1] (finding transport addresses for peers you know about) and autopeering [2] (peering with peers you didn't know about beforehand). There is an unfinished branch for LAN broadcast discovery/autopeering. Contributions are definitely welcome here.

    I had played around with a STUN transport, but the easiest way to connect has been to stand up a cloud VM with a static IP.

    INET256 addresses use the same public key serialization as TLS, but they intentionally avoid the rest of the certificate infrastructure complexity. They make great leaves in a web of trust. You can sign them, or stick them in DNS records. And if you don't want to deal with any of that, fine, just swap addresses and you can communicate securely.

    [1] https://github.com/inet256/inet256/blob/master/pkg/discovery...

  • INET256: A 256 bit address space for peer-to-peer applications
    2 projects | /r/programming | 16 Nov 2021
  • Spork: Peer-to-peer socket magic in the air
    2 projects | news.ycombinator.com | 19 Oct 2021
    > To me, this is the future. I wish we had a set of APIs to allow connecting to a public key instead of an IP address

    INET256 is working on exactly that. It's a set of APIs for connecting to addresses derived from public keys.

    https://github.com/inet256/inet256

  • INET256: A 256 bit address space for peer-to-peer hosts/applications
    1 project | news.ycombinator.com | 15 Apr 2021

concise-encoding

Posts with mentions or reviews of concise-encoding. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-07.
  • Ask HN: What Underrated Open Source Project Deserves More Recognition?
    63 projects | news.ycombinator.com | 7 Mar 2024
  • It's Time for a Change: Datetime.utcnow() Is Now Deprecated
    5 projects | news.ycombinator.com | 19 Nov 2023
    "Local time" is time zone metadata. I've written a fair bit about timekeeping, because the context of what you're capturing becomes very important: https://github.com/kstenerud/concise-encoding/blob/master/ce...
  • RFC 3339 vs. ISO 8601
    4 projects | news.ycombinator.com | 31 Aug 2023
    This is basically why I ended up rolling my own text date format for Concise Encoding: https://github.com/kstenerud/concise-encoding/blob/master/ct...

    ISO 8601 and RFC 3339 are fine for dates in the past, but they're not great as a general time format.

  • Ask HN: Please critique my metalanguage: “Dogma”
    2 projects | news.ycombinator.com | 26 Feb 2023
    This looks similar to https://concise-encoding.org/

    Dogma was developed as a consequence of trying to describe Concise Binary Encoding. The CBE spec used to look like the preserves binary spec, full of hex values, tables and various ad-hoc illustrations: https://preserves.dev/preserves-binary.html

    Now the CBE formal description looks like this: https://github.com/kstenerud/concise-encoding/blob/master/cb...

    And the regular documentation looks like this: https://github.com/kstenerud/concise-encoding/blob/master/cb...

    Dogma also does text formats (Concise Encoding has a text and binary format, so I needed a metalanguage that could do both in order to make it less jarring for a reader):

    https://github.com/kstenerud/concise-encoding/blob/master/ct...

    https://github.com/kstenerud/concise-encoding/blob/master/ct...

  • Concise Encoding Design Document
    1 project | news.ycombinator.com | 7 Nov 2022
  • Keep ’Em Coming: Why Your First Ideas Aren’t Always the Best
    2 projects | news.ycombinator.com | 7 Nov 2022
    Hey thanks for taking the time to critique!

    I actually do have an ANTLR file that is about 90% of the way there ( https://github.com/kstenerud/concise-encoding/tree/master/an... ), so I could use those as a basis...

    One thing I'm not sure about is how to define a BNF rule that says for example: "An identifier is a series of characters from unicode categories Cf, L, M, N, and these specific symbol characters". BNF feels very ASCII-centric...

  • Working in the software industry, circa 1989 – Jim Grey
    5 projects | news.ycombinator.com | 11 Jul 2022
    It's still in the prerelease stage, but v1 will be released later this year. I'm mostly getting hits from China since they tend to be a lot more worried about security. I expect the rest of the world to catch on to the gaping security holes of JSON and friends in the next few years as the more sophisticated actors start taking advantage of them. For example https://github.com/kstenerud/concise-encoding/blob/master/ce...

    There are still a few things to do:

    - Update enctool (https://github.com/kstenerud/enctool) to integrate https://cuelang.org so that there's at least a command line schema validator for CE.

    - Update the grammar file (https://github.com/kstenerud/concise-encoding/tree/master/an...) because it's a bit out of date.

    - Revamp the compliance tests to be themselves written in Concise Encoding (for example https://github.com/kstenerud/go-concise-encoding/blob/master... but I'll be simplifying the format some more). That way, we can run the same tests on all CE implementations instead of everyone coming up with their own. I'll move the test definitions to their own repo when they're done and then you can just submodule it.

    I'm thinking that they should look more like:

        c1
  • Breaking our Latin-1 assumptions
    2 projects | news.ycombinator.com | 18 Jun 2022
    Ugh Unicode has been the bane of my existence trying to write a text format spec. I started by trying to forbid certain characters to keep files editable and avoid Unicode rendering exploits (like hiding text, or making structured text behave differently than it looks), but in the end it became so much like herding cats that I had to just settle on https://github.com/kstenerud/concise-encoding/blob/master/ct...

    Basically allow everything except some separators, most control chars, and some lookalike characters (which have to be updated as more characters are added to Unicode). It's not as clean as I'd like, but it's at least manageable this way.

  • I accidentally used YAML.parse instead of JSON.parse, and it worked?
    8 projects | news.ycombinator.com | 23 Jan 2022
    You might get a kick out of Concise Encoding then (shameless plug). It focuses on security and consistency of behavior.

    https://concise-encoding.org/

    In particular:

    * How to deal with unrepresentable values: https://github.com/kstenerud/concise-encoding/blob/master/ce...

    * Mandatory limits and security considerations: https://github.com/kstenerud/concise-encoding/blob/master/ce...

    * Consistent error classification and processing: https://github.com/kstenerud/concise-encoding/blob/master/ce...

  • Ask HN: Who Wants to Collaborate?
    58 projects | news.ycombinator.com | 1 Jan 2022
    In the above example, `&a:` means mark the next object and give it symbolic identifier "a". `$a` means look up the reference to symbolic identifier "a". So this is a map whose "recusive link" key is a pointer to the map itself. How this data is represented internally by the receiver of such a document (a table, a struct, etc) is up to the implementation.

    > - Time zones: ASN.1 supports ISO 8601 time types, including specification of local or UTC time.

    Yes, this is the major failing of ISO 8601: They don't have true time zones. It only uses UTC offsets, which are a bad idea for so many reasons. https://github.com/kstenerud/concise-encoding/blob/master/ce...

    > - Bin + txt: Again, I'm unclear on what you mean here, but ASN.1 has both binary and text-based encodings

    Ah cool, didn't know about those.

    > - Versioned: Also a little unclear to me

    The intent is to specify the exact document formatting that the decoder can expect. For example we could in theory decide make CBE version 2 a bit-oriented format instead of byte-oriented in order to save space at the cost of processing time. It would be completely unreadable to a CBE 1 decoder, but since the document starts with 0x83 0x02 instead of 0x83 0x01, a CBE 1 decoder would say "I can't decode this" and a CBE 2 decoder would say "I can decode this".

    With documents versioned to the spec, we can change even the fundamental structure of the format to deal with ANYTHING that might come up in future. Maybe a new security flaw in CBE 1 is discovered. Maybe a new data type becomes so popular that it would be crazy not to include it, etc. This avoids polluting the simpler encodings with deprecated types and bloating the format.

What are some alternatives?

When comparing inet256 and concise-encoding you can also consider the following projects:

platelet - Dispatch system for emergency volunteer couriers.

cue - The home of the CUE language! Validate and define text-based and dynamic configuration

adama-lang - A headless spreadsheet document container service.

joystick - A full-stack JavaScript framework for building stable, easy-to-maintain apps and websites.

ipdr - 🐋 IPFS-backed Docker Registry

postal-codes-json-xml-csv - Collection of postal codes in different formats, ready for importing.

OpenBazaar - OpenBazaar 2.0 Server Daemon in Go

futurecoder - 100% free and interactive Python course for beginners

roqr - QR codes that will rock your world

FrameworkBenchmarks - Source for the TechEmpower Framework Benchmarks project

Phaser - Phaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering. [Moved to: https://github.com/phaserjs/phaser]

cue - CUE has moved to https://github.com/cue-lang/cue