How I implemented my own crypto
It was a fun read, except when all the C bugs were listed. It&#x27;s getting tiresome to hear about folks writing nominally
Important software in a language where it is extraordinarily difficult to get things absolutely correct, with paltry excuses such as &quot;it needs to be fast&quot; or &quot;it needs to be portable [0] to a VAX-11&#x2F;750.&quot; It doesn&#x27;t give me confidence that these completely usual bugs popped up early on, and it will not surprise me when more show themselves.<p>The author&#x27;s lack of practical familiarity with the memory hierarchy, caching, and pipelining—evidenced by his surprise by the speed gained by fetching more than a byte at a time—also makes me suspicious of his understanding of the semantics of his program. (I understand that this is a form of <i>ad hominem</i> as it relates to arguing the correctness of software, but it&#x27;s a consideration worth noting in a broader context of trust.)<p>It would be great if this was written in another language.<p>[0] Most &quot;portable&quot; code written in C is not portable. Look at any mature C project and see the layers and layers of macros and hacks to make things portable.