I wrote a proof of concept that allows the user to sign up to a service using their matrix ID e.g @user:server.test. The user then receives an activation link in an encrypted room from the service. It worked quite easily and within 2 days of fumbling around with the matrix SDK in python and FastAPI, here we are.

This has been in my head for a while and I just wanted to see if it’s possible (the proof is in the pudding code). Emails are insecure and national services are starting to implement communication services on top of matrix. It’s a not inconceivable that citizens might get a government issued Matrix account and communicate safely with the government over a secure protocol. Why not allow other services to do the same?

Imagine if instead of providing your email address for signing up to services you used matrix instead. Your host wouldn’t be able to read your messages and it could replace things like 2FA codes over SMS, activation links in emails, or health documents from your doctor’s CMS in your email inbox.

Should there be enough time, I’d like to try and contribute this login method to forgejo (the software behind codeberg that’s hosting this repository), but let’s see. First it would take learning go 😅

  • fruitycoder@sh.itjust.works
    link
    fedilink
    arrow-up
    0
    ·
    2 months ago

    I mean OIDC is the standard. SAML is the legacy. Email is just the current defacto messaging platform for accounts so I see no reason Matrix couldnt be.

    ActivityPub isnt built for private data, nor IRC. XMPP can but again not its primary design focus.

    • erebion@news.erebion.eu
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 months ago

      XMPP? It’s literally the internet standard for that. But it’s not a platform, it is a protocol. Platforms aren’t a good thing.

      • Jade@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        2 months ago

        Matrix is just as much as a standard as XMPP, if not more so because extensions actually get merged into the core spec