close
  • chevron_right

    Profanity und OpenPGP for XMPP (OX)

    DebXWoody · Tuesday, 21 September - 18:42 · 2 minutes

In Debian 11 ("Bullseye") ist Profanity 0.10.0 verfügbar. Installiert werden kann es mit dem Befehl apt install profanity. Profanity ist ein ncurses basierter XMPP Client.

Lust mal auf ein Experiment? Profanity OX experimental Implementierung! Wir nehmen an, deine XMPP-Adresse ist alice@domain.tld und du willst OpenPGP als Verschlüsselung für deine XMPP Nachrichten verwenden.

OpenPGP Schlüsselpaar erzeugen

Im ersten Schritt muss man, wie wir es bei OMEMO auch kennen, ein Schlüssel erzeugen. Der Schlüssel wird in unserem Fall mit dem Programm gpg erstellt und sieht wie folgt aus:

gpg --quick-generate-key xmpp:alice@domain.tld future-default default 3y

Was passiert hier? Mit diesem Befehl wird ein Schlüsselpaar mit der UID xmpp:alice@domain.tld erzeugt. Die Option future-default wird verwendet, damit ein ed25519/cv25519 Schlüssel erzeugt wird. Der Schlüssel wird nach 3 Jahren ablaufen, wenn dieser nicht verlängert wurde.

pub   ed25519 2021-09-21 [SC] [verfällt: 2024-09-20]
      583BAE703A801095B6B71A56BD801174B1A0B84A
uid                      xmpp:alice@domain.tld
sub   cv25519 2021-09-21 [E]

Öffentlichen Schlüssel exportieren

Damit andere die Möglichkeiten haben dir verschlüsselte Nachrichten zu schicken, musst du deinen öffentlichen Teil deines Schlüssels mit Freunden austauschen. Der folgende Befehl exportiert einen minimalen Schlüssel und speichert diesen in die Datei tmp/pep-key.gpg. XMPP Adresse und Key-ID müssen natürlich angepasst werden.

gpg --export \
  --export-options export-minimal \
  --export-filter 'keep-uid=uid =~ xmpp:alice@domain.tld' \
  --export-filter 'drop-subkey=usage =~ a' \
  583BAE703A801095B6B71A56BD801174B1A0B84A \
  > /tmp/pep-key.gpg

Der Key kann vor dem veröffentlichen wie folgt geprüft werden: gpg --show-key --with-sig-list /tmp/pep-key.gpg

Schlüssel veröffentlichen

Nachdem man sich mit profanity angemeldet hat, kann man seinen Schlüssel in PEP hochladen. Dies geht mit dem /ox announce Befehl.

/ox announce /tmp/pep-key.gpg
Annonuce OpenPGP Key for OX /tmp/pep-key.gpg ... 

Es werden im PEP zwei Einträge vorgenommen.

Schlüssel von Kontakten abfragen

Du kannst die Schlüssel deiner Kontaktpersonen abfragen und diese importieren.

/ox discover buddy@domain.tld
Discovering Public Key for buddy@domain.tld 
1234567890ABCDEF1234567890ABCDEF12345678

Die Schlüssel können dann mit dem folgenden Befehl importiert werden.

/ox request buddy@domain.tld 1234567890ABCDEF1234567890ABCDEF12345678
Requesting Public Key 1234567890ABCDEF1234567890ABCDEF12345678 for buddy@domain.tld
Public Key imported 

Schlüssel zertifizieren

Der Schlüssel lässt sich mit dem gpg Befehl gpg -k buddy@domain.tld anzeigen. Jetzt werden wir den Schlüssel noch unterschreiben.

gpg --ask-cert-level --default-key 583BAE703A801095B6B71A56BD801174B1A0B84A --sign-key 1234567890ABCDEF1234567890ABCDEF12345678

Der default-key ist unser Schlüssel und sign-key der des Kommunikationspartners.

Kontakte mit einem OpenPGP-Key für XMPP lassen sich via /ox contacts anzeigen, während /ox keys alle Schlüssel anzeigt.

Chatten

In einem Chat Fenster kann OX mit dem Befehl /ox start gestartet werden. Beendet wird es mit dem Befehl /ox end.

Die Nachrichten werden verschlüsselt und signiert übertragen.

#Debian #XMPP #Profanity #OX

  • favorite

    1 Like

    debacle

  • 1 Comments

  • 3 October debacle

    Profanity 0.11.0-1~bpo11+1 ist nun in Debian bullseye-backports.

  • chevron_right

    Debian - Profanity - OMEMO

    DebXWoody · Saturday, 18 September - 06:35 edit · 1 minute

Profanity in Debian GNU/Linux

In Debian 11 ("Bullseye") ist Profanity 0.10.0 verfügbar. Installiert werden kann es mit dem Befehl apt install profanity. Profanity ist ein ncurses basierter XMPP Client.

Schlüssel generieren

Hat man sich in profanity erfolgreich mit seinem XMPP Account angemeldet, muss man zur Verwendung von OMEMO das Schlüsselmaterial erzeugen lassen. Dies kann mit dem Befehl /omemo gen erstellt werden.

