我目前在我的C++軟件中使用libxmlsec,我嘗試從內存中加載RSA私鑰。爲此,我搜索了谷歌API,發現this function。使用libxmlsec從內存中加載RSA私鑰
它採用二進制數據,大小,格式字符串和幾個PEM回調相關的參數。
當我調用該函數時,它只是使用了100%的CPU時間並且從不返回。非常討厭,因爲我無法找出哪裏出了什麼問題。
這是我的代碼:
d_xmlsec_dsig_context->signKey =
xmlSecCryptoAppKeyLoadMemory(
reinterpret_cast<const xmlSecByte*>(data),
static_cast<xmlSecSize>(datalen),
xmlSecKeyDataFormatBinary,
NULL,
NULL,
NULL
);
data
是const char*
指向我的RSA密鑰的原始字節(使用i2d_RSAPrivateKey()
,從OpenSSL的)和datalen
的大小data
。
我的測試私鑰沒有密碼,所以我決定暫時不使用回調。
有人已經做過類似的事情嗎?你們看到有什麼我可以改變/測試來解決這個問題嗎?
我剛剛在昨天發現了這個庫,所以我可能會錯過這裏的一些明顯的東西;我只是看不到它。
非常感謝您的幫助。