私はこの数日間、この問題に取り組んできました。他の誰かがこれに遭遇したかどうか疑問に思います。MDMベンダー証明書を使用してCSRに署名しようとしています。私はの指示に従っています
以下は、SHA1WthRSAの符号を計算する関数です。
private static string DoSign(X509Certificate2 signerCert, byte[] csrDerBytes)
{
var crypt = (RSACryptoServiceProvider)signerCert.PrivateKey;
var sha1 = new SHA1CryptoServiceProvider();
byte[] hash = sha1.ComputeHash(csrDerBytes);
byte[] signedHash = crypt.SignHash(hash, CryptoConfig.MapNameToOID("SHA1"));
return Convert.ToBase64String(signedHash);
}
説明されているように、この署名をエンコードされたplistに添付し、要求をAppleサーバー(https://identity.apple.com/pushcert)にアップロードした後、次の情報を受け取りました。
{"ErrorCode":-80018、 "ErrorMessage": "証明書の署名の検証に失敗しました"、 "ErrorDescription": "http://www.apple.com/business/mdm\" target = \ "_ blankが原因で、証明書の署名の検証に失敗しました\">署名</a>が無効です。"}
誰が何が悪いのか知っていますか?