Jedes OMEMO fähiges Gerät hat eine accountweite eindeutige Device-ID sowie einen Fingerabdruck. In der Profanity Console (/win 1) lassen sich mit dem Befehl /omemo fingerprint alle eigenen Fingerabdrücke anzeigen.

07:58:17 - Your OMEMO fingerprint: 5284ea0c-42d698b8-9e8bc07d-daa9c4fb-d9d02814-53847b59-7b85479a-e03fca20
07:58:17 - user@domain.tld's OMEMO fingerprint:                                                       
           3cb71f98-3e167abf-ae8352d3-3dd5f6d9-bc9f74fa-95e787af-fed55fa5-0a62315b (trusted)              
07:58:17 - user@domain.tld's OMEMO fingerprint:                                                       
           3641e6ba-fddd542f-cfd69a4c-e5907193-d0682001-28a4c1b5-4971b4ea-a057b717   

Schlüssel vertrauen

Vielleicht möchtest du Nachrichten, die du verschickst, auch auf deinen anderen Geräten lesen? Dann kannst du mit folgendem Befehl deinem Schlüssel vertrauen.

/omemo trust user@domain.tld 3641e6ba-fddd542f-cfd69a4c-e5907193-d0682001-28a4c1b5-4971b4ea-a057b717

PS: Du musst den Key nicht per Hand eintragen. profanity kann Autovervollständigung via [TAB]-Taste.

Dieses vorgehen lässt sich auch auf die Schlüsselverwaltung deiner Kontaktpersonen anwenden.

/omemo fingerprint buddy@domain.tld 

Chatten

Ein Fenster zu deinem Chatpartner lässt sich mit dem Befehl /msg Nickname oder /msg buddy@domain.tld starten. Im geöffneten Chatdialog kann auf die JID bei der Abfrage der Fingerabdrücke verzichtet werden. Ein einfaches /omemo fingerprint ist ausreichen, um noch mal über die Schüssel des Partners drüber zu gucken.

Mit dem Befehl /omemo start wird die OMEMO Verschlüsselung aktiviert. Wurde eine OMEMO für einen Kontakt aktiviert, wird diese Informationen in den Account-Einstellungen gespeichert, um in Zukunft auch OMEMO direkt zu aktivieren. Beendet werden kann sich Session mit /omemo end. Das Verhalten kann mit dem Befehl /omemo policy beeinflusst werden.

Dateitransfer

Dateitransfer via OMEMO lässt sich normal mit /sendfile und /url save bzw. /url open verwenden.

Ausblick

Debian bookworm verfügt über die Version 0.11 von profanity. Hierzu werde ich einen eigenen Beitrag machen.

Viel Spaß beim chatten!

#Debian #Profanity #OMEMO #Bullseye #XMPP

  • favorite

    1 Like

    debacle

  • chevron_right

    August meeting

    debacle · pubsub.movim.eu / berlin-xmpp-meetup · Monday, 9 August - 07:29 edit

August meeting

Last minute change: We meet at 19:00 hrs CEST online, see our MUC for the Jitsi meeting! Sorry!

This time, we will enjoy socialising and talking about this and that and XMPP. We meet outside of xHain using their chairs on the pavement. You may bring your own drinks and snacks,

We probably will talk about the new Profanity release 0.11.0, too!

If someone needs to enter xHain, they needs either a negative Corona test result or vaccination certificate. Tests can be performed anonymously, if needed. They needs to wear a cloth mask, too.

When? Wednesday, 2021-08-11 18:00 CEST (always 2ⁿᵈ Wednesday of every month)

Where? Pavement in front of xHain hack+makespace, Grünberger Str. 16, 10243 Berlin (as formerly)

See you then!

Or join our non-physical room (xmpp:berlin-meetup@conference.conversations.im?join)!

#jabber #xmpp #community #xhain #freesoftware #berlin #meetup #federation #fediverse #profanity

  • chevron_right

    PARTY POPPER Profanity 0.11.0 has been released PARTY POPPER

    DebXWoody · Sunday, 25 July - 06:06

🎉 Profanity 0.11.0 has been released 🎉

Profanity is a console based XMPP client written in C using ncurses and libstrophe, inspired by Irssi. 🤩

Six months and 242 commits after 0.10.0 we are happy to release 0.11.0.

🙏 🙏 🙏 🙏

  • Command for bookmark details
  • Add XEP-0377 Spam Reporting
  • OMEMO related fixes
  • attention flag
  • launch external editor to write (multiline) messages
  • request 'voice' in MUCs (XEP-0045)
  • ...

#profanity #xmpp #ncurses #messenger

  • Release 0.11.0 · profanity-im/profanity

    Six months and 242 commits after 0.10.0 we are happy to release 0.11.0. 10 people contributed code to it: @DebXWoody, @xenrox, @mwuttke97, @dustinlagoy, @kaffeekanne, @CIacademic, @rjc, @raspbeguy,...

  • favorite

    3 Like

    Arne , Timothée Jaussoin , debacle

  • 1 Comments

  • 25 July Timothée Jaussoin

    Congrats !

