要約すると、@ Raj Lalwaniの回答は完全ではないため、一部の詳細は省略されています!!!
3 つのファイル:
- CommonKeyDerivation.c
- CommonKeyDerivation.h
- CommonKeyDerivationPriv.h
CommonKeyDerivation.cのソースで、標準の Apple ライセンス コメントの下に、これを挿入します。
#define KERNEL
これにより、コンパイラ エラーが停止します。
CommonKeyDerivation.hのソースには、次の 2 つのプロトタイプがあります。
int
CCKeyDerivationPBKDF( CCPBKDFAlgorithm algorithm, const char *password, size_t passwordLen,
const uint8_t *salt, size_t saltLen,
CCPseudoRandomAlgorithm prf, uint rounds,
uint8_t *derivedKey, size_t derivedKeyLen)
__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
と
uint
CCCalibratePBKDF(CCPBKDFAlgorithm algorithm, size_t passwordLen, size_t saltLen,
CCPseudoRandomAlgorithm prf, size_t derivedKeyLen, uint32_t msec)
__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA);
iOS 4.2 を対象とする Snow Leopard の場合は、__OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_NA)
をこれに変更します。__OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_4_2)
ビルド オプションでインクルード パスを指定する必要がある場合があります。