This is a homepage for me, Joshua Hill. This is a site that I use to accumulate links to items that I wrote or find interesting.

You can find out about me by reading my résumé. If you're all social media-y, you can also view my Linked In Profile.

You can find out about my academic genealogy here. My Erdős Number is 4.

- A paper analyzing the security of the RADIUS authentication protocol. As an aside, this paper was
~~stolen~~generously submitted for publication (after accidentally removing my name) by Peng Zhao, Xuewu Cao, and Ping Luo and published at the 2003 International Conference on Communication Technology. - A short biography of Paul Erdős
- A defense of pure mathematics, a short biography of Georg Cantor, an introduction to his work with cardinality, and beyond.
- A Recurrence Relation for Pi
- ApEn Test Parameter Selection
- An analysis of the "Guess 2/3 of the Average" game
- A Description of the Number Field Sieve
- Calculations involving the minimum of independent of normal distributions
- The 7-11 Problem and its Solutions
- My advancement paper Weil Image Sums (and related problems).
- Counting Value Sets: Algorithm and Complexity (with Qi Cheng and Daqing Wan)
- My dissertation and defense slides On Calculating the Cardinality of the Value Set of a Polynomial (and some related problems).
- I co-authored extensive comments on NIST's SP800-90B. Related information is here.

I've translated (with help from Google Translate) Saburô Uchiyama's Sur le Nombre des Valeurs Distinctes d'un Polynôme à Coefficients dans un Corps Fini. My translation is The Number of Distinct Values of a Polynomial with Coefficients in a Finite Field

I've developed a few write ups for various classes that I've taught / TAed:

- Finite extensions of finite fields
- A quick outline of the Axiom of Choice.
- An outline of Euler's surprising series
- A proof of the divergence of the harmonic series
- Solving Cauchy-Euler equations by Substitution
- A Quick Note on Testing for Irreducibility over the Rational Numbers
- Every Element in a Finite Field is a Sum of Squares
- A Specification of the Pollard p-1 Algorithm
- The Time Complexity of the Effective Chinese Remainder Theorem

I have a few papers in (sometimes perpetual) draft:

- A paper on how the constants e and i are defined, along with some applications. e, i, e, i, oh!

- A presentation that I gave in 1999 titled The Zen of Information Security.
- A presentation that I gave in 2000, titled Securing a Linux Box: It's mine, and You Can't Use It., which was in turn based on another presentation that I gave in 1998. As such, a fair bit of this is somewhat dated.
- A presentation I gave in 2002, titled Network Security: A Quick Overview.
- A presentation I gave in 2008, titled Cryptographic Foibles and Missteps.
- A presentation I gave in 2010 on Coppersmith's Theorem: Background, Generalizations and Applications.
- My advancement presentation in 2011 on Weil Image Sums.
- My ANTS X 2012 presentation on Counting Value Sets: Algorithm and Complexity
- A presentation that I gave in 2012 on Block Ciphers: Modes of Use, DES and AES
- A presentation that I gave in 2013 on Random Bit Generation: Theory and Practice
- A presentation that I gave in 2013 on The Dual Elliptic Curve Deterministic RBG
- A presentation that I gave in 2013 that includes a summary of various computational approaches to the discrete logarithm problem, including two very recent approaches by Joux. Joux's Recent Index Calculus Results
- A presentation that I gave in 2013 outlining the analysis of substitution ciphers. Substitution Ciphers
- A presentation that I gave in 2014 that includes a summary of various averaging results produced by David Harvey, et al. This includes the best known point counting algorithm on general purpose arithmetic schemes. Harvey's Average Polynomial Time Algorithms
- A presentation that I gave in 2014 on use of LaTeX in mathematics publishing. LaTeX for Mathy Endeavors: (Somewhat) Advanced LaTeX (and Related Matters)
- A presentation that I gave in 2016 on An Approach for Entropy Assessment of Ring Oscillator-Based Noise Sources
- A presentation that I gave at the 2018 ICMC, titled Care and Feeding of the SP800-90B Statistical Tests
- A presentation that I gave at the 2019 ICMC, titled The IID Assumption and YOU!
- A presentation that I gave at the 2020 ICMC, titled "SP 800-90B Refinements: Validation Process, Estimator Confidence Intervals, and Assessment Stability"
- A presentation that I gave in 2020 at the CMUF Entropy WG, titled "ICMC 2020: Summary of Entropy-Relevant Content" (Version 20201103 D9)
- A presentation that I gave in 2021 at the CMUF Entropy WG, titled "What To Expect When You're Expecting (to Evaluate JEnt Against SP 800-90B)" (Version 20210904-1)
- A presentation that I gave at the 2021 ICMC, titled Some Approaches to Generate H_submitter for Periodically Sampled Ring Oscillators" (Version 20210904-1)
- A presentation that I gave in 2022 at the CMUF Entropy WG, titled JEnt (MemOnly) and JEnt Analysis Approaches
- A presentation that I gave in 2023 at the CMUF Entropy WG, titled Health Testing for Periodically Sampled Ring Oscillators (Version 20230602)
- A presentation that I gave in 2023 at VCEW 2023, titled JEnt MemOnly A Hardware-Based Ad Hoc Entropy Source
- A presentation that I gave in 2023 at the CMUF Entropy WG, titled What To Expect When You're Expecting (to Assess the CPU Jitter Random Number Generator v2.2.0 Against SP 800-90B)
- A presentation that I gave in 2023 at the CMUF Entropy WG, titled CMUF EWG Potpourri
- A presentation that I gave in 2024 over a few CMUF Entropy JEnt SWG meetings, titled CPU Jitter Heuristic Entropy Arguments
- A presentation that I gave in 2024 at the CMUF Entropy WG, titled
~~Everything~~Some of What You Always Wanted to Know About the APT (But Were Afraid to Ask). This was an extract of a prior presentation that I had prepared (but was overtaken by events) CMUF EWG Draft IG D.K Comments (Draft 9).

Here are some programs that I find useful or generally neat:

- Solar Designer and the Openwall Project team pulled all his great tools together and made a hardened linux distribution called Owl.
- Fydor wrote a port scanner that you can use to audit your machine. It is called nmap.
- If you need to test the reasonableness of an PRNG, you can do large scale statistical testing on it. NIST has developed a series of tests documented in the excellent NIST SP800-22 (rev. 1a). NIST stopped support for the UNIX version of the test tool, but I've continued to support it here: sts.

I have a few other pieces of software that I've written over the years. Some of them are even still useful.

Mail *josh (dash) web (at) untruth.org* with comments, questions, etc.