Author

2018 年度汇编期末大作业参考文档

整体思路 Inspired by sunnyden’s MBRLock Reference 观察发现 MS-DOS 7.11 和 WinXP 的 磁盘,1~31 扇区均为空!(0 扇区为 MBR) https://stackoverflow.com/questions/21463908/x86-instructions-to-power-off-computer-in-real-mode https://wiki.osdev.org/APM https://stackoverflow.com/questions/1396909/ret-retn-retf-how-to-use-them https://stackoverflow.com/questions/39474332/assembly-difference-between-var-and-var/39474660 https://sourcegraph.com/github.com/sunnyden/[email protected]/ https://www.felixcloutier.com/x86/ https://asminst.kmahyyg.xyz/ https://blog.csdn.net/u013630349/article/details/50370227 https://docs.microsoft.com/en-us/cpp/cpp/argument-passing-and-naming-conventions?view=vs-2017

关于 C 的 CRC32 实现

CRC32 是数据包校验的一个重要算法,本文主要记录作者的一些思考。 Preface 最近讲了计算机网络课程,在上课过程中明白了 CRC32 的人工计算方法。个人猜测后面计算机网络实验会做,趁最近忙碌,一鼓作气,在刚刚学完的时候一起实现了吧。 关于 CRC32 具体的原理性的东西就不说了,大家自己搜索 IEEE 802.3 相关文档和维基百科吧。主要用途是传输过程中的错误检测,由于容错率高,简单易于实现,占用资源少,得到了广泛的应用。 关于 手动计算 就那点内容,其实我也很懵逼,就多查查资料吧。剩下的就是 Talk is cheap, show me the code! ,大家自己根据 Reversed CRC32 的 GZip 实现参考吧。 参考文献 https://www.xilinx.com/support/documentation/application_notes/xapp209.pdf

离散数学的 CP 规则

CP 规则 先说一下,即使不用CP规则,只用P规则和T规则(即直接证明法)也可以实现所有证明。引入CP规则,只是为了简化证明过程。不过CP规则的适用范围不像P、T规则那样具有普遍性——当被证明的结论本身是一个条件复合命题时,才会用到CP规则。其内容是: 若要证明:(S)=>(R→C);——S是前提,R→C是结论; 只需证明:(S∧R)=>(C);——即:把R当作附加的前提,引入推理过程; 具体运用方法就是: (1)使用P规则,把R当作一般前提(就像S一样)来使用;但应加以说明:附加前提; (2)当推导出C之后,可直接写出最后的结论:R→C;这一步的说明是:CP规则; 需要注意:单纯来看(2)中的这一步推理,其实从C到R→C是可以直接推出的。【C=>R→C】本身就是一个重言蕴含式(也就是推理公式),在直接证明法中可直接使用T规则完成这一步的推理。但是,在这里是不行的。 因为,推导C的过程中我们用到了R这一前提,但这个前提不是用纯正的P规则引入的。R是作为“附加前提”引入的。可以说,C这个中间结论(以及所有借助R推出的中间结论)并不是纯正的结论。事实上,这个中间结论可能根本就是个假命题。——虽然这并不影响我们的最终推理,因为我们的目标并不是C,而是R→C,但是,这种情况在直接推理中是绝对不允许的:在直接推理中,包括中间结论在内的每一步都必须是真命题。 这也就是CP规则与P、T规则的区别所在。所以,在这样的推理中,必须对CP规则的使用作出说明。 如上所说,CP规则的使用被分成了(1)、(2)两部分。这两部分所依据的规则都与纯正的P、T规则不同,所以都应作出特殊的说明。 高等数学的等价无穷小量 http://www.ivy-end.com/archives/1567 https://zh.wikipedia.org/wiki/%E6%B3%B0%E5%8B%92%E5%85%AC%E5%BC%8F

数据结构实验 4 – 迷宫

数据结构的迷宫实验的一个解法,有点复杂,记录一下。 写在最前 数据结构实验 4 – 迷宫 实验代码和实验要求请参见 我的 Github 项目 (Private) 本篇博文将更加注重着眼于: 具体迷宫生成实现 自动完成迷宫实现 实现过程中新学到的东西和踩的坑 stdarg.h 举一反三: Python – Non-keyword Argument Pass the variable length argument list with single asterisk. Inside the function, we have a loop which adds the passed argument and prints the result. We passed 3 different tuples with variable length as... » read more

对指定域名的解析 IPv4 结果优先

