AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Passworte: eierlegende Wollmilchsau gesucht

Ein Thema von Rainer Wolff · begonnen am 10. Aug 2022 · letzter Beitrag vom 13. Aug 2022
Antwort Antwort
Seite 2 von 3     12 3      
EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
414 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#11

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 11. Aug 2022, 15:18
in den Beispielen von cnpack findet man ebenfalls ein OTP-Beispiel ähnlich dem von Phoenix

https://github.com/cnpack/cnvcl
Norbert
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
3.908 Beiträge
 
Delphi 12 Athens
 
#12

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 12. Aug 2022, 08:40
TOTP mit Timestamp ist eine schöne Idee, das stimmt.
Ich gehe aber davon das die "Anlage" nicht unbedingt am Netz hängt oder sonstwie eine genaue Zeit bekommt.

Wie ist in dem TOTP-Standard denn die "Genauigkeit" der Uhrzeit/Datum definiert ?
Ich vermute mal die Uhrzeit kann in einem freilaufenden Windows mal ziemlich abweichen, ich habe sowas hier schon gesehen aber nie getestet.
  Mit Zitat antworten Zitat
rabatscher

Registriert seit: 13. Dez 2007
Ort: Bruck an der Mur
63 Beiträge
 
#13

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 12. Aug 2022, 10:21
Zitat:
Wie ist in dem TOTP-Standard denn die "Genauigkeit" der Uhrzeit/Datum definiert ?
Ich vermute mal die Uhrzeit kann in einem freilaufenden Windows mal ziemlich abweichen, ich habe sowas hier schon gesehen aber nie getestet.
Hier ist eine Beschreibung des "URL" formats - der Url kann
dann in einen QR Code gesteckt werden und der wiederum kann von den Authenticator Apps (goolge oder Microsoft) gelesen werden.

Die Periode lässt sich im URL angeben - Standard ist 30 Sekunden - und soweit ich gesehen habe machen das so ziemlich alle so.
Ausserdem kann man die Anzahl der Digits angeben - Standard ist 6 - auch hier sollte nicht unbedingt am Standard gerüttelt werden.
Diese Periode gibt eigentlich nur an in welchem Inervall sich der Code ändert. Clientseitig kannst du noch definieren welchen "Overlap" du zulässt.
Wir erlauben da ein Window von +- 2min . D.h ein Code ist schlimmstenfalls 5 minuten gültig.

Und... zu beachten gilt noch, dass die Authenticator aps die UTC time zone verwenden

Wenn es jemanden interessiert kann ich einen Teil unseres Sourcodes beisteuern. Er hat allerdings einige 3rd Party Abhängigkeiten (DEC, Indy, Dec, ZXingQR),
die noch hinzugefügt werden müssten.

Geändert von rabatscher (12. Aug 2022 um 10:30 Uhr)
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
3.908 Beiträge
 
Delphi 12 Athens
 
#14

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 12. Aug 2022, 13:24
Ja danke für die Links, da gibt es auch das schöne Live-Demo.

Die Frage bleibt bei mir aber offen, was wenn kein Internet und Anlage und Handy komplett andere Datetime gesetzt haben ( Offline-Betrieb ).
Z.B. Anlage 11.06.22 14:00 und Handy 12.08.22 17:00

Ich habe das TOTP nicht im Detail gecheckt, aber ich bin aber immer davon ausgegangen das ein Timeserver oder zumindest eine einigermaßen verlässliche, gemeinsame Uhrzeit vorhanden sein muss.
Siehe auch hier mal in einfachen Worten

Vermutlich kann man dann nur noch HOTP mit einem Zähler benutzen, was aber auch Nachteile hat.

Eine Idee wäre der URI einfach die aktuelle Datetime der Anlage mitzusenden, welche dann der Authenticator nutzen kann.
Ich vermute mal mit der offenen Parameterbeschreibung wäre es möglich weitere, kundenspezifische Parameter anzuhängen.

Oder braucht das Handy zum Entschlüsseln die Datetime gar nicht zu wissen ?
  Mit Zitat antworten Zitat
rabatscher

Registriert seit: 13. Dez 2007
Ort: Bruck an der Mur
63 Beiträge
 
