定位问题2:明明打印是对的,为什么结果不对?
如下,打印时,为了方便核对,能看懂,将打印的转成16进制了。实际打印时
这样:定位的时候,发现打印是对的,但校验就是不通过
--_--
教训
1. 打印如果要和实际的不一致,将类型也打出来,这样可以看到差别
2. 对接口多确认下,是不是人家要的就是“打印时候的那个转化过的,而不是原始的”
3. 这样的简单问题多看一下代码就发现了-------------记录下来
std::vector<unsigned char> result_data = sm3_hash_with_salt(data,none_salt);
std::string result(result_data.begin(), result_data.end());
MLOGE("plaintext %s plaintext_all (%s) result(%s)",plaintext.c_str(),plaintext_all.c_str(),vector_to_hex_string(result_data).c_str());
return result;