Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #4808

Re: [Python-de] Diskussion Python Module

From Hans-Peter Jansen <hpj@urpla.net>
Newsgroups de.comp.lang.python
Subject Re: [Python-de] Diskussion Python Module
Date 2017-06-18 18:57 +0200
Message-ID <mailman.152.1497805036.10125.python-de@python.org> (permalink)
References <201A6877-3A8D-4949-AD74-924A3545731F@multi-matrix.de> <oi5ise$73k$1@blaine.gmane.org> <8188736.sURn0HKOny@xrated>

Show all headers | View raw


On Sonntag, 18. Juni 2017 11:58:40 Peter Otten wrote:
> Erich Schnoor wrote:
> > Hallo, Pythonfreunde
> > 
> > auf dieser maillist bin ich neu. Ich wundere mich, dass es
> > so wenig Diskussionen um Python Module gibt.
> > Liegt es daran, dass so wenig Module entwickelt werden
> > oder gibt es schon nichts Neues mehr, das noch diskutiert
> > werden kann?
> 
> Im Gegenteil, es gibt so viele Module, dass den meisten Benutzern nichts
> anderes übrigbleibt, als fast alles zu ignorieren und sich nur das
> anzuschauen, was ihnen möglicherweise die Arbeit erleichtert.
> 
> > Meinen Beitrag zur Diskussion findet Ihr unter:
> >     http://www.telecypher.net/Telepython.pdf
> 
> Was die Diskussion angeht -- diese Mailing List/Newsgroup ist nicht
> gerade überlaufen, und viel mehr als die Reaktionen auf Ihren ersten Post
> ist nicht zu erwarten.
> 
> Wie ich sehe haben Sie diesmal den Quellcode mitgeliefert -- wenn auch in
> einem absolut unüblichen Format und mit mindestens einem Bug (zchn nirgendwo
> definiert, soll wahrscheinlich zeichen heißen).

Die Veröffentlichung per PDF ist nicht nur absolut unüblich, sondern auch 
selbst für Diskussionen inakzeptabel.

> Ich könnte hier eine Stilkritik starten oder Tips geben, wie Sie Ihren Code
> effizienter machen, aber bei einem Verschlüsselungsprogramm ist ein sicherer
> Algorithmus das KO-Kriterium, und davon verstehe ich leider nicht genug.

Ich nehme den Ball mal auf, Peter.

Ich empfehle Ihnen, einen Account auf github.com zu erstellen, und Ihr Modul 
dort in einer "üblichen" Form hochzuladen, also als Python Modul inkl. 
setup.py, sodass es auch auf PyPi publizierbar und per pip installierbar wird:

	http://github.com

Dies hat für Mitwirkende den Vorteil, kolaborieren zu können, Code-Abschnitte 
zu diskutieren, weiter zu entwickeln, automatisiert Tests auszuführen und 
dergleichen mehr.

Nächste Schritte: 

 * auf PyPI eine getestete Release veröffentlichen

	https://pypi.python.org/pypi

 * Auf Cryptoforum eine Diskussion suchen

	https://crypto.stackexchange.com/
 
> Auch wenn die Antworten auf Ihre Posts im Mai teils rüde ausfielen: ohne
> vorangegangene Diskussion vor einem Kryptographie-Fachpublikum kann ich
> niemandem empfehlen, Ihr Skript zu verwenden.

Zumal die reine Lehre in den letzten Jahren auch deutliche Fortschritte 
gemacht hat, welche im Bereich der symmetrischen Verschlüsselungen Argon2 
hervorgebracht hat, welches im Zusammenspiel mit AES GCM recht brauchbare
Sicherheit liefert, und auch für Normalsterbliche einigermaßen beherrschbar 
ist.

Hier sind meine bescheidenen Versuche (auf Basis von etablierten Verfahren). 
Damit möchte ich Ihnen exemplarisch eine mögliche Herangehensweise an das 
Thema Symmetrische Verschlüsselung aus der Nutzerperspektive aufzeigen:

	https://github.com/frispete/keyrings.cryptfile
	
Der interessante Teil:

https://github.com/frispete/keyrings.cryptfile/blob/master/keyrings/cryptfile/cryptfile.py

Dies ist eine Erweiterung für das Python-Modul keyring, dass eben Solche in 
brauchbarer Weise als normale Dateien ablegen kann, sich also bewusst nicht in 
die Schlüsselbund-Verfahren der Desktop-Umgebungen integriert, und somit 
unabhängig vom Betriebssystem und der Desktop-Umgebung das Crypto-Verfahren 
selbst wählen kann (und hierbei übrigens alle authentifizierten AES-Modi 
unterstützt (CCM, EAX, GCM und OCB)). Die verwendeten Crypto-Bibliotheken sind 
übrigens argon2_cffi (https://github.com/hynek/argon2_cffi) und PyCryptodome 
(https://github.com/Legrandin/pycryptodome), welche aus PyCrypto 
hervorgegangen ist.

Wenn der Ansatz auf https://crypto.stackexchange.com nicht komplett zerrissen 
wird, sieht es schon ganz gut aus:

https://crypto.stackexchange.com/questions/44705/conforming-to-best-practices-in-password-file-keyring-encryption

Auch ich bin kein Krypto-Experte. Aber für mich als potentiellem Nutzer Ihres 
Algorithmus ist die dargebotene Form unzureichend. An Argon2 kann man ganz gut 
sehen, wie Crypto-Verfahren heute in die Mangel genommen werden *müssen*, um 
Bedrohungen, wie der rasant steigenden Zunahme an Hashing-Power zu entgehen, 
die wir der Verbreitung von Crypto-Währungen zu verdanken haben, und viele 
Verfahren einfach per "brute force" aushebeln.

Ihr Verfahren ist schwer durchschaubar, was einer eingehenden Analyse 
zusätzlich entgegensteht. Ohne die Veröffentlichung in der vorgenannten Form 
wird daher das Interesse an Ihrem Verfahren gering bleiben (unabhängig von der 
der verwendeten Programmiersprache).

MfG,
Hans-Peter

Back to de.comp.lang.python | Previous | Next | Find similar


Thread

Re: [Python-de] Diskussion Python Module Hans-Peter Jansen <hpj@urpla.net> - 2017-06-18 18:57 +0200

csiph-web