Estructura PKCS # 7 del signo sin procesar PKCS # 1

Puedo firmar un hash de documento con el método SecKeyrawsign. El problema es el método seckeyrawsign que proporciona solo la firma de estructura pkcs # 1, pero quiero el formato pkcs # 7 para la firma de CMS. ¿Podría decirme cómo formar pkcs # 1 a pkcs # 7 en ios?

unsigned char sha_buffer[SHA256_DIGEST_LENGTH];
    memset((void*) sha_buffer, 0, SHA256_DIGEST_LENGTH);
    SHA256_Final(sha_buffer, &m_sha_ctx);

    // Build signature - step 2: Sign hash

    uint8_t signature[256];
    size_t signature_len = sizeof(signature);
    OSStatus osrc = SecKeyRawSign(
                                  PEKey,
                                  kSecPaddingPKCS1SHA256,
                                  sha_buffer, sizeof(sha_buffer),
                                  signature, &signature_len
                                  );
    assert(osrc == noErr);

Respuestas a la pregunta(0)

Su respuesta a la pregunta