Ela*_*ich 9 c string math hash
我想将函数名从弱嵌入式系统发送到主机以进行调试.由于两者是通过带宽短的RS232连接的,我不想直接发送功能的名称.有大约15个字符长的函数名称,我有时想以相当高的速率发送这些名称.
我想到的解决方案是找到一个散列函数,它将这些函数名称散列为单个字节,并仅发送此字节.主机将扫描源中的所有函数,使用相同的函数计算其散列,然后将散列转换为原始字符串.
哈希函数必须是
显然,它不需要以任何方式保证安全,只需要无碰撞.所以我不认为使用与加密相关的哈希函数是值得的复杂性.
示例代码:
int myfunc() {
sendToHost(hash("myfunc"));
}
Run Code Online (Sandbox Code Playgroud)
然后主持人可以向我提供myfunc
执行该功能的时间列表.
是否有一些已知的哈希函数可以保持上述条件?
编辑: