c - 为什么在 md5 算法中填充初始长度时会有三位移位
问题描述
// append the len in bits at the end of the buffer.
to_bytes(initial_len*8, msg + new_len);
// initial_len>>29 == initial_len*8>>32, but avoids overflow.
to_bytes(initial_len>>29, msg + new_len + 4);
解决方案
推荐阅读
- c# - 获取动态 JSON 值并打印出来
- javascript - 如何在 Swift 中获取当前正在播放的歌曲(在设备上)标题?
- python-3.x - 在 Python 中替换文本文件中的变音符号
- javascript - 未捕获的语法错误:意外的令牌“}”
- excel - 查找列中的所有重复项,并在同一单元格中返回所有相同的内容,并在左侧有一个偏移量
- python - PyQt5拖动框架时移动窗口
- javascript - useReducer 返回一个承诺而不是更新的状态
- mapbox-gl-js - MapBox GL JS 组合过滤器
- rust - 具有三个可选参数的宏,其中一个必须接受值列表
- javascript - 使用 vue-async-computed 在计算属性中的循环内使用异步 API 调用