Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   NeSparkle (https://www.delphipraxis.net/205554-nesparkle.html)

stOrM 23. Sep 2020 06:44

NeSparkle
 
Ja Moin,
ich hätte da mal eine Frage zu NeSparkle (Delphiwrapper für WinSparkle) Github hat damit mal jemand Erfahrung gemacht?

Eigentlich ist das ganze ziemlich simpel zu nutzen, ein erster Versuch hat (auch Dank beiliegendem Demo) super geklappt.

Jetzt bin ich über das Property DSAPublicPem gestolpert und frage mich wie das zu benutzen ist.
Da man ja seine Setup's mittels OpenSSL signen kann (aus Sicherheitsgründen wenn ich die Doku richtig deute dies wohl auch dringend tun sollte) hatte ich vermutet das irgendwo in dieser Lib dann auch eine Verifizierung vorhanden sein müsste? Genau daran hapert es nun.

Mein Appcast Feed enthält die Dsa Signatur die ich erstellt habe (sparkle:dsaSignature)
Nur was soll jetzt in DSAPublicPem hinein und wie verifizieren, ich finde in der Lib nichts zur eigentlichen Verrifizierung was die ganze dsaSignature ziemlich nutzlos macht oder ich hab das Konzept missverstanden.

Klaus01 23. Sep 2020 07:11

AW: NeSparkle
 
.. vielleicht findest Du in den C++ H file -> https://github.com/vslavik/winsparkl...e/winsparkle.h
Infos zu diesem Property.

Grüße
Klaus

stOrM 23. Sep 2020 07:38

AW: NeSparkle
 
Zitat:

Zitat von Klaus01 (Beitrag 1474070)
.. vielleicht findest Du in den C++ H file -> https://github.com/vslavik/winsparkl...e/winsparkle.h
Infos zu diesem Property.

Grüße
Klaus


Moin Klaus,
auch nicht so wirklich da steht folgendes:

Zitat:

/**
Sets DSA public key.
Only PEM format is supported.
Public key will be used to verify DSA signature of the update file.
PEM data will be set only if it contains valid DSA public key.
If this function isn't called by the app, public key is obtained from
Windows resource named "DSAPub" of type "DSAPEM".
@param dsa_pub_pem DSA public key in PEM format.
@return 1 if valid DSA public key provided, 0 otherwise.
@since 0.6.0
*/
WIN_SPARKLE_API int __cdecl win_sparkle_set_dsa_pub_pem(const char *dsa_pub_pem);
In der Hilfe zu NeSparkle steht:

Zitat:

Represents property DSAPublicPem.
Also hab ich kurzerhand den Inhalt meiner Dsa_Pub.pem in das Property geladen.
Wenn ich den Key in der Appcast verändere lösche oder auch komplett weglasse löst das nicht wirklich irgendetwas aus.

Meine Vermutung ist langsam das der Teil (Verifizierung) "noch?" gar nicht im Delphiwrapper implementiert wurde?
Ich denke wenn dies implementiert wäre, würde sich ja irgendwo im Wrapper vermutlich sowas wie OnValidationError oder etwas in dieser Art finden lassen.

Die einzigen Notifications die ich finde sind folgnde:

Code:
  mainWinSparkle.OnDidFindUpdate := UpdateFound;
  mainWinSparkle.OnError := UpdateError;
  mainWinSparkle.OnShutDown := UpdateShutDown;
  mainWinSparkle.OnDidNotFindUpdate := UpdateNotFound;
  mainWinSparkle.OnUpdateCancelled := UpdateCancelled;
  mainWinSparkle.OnCanShutDown := UpdateCanShutdown;
Die habe ich jetzt auch alle in Verwendung da ich vermutete das zumindest sollte mit dem Key was nicht stimmen ich im OnError landen sollte (ziemlich generisch aber besser als nichts) was aber nicht der Fall ist.

P.s.
Von mir genutzt wird zur Zeit die Winsparkle Version v.0.6.0


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:28 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