Developer ID certificate missing private key

Hi,

I created a developer id certification from my apple developer account a couple of year ago and downloaded it as .cer file into my Laptop. Now I want to use this certificate to sign my application, but unfortunately Xcode shows an error message like 'Missing Private Key" and I can also see that there is no private key under my developer id certificate(there is no grey arrow to expand to see private cer) in keychain access. Moreover my developer account is expired and I do not want to extend it yet so unfortunately no solutions with apple developer account will work like creating a new certification etc.

Do you have any other solutions like using Keychain Access or Xcode to link my private key again into my developer id certificate?

Note:

1-.cer file was created on my laptop by me, which I am using now. So I would expected that the related private key should already exist in my Keychain Access(if I did not delete it mistakenly.) but I do not know which private key is the relevant one, I have several of them.

2-I have also a CertificateSigningRequest.certSigningRequest file which was copied near my .cer file. Maybe it could be useful for a solution?

3-No! unfortunately I do not have any .p12 file.

4-I had already installed current AppleWWDRCAG3 file before I import my .cer file into my Keychain Access Tool.

5-Get Info shows that my cer file is still valid till sep 2025.

6- I have already restarted my Xcode and laptop.

7-I tried all solutions here: https://stackoverflow.com/questions/12867878/missing-private-key-in-the-distribution-certificate-on-keychain

8-https://developer.apple.com/account/resources/ shows me no certificate with the reason that my membership expired

9-I removed and re-added my apple account into Xcode. the same error occurred.

XCODE:Version 15.3 (15E204a) OSX:macOS Sonoma 14.2.1

Thanks a lot in advance.

Replies

I have a bunch of info on this topic in The Care and Feeding of Developer ID.

I do not know which private key is the relevant one

In my experience Keychain Access is good about matching up private keys and certificates. If you’re not seeing a match, it’s very likely that there isn’t one.

Note that this matching is done by the public key hash, as discused here.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"