The Fragility of Raw RSA: From Mathematical Elegance to Existential Forgery
Why textbook RSA preserves multiplicative structure and enables existential forgery, and how hash-then-sign and padding schemes like RSA-PSS close the gap.
Articles on cryptography, software verification, machine learning, and the supporting math.
Why textbook RSA preserves multiplicative structure and enables existential forgery, and how hash-then-sign and padding schemes like RSA-PSS close the gap.
How Lagrange and Cauchy shape real-world DH and ECC groups, why nearly-prime cofactor curves trade purity for performance, and what Secure Scuttlebutt teaches about validation.
From Weierstrass curves and double-and-add to cofactor attacks and Dual_EC_DRBG—how subgroup geometry and implementation choices determine ECC trust boundaries.
A structured look at HNP-based key recovery, BIGNUM representation leaks, lazy resizing CVEs, and protocol-level subgroup failures in modern signature stacks.
Bridging prime-order proofs with cofactor reality: small-subgroup attacks, BIGNUM leaks, twist security, and a practical mitigation checklist for protocol engineers.
Why finite-field DLP hits a scalability wall, how ECC and Pollard rho change the cost curve, and a worked finite-field point arithmetic example on F23.
From Tamarin’s prime-order ideal to Scuttlebutt, Bluetooth P-256 invalid-point attacks, and OpenSSL lazy resize—how symbolic proofs miss implementation and protocol reality.
Discover the only mathematically unbreakable encryption method—and why its perfection makes it practically useless.
Discover the only encryption method proven to be mathematically unbreakable—and why its implementation is far more dangerous than it appears.
Explore why the natural numbers we use everyday are fundamentally unsuitable for encryption, and the mathematical traps that await those who don't understand fields.
Learn why encrypted data can still be tampered with and how block ciphers attempt to solve the fundamental problems of encryption.
Explore how the Hill Cipher's reliance on linear algebra made it vulnerable to high school math—and why pattern repetition destroyed the unbreakable Vigenère cipher.
Discover how the Symmetric Group—where elements are actions rather than numbers—forms the foundation of modern cryptographic security.
Trace the journey from the broken DES standard to the ironclad AES, and discover the algebraic foundations that make modern encryption possible.
Discover how the simplest mathematical field Z_2 with just 0 and 1 becomes the foundation for AES encryption through extension fields and irreducible polynomials.
Placeholder draft for a later lecture; the exact topic and structure will be filled in once the corresponding Canvas module is available.
Placeholder draft for a later lecture whose precise topic will be aligned with the Canvas modules and updated once materials are posted.
Stub post expanding the LangSmith hands-on work into a discussion of experiment design, observability, and how tooling supports verification efforts.
Stub lecture post introducing the core ideas of public-key cryptography, setting up later deep dives into RSA and related schemes.
Stub post introducing formal methods in , connecting mathematical reasoning to practical verification of real systems.
Stub lecture post on formalizing security goals and attack models in cryptography, bridging intuitive threats to precise definitions.
Stub post capturing the LangSmith tutorial and hands-on setup work from the modules, focusing on tooling for testing and observability.
Stub for a lecture post on block ciphers and common modes of operation, building on earlier symmetric encryption basics.
Stub post on writing precise specifications and requirements, a key prerequisite for formal verification and systematic testing.
Stub post for the mathematical foundations of modern cryptography, focusing on number theory concepts used later for public-key systems.
A stub post on core testing strategies in , from black-box and white-box testing to basic coverage criteria and test design heuristics.
A stub for the first deep-dive into symmetric encryption in , focusing on block ciphers, modes of operation, and basic threat models.
An overview of software testing in , covering why testing matters, core terminology, and how testing fits into the broader picture of verification and validation.
Course overview for Cryptography, outlining goals, logistics, and the foundational security concepts that will shape the rest of the semester.
Comprehensive guide to unit testing strategies, covering test case design, coverage metrics, mocking techniques, and best practices for writing maintainable test suites.
A deep dive into symmetric encryption algorithms, including block ciphers like AES and DES, stream ciphers, and their applications in modern cryptography.
An overview of Spring 2026 coursework in Cryptography and Software Verification and Validation: goals, themes, and how this blog supports the semester.
Exploring the fundamentals of software verification and validation, covering testing strategies, quality assurance techniques, and methods for building reliable software systems.
Exploring public key cryptography systems, including the RSA algorithm, Diffie-Hellman key exchange, and how asymmetric encryption enables secure communication without shared secrets.
Exploring integration testing methodologies and continuous verification practices, including test automation, CI/CD pipelines, and strategies for maintaining software quality throughout development.
An introduction to formal methods for software verification, including model checking, theorem proving, and mathematical techniques for proving program correctness.
An introduction to the fundamental concepts of cryptography, exploring how secure communication systems work and why they are essential in modern computing.
Understanding cryptographic hash functions, their properties, applications in data integrity verification, digital signatures, and password storage systems.
Worked guide for Logic for Computer Scientists Homework 3: scoping, inference proofs, CNF transformations, and predicate encodings.
A deep dive into SPIN model checker and Promela modeling language for verifying concurrent systems, with practical examples and verification workflows.
Exploring the theoretical foundations and practical implementation of zk-SNARKs—the cryptographic primitives enabling succinct, non-interactive proofs that verify computations without revealing inputs.
A comprehensive review of advanced logic concepts including Hilbert Systems, the Tableaux Method, and Herbrand Semantics, showing how they feed into model checking with concrete transition-system examples.
Upgrade the perceptron into a calibrated probabilistic classifier with logistic regression and its multiclass softmax extension, unpacking the sigmoid link, cross-entropy loss, gradient descent, and the bridge to mode...
Master Linear Temporal Logic (LTL) for specifying and verifying time-dependent properties of reactive systems, from safety invariants to liveness guarantees.
Transition from probabilistic to discriminative models with the Perceptron algorithm, learning how linear classifiers use weighted features to make predictions and laying the foundation for neural networks.
Explore non-monotonic reasoning systems where new information can invalidate previous conclusions, from the classic Tweety the bird example to stable models in logic programming.
Learn how to handle zero-frequency problems and overfitting in Naive Bayes through Laplace smoothing and understand the theoretical foundations of maximum likelihood estimation.
Learn how Herbrand semantics reduce the infinite complexity of first-order logic interpretations to finite, manageable models through ground atoms and the Herbrand base.
Learn how Naive Bayes bridges probabilistic reasoning and machine learning, using conditional independence assumptions to build powerful classifiers for spam detection, digit recognition, and more.
Learn how variable elimination dramatically reduces computational complexity in Bayesian network inference through strategic factor manipulation and elimination ordering.
Master d-separation algorithms for determining conditional independence in Bayesian networks and understand the foundation of probabilistic inference.
An in-depth exploration of Hilbert proof systems and the Tableaux method for predicate logic, with detailed examples on quantifier manipulation and step-by-step proof construction.
2025 11 14 Unification Algorithm layout: post title: “The Unification Algorithm: Finding Most General Unifiers in First-Order Logic” date: 2025-11-14 categories: “Logic for Computer Scientists” tags: logic-for-c...
Explore Thompson's Construction algorithm, the elegant method for converting regular expressions to NFAs that revolutionized pattern matching and influenced decades of Unix tools.
2025 10 08 Reinforcement Learning Introduction layout: post title: “Reinforcement Learning: An Introduction to Learning from Rewards” date: 2025-10-08 categories: “Intelligent Systems” tags: reinforcement-learni...
2025 08 29 Propositional Logic Ii Truth Tables And Formation Trees layout: post title: “Propositional Logic II: Truth Tables and Formation Trees” date: 2025-08-29 categories: “Logic for Computer Scientists” tags: ...
2025 08 27 Propositional Logic Basics layout: post title: “Propositional Logic Basics: Building the Foundation for Logical Reasoning” date: 2025-08-27 categories: [logic, computer-science, propositional-logic] tags: ...
2025 08 25 Introduction To Logic For Computer Scientists layout: post title: “Introduction to Logic for Computer Scientists” date: 2025-08-25 categories: “Logic for Computer Scientists” tags: logic proposition...
An introduction to this blog and what I plan to share about my journey in computer science and machine learning research.
An introduction to Prolog's unique declarative paradigm, exploring facts, rules, queries, and how logic programming differs from imperative approaches.
A comprehensive guide to understanding and applying the Master's Theorem for analyzing divide-and-conquer algorithms.