Ideen zum cachen von passwörtern?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Clif
User
Beiträge: 53
Registriert: Freitag 10. Dezember 2004, 12:21

Ideen zum cachen von passwörtern?

Beitragvon Clif » Freitag 10. Dezember 2004, 12:26

Hi leute,

ich und ein paar freunde wollen gerade ein gpg plugin für xchat schreiben.
Mein derzeitiges problem ist aber das zwischenzeitliche cachen von passwörtern. Unter linux habe ich das problem das dass pwd irgendwan in den swap gelangen könnte und dann dort gelesen werden könnte. :roll:
ggf Hat hier ja jemand eine idee wie man das passwort für eine bestimmte zeit cachen könnte. (die zeit müßte variabel sein)

mgf
Yaver
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 10. Dezember 2004, 12:49

Du kannst es mit einem Thread machen, der alle paar Sekunden in Aktion tritt und das gechachede Passwort löscht. Was aber nicht verhindert, dass das Passwort din den Swap kommt, sowohl unter Linux wie auch Windows.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Freitag 10. Dezember 2004, 13:07

Du könntest vielleicht einfach das Passwort verschlüsseln... Mit irgendeinem String, der aus irgendwelchen Daten der aktuellen Session generiert wird...

Hast du einen Session-Nr, oder nimm einfach die Usernamen?

Ist natürlich nicht 100% sicher, aber wenn in der Swap das Passwort kommt, ist es zumindest nicht im Plaintext...

Hier gibt's z.b. was für dich: http://python.sandtner.org/viewtopic.php?t=1915
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 10. Dezember 2004, 13:24

Gute Idee, jens!
Wenn es wirklich maximal verschlüsselt werden soll, dann PyCrypto nehmen, mit Blowfish solltest du auf der sicheren Seite sein (Warum gibt es kein Twofish?).
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Freitag 10. Dezember 2004, 13:31

Na, ich denke nicht das man unbedingt direkt Blowfish einsetzten muß... Zumindest dann nicht, wenn als Verschlüsslungs-Passwort irgendein String von der aktuellen Session abgeleitet wird...

Denn wenn man sich den Sourcecode anschaut, kann man natürlich recht einfach die generierung des VerschlüsselungsPasswort nachbauen... Und wenn man das hat, nützt die beste Verschlüsselung nichts :(
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 10. Dezember 2004, 13:37

Tja, besser verschlüsseln als direkt im Plaintext. Bei Blowfish halt 'etwas' mehr Sicherheit. Interessant wie das im PGPtray gelöst ist..
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Gast

Beitragvon Gast » Freitag 10. Dezember 2004, 14:31

wegen dem verschlüsseln, hab ich auch schon überlegt. ich will aber versuchen das modul zum großteil unabhängifg von fremd libs zu bauen. die gpglib hab ich von nem bekannten bekommen und die ist direkt in den code eingebunden :/

unterwindows sollte das dass kleinerre problem sein :/ ein bekannter meinte das das chachen da einfacher und sicherer geht. unter linux bräuchte man ne art memlock oder so :(
Clif
User
Beiträge: 53
Registriert: Freitag 10. Dezember 2004, 12:21

Beitragvon Clif » Freitag 10. Dezember 2004, 14:35

sorry login vergessen.
Mal so zum anguggen http://xchatgpg.rafft-das.net/browser
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 10. Dezember 2004, 14:48

Anonymous hat geschrieben:wegen dem verschlüsseln, hab ich auch schon überlegt. ich will aber versuchen das modul zum großteil unabhängifg von fremd libs zu bauen. die gpglib hab ich von nem bekannten bekommen und die ist direkt in den code eingebunden :/

Dann kannst du ja Dookies Code benutzen, den kannst du problemlos einbetten, musst ihn aber fragen ob er nicht unter der GPL oder BSD Lizenz ist ;)

Anonymous hat geschrieben:unterwindows sollte das dass kleinerre problem sein :/ ein bekannter meinte das das chachen da einfacher und sicherer geht. unter linux bräuchte man ne art memlock oder so :(

Ich sehe nicht warum es unter Windows einfacher gehen sollte. :?:
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Clif
User
Beiträge: 53
Registriert: Freitag 10. Dezember 2004, 12:21

Beitragvon Clif » Freitag 10. Dezember 2004, 15:00

Leonidas hat geschrieben:ich sehe nicht warum es unter Windows einfacher gehen sollte. Question

Ich auch nicht wurde mir wie gesagt auch nur zu zugetragen, kannst auf win eh erst mal nicht testen bisher teste ich auf linux und darwin.

Wegen der crypt routine: Werd ich mir auf jedenfall mal ansehen. aber gibt es keine möglichkeit das pwd im ram zu halten?
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 10. Dezember 2004, 15:07

yaver hat geschrieben:aber gibt es keine möglichkeit das pwd im ram zu halten?

<mieser hack>
Du kannst versuchen Zugriffe auf diese Variable zu simulieren, damit sie nicht ausgelagert wird. Also alle paar hundert millisekunden mal auslesen bzw schreiben. Der Erfolg ist aber nicht garantiert, hängt vermutlich von der VM implementation des jeweiligen OS ab.
</mieser hack>

Mit C wäre es vielleicht anders möglich, da kannst du ein C Modul machen, wenn du rausbekommst wie man sowas machen kann.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
Beyond
User
Beiträge: 227
Registriert: Freitag 6. September 2002, 19:06
Kontaktdaten:

Beitragvon Beyond » Freitag 10. Dezember 2004, 19:17

Es gibt eine Möglichkeit für diesen Memlock auch unter Python. Man sagt Linux damit, daß der Memblock nicht geswappt werden darf. Es war imho ein Modul, das eine IPC zwischen 2 Python-Progs über gemeinsames Speichersegment ermöglichte. Ist leider ewig her --- da wirst Du etwas googeln müssen.
Probleme gibt's natürlich wenn Dein Programm wg. Bug immer mehr physischen Arbeitsspeicher frisst ...
Alternativ könntest Du versuchen Deine Informationen im /proc abzulegen. Das wird imho nicht geswappt.

cu beyond

Wer ist online?

Mitglieder in diesem Forum: Google [Bot]