c++解析文件和读取二进制

c++ parse file and read binary

本文关键字:读取 二进制 文件 c++      更新时间:2023-10-16

我想保存电子邮件帐户和密码,我将事先用算法加密。它们需要以二进制文件的形式保存和读取,使用fwite和read。我想要的是,能够知道它是一个通行证还是一个电子邮件帐户,保存在 and

例如:

<e> !"§(!"$)Asdn12§(!"§UASD <e>
<u> !"§()!="§ksd!"§KM!"§lkm12 <u>
<e> !"§KMK!M"§asd9i1ikm23ß0 <e>
<u> l,1ö2l3!"§)IQASD=K!"E <u>

你建议我应该如何阅读二进制文件,但也能够解析它。

这些电子邮件和通行证由另一个程序读取,该程序使用它们执行一些任务。

如果用户名和密码总是配对,我建议您在每个用户名和每个密码之前存储长度(以字节数为单位)。这样你就可以读取长度(比如一个4字节的整数),并知道下一个用户名/密码记录的长度。然后,您可以重复此操作,而不必担心搜索可能出现在用户名或密码中的标记。

你做错了。写你自己的密码是一个大忌。

如果您需要保存用户名和密码以进行身份验证或登录到服务,我建议您正常保存它,但依赖于操作系统的文件权限来保证它的安全(这是标准的Unix实践,如果操作系统受到损害,您无论如何都会丢失)。

如果您确实需要公开可读但加密的密码,请使用免费可用的加密库,并将解密密钥直接放入源代码(和编译的二进制文件)中。这是尽可能安全的,因为攻击者可以在解密后读取内存。

我强烈建议你考虑一下为什么需要加密,以及你想对谁隐藏信息。