Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Zwischenzertifikate


9 replies to this topic

Sani

Sani
  • Full Members
  • 7 posts

Posted 13 December 2007 - 14:50

Hallo zusammen,

so, nun hat mich auch der "Unbekannte Herausgeber" getroffen, sprich ich muss unsere Installationen signieren.

Jetzt habe ich aber ein Problem mit unserem gekauften Zertifikat (von GlobalSign) und IS12.
Ich habe zunächst das .pfx Zertifikat in eine .spc und .pvk Datei exportiert, was auch gut funktioniert hat.

Danach habe ich diese beiden Dateien in einer Testinstallation ausgewählt und das Projekt erstellt. Nun kommt aber das Problem, dass bei der Installation weiterhin "unbekannter Herausgeber" kommt.

Nach einigem Forschen habe ich auch die Ursache dafür gefunden. Und zwar fehlen einige Zwischenzertifikate.
Ich habe die MSI Datei von Hand mit "signcode.exe" und den o.g. Dateien zertifiziert. Wenn ich dort die Option "Gesamten Zertifizierungspfad einbinden" auswähle ist die MSI Datei dann gültig signiert.

Daher meine Frage, ob man in IS12 diese Option irgendwo einstellen kann oder alternativ, ob es einen besseren Weg gibt die .spc Datei zu erzeugen, damit die Zwischenzertifikate richtig eingebunden werden.

Oder die ungünstigste Variante ob man dafür tatsächlich IS2008 benötigt?

Viele Grüße
Volker

ali

ali
  • Full Members
  • 1,008 posts

Posted 13 December 2007 - 15:15

Hallo,
nach jüngesten Erfahrungen mit IS2008 und dem signieren haben wir uns dazu entschlossen, ab dem nächsten Release nicht mehr über IS zu signieren, sondern wieder "zu Fuß". Mit IS12 gabs probleme mit dem Proxy und diversen Einstellungen, so das es dort bei uns gar nicht gefruchtet hat, mit IS2008 gibts massiv Probleme mit den Signierten Komponenten beim Updaten, besonders beim Patchen.
Weiter ist auch noch das Problem, das die msi gerade mal eben beim ausführen als Admin die signarur verliert oder auch bem ablegen im temporären speicher. Aber das ist ja ein generelles Problem.

Sani

Sani
  • Full Members
  • 7 posts

Posted 13 December 2007 - 15:40

Hi,

mit zu Fuß meinst Du die 'Setup.exe' und 'Meinprojekt.msi' nach dem Erstellen mittels signcode oder signtool zu signieren, oder?.

Funktioniert das dann auch mit Updates/Upgrades? huh.gif

ANo

ANo
  • Full Members
  • 179 posts

Posted 14 December 2007 - 08:33

Hallo Sani,

Wir bauen unsere Builds täglich per Script.
Nur wenn es den Release gibt, wird bei uns signiert.

Auch hiefür nutzen wir ein Script und nicht die interne IS-Funktion.

Wir benutzen Signtool + die pfx-Datei.

Bei dem Script werden zuerst die Dateien signiert (Dlls, Ocx, Exe), dann das Setup gebaut und zum Schluß das Setup (Cab, MSi, Setup.exe; aber nicht InstMsiw.exe)
signiert.

Bei nem Patch werden die zu aktualisierenden Dateien + die msp-Datei signiert.
Man muß natürlich aufpassen dass für den Patch-Build das Vorgänger-und das Nachfolger-Setup die gleichen signierten Dateien enthalten (wegen Hashwert, Differenzbildung) außer das im Nachfolgersetup nur die zu akt. Dateien durch neuere, signierte Dateien ersetzt sind.

Gruß
André






ali

ali
  • Full Members
  • 1,008 posts

Posted 14 December 2007 - 08:59

Man muß natürlich aufpassen dass für den Patch-Build das Vorgänger-und das Nachfolger-Setup die gleichen signierten Dateien enthalten (wegen Hashwert, Differenzbildung) außer das im Nachfolgersetup nur die zu akt. Dateien durch neuere, signierte Dateien ersetzt sind.

genau da sind bei uns ja auch die Probleme. Solange man beim Patch die alten signierten Dateien durch komplett neue ersetzt, funktioniert das. Wenn man aber die Differenzen zwischen einer alten signierten Datei und einer neuen signierten Datei ermittelt, knallt der Patch, weil scheinbar der Hashwert nicht passt. Da unsere Änderungen immer recht komplex sind, haben wir dadurch schon mal eine Patchgröße die 50 MB über den eigentlich möglichen liegt.

ANo

ANo
  • Full Members
  • 179 posts

Posted 14 December 2007 - 09:32

Hallo Ali,
mein Probieren hat kein Problem ergeben.

Beispiel:
Vorgängersetup enthält:
- Datei_1, Version 1.0.0.0, Hashwert 1111, signiert
- Datei_2, Version 1.0.0.0, Hashwert 2222, signiert

Nachfolgersetup enthält:
- Datei_1, Version 1.0.1.0, Hashwert 3333, signiert
- Datei_2, Version 1.0.0.0, Hashwert 2222, signiert

Patch-Build, Patch enthält
- Datei_1, Version 1.0.1.0, Hashwert 3333, signiert

Oder?
Vielleicht noch nen kruden Hinweis, für den Patchbuild selbst ist
das Vorgängersetup, Nachfolgersetup nicht signiert (hier Setup.exe),
nur die enthaltenen Dateien sind signiert.

Gruß
André



ali

ali
  • Full Members
  • 1,008 posts

Posted 14 December 2007 - 13:14

du hast aber nicht mit IS signiert ,sondern die eigebundenen Komponenten vor dem Setup compile, oder?

ANo

ANo
  • Full Members
  • 179 posts

Posted 14 December 2007 - 13:39

Hallo Ali,
ja, wir haben eine Batchdatei geschrieben:
- builde alle Objekte, signiere Objekte (, baue Setup, signiere Setup)
- signieren alles ohne Benutzung von IS

Gruß
André


ali

ali
  • Full Members
  • 1,008 posts

Posted 18 December 2007 - 15:48

ok, danke, das teste ich auch mal.

Sani

Sani
  • Full Members
  • 7 posts

Posted 19 December 2007 - 07:38

QUOTE (ANo @ 2007-12-14 13:39)
Hallo Ali,
ja, wir haben eine Batchdatei geschrieben:
- builde alle Objekte, signiere Objekte (, baue Setup, signiere Setup)
- signieren alles ohne Benutzung von IS

Gruß
André

Hallo André

ich habe das jetzt auch nach Deiner Vorgehensweise gemacht
und das hat prima geklappt.

D.h. ich werde das auch weiterhin so machen. cool.gif

Danke,
Volker