#15

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 12. Aug 2022, 13:42
TOTP ist ja Zeitbasiert und naja es ist ja das Ziel den SHA-1 hash mit key und counter zu errechnen wobei counter
Zeitbasiert ist - konkret die Unix UTC Zeit modulo der Periode.
Die "Windowsize" ist ja dazu da um nicht ganz gleich laufende Systeme zu unterstützen aber bei
Stunden wenn nicht Tagen macht das Verfahren ja wenig Sinn.

Also entweder den counter selbst immer um eins hochzählen wenn die Eingabe gemacht wurde oder
evt. noch besser: Einen Fido Key nehmen das ist grad das so ziemlich Sicherste was es gibt.
Das Funktioniert dann auch ganz ohne Passwort bzw. man muss es nur beim Erstellen angeben wenn gewünscht
-> also einstecken, draufdrücken, fertig

Geändert von rabatscher (12. Aug 2022 um 13:44 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.132 Beiträge
 
Delphi 12 Athens
 
#16

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 12. Aug 2022, 13:45
Dann kann aber auch ein böser Junge*innen einfach "irgendeine" Zeit mitgeben ... vorzugsweise Die, von der er den Code bereits kennt.

Das ist ja grade der Grund, warum dafür eine externe, nicht beeinflussbare, Zeit verwendet wird.



Andersrum ginge es, also die Authentificator-App bekommt die Zeit vom Server (nicht der Server die Zeit von der App), so lange man den Server als sicher betrachten kann.



Wenn dein Rechner also kein "Internet" hat, dann gib ihm doch einfach eine andere Uhr?
DCF77
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (12. Aug 2022 um 13:54 Uhr)
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
3.908 Beiträge
 
Delphi 12 Athens
 
#17

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 12. Aug 2022, 13:56
Das ist ja grade der Grund, warum dafür eine externe, nicht beeinflussbare, Zeit verwendet wird.
Ja nur woher nehmen, wenn nicht (Zeit) stehlen ?

Soweit ich weiß hat schon Albert Einstein an dem Problem gearbeitet, als er noch im Patentamt bechäftigt war, und hat wohl auch keine Lösung gefunden

Mein Projekt war z.B. eines mit einem kleinen 32-Bit Controller, ohne Wifi, ohne RTC, ohne großes Display ( nur kleines TN ), ohne sonstwas.
Da muss man halt etwas tricksen, was dann natürlich nicht 100% sicher sein muss.
Da habe ich mit einem OTP-Pool an PIN-Codes gearbeitet, die natürlich irgendwann mal aufgebraucht sein können, aber auch nur extrem selten benötigt werden.

So habe ich auch die Aufgabe von dem den TN verstanden, nur ein paar vorwitzige Bediener abhalten.
  Mit Zitat antworten Zitat
rabatscher

Registriert seit: 13. Dez 2007
Ort: Bruck an der Mur
63 Beiträge
 
#18

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 12. Aug 2022, 14:11
Probier mal:
https://webauthn.io/

Die Seite zeigt recht schön was mit Webauthn/Fido2 so möglich ist
-> die API sind nur ein paar Funktionsaufrufe.
Wie gesagt... man braucht da halt nen Fido Key
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.006 Beiträge
 
Delphi 12 Athens
 
#19

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 12. Aug 2022, 15:28
-> also einstecken, draufdrücken, fertig
Kann man das auch zum Laufen bringen, wenn der Service-Techniker z.B. per Remote-Desktop oder TeamViewer auf das System geht?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
rabatscher

Registriert seit: 13. Dez 2007
Ort: Bruck an der Mur
63 Beiträge
 
#20

AW: Passworte: eierlegende Wollmilchsau gesucht

  Alt 12. Aug 2022, 21:33
Der Guide besagt, dass User Authentication (pin) und
oder User Presence (also drücken des Keys) benutzt werden können. Also ein Pin reicht prinzipiell bzw.
auch ein einfaches drücken.

WebAuthn ist ja eigentlich auch fürs Web konzipiert und auch in allen aktuellen Browsern implementiert (über die Webauthn.dll).

Das Ding ist nur... wenn die Zeit nicht aktuell ist, dann wird er auch kein Internet haben also in diesem Fall muss ein Techniker vor Ort sein.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz