在我的静态库中,我有一个许可证文件。 我想确定的是我自己生成的(并没有被改变)。 所以这个想法是使用我读过的RSA签名。 我在互联网上看过,这就是我想到的: 首先:使用我在这里find的信息生成私钥和自签名证书。 // Generate private key openssl genrsa -out private_key.pem 2048 -sha256 // Generate certificate request openssl req -new -key private_key.pem -out certificate_request.pem -sha256 // Generate public certificate openssl x509 -req -days 2000 -in certificate_request.pem -signkey private_key.pem -out certificate.pem -sha256 // Convert it to cer format so iOS kan work with it […]
在iOS上, 证书,密钥和信任服务 API包含以下填充types: kSecPaddingNone kSecPaddingPKCS1 kSecPaddingPKCS1MD2 kSecPaddingPKCS1MD5 kSecPaddingPKCS1SHA1 Apple CDSA邮件列表上的用户表示“kSecPaddingPKCS1 […]与PKCS#1 1.5相同”。 证书,密钥和信任服务引用使用“将完成标准ASN.1填充以及底层RSA操作的PKCS1填充”注释后三种填充types( kSecPaddingPKCS1MD2 , kSecPaddingPKCS1MD5和kSecPaddingPKCS1SAH )。 与kSecPaddingPKCS1什么不同? 根据RFC 3447, kSecPaddingPKCS1是底层RSA操作的原始填充吗? 使用SecKeyRawSign()签名SHA-256,SHA-384或SHA-512摘要时,开发人员是否需要使用kSecPaddingPKCS1并kSecPaddingPKCS1执行ASN.1填充? ASN.1填充是必需的还是可以省略的? 任何暗示我指向正确的方向是高度赞赏。