DES加密问题
加密前是否必须将文件转化为二进制文件呢?虽然在计算机中本身就是按二进制直接存储的,可我如何操作啊?难道用C的位操作??如果需要转化的话,中文字符应当如何转化呢?谢谢回答!...
加密前是否必须将文件转化为二进制文件呢?虽然在计算机中本身就是按二进制直接存储的,可我如何操作啊?难道用C的位操作??如果需要转化的话,中文字符应当如何转化呢?
谢谢回答!最近一个实验要写这个程序 展开
谢谢回答!最近一个实验要写这个程序 展开
3个回答
推荐于2017-10-03
展开全部
DES对64位二进制数据加密,产生64位密文数据,实际密钥长度为56位(有8位用于奇偶校验,解密时的过程和加密时相似,但密钥的顺序正好相反),这个标准由美国国家安全局和国家标准与技术局来管理。DES的成功应用是在银行业中的电子资金转账(EFT)领域中。现在DES也可由硬件实现,AT&T首先用LSI芯片实现了DES的全部工作模式,该产品称为数据加密处理机DEP。另一个系统是国际数据加密算法(IDEA),它比DES的加密性好,而且计算机功能也不需要那么强。在未来,它的应用将被推广到各个领域。IDEA加密标准由PGP(Pretty Good Privacy)系统使用,PGP是一种可以为普通电子邮件用户提供加密、解密方案的安全系统。在PGP系统中,使用IDEA(分组长度128bit)、RSA(用于数字签名、密钥管理)、MD5(用于数据压缩)算法,它不但可以对你的邮件保密以防止非授权者阅读,还能对你的邮件加以数字签名从而使收信人确信邮件是由你发出。--
展开全部
DES是可逆的。
自己编一段解密算法,
或者找一个具备该解密算法的软件,输入相关信息进行解密
自己编一段解密算法,
或者找一个具备该解密算法的软件,输入相关信息进行解密
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DES需要在二进制下进行位操作 你打开文件的时候可以设置
FILE * fopen(const char * path,const char * mode);
mode加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件
中文字符是两个char表示的 需要写一个转化函数
//字符转化为二进制
void CharToBit(char *in,bool *out,int LengthOfBit)
{
int i;
for(i=0;i<LengthOfBit;i++)
out[i]=(in[i/8]>>(i%8))&0x01;
}
FILE * fopen(const char * path,const char * mode);
mode加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件
中文字符是两个char表示的 需要写一个转化函数
//字符转化为二进制
void CharToBit(char *in,bool *out,int LengthOfBit)
{
int i;
for(i=0;i<LengthOfBit;i++)
out[i]=(in[i/8]>>(i%8))&0x01;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询