![]() |
1
4
请在此处阅读我的答案: Most efficient way to manipulate ISN numbers in TCP headers
此算法用于最新的内核TCP堆栈(
编辑
:请参阅下图以查看所有相关的内核版本
编辑2
:有关函数的旧版本,请参阅内核的源代码
Kernel 3.1 :(MD5已取代一半MD4) |
![]() |
2
2
经过更仔细的阅读 RFC6528 和 RFC1948 我得出的结论是,RFC1948中规定的生成初始序列号(ISN)的算法:
没有改变。相反,Bellovin S.M在RFC1948中提出的算法被正式指定并纳入标准轨道(根据 RFC2119 )在Bellovin S.M和Gont。F.由于现在已经过时的RFC1948不能在任何文件中使用,RFC6528已经取代了它。 但正如在回答我最初的问题时所指出的,MD5已经取代了half-MD4作为内核3.1中的哈希函数。RFC6528完全证明了这一点,因为它确实提供了更改伪随机函数F()的灵活性。 (请查看链接以了解更多详细信息)。 |
![]() |
3
2
更新到以前的答案,以便表示当前状态(2019和Linux内核5.1.3),因为算法要生成
secure_tcp_seq
现在使用
|
![]() |
CaTx · 使用带有一个大于号和两个大于号的回波的区别 2 年前 |
![]() |
Ari157 · x86_64 Linux程序集中的逻辑与实现 2 年前 |
![]() |
Ty Q. · 分段故障GLFW3/GLAD 2 年前 |
![]() |
ShortArrow · 如何使用git管理链接源文件? 2 年前 |
![]() |
Bastien L. · 多Linux Grafana集成 2 年前 |