资源简介
计算DES的8个S盒差分分布概率表的程序,结果写入文件中
代码片段和文件信息
#include
#include
#include
#include “tables.h“
#include “bool.h“
//把DataIn开始的Len长度的位复制到DataOut
void BitsCopy(bool *DataOutbool *DataInint Len)
{
int i=0;
for(i=0;i {
DataOut[i]=DataIn[i];
}
}
//将字节转化为位函数,每8次换一个字节
void ByteToBit(bool *DataOutchar *DataInint Num)
{
int i=0;
for(i=0;i {
DataOut[i]=(DataIn[i/8]>>(i%8))&0x01;
}
}
//将位转化为字节函数
void BitToByte(char *DataOutbool *DataInint Num)
{
int i=0;
for(i=0;i<(Num/8);i++)
{
DataOut[i]=0;
}
for(i=0;i {
DataOut[i/8]|=DataIn[i]<<(i%8);
}
}
//二进制转化为16进制
void BitToHex(char *DataOutbool *DataInint Num)
{
int i=0;
for(i=0;i {
DataOut[i]=0;
}
for(i=0;i {
DataOut[i]=DataIn[i*4]+(DataIn[i*4+1]<<1)+(DataIn[i*4+2]<<2)+(DataIn[i*4+3]<<3);
if((DataOut[i]%16)>9)
{
DataOut[i]=DataOut[i]%16+‘7‘;
}
else
{
DataOut[i]=DataOut[i]%16+‘0‘;
}
}
}
//十六进制转化为二进制
void HexToBit(bool *DataOutchar *DataInint Num)
{
int i=0;
for(i=0;i {
if((DataIn[i/4])>‘9‘)
{
DataOut[i]=((DataIn[i/4]-‘7‘)>>(i%4))&0x01;
}
else
{
DataOut[i]=((DataIn[i/4]-‘0‘)>>(i%4))&0x01;
}
}
}
//十进制转化为二进制
void IntToBit(bool *DataOutint nint Num)
{
int i;
i=Num;
while(n)
{
DataOut[i-1]=n%2;
n=n/2;
i--;
}
}
//指数函数
int xn(int numint n)
{
int result=1;
int i=1;
for(i=1;i<=n;i++)
result*=num;
return result;
}
//二进制转成十进制
int BitToInt(bool *DataInint Num)
{
int i=0;
int DataOut=0;
for(i=0;i {
DataOut+=((DataIn[i])*xn(2Num-i-1));
}
return DataOut;
}
//按位异或
void Xor(bool *DataAbool *DataBint Num)
{
int i=0;
for(i=0;i {
DataA[i]=DataA[i]^DataB[i];
}
}
//S盒替换,输入48位,输入32位,并与子密钥异或
void S_Change(bool DataOut[32]bool DataIn[48])
{
int iXY;
for(i=0X=0Y=0;i<8;DataIn+=6DataOut+=4i++)
{
Y=(DataIn[0]<<1)+DataIn[5];
X=(DataIn[1]<<3)+(DataIn[2]<<2)+(DataIn[3]<<1)+DataIn[4];
- 上一篇:基于51单片机的人体心率采集
- 下一篇:虚拟机MacOS10.14
相关资源
- Remote Desktop Organizer v1.4.7 支持win10
- 3des加解密_C 实现
- RSA AES DES ECC加密算法源码
- 密码学课程设计:DES加密解密算法的
- 提供几个加密算法的源码
- DES IP置换IP逆置换
- DES的C 源码
- Design of Analog CMOS Integrated Circuits 拉扎
- codesys编程手册中文版
- System Design Interview - An Insider’s Guide
- Grokking the System Design Interview
- 翻译的美国大学经典参考书,Roland
- 认识界面以及PCB设计整体要求
- The Research on Smart Drill-in Fluid Design
- 埃塞俄比亚东北部Dessie转诊医院的糖
- Altium designer超全元件库+封装库部分
- dive into design patterns(Alexander Shvets)
- Antenna Theory Analysis and Design.3rd Edition
- FMEDesktop2019特别版forMacv2019.0.0.0.19181苹
- LANDesk 管理解决方案和采用英特尔:r
- Mentor Graphics Expedition Enterprise v7.9.5.r
- PowerDesigner16.6 破解补丁
- Altium Designer实战攻略与高速PCB设计P
- 复旦dc综合工具教程
- lotus domino notes(包括client administrato
- Type-c 接口封装,24引脚,Altium Design
- Behavior Designer 1.6.3(u2018.3.0).unitypa
- Codesys变成入门手册
- xenapp 7.6 xendesktop 7.6 企業版55永久用戶
-
Databa
se Reliability Engineering Designing
评论
共有 条评论