PHP와 C++ (CryptoPP)의 응용 프로그램간에 통신 교환을 만들려고합니다.CryptoPP 대 PHP Base64 인코딩/디코딩
나는 PHP에 다음 코드를 가지고 :
$in = "ALApfWG920ZFle/2r6CkXKXt+zG5tiw7Gw9ZLl1mKRNP9fyb12T92e9rTQF4JeapXSrZVBPyrGx52l4zmu+wr3u2EQW7CeYFbl9h8y5+xx0MPOL/1nyX6ENzo755klTy5AxcM9GMrpKt689i79ouuxceA2bCa0cpWMUv4c2dHN8nKaXDSyCW04dRglFds9CVb29JgQamFRc7H8yjPPdk/FIMDt3xCDOKjoT5VGM1v1Tsyo92qCSFW9N4xXqLr5NUO0hv5u+kVCg0P/gWbgSSNsflXjyqV+dBp3YzKdxHGQXbpl8IQvec95GjL60zQ7IS/rWOZg40+IrwbhvoWHUQIkM="
$out = base64_decode($decode)
그것은 텍스트를 디코딩하고 예상대로, 이진 string
을 반환합니다. 나 C++로 CryptoPP를 사용하여 유사한 명령을하고있는 중이 야 : 나는 out
string
을 검사 할 때, 그러나
string out;
string in = "ALApfWG920ZFle/2r6CkXKXt+zG5tiw7Gw9ZLl1mKRNP9fyb12T92e9rTQF4JeapXSrZVBPyrGx52l4zmu+wr3u2EQW7CeYFbl9h8y5+xx0MPOL/1nyX6ENzo755klTy5AxcM9GMrpKt689i79ouuxceA2bCa0cpWMUv4c2dHN8nKaXDSyCW04dRglFds9CVb29JgQamFRc7H8yjPPdk/FIMDt3xCDOKjoT5VGM1v1Tsyo92qCSFW9N4xXqLr5NUO0hv5u+kVCg0P/gWbgSSNsflXjyqV+dBp3YzKdxHGQXbpl8IQvec95GjL60zQ7IS/rWOZg40+IrwbhvoWHUQIkM=";
CryptoPP::StringSource decryptor(in, true,
new CryptoPP::Base64Decoder(
new CryptoPP::StringSink(out)
));
를, 그것은 비어 있습니다.
누군가 내가 잘못하고있는 것을 지적 할 수 있습니까?
당신이 Valgrind의 또는 아산을 통해 코드를 실행 했습니까? –
안녕하세요 @KerrekSB, C++ 코드는 CryptoPP 예제에서 가져온 것이므로 확인할 것이 많지 않습니다. 그것은 입력 문자열과 관련이 있지만 그것이 무엇인지는 잘 모르겠습니다. 다른 입력 문자열과 함께 결과를 제공합니다. –
좋습니다. –