Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Seems cute. Might be a fun gadget to host on a Pi or whatnot.

> Hand-written in x86_64 assembly language

Oh.

Not sure if cross-internet capable communication tools constitutes the "worst" example of hand written assembly, exactly, but... yeah, it has to be up there. I'm sure it was fun to hack, though.



The only thing really worse there is that the number of people who could audit the code is much smaller. That guy wrote a whole SSL library in assember, so he probably didn't just finish some assembler tutorial and decided this was a good first lil project.

Assember is usually just considered bad/dangerous by people who have no clue about it and consider it something magical. It's not. At least not significantly more dangerous than C, which is still the language the most fundamental components of everyday computing are based on.


No, I think portability is definitely the worst thing. It's a communication tool. It's perfectly reasonable to want to run this on your Pi or your phone or in your browser or your IoT device of the week. And you can't because of an implementation choice.

I'm certainly not afraid of machine code, I actually get paid to write it. But this just isn't a good choice technically. Though it's impressive and like I said was surely a lot of fun and worth showing off.


Ah yes, I'm probably too focused on just x86 desktop/server with my everyday work that this didn't even occur to me, so I assumed you were meaning to refer to maintainability/security.


This is some bloke's project and he decided to code it in the tool he was either most comfortable with or wanted to glean exercise on. If you want to take inspiration from his work and write an analogous program in ARM assembler for the amusement of running it on whichever device most amuses you, you're free to read his code, learn from it, and then go off to re-implement it in a steam-powered balanced-ternary analytical engine, if you so please.


Please. We are in a world where heartbleed happen, as well as an untold number of buffer over flow / memory management vulnerabilities through the years. Companies have spent millions developing languages like Rust and Go to replace C & C++ in more security sensitive applications. Assembly is definitely not just "just considered bad/dangerous by people who have no clue about it and consider it something magical".


how the hell did I get three downvotes for this


Run it on qemu on Pi? Qemu can run individual binaries.


Can qemu do system call passthrough though?


Sure.


Only the boilerplate. The crypto is using Crypto++ https://www.cryptopp.com, which is good, and was even FIPS 140–2 validated.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: