So haben wir ein Zertifikat, das uns erlaubt, Kexts, zu signieren, aber wenn wir> sudo kextload friendly.kext ausführen, schlägt es fehl und wir unterschreiben die Kext wir wollen, und es ist unterzeichnet, hier einig Diagnoseausgang zu beweisen:CoDesign Kext mit Kext aktiviert Zertifikat schlägt fehl während Kextload, "Code Signatur ungültig"
Co-Design --verify -vvvv friendly.kext
friendly.kext: valid on disk
friendly.kext: satisfies its Designated Requirement
SPCTL -a -vvvv friendly.kext
friendly.kext: accepted
source=Developer ID
origin=Developer ID Application: Friendly Corporation
/Library/Extensions
Co-Design -dvvv friendly.kext
Executable=/Library/Extensions/friendly.kext/Contents/MacOS/friendly
Identifier=com.friendly.friendly
Format=bundle with Mach-O thin (x86_64)
CodeDirectory v=20200 size=502 flags=0x0(none) hashes=18+3 location=embedded
Hash type=sha1 size=20
CDHash=a1e2bf8d53ea67c6cfe9fc3d6d2001fe56c838a7
Signature size=8528
Authority=Developer ID Application: Friendly Corporation
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=Oct 9, 2014, 11:49:02 AM
Info.plist entries=21
TeamIdentifier=1234567890
Sealed Resources version=2 rules=12 files=1
Internal requirements count=1 size=180
Co-Design --verify -vvvv friendly.kext
friendly.kext: valid on disk
friendly.kext: satisfies its Designated Requirement
Es sieht aus wie es richtig unterzeichnet hat; Allerdings, wenn ich laufen> sudo kextutil -v friendly.kext:
Defaulting to kernel file '/System/Library/Kernels/kernel'
Diagnostics for /Library/Extensions/friendly.kext:
Code Signing Failure: code signature is invalid
/Library/Extensions/friendly.kext appears to be loadable (not including linkage for on-disk libraries).
ERROR: invalid signature for com.techsmith.friendly, will not load
Ich denke, entweder ich das Zertifikat falsch heruntergeladen (wir haben auf jeden Fall für kext Unterzeichnung genehmigt), obwohl ich das Zertifikat einmal versucht redownloading vor Das ist vielleicht nicht das Problem. Ansonsten ist es die Art, wie ich unterschreibe. Ich denke, vielleicht hat es etwas mit den Berechtigungen zu tun, die ich vor dem Unterschreiben gesetzt habe?
Hat jemand dieses Problem schon mal gesehen?
Vielen Dank im Voraus!
Ja, also ich hatte ein Shell-Skript, das ausgeführt wurde dass ich vergessen habe zu aktualisieren, aber grundsätzlich über meine korrekte Signatur signiert habe. Also habe ich richtig signiert, aber dann würde das Shell-Skript einfach mit dem ungültigen Zertifikat gleich drauf haha. Gerade war gestern nicht am Ball –
Offenbar Kext Signing ist nicht mehr für neue Zertifikate verfügbar ... diejenigen, die sie bereits haben, viel Spaß! http://stackoverflow.com/questions/26671885/codesigned-kext-but-why-not-load-in-yosemite10-10 – gimix
@ Gimix, soweit ich weiß, Kext Unterzeichnung wurde nie standardmäßig auf Developer ID-Zertifikate aktiviert. Kext-Signaturprüfung wurde mit OS X 10.9 eingeführt, und meine Kunden haben die kext-fähige Entwickler-ID angefordert, als 10.9 noch in der Betaversion war. – pmdj