1

동일한 Xcode를 사용하는 동일한 컴퓨터에서 작성된 두 개의 kexts가 있습니다.Mac에서 kext에 서명 할 수 없습니다. 10.9.5

codesign -f -s "Developer ID Application: myCompanyname" kextname.kext/ 
kextname.kext/: replacing existing signature 
kextname.kext/: main executable failed strict validation 

그것을 보여줍니다 -dvvv 내가 코드 기호를 인쇄 할 때 : 아래 참조 - 나는 10.9.5에 애플에서 KEXT 활성화 인증서 각 KEXT에 서명 할 때, 하나는 다른 하나는 실패, 성공과 V2 인증서를 가져옵니다 서명은 V2입니다.

두 kexts의 info.plist 파일을 비교하고 Apple에서 지정한 필수 필드가 있는지 확인했습니다. codesign 명령에 리소스 규칙을 사용하고 있지는 않지만 두 kext 중 하나는 여전히 실패하고 있습니다.

포럼/Google을 검색했지만 "엄격한 유효성 검사"가 무엇인지 잘 모르는 사람이 누구입니까?

+1

이미 서명 된 것 같습니다 (기존 서명 교체 참조). 아마도 V2 'codesign'도구에는 이전 V1 서명을 대체하는 데 문제가있을 수 있습니까 ?? 나는 신축 (서명되지 않은) kext에 서명하려고 노력할 것이다. – mity

답변

0

예 지난 주에이 문제가 발생하여 kexts에 서명 할 때 특별한 인증서가 필요하다는 것을 알았습니다. 오른쪽 하단의 https://developer.apple.com/developer-id/을 참조하십시오. 그러면 인증서를 신청할 수 있습니다.

지금 임시 해결 방법으로 단말기에 sudo nvram boot-args = "kext-dev-mode = 1" 명령을 입력하고 컴퓨터를 다시 시작할 수 있습니다. 기본적으로 kexts의 유효하지 않은 서명을 무시하도록 컴퓨터에 지시합니다.