2010-07-05 25 views
0

我使用Boost.Asio在C++中進行開發。我希望能夠base64解碼數據,因爲Boost.Asio鏈接到openssl我想使用它的函數來做到這一點,而不是添加額外的依賴項(例如crypto ++)。我發現這個代碼here顯示瞭如何做到這一點。 (其他城市INT finalLen = BIO_READ(的B Mem,(無效*)噘,outLen);以inLen如何使用openssl進行base 64解碼?

我不知道,如果它的工作原理。我只是傳遞給我一些測試數據,我用這裏找到的在線解碼器驗證(2)(選擇安全解碼爲文本並計算符號)。我使用的測試字符串是:「AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA =」(不帶「」)。在線解碼器和快速加密++實現都返回23個字符。但是我上面提到的使用openssl的代碼返回0.我做錯了什麼? openssl適合base64解碼嗎? 請給我一個解決方案(如果存在)。謝謝你的時間。

回答

0

pff抱歉,我的錯誤。我忘了分配內存pOut。代碼似乎現在工作。