社区
C语言
帖子详情
mac算法求教
banmiton
2012-02-28 09:10:27
算法:将需要加密的数据分成若干个16字节的数据段,不足16字节的用0x00补齐16字节。然后将每个数据段的前8字节与后8字节进行异或操作,异或完成后,16字节的数据段长度变为8字节,再将所有8字节的数据段进行异或操作,最终得到一个8字节的数据段,最后BCD转ASCII得到16位MAC码。请问各位大侠该算法如何实现?
...全文
152
4
打赏
收藏
mac算法求教
算法:将需要加密的数据分成若干个16字节的数据段,不足16字节的用0x00补齐16字节。然后将每个数据段的前8字节与后8字节进行异或操作,异或完成后,16字节的数据段长度变为8字节,再将所有8字节的数据段进行异或操作,最终得到一个8字节的数据段,最后BCD转ASCII得到16位MAC码。请问各位大侠该算法如何实现?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Kevin_qing
2012-02-28
打赏
举报
回复
if(size>0){
b2=*pb;
--size;
++pb; //<<<<<<<写掉了一句
Kevin_qing
2012-02-28
打赏
举报
回复
byte mac(const void * p,size_t size){
const byte *pb=(const byte*)p;
byte result=0;
while(size){
byte b1=*pb;
++pb;
--size;
byte b2;
if(size>0){
b2=*pb;
--size;
}else
b2=0;
result^=b1^b2;
}
return result;
}
AIGPTchina
2012-02-28
打赏
举报
回复
提问,你说下MAC算法的具体实现,会有人帮你写出代码来。如果你说不出来。那就木有办法了。
qq120848369
2012-02-28
打赏
举报
回复
哪里不懂, 8字节与8字节异或可以1个字节1个字节的异或, 一个循环就完事了.
然后得到了一堆8字节片段, 求它们所有的异或, 那就双层循环啊.
最后8字节, BCD是什么东西, 要把每一个字节转成16进制字符串的意思么? 那就一个字节一个字节的转呗, 分别取每个字节高低4位与'0'或者'A'加一下就变成字符了.
区块链
算法
—共识
算法
课程目标 本套课程带你认识常用的共识
算法
及其代码实现; 课程简介 在区块链网络中,谁获得记账权是通过全网节点间所达成的共识来决定的; 共识
算法
即这种“共识”的
算法
/代码体现; 共识
算法
解决了...
php 国密,PHP关于国密SM3加密的处理
这几天对接中国联通物联网IoT Gateway门户API系统,其中用到国密SM3,其提供...由于之前没搞过再者又没找到,都想放弃了,偶然发现了:a php extension for sm3(实现sm3
算法
的php扩展)【git 地址】 OK了,就他了,进...
基于opencv打开摄像头获取视频、保存、画布显示状态
OpenCV是一个基于 BSD 许可(开源)发行的跨平台 计算机视觉 和 机器学习 软件库,可以运行在 Linux 、 Windows 、 Android 和
Mac
OS 操作系统上。 [1] 它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,...
TensorFlow深度学习应用开发实战(深度学习简介和开发环境搭建)
TensorFlow不但可以在Linux、
Mac
和Windows系统下运行,甚至还可以在移动终端下工作。 当然,TensorFlow也有不足之处,主要表现在它的代码比较底层,需要用户编写大量的代码,而且很多相似的功能,用户还不得不“重造...
Mac
下配置PHP+MySql环境【生产环境】
由于PHP apache环境在
Mac
OS上是自带的,所以不需要另处下安装包,只需要简单配置一下即可。 首先打开终端输入命令: sudo vim /etc/apache2/httpd.conf 其中有一行是这样的 #LoadModule ...
C语言
69,371
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章