Estrutura PKCS # 7 do sinal bruto PKCS # 1

Consigo assinar um hash de documento com o método SecKeyrawsign. O problema é o método seckeyrawsign que fornece apenas assinatura de estrutura pkcs # 1, mas eu quero o formato pkcs # 7 para assinatura do CMS. Poderia me dizer como formar os pkcs # 1 a pkcs # 7 no 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);

questionAnswers(0)

yourAnswerToTheQuestion