C语言风格字符串在DES加密后可能存在的问题

本文详细阐述了在C语言环境下,对字符串进行DES加密后,使用fprintf和fscanf进行文件读写时可能出现的问题。解释了DES加密方式导致的特殊字符如回车、换行等可能影响字符串处理的原因,并提供了将加密后的字符串内容以内存块形式进行文件操作的解决方案,确保读取文件时能够正确处理加密内容。

C语言风格字符串在DES加密后可能存在的问题

2014-11-17 Felix


1.问题描述

    对一个字符串我在进行DES加密后,用C语言的文件操作fprintf%s格式写入文件。

在读取时问题出现了,当使用fscanf%s格式进行读取时只读取字符串的一部分。

2.原因分析

    DES加密是按8字节一组时行加密的,加密后的内容如果用字符串进行处理可能会存在一些特殊字符

比如回车,换行都是有可能的。

3.解决方法

    字符串DES加密后的内容要按内存块进行操作,比如写文件时改为fwrite将内存块直接写入文件,

同样在读取文件时使用fread,读取指定长度的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值