如何解决访问NS2数据包报头以在无线网络中获取接收到的数据
我有一个在NS2中实现的加密协议(准确地说是椭圆曲线)。我在TCL中建立了无线网络。 cc代码对从TCL获得的消息进行加密,然后将加密的数据存储在数据包头中,然后将其发送到另一个节点。另一个节点应该检索此数据并将其解密为原始明文。 当第二个节点接收到无线数据包并访问标头以检索加密的数据(以便它可以执行解密)时,我遇到了问题,接收到的数据被修改了。 例如: =>如果我要发送消息“ abc”(该消息将转换为整数以进行加密),则第一个节点将对消息进行加密并将其存储在数据包头中。在发送前在标题中打印加密数据时,我得到“ 508550885090”。
=>当第二个节点在recv函数中接收到数据包时,标头内容更改为“ 107780505601550881290” 如何从无线数据包报头中提取原始发送的数据?
这是访问标头的代码中的recv部分:
void Security_packetAgent::recv(Packet * pkt,Handler * ) {
// Access the IP header for the received packet:
hdr_ip * hdrip = hdr_ip::access(pkt);
// Access the security packet header for the received packet:
hdr_security_packet * hdr = hdr_security_packet::access(pkt);
//code for storing the data and handling it
}
hdr_security_packet位于加密协议的头文件中,并且接收到的加密数据存储在hdr中。 任何帮助表示赞赏。 预先感谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。