尝试对 Glibc getaddrinfo 函数进行配置,使 A 记录优先级高于 AAAA 记录。用于解决当前网络环境下 IPv6 路由不佳的问题。 Preface Application Environment: You have a native dual-stack network. The route to destination via IPv6 is broken or much more slower than IPv4. The latency is 20x faster in IPv4 comparing to IPv6. Depend on your situation You have those methods listed below: Block the... » read more

信息安全导论的相关文献

https://www.ctolib.com/docs/sfile/xss-naxienian/index.html https://www.knowsec.net/archives/78/ https://www.zhihu.com/question/26628342 http://adoyle.me/blog/why-zip-file-checksum-changed.html http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html https://kennel209.gitbooks.io/owasp-testing-guide-v4/content/zh/web_application_security_testing/testing_for_cross_site_request_forgery_csrf_otg-sess-005.html Google 官方的开发者教程: https://techdevguide.withgoogle.com/paths/foundational/ https://techdevguide.withgoogle.com/paths/advanced/

KMP 与 BF 字符串模式匹配算法简析

字符串模式匹配算法 这里讨论两种常见的字符串模式匹配算法,不讨论字符串的预处理。 关于对字符串进行搜索,请参考 Boyer-Moore 字符串搜索算法 (Wikipedia CN) 另外建议大家阅读 [Sunday 算法] BF 算法 (Brute Force) 返回子串 Ptn 在主串 Tag 的第 pos 个字符后(含第 pos 个位置)第一次出现的位置,若不存在,则返回 -1,这里的位置全部以从 0 开始计算为准,其中 T 非空,0 <= pos <= Tlen。 使用 i 标记当前在 Tag 中匹配的字符的位置,初始值为 pos。 使用 j 标记 Ptn 中正在等待比较的位置,初始值为 0,下同。 即对 Tag 的每一个字符与 Ptn 的字符进行逐字比较: 若完整匹配则返回匹配成功的 pos 值。 匹配过程中,对当前的 pos 值对应位置之后的每一字符进行... » read more

Open vSwitch 组建可以随身携带的加速上网路由器

目标: 自带的移动路由器 网络隔离,避免路由泄露 性能足够强大 (1 Core – 1 Thread 2.x GHz amd64 CPU, 512 MiB RAM, 0.5G ROM, 10Gbps vNetwork, Internet connection speed depends on your physical network interface and your ISP) Win 两个 Hyper-V vXSwitch 解决,参考: https://blog.skk.moe/post/hyper-v-win10-lede/ 需要注意的几个地方: 不建议使用 Koolshare 等第三方改版固件,推荐使用 Lean 的 OpenWRT 版本。 避免默认 IP 段冲突,提前断开所有外部链接。鉴于天朝网络现状,记得删除 WAN6 网卡。禁用 Secure Boot。禁用 VM Balloon。关闭... » read more

你好,世界!

兜兜转转这么多年之后,从 2016 年 1 月 8 日加入 GitHub 开始尝试建站记录生活点滴,到已经过去的 2020 年 1 月 8 日,已经整整过去了四个年头。 这四年里,经历了中考、高考、恋爱、分手,也见证了时代的变革与互联网的飞速发展。更加明确了我未来的人生目标。 这个博客也几经周折,从最早没有记录时候的 WordPress 2013年版本,到 Typecho、AnchorCMS、基于 Node.JS 的 Hexo、基于 Ruby Gems 的 Jekyll、基于 Golang 的 Hugo,又回到了现在的 WordPress。也算是应了那句老话:“一个懒骨头建站,怎么搞都是要回到 WordPress 的。” WordPress 的安全性问题一直是我不肯使用它的一个主要原因。到了今天,本站托管在屌机的 CPanel 虚拟空间上,与本人其他的服务相隔离;在ModSecurity、LiteSpeed WebServer、ImmunityAV、PatchMan、JetBackup 、WordFence WAF 多方面的加持下,我也开始逐渐没那么担心 WordPress 的应用安全问题。反正只要不要贪小便宜装盗版的插件或者主题就可以了。 说真的,我太累了。并没有太多的时间和精力再折腾下去。但我依然看重写作和阅读体验、仍然希望有个小窝能够记录下我的尘封回忆与生活琐事并与我其他的内容隔离开来,所以 WordPress 成为了我的选择。希望在未来,我再打开这篇博客的时候,能够再回想起这段时光。 2020 年 1 月 22 日 0:00 于昆明