There are two new features for #profanity in git master - ready for testing and feedback.

The /editor command can be used to call #vim The /omemo trustmode can be used to set the preference option

  • Trust key for first use
  • blind trust.

Profanity is a console based #XMPP

  • favorite

    3 Like

    fluxion , Arne , debacle

  • 2 Comments

  • 18 April debacle

    Only #vim, not #Emacs or #emacsclient? :-)

  • 18 April DebXWoody

    Should work with all editors with a filename as parameter 1

  • chevron_right

    I love Free Software

    DebXWoody · Sunday, 14 February, 2021 - 15:20

Happy Free Software Day!

#iloveFS

  • favorite

    4 Like

    Gnullalo Jim Jr , tallship , Arne , littleme

  • 3 Comments

  • 14 February, 2021 DebXWoody

    Es sind einfach zu viele,...

  • 24 April tallship

    And..... A very merry unbirthday to you!!

    I've got a similar take...

    #gnu - A collection of UNIX-like tools (Gnu's Not UNIX)
    #Linux - a UNIX like multi-user, multi-processing kernel
    #Debian GNU/Linux - a Linux distribution (2nd oldest)
    #mutt - MUA
    #Gajim - a Jabber client
    #Movim - I'm still trying to figure this out... Gimme a little time man! :)
    #profanity - something I use to offend the sensibility of others for my own amusement :P
    #gpg - fricken' rocks! Umm... oh yeah, FOSS implementation of OpenPGP
    #tmux - Orange is the new.... no, wait! tmux is the new screen! Byobu is the pretender, and merely a skin for tmux
    #ejabberd - a spade's a spade, it's a **Jabber** server :P
    #jitsi - Secure, FOSS based video conferencing
    #Nextcloud Talk - Secure, FOSS based video conferencing
    #Big_Blue_Button - Secure, FOSS based video conferencing
    #SchildeChat - nicely skinned Matrix client, chat/voice/video communications
    #i3wm - aside from Twin, second best WM next to ALT+F2|F3|F4.... https://devo.linboard.org/tallship/twin
    #notmuch - really? I'mma have to give that a go looksee. thanks for that!
    #FSF - um.... I love RMS the cult of personality, the icon, but the dude himself, I just no longer abides. He's really gotta give up the reigns and become the elder statesman. Serio bro.

    You forgot sum....

    #bitwarden_rs - rust and MariaDB based alternative to .kdbx with all the mACR0sf0t shit ripped out of it.
    #mcabber (this one's just for you) - a CLI Jabber client (WTF is Loudmouth?) - https://mcabber.com (but alas, no OMEMO yet

  • 24 April tallship

    Got it :) I'll respond from tallship@Pleroma.Cloud but in a nutshell, I'm still trying to get on board with the modern impplementations of Jabber. I appreciate the invite to 404.city, and I'll certainly recommend it to others, but for my longstanding, existing account for about twenty years with jabber.org, how do I fit in?

    Thanks, and kindest regards,

    - tallship

    .

  • chevron_right

    Year of the OX: OpenPGP for XMPP

    debacle · pubsub.movim.eu / berlin-xmpp-meetup · Monday, 1 February, 2021 - 02:02 edit

In February 2021, this month, starts the year of the ox. At Berlin XMPP meetup, we will celebrate the new year with an introductionary talk about "XEP-0373: OpenPGP for XMPP" and "XEP-0374: OpenPGP for XMPP Instant Messaging" and the panel of experts:

  • DebXWoody (implementor of OX in Profanity)
  • defanor (implementor of OX in rexmpp)
  • Florian (co-author of the OX standards)
  • lovetox (implementor of OX for Gajim)
  • Paul (implementor of OX in Smack)

When? Wednesday, 2021-02-10 18:00 CET (always 2ⁿᵈ Wednesday of every month)

Where? Online, via our MUC (xmpp:berlin-meetup@conference.conversations.im?join). A Jitsi video conference will be announced there.

See you then!

#yearoftheox #openpgp #xmpp #ox #jabber #encryption #e2ee #privacy #omemo #🐂️ #berlin #meetup #community #profanity #rexmpp #gajim #smack

  • favorite

    4 Like

    pentagess , Holger Weiß , ed00 , DebXWoody

  • chevron_right

    Profanity 0.10.0 wurde freigegeben.

    DebXWoody · Saturday, 9 January, 2021 - 18:44

Six months and 270 commits after 0.9.5 we are happy to release 0.10.0.

Profanity ist ein XMPP Client für die Console.

#xmpp #profanity

  • Release 0.10.0 · profanity-im/profanity

    Six months and 270 commits after 0.9.5 we are happy to release 0.10.0. 10 people contributed code to it: @wstrm, @DebXWoody, @pasis, @niacat, @kaffeekanne, @timgates42, @spth, @licaon-kter, @misafl...

  • favorite

    1 Like

    Arne