Very cool story. As an old prof of mine used to say - tools that allow real people to do real work.
Historically Perl was invented for exactly this sort of task. Nowadays, I’d probably choose Python but for projects of this size and scope you could probably flip a coin. Perl might be a bit faster, Python would certainly be more readable, and has a slightly better story as fall as objects and functions and extensibility with libaries.
Regarding legibility... Yeah, here's one of my favorite Perlisms -export-a-crypto-system-sig -RSA-3-lines-PERL #!/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj $/=unpack('H*',$_);$_=`echo 16dio\U$k"SK$/SM$n\EsN0p[lN*1 lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/)
At one time, the 3 lines of code above was classified by the idiots running the U.S. Government as an unexportable munition.
Search for "RSA in 3 Lines of Perl" for more information.