为什么赫夫曼编码是不是都可以破解?

liuzu2016 2012-06-17 01:11:24
赫夫曼编码的破解既然已经公开了,那么还使用它干嘛呢

比如:

int W[N]={5,30,9,10,16,20,8,12};
char C[N]={'A','B','C','D','E','F','G','H'};

现在我提供一份已经 加密过的二进制字符串(采用赫夫曼编码加密的),

大家就可以写算法来破解啊,

那使用它干嘛呢???



问题2: 这个函数的参数HCode是 指向 二进制"010011"这种字符串,还是"ABCD"这种形式的字符串



void HuffmanDecoding(HuffmanTree HT,char chars[],int n,char *HCode,HuffmanDecode &HD)
{//根据赫夫曼编码表解码
int f;
int i=0;
char *p=HCode; //Huffman编码串工作指针
HD=(char *)malloc(strlen(HCode)*sizeof(char));
while(*p!='\0')
{
f=2*n-1; //从根出发进行匹配
while(HT[f].lchild!=0&&HT[f].rchild!=0&&*p!='\0')
{//未到达叶端且编码串未处理完
if(*p=='0')f=HT[f].lchild; //向左孩子下行
else if(*p=='1')f=HT[f].rchild; //向右孩子下行
p++; //下一编码符号
}
if(HT[f].lchild==0&&HT[f].rchild==0) //下行遇叶结点
HD[i++]=chars[f-1]; //得到该编码的字符
else return; //错误的编码,不能正确译码
}
HD[i]='\0'; //译码字符串结束符
}


...全文
80 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lactoferrin 2012-06-17
  • 打赏
  • 举报
回复
*p=='0'*p=='1'看到这两个就应该知道是什么
liuzu2016 2012-06-17
  • 打赏
  • 举报
回复
up up 呼唤高手 解答第二个问题啊
sjjwind 2012-06-17
  • 打赏
  • 举报
回复
为什么赫夫曼编码是不是都可以破解?
这个问句问的好,我表示看不懂
liuzu2016 2012-06-17
  • 打赏
  • 举报
回复
up up

第二个问题啊
wshn13 2012-06-17
  • 打赏
  • 举报
回复
压缩不是加密……
liuzu2016 2012-06-17
  • 打赏
  • 举报
回复
up

问题2 谁帮忙解答一下啊

jackyjkchen 2012-06-17
  • 打赏
  • 举报
回复
楼主的概念有问题,霍夫曼编码根本不是加密算法,是压缩编码,和7z、rar一样,当然可以反向

现代化的加密算法,必然是即便你知道实现,但不知道密钥也无法破解的,如AES、RC6
sundayX 2012-06-17
  • 打赏
  • 举报
回复
你不知道W[N]和C[N]时怎么破解?暴力破解?字符是有限的,但是权值(概率)是无限的。
内容简介: 无论你是从事业务开发,还是从事架构设计,想要优化设计模式,数据结构与算法是必备的一门学科,本课程使用Java来讲解数据结构和算法,考虑到数据结构和算法较难,授课采用图解加算法游戏的方式。内容包括: 稀疏数组、单向队列、环形队列、单向链表、双向链表、环形链表、约瑟夫问题、栈、前缀、中缀、后缀表达式、中缀表达式转换为后缀表达式、递归与回溯、迷宫问题、八皇后问题、算法的时间复杂度、冒泡排序、选择排序、插入排序、快速排序、归并排序、希尔排序、基数排序(桶排序)、堆排序、排序速度分析、二分查找、插值查找、斐波那契查找、散列、哈希表、二叉树、二叉树与数组转换、二叉排序树(BST)、AVL树、线索二叉树、赫夫曼树、赫夫曼编码、多路查找树(B树B+树和B*树)、图、图的DFS算法和BFS、程序员常用10大算法、二分查找算法(非递归)、分治算法、动态规划算法、KMP算法、贪心算法、普里姆算法、克鲁斯卡尔算法、迪杰斯特拉算法、弗洛伊德算法马踏棋盘算法。为什么学数据结构与算法? 算法是一个程序员真正的核心竞争力。无论用哪种语言做开发,算法从程序角度而言都是灵魂内核般的存在。程序的躯体可以各式各样,但是内核一定要追求高效整洁。同时掌握了算法,大厂名企的Offer不再是梦寐以求的梦想,而让程序高效且健壮,也不再是难以完成的技术难题。所以无论是为提升自我内功修炼,还是提升程序灵魂内核健全,学习算法,都是现有可供选项里的最优解。课程大纲:为了让大家快速系统了解数据结构与算法知识全貌,我为你总结了「数据结构与算法框架图」,帮你梳理学习重点,建议收藏!! CSDN学院Java答疑群:

69,322

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