问下这个des产生子密钥的部分代码问题在哪

void craetekey(int *key,int *zikey)
{
	int i,j,m;
	int Key[56];
	int lside[28],rside[28],lsideo[28],rsideo[28];
	for(i=0;i<56;i++)
	{
		Key[i]=key[PC_1[i]-1];
	} 
	
	for(i=0;i<16;i++)
	{
		for(j=0;j<56;j++)
	{
		if(j<28)
		{lside[j]=Key[j];}
		else
		{rside[j-28]=Key[j];}
	}
		xuhuanyiwei(lside,rside,i);
		for(j=0;j<56;j++)
	  {
		if(j<28)
		{Key[j]=lside[j];}
		else
		{Key[j]=rside[j-28];}
	  }
	  for(m=0;m<48;m++)
 	  {
		zikey[48*i+m]=Key[PC_2[m]-1];
	  } 
	}
	
}

void xuhuanyiwei(int *ls,int *rs,int flag)
{
	int lso[28],rso[28];
	int n;
	for(n=0;n<28;n++)
	{
		lso[(n-yiwei[flag])%28]=ls[n];
		rso[(n-yiwei[flag])%28]=rs[n];
	}
	for(n=0;n<28;n++)
	{
		ls[n]=lso[n];
		rs[n]=rso[n];
	}
}

 

您想问什么问题

不不不,是如果密匙K一样,这个每轮的子密匙和正常的这个代码每轮产生的子密匙不一祥,就是

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y