校验和:探究密码学中的数据完整性问题


全文共1594字,预计学习时长4分钟

图源:unsplash

 

数据完整性是指系统中信息的准确性、合法性和一致性。在发送信息时,尤其是使用不可靠媒介,数据完整性可以确保该信息未被篡改。

 

非法数据的潜在成因是什么?

 

数据完整性能防止出现数据违背系统的指令被篡改等系列问题。一些潜在的问题包括:

 

·        物理故障:用不好的媒介传输大量数据可能会毁坏数据。例如,无线信号可能会暂时丢失,或者线路可能遭到噪声电信号的干扰。

·        数据问题:负责传达信息的软件可能有一些漏洞,无意间使信息的子集发生变异。

·        恶意篡改:可能有中间人正在更改信息,以迷惑通讯员或者学习有价值的信息。

解决办法 –校验和

 

校验和可以解决以上三个潜在的数据完整性问题。校验和是从信息数据中衍生出的一个确定值,可以单独传输。这意味着给定信息的校验和总是相同的。

 

信息接受者可以从该信息中生成校验和,如果生成的校验和与发送信息的校验和匹配,那么发送的信息就不会被篡改。

 

需要注意的是,如果获取校验和的媒介不可靠,那么信息和校验和都可能被中间人篡改。通常较好的做法是在校验和上签署数字签名,数字签名就能证明校验和的发送者的身份。

 

什么是好的校验和?

 

校验和的类型很多,但是最好的校验和通常是加密哈希函数。哈希函数能生成很好地校验和验证数据的完整性,以下是它的性质:

·        确定性:同一信息的哈希值始终相同,不存在随机性。

·        速度快:无需使用不必要的资源计算校验和(KDF是一种低效的校验和)。

·        几乎不重合:两条不同的信息生成相同的校验和的可能性几乎为零。

·        精简:哈希的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值