Sicherer Speicher

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.
Antworten
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Ich entwickle derzeit eine Python Anwendung welche mit Passwörtern arbeiten muss. Ich möchte jedoch verhindern das die Passwörter auf die Festplatte ausgelagert werden. Auch möchte ich sicherstellen das diese bevor der Speicher wieder freigegeben wird überschrieben werden (allgemein möchte ich diese so schnell wie möglich überschreiben). In C gibt es dafür Lösungen wie secmalloc. Für Python konnte ich jedoch keine Lösung finden. Kennt jemand von euch eine Lösung dafür (zumindest die Sache mit dem free() müsste ja relativ einfach sein). Was gibt es zu beachten damit die ganzen mühen nicht umsonst sind?
Ich den gesamten Weg des Passwortes überprüfen muss.

Gibt es evtl das ganze global zu lösen - daher das Paging für einen ganzen Prozess zu deaktivieren und sicherzustellen das der gesamte Speicher überschrieben wird?

Gruss,
Jonas
[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
Gromit
User
Beiträge: 51
Registriert: Montag 8. Mai 2006, 19:07

Mit ctypes, mmap, munmap und mlock sollte es schon funktionieren. Allerdings wirds schwierig, wenn du das Sekret über mehrere Python-Funktionen als Python-String hinwegweiterreichst, aber ich geh mal davon aus, daß Dir das eh klar ist.

HTH,
Gerald
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Gromit hat geschrieben:Mit ctypes, mmap, munmap und mlock sollte es schon funktionieren. Allerdings wirds schwierig, wenn du das Sekret über mehrere Python-Funktionen als Python-String hinwegweiterreichst, aber ich geh mal davon aus, daß Dir das eh klar ist.

HTH,
Gerald
Ja, darum wäre es mir am liebsten den gesamten Heap zu locken solange sich das Passwort darin befindet. Aber ich befürchte dass das nicht möglich ist.

Edit: Ich habe gerade in der mlock man Page mlockall() gefunden. Damit dürfte zumindest das Radikale locken schon mal möglich sein.
[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
Antworten