<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Log on Aashutosh Poudel</title><link>https://atosh502.github.io/log/</link><description>Recent content in Log on Aashutosh Poudel</description><generator>Hugo</generator><language>en-US</language><copyright>Copyright © \b20\d{2}\b, Aashutosh Poudel.</copyright><lastBuildDate>Sat, 13 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://atosh502.github.io/log/index.xml" rel="self" type="application/rss+xml"/><item><title>PQ Playbook by Symbolic Software</title><link>https://atosh502.github.io/log/pq-playbook-by-symbolic-software/</link><pubDate>Sat, 13 Jun 2026 00:00:00 +0000</pubDate><guid>https://atosh502.github.io/log/pq-playbook-by-symbolic-software/</guid><description>&lt;ul&gt;
&lt;li&gt;risk asymmetry
&lt;ul&gt;
&lt;li&gt;premature migration - engineering cost&lt;/li&gt;
&lt;li&gt;late migration - HNDL (harvest now decrypt later), keys, signatures can&amp;rsquo;t be trusted
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;data that has been exfiltrated cannot be un-exfiltrated&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;synthesis of common and subtle bugs in pq implementations&lt;/li&gt;
&lt;li&gt;good sample of libraries supporting pq algorithms and rollout strategies&lt;/li&gt;
&lt;li&gt;quick intro to standards and recommended pq algorithms&lt;/li&gt;
&lt;li&gt;discussion on what pq rollout for TLS, PKI, signatures, messaging, attestations, hashes, etc mean&lt;/li&gt;
&lt;li&gt;very well written and a joy to read&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Links&lt;/p&gt;</description></item><item><title>CP-ABE and KP-ABE</title><link>https://atosh502.github.io/log/cp-abe-and-kp-abe/</link><pubDate>Mon, 13 Apr 2026 00:00:00 +0000</pubDate><guid>https://atosh502.github.io/log/cp-abe-and-kp-abe/</guid><description>&lt;p&gt;A very basic overview of CP-ABE vs KP-ABE&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Policy vs Attribute&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;attribute describes a person/entity (something they are or they have)&lt;/li&gt;
&lt;li&gt;policy is a set of conditions a person/entity needs to satisfy with their attributes&lt;/li&gt;
&lt;li&gt;attributes can be compared to a key an entity has&lt;/li&gt;
&lt;li&gt;policy can be compared to a lock an encryptor decides&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Ciphertext-Policy Attributed Based Encryption (CP-ABE)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;policy is embedded inside the ciphertext, attributes are defined on the key&lt;/li&gt;
&lt;li&gt;Example: a student with their student id card (key with attributes: &amp;ldquo;cs department&amp;rdquo;, &amp;ldquo;grad student&amp;rdquo;) can only access a certain set of labs or classrooms (locks/ciphertexts with policy) within a school&lt;/li&gt;
&lt;li&gt;useful if the encryptor is a user/client who want to limit access to data&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Key-Policy Attributed Based Encryption (KP-ABE)&lt;/p&gt;</description></item><item><title>HTTP/1.1 desync attacks</title><link>https://atosh502.github.io/log/http/1.1-desync-attacks/</link><pubDate>Wed, 25 Mar 2026 00:00:00 +0000</pubDate><guid>https://atosh502.github.io/log/http/1.1-desync-attacks/</guid><description>&lt;ul&gt;
&lt;li&gt;isolation between individual http requests is fundamentally broken in http/1.1
&lt;ul&gt;
&lt;li&gt;no reliable way to say when one request finishes and next request starts&lt;/li&gt;
&lt;li&gt;multiple ways to specify request length + requests are concatenated under single connection without delimiters&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.cloudflare.com/resolving-a-request-smuggling-vulnerability-in-pingora/#what-is-request-smuggling"&gt;request smuggling&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;between client and application servers, request passes through multiple components such as load balancers, reverse proxies, etc.&lt;/li&gt;
&lt;li&gt;HTTP request parsers inconsistency: an attacker can craft a request that one component sees as complete, but the other continues to parse into a second, malicious request made on the same connection.&lt;/li&gt;
&lt;li&gt;the malicious request could inject headers and its URL into a subsequent valid request sent on the same connection.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Links&lt;/p&gt;</description></item><item><title>appliedcryptography.page</title><link>https://atosh502.github.io/log/appliedcryptography.page/</link><pubDate>Tue, 24 Mar 2026 00:00:00 +0000</pubDate><guid>https://atosh502.github.io/log/appliedcryptography.page/</guid><description>&lt;ul&gt;
&lt;li&gt;Very interesting talk by &lt;a href="https://nadim.computer/"&gt;Nadim Kobeissi&lt;/a&gt; on teaching Cryptography in Post-Crisis Lebanon.&lt;/li&gt;
&lt;li&gt;The course syllabus, assignments, and projects are awesome.&lt;/li&gt;
&lt;li&gt;For students with zero crypto experience.&lt;/li&gt;
&lt;li&gt;Based on Joy of Cryptography (Mike Rosulek) and Serious Cryptography (Jean-Philippe Aumasson).&lt;/li&gt;
&lt;li&gt;&amp;ldquo;Earning Attention, Not Assuming It&amp;rdquo;
&lt;ul&gt;
&lt;li&gt;enfranchise students and earn their attention&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&amp;ldquo;Break the intimidation barrier&amp;rdquo;
&lt;ul&gt;
&lt;li&gt;hard math behind cryptography is &amp;ldquo;intimidation&amp;rdquo;&lt;/li&gt;
&lt;li&gt;&amp;ldquo;intimidation&amp;rdquo; stemming from &amp;ldquo;notation&amp;rdquo;&lt;/li&gt;
&lt;li&gt;&amp;ldquo;notations&amp;rdquo; (mathematical formalisms) are scarier than the &amp;ldquo;ideas&amp;rdquo; they contain&lt;/li&gt;
&lt;li&gt;&amp;ldquo;ideas&amp;rdquo; are intuitive and easy to explain&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Links&lt;/p&gt;</description></item><item><title>DPoP (Demonstrating Proof of Possession)</title><link>https://atosh502.github.io/log/dpop-demonstrating-proof-of-possession/</link><pubDate>Mon, 23 Mar 2026 00:00:00 +0000</pubDate><guid>https://atosh502.github.io/log/dpop-demonstrating-proof-of-possession/</guid><description>&lt;ul&gt;
&lt;li&gt;&amp;ldquo;bearer&amp;rdquo; token grants access to the &amp;ldquo;bearer&amp;rdquo; of the token&lt;/li&gt;
&lt;li&gt;sender-constrained tokens to solve the problem of leaked &amp;ldquo;bearer&amp;rdquo; tokens&lt;/li&gt;
&lt;li&gt;client using a &amp;ldquo;bearer&amp;rdquo; token provides &amp;ldquo;a proof&amp;rdquo; every time it uses the token
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;proof&amp;rdquo; ensures client has a secret private key&lt;/li&gt;
&lt;li&gt;&amp;ldquo;proof&amp;rdquo; is usually a JWT signed by the secret private key&lt;/li&gt;
&lt;li&gt;binds &amp;ldquo;proof&amp;rdquo; to a specific HTTP request&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;application layer&lt;/li&gt;
&lt;li&gt;no PKI required&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Links&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://auth0.com/blog/protect-your-access-tokens-with-dpop/"&gt;Protect Your Access Tokens with DPoP (Demonstrating Proof of Possession) | Auth0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.rfc-editor.org/rfc/rfc9449.html"&gt;RFC 9449 OAuth 2.0 Demonstrating Proof of Possession (DPoP)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://dpop.info/"&gt;dpop.info&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>