<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"
>

<channel>
	<title>Technology | Psyops Prime</title>
	<atom:link href="https://psyopsprime.com/category/technology/feed/" rel="self" type="application/rss+xml" />
	<link>https://psyopsprime.com</link>
	<description>An Idea Log</description>
	<lastBuildDate>Mon, 20 Jul 2026 13:27:07 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.2</generator>
	<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<site xmlns="com-wordpress:feed-additions:1">99640787</site>	<item>
		<title>Building Smarter UAV Swarms: How Reinforcement Learning is Transforming Autonomous Target Tracking</title>
		<link>https://psyopsprime.com/ideas/building-smarter-uav-swarms-how-reinforcement-learning-is-transforming-autonomous-target-tracking/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=building-smarter-uav-swarms-how-reinforcement-learning-is-transforming-autonomous-target-tracking</link>
					<comments>https://psyopsprime.com/ideas/building-smarter-uav-swarms-how-reinforcement-learning-is-transforming-autonomous-target-tracking/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Wed, 08 Apr 2026 11:11:58 +0000</pubDate>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Machine Learning]]></category>
		<category><![CDATA[Research Ideas]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[artificial intelligence]]></category>
		<category><![CDATA[machine kearning]]></category>
		<category><![CDATA[Neural Networks]]></category>
		<category><![CDATA[reinforcement learning]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2730</guid>

					<description><![CDATA[<p>The future of autonomous aerial systems is not arriving suddenly—it is being carefully engineered, tested, and refined in simulation environments that mirror the complexity of</p>
The post <a href="https://psyopsprime.com/ideas/building-smarter-uav-swarms-how-reinforcement-learning-is-transforming-autonomous-target-tracking/">Building Smarter UAV Swarms: How Reinforcement Learning is Transforming Autonomous Target Tracking</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2731" aria-describedby="caption-attachment-2731" style="width: 420px" class="wp-caption alignleft"><a href="https://psyopsprime.com/photo-by-uran-wang/" rel="attachment wp-att-2731"><img data-recalc-dims="1" fetchpriority="high" decoding="async" data-attachment-id="2731" data-permalink="https://psyopsprime.com/photo-by-uran-wang/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/04/tvorvlph2zy.jpg?fit=1806%2C1200&amp;ssl=1" data-orig-size="1806,1200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by Uran Wang" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@uranwang?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Uran Wang&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/04/tvorvlph2zy.jpg?fit=750%2C498&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2731" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/04/tvorvlph2zy.jpg?resize=420%2C280&#038;ssl=1" alt="Sunlight streams through trees onto a field of purple flowers." width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/04/tvorvlph2zy.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/04/tvorvlph2zy.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/04/tvorvlph2zy.jpg?resize=1024%2C680&amp;ssl=1 1024w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/04/tvorvlph2zy.jpg?resize=768%2C510&amp;ssl=1 768w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/04/tvorvlph2zy.jpg?resize=1536%2C1021&amp;ssl=1 1536w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/04/tvorvlph2zy.jpg?w=1806&amp;ssl=1 1806w" sizes="(max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2731" class="wp-caption-text">Photo by <a href="https://unsplash.com/@uranwang?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">Uran Wang</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;">The future of autonomous aerial systems is not arriving suddenly—it is being carefully engineered, tested, and refined in simulation environments that mirror the complexity of the real world.</p>
<p style="text-align: justify;"><a href="https://ieeexplore.ieee.org/document/11449951" target="_blank" rel="noopener">Our latest IEEE research explores this future through the development of a <strong>distributed reinforcement learning testbed for UAV target tracking</strong></a>, where multiple autonomous drones learn to coordinate in real time to follow a dynamic airborne target.</p>
<p style="text-align: justify;">At its core, this work investigates a simple but powerful question:</p>
<p style="text-align: justify;"><strong>How can UAV swarms learn to track moving targets more efficiently in unpredictable environments?</strong></p>
<p style="text-align: justify;">The answer lies in combining <strong>realistic flight simulation, distributed networking, and modern reinforcement learning algorithms</strong>.</p>
<hr />
<h2 style="text-align: justify;">Why UAV Swarm Target Tracking Matters</h2>
<p style="text-align: justify;">Target tracking is one of the most important capabilities in autonomous drone systems.</p>
<p style="text-align: justify;">Whether the mission involves:</p>
<ul style="text-align: justify;">
<li>search and rescue</li>
<li>disaster monitoring</li>
<li>perimeter surveillance</li>
<li>defense simulation</li>
<li>intelligent logistics</li>
<li>environmental observation</li>
</ul>
<p style="text-align: justify;">…the ability for multiple UAVs to <strong>collaboratively maintain awareness of a moving target</strong> is essential.</p>
<p style="text-align: justify;">Traditional rule-based control methods often struggle when the target behaves unpredictably or when the environment becomes dynamic.</p>
<p style="text-align: justify;">This is where <strong>reinforcement learning (RL)</strong> becomes transformative.</p>
<p style="text-align: justify;">Instead of following hard-coded instructions, UAVs learn through interaction with the environment, continuously improving their decision-making policies based on experience.</p>
<hr />
<h2 style="text-align: justify;">A Realistic Testbed Built on FlightGear and JSBSim</h2>
<p style="text-align: justify;">To study this problem, we developed a <strong>distributed UAV simulation testbed</strong> using:</p>
<ul style="text-align: justify;">
<li><strong>FlightGear</strong> for high-fidelity 3D flight simulation</li>
<li><strong>JSBSim</strong> for realistic flight dynamics modeling</li>
<li><strong>UDP-based distributed communication</strong></li>
<li>real-time reinforcement learning control loops</li>
</ul>
<p style="text-align: justify;">The architecture allows multiple UAVs to operate as independent learning agents while exchanging state information such as:</p>
<ul style="text-align: justify;">
<li>positional coordinates</li>
<li>orientation</li>
<li>velocity</li>
<li>control signals</li>
</ul>
<p style="text-align: justify;">This creates a highly scalable framework for testing swarm intelligence strategies under near-realistic conditions.</p>
<p style="text-align: justify;">In our experimental setup:</p>
<ul style="text-align: justify;">
<li>one UAV acts as the <strong>autonomous target</strong></li>
<li>multiple UAVs act as <strong>tracking agents</strong></li>
<li>distributed reinforcement learning coordinates the swarm in real time</li>
</ul>
<hr />
<h2 style="text-align: justify;">Comparing Modern Reinforcement Learning Models</h2>
<p style="text-align: justify;">The study compares three influential RL methods:</p>
<ul style="text-align: justify;">
<li><strong>A2C (Advantage Actor-Critic)</strong></li>
<li><strong>A3C (Asynchronous Advantage Actor-Critic)</strong></li>
<li><strong>PPO (Proximal Policy Optimization)</strong></li>
</ul>
<p style="text-align: justify;">Each algorithm contributes different strengths.</p>
<h3 style="text-align: justify;">A2C for the Target UAV</h3>
<p style="text-align: justify;">A2C was used to control the target UAV, generating complex motion patterns that make the tracking task challenging and realistic.</p>
<h3 style="text-align: justify;">A3C for Distributed Swarm Coordination</h3>
<p style="text-align: justify;">A3C enables multiple worker agents to learn asynchronously, making it highly suitable for swarm UAV coordination where multiple trackers operate in parallel.</p>
<h3 style="text-align: justify;">PPO for Stable Policy Learning</h3>
<p style="text-align: justify;">PPO was used to provide robust and stable policy optimization, particularly useful in dynamic environments where abrupt policy updates can destabilize learning.</p>
<hr />
<h2 style="text-align: justify;">The Role of Intelligent Exploration</h2>
<p style="text-align: justify;">One of the biggest challenges in reinforcement learning is the <strong>sparse reward problem</strong>.</p>
<p style="text-align: justify;">In target tracking, useful feedback may not arrive frequently enough for agents to learn efficiently.</p>
<p style="text-align: justify;">This means UAVs may spend too much time exploring ineffective strategies before discovering successful behaviours.</p>
<p style="text-align: justify;">To address this, our work integrates an <strong>Intrinsic Curiosity Module (ICM)</strong>, which generates internal rewards whenever the agent encounters novel or difficult-to-predict states.</p>
<p style="text-align: justify;">This mechanism encourages:</p>
<ul style="text-align: justify;">
<li>better exploration</li>
<li>faster discovery of useful strategies</li>
<li>improved adaptation to unfamiliar target behaviour</li>
<li>more efficient learning in dynamic environments</li>
</ul>
<p style="text-align: justify;">Rather than waiting for explicit environmental rewards, the swarm develops an <strong>internal motivation to learn</strong>.</p>
<p style="text-align: justify;">This significantly improves learning speed and robustness.</p>
<hr />
<h2 style="text-align: justify;">What the Results Showed</h2>
<p style="text-align: justify;">The results were highly encouraging.</p>
<p style="text-align: justify;">Across multiple simulation runs, the UAV swarm agents enhanced with curiosity-driven exploration demonstrated:</p>
<ul style="text-align: justify;">
<li>faster convergence</li>
<li>higher cumulative rewards</li>
<li>smoother actor-critic losses</li>
<li>stronger policy stability</li>
<li>improved entropy-driven exploration</li>
<li>better generalisation to dynamic target motion</li>
</ul>
<p style="text-align: justify;">Among all tested models, <strong>A3C integrated with curiosity mechanisms showed the strongest overall performance</strong>, delivering the most stable and effective swarm target tracking.</p>
<p style="text-align: justify;">This is particularly significant because asynchronous distributed learning closely mirrors how real swarm systems may operate across multiple compute nodes or edge devices.</p>
<hr />
<h2 style="text-align: justify;">Why This Matters Beyond Simulation</h2>
<p style="text-align: justify;">The importance of this research extends far beyond virtual flight environments.</p>
<p style="text-align: justify;">The same principles can directly influence real-world systems in:</p>
<ul style="text-align: justify;">
<li>disaster response drones</li>
<li>persistent surveillance</li>
<li>maritime monitoring</li>
<li>intelligent border systems</li>
<li>military training simulation</li>
<li>autonomous delivery fleets</li>
<li>environmental hazard assessment</li>
</ul>
<p style="text-align: justify;">The ability of UAVs to <strong>learn collaboratively, adapt to novelty, and coordinate under uncertainty</strong> is central to the next generation of autonomous aerospace systems.</p>
<p style="text-align: justify;">Simulation-first research provides a safe, cost-effective pathway to develop these capabilities before real deployment.</p>
<hr />
<h2 style="text-align: justify;">Looking Ahead</h2>
<p style="text-align: justify;">This work represents an important step toward <strong>truly intelligent UAV swarms</strong>.</p>
<p style="text-align: justify;">As reinforcement learning continues to mature, the combination of:</p>
<ul style="text-align: justify;">
<li>distributed simulation</li>
<li>curiosity-driven exploration</li>
<li>asynchronous swarm learning</li>
<li>realistic flight dynamics</li>
<li>scalable communication architectures</li>
</ul>
<p style="text-align: justify;">…will become increasingly important for building resilient autonomous systems.</p>
<p style="text-align: justify;">The sky is no longer the limit.</p>
<p style="text-align: justify;">It is the next intelligent frontier.</p>
<p style="text-align: justify;">The post <a href="https://psyopsprime.com/ideas/building-smarter-uav-swarms-how-reinforcement-learning-is-transforming-autonomous-target-tracking/">Building Smarter UAV Swarms: How Reinforcement Learning is Transforming Autonomous Target Tracking</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/ideas/building-smarter-uav-swarms-how-reinforcement-learning-is-transforming-autonomous-target-tracking/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2730</post-id>	</item>
		<item>
		<title>Teaching Machines to Be Curious: A Step Toward Intelligent UAV Swarms</title>
		<link>https://psyopsprime.com/ideas/teaching-machines-to-be-curious-a-step-toward-intelligent-uav-swarms/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=teaching-machines-to-be-curious-a-step-toward-intelligent-uav-swarms</link>
					<comments>https://psyopsprime.com/ideas/teaching-machines-to-be-curious-a-step-toward-intelligent-uav-swarms/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Wed, 25 Mar 2026 17:29:08 +0000</pubDate>
				<category><![CDATA[Ideas]]></category>
		<category><![CDATA[Machine Learning]]></category>
		<category><![CDATA[Research Ideas]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[machine learning]]></category>
		<category><![CDATA[reinforcement learning]]></category>
		<category><![CDATA[UAVs]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2723</guid>

					<description><![CDATA[<p>Autonomous systems are often described as the future—but in many ways, they are still struggling with a very human problem: learning from delayed consequences. In</p>
The post <a href="https://psyopsprime.com/ideas/teaching-machines-to-be-curious-a-step-toward-intelligent-uav-swarms/">Teaching Machines to Be Curious: A Step Toward Intelligent UAV Swarms</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2724" aria-describedby="caption-attachment-2724" style="width: 420px" class="wp-caption alignleft"><a href="https://psyopsprime.com/photo-by-ufuk-yilmaz/" rel="attachment wp-att-2724"><img data-recalc-dims="1" decoding="async" data-attachment-id="2724" data-permalink="https://psyopsprime.com/photo-by-ufuk-yilmaz/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/03/7_d98ui35la.jpg?fit=1800%2C1200&amp;ssl=1" data-orig-size="1800,1200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by Ufuk Yilmaz" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@ufukyilmaz?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Ufuk Yilmaz&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/03/7_d98ui35la.jpg?fit=750%2C500&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2724" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/03/7_d98ui35la.jpg?resize=420%2C280&#038;ssl=1" alt="grayscale photo of cat on table" width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/03/7_d98ui35la.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/03/7_d98ui35la.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/03/7_d98ui35la.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/03/7_d98ui35la.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/03/7_d98ui35la.jpg?resize=1536%2C1024&amp;ssl=1 1536w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/03/7_d98ui35la.jpg?w=1800&amp;ssl=1 1800w" sizes="(max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2724" class="wp-caption-text">Photo by <a href="https://unsplash.com/@ufukyilmaz?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">Ufuk Yilmaz</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;">Autonomous systems are often described as the future—but in many ways, they are still struggling with a very human problem: <strong>learning from delayed consequences</strong>.</p>
<p style="text-align: justify;">In reinforcement learning, this challenge is known as the <strong>delayed reward problem</strong>. An agent performs a sequence of actions, but the reward—or feedback—arrives much later. By then, it becomes difficult to determine which action actually led to success or failure. For systems operating in complex, dynamic environments—like unmanned aerial vehicles (UAVs)—this problem becomes even more pronounced.</p>
<p style="text-align: justify;">In this post, I want to share insights from <a href="https://link.springer.com/chapter/10.1007/978-981-95-1357-4_28">a research project focused on addressing this challenge in the context of <strong>multi-UAV systems</strong></a>, and how introducing a concept as simple—and as powerful—as <em>curiosity</em> can significantly improve learning.</p>
<hr />
<div class="iframely-embed">
<div class="iframely-responsive" style="height: 170px; padding-bottom: 0;"></div>
</div>
<p><script async src="https://iframely.net/embed.js"></script></p>
<h2 style="text-align: justify;"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f9e0.png" alt="🧠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> The Problem with Learning Too Late</h2>
<p style="text-align: justify;">Imagine trying to learn how to fly a drone, but you only receive feedback minutes after making a mistake. You wouldn’t know what exactly went wrong. Reinforcement learning agents face a similar issue.</p>
<p style="text-align: justify;">In UAV tracking tasks, for example:</p>
<ul style="text-align: justify;">
<li>A drone may take dozens of actions before receiving a reward</li>
<li>The learning signal becomes weak and noisy</li>
<li>Training becomes unstable and slow</li>
</ul>
<p style="text-align: justify;">This is particularly problematic in <strong>real-time systems</strong>, where decisions must be made continuously and reliably.</p>
<hr />
<h2 style="text-align: justify;"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f52c.png" alt="🔬" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Building a Realistic UAV Testbed</h2>
<p style="text-align: justify;">To study this problem, we developed a <strong>multi-UAV testbed</strong> that combines:</p>
<ul style="text-align: justify;">
<li>A high-fidelity flight simulator (FlightGear)</li>
<li>A Flight Dynamics Model (JSBSim)</li>
<li>A real-time communication layer using UDP</li>
<li>Reinforcement learning models integrated directly into the control loop</li>
</ul>
<p style="text-align: justify;">This setup allows UAVs to:</p>
<ul style="text-align: justify;">
<li>Interact with a realistic environment</li>
<li>Learn from continuous feedback</li>
<li>Be evaluated under dynamic flight conditions</li>
</ul>
<p style="text-align: justify;">The goal was not just to simulate intelligence—but to <strong>create a platform where intelligent behavior can emerge</strong>.</p>
<hr />
<div class="iframely-embed">
<div class="iframely-responsive" style="height: 170px; padding-bottom: 0;"></div>
</div>
<p><script async src="https://iframely.net/embed.js"></script></p>
<h2 style="text-align: justify;"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2699.png" alt="⚙" class="wp-smiley" style="height: 1em; max-height: 1em;" /> A Hybrid Learning Approach</h2>
<p style="text-align: justify;">One of the key design decisions was to use <strong>different reinforcement learning strategies for different roles</strong>:</p>
<ul style="text-align: justify;">
<li>The <strong>target UAV</strong> is controlled using <em>Advantage Actor-Critic (A2C)</em><br />
→ This ensures stable and predictable flight behavior</li>
<li>The <strong>tracking UAV</strong> is controlled using <em>Asynchronous Advantage Actor-Critic (A3C)</em><br />
→ This enables parallel exploration and faster learning</li>
</ul>
<p style="text-align: justify;">This separation is important. In multi-agent systems, if all agents behave unpredictably, the environment becomes chaotic. By keeping one agent stable and allowing the other to explore, we create a <strong>balanced learning ecosystem</strong>.</p>
<hr />
<h2 style="text-align: justify;"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f4a1.png" alt="💡" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Introducing Curiosity into Machines</h2>
<p style="text-align: justify;">The real breakthrough comes from integrating an <strong>Intrinsic Curiosity Module (ICM)</strong> into the learning process.</p>
<p style="text-align: justify;">Instead of relying only on external rewards (e.g., “you successfully tracked the target”), the UAV also receives <strong>intrinsic rewards</strong> based on how <em>surprised</em> it is by new experiences.</p>
<p style="text-align: justify;">In simple terms:</p>
<ul style="text-align: justify;">
<li>If the UAV encounters something unexpected → it gets rewarded</li>
<li>If it explores new states → it gets encouraged</li>
<li>If it keeps doing the same thing → rewards diminish</li>
</ul>
<p style="text-align: justify;">This transforms learning in a fundamental way.</p>
<hr />
<h2 style="text-align: justify;"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f501.png" alt="🔁" class="wp-smiley" style="height: 1em; max-height: 1em;" /> From Sparse Rewards to Continuous Learning</h2>
<p style="text-align: justify;">By combining external and intrinsic rewards, we effectively turn:</p>
<blockquote><p><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/274c.png" alt="❌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Sparse, delayed feedback<br />
into<br />
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Continuous, meaningful learning signals</p></blockquote>
<p style="text-align: justify;">This allows the UAV to:</p>
<ul style="text-align: justify;">
<li>Keep learning even when external rewards are absent</li>
<li>Explore more effectively</li>
<li>Adapt to changing environments in real time</li>
</ul>
<p style="text-align: justify;">Curiosity acts as a <strong>bridge over the gap created by delayed rewards</strong>.</p>
<hr />
<h2 style="text-align: justify;"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f4c8.png" alt="📈" class="wp-smiley" style="height: 1em; max-height: 1em;" /> What We Observed</h2>
<p style="text-align: justify;">The results were both encouraging and insightful:</p>
<ul style="text-align: justify;">
<li>Traditional methods showed <strong>initial learning followed by instability</strong></li>
<li>The curiosity-driven approach demonstrated:
<ul>
<li>Smoother learning curves</li>
<li>Better exploration</li>
<li>More reliable tracking behavior</li>
</ul>
</li>
</ul>
<p style="text-align: justify;">In practical terms, the tracking UAV was able to:</p>
<ul style="text-align: justify;">
<li>Maintain pursuit more effectively</li>
<li>Adapt to variations in the target’s movement</li>
<li>Continue learning even in uncertain conditions</li>
</ul>
<hr />
<h2 style="text-align: justify;"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f30d.png" alt="🌍" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Why This Matters</h2>
<p style="text-align: justify;">Most UAV research focuses on:</p>
<ul style="text-align: justify;">
<li>Flight control</li>
<li>Navigation</li>
<li>Multi-agent coordination</li>
</ul>
<p style="text-align: justify;">But relatively little attention is given to <strong>how these systems actually learn over time</strong>, especially under imperfect conditions.</p>
<p style="text-align: justify;">This work highlights an important shift:</p>
<blockquote><p>Instead of designing systems that rely solely on external feedback, we can build systems that <strong>motivate themselves to learn</strong>.</p></blockquote>
<p style="text-align: justify;">This idea has implications far beyond UAVs:</p>
<ul style="text-align: justify;">
<li>Autonomous vehicles</li>
<li>Robotics</li>
<li>Smart surveillance systems</li>
<li>Distributed AI systems</li>
</ul>
<hr />
<h2 style="text-align: justify;"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f52d.png" alt="🔭" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Looking Ahead</h2>
<p style="text-align: justify;">There is still much to explore.</p>
<p style="text-align: justify;">Future directions include:</p>
<ul style="text-align: justify;">
<li>Expanding to <strong>multi-UAV swarm coordination</strong></li>
<li>Incorporating <strong>vision-based perception</strong></li>
<li>Exploring advanced algorithms like <strong>Proximal Policy Optimization (PPO)</strong></li>
<li>Moving toward <strong>real-world deployment and digital twins</strong></li>
</ul>
<p style="text-align: justify;">Each of these steps brings us closer to systems that are not just automated—but truly <strong>autonomous</strong>.</p>
<hr />
<h2 style="text-align: justify;"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f9e9.png" alt="🧩" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Final Thoughts</h2>
<p style="text-align: justify;">Curiosity is often seen as a uniquely human trait—the drive to explore, to learn, to understand the unknown.</p>
<p style="text-align: justify;">But what happens when machines begin to exhibit the same behavior?</p>
<p style="text-align: justify;">This research suggests that by embedding curiosity into artificial systems, we can overcome some of the most persistent challenges in learning—transforming hesitation into exploration, and delay into discovery.</p>
<p style="text-align: justify;">And perhaps, in doing so, we move one step closer to building machines that don’t just follow instructions—but <strong>learn how to think for themselves</strong>.</p>The post <a href="https://psyopsprime.com/ideas/teaching-machines-to-be-curious-a-step-toward-intelligent-uav-swarms/">Teaching Machines to Be Curious: A Step Toward Intelligent UAV Swarms</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/ideas/teaching-machines-to-be-curious-a-step-toward-intelligent-uav-swarms/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2723</post-id>	</item>
		<item>
		<title>Demystifying the &#8220;Imaginary&#8221;: How &#8220;j&#8221; and the Complex Plane Make DSP Click</title>
		<link>https://psyopsprime.com/digital-signal-processing/demystifying-the-imaginary-how-j-and-the-complex-plane-make-dsp-click/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=demystifying-the-imaginary-how-j-and-the-complex-plane-make-dsp-click</link>
					<comments>https://psyopsprime.com/digital-signal-processing/demystifying-the-imaginary-how-j-and-the-complex-plane-make-dsp-click/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 29 Jan 2026 13:06:16 +0000</pubDate>
				<category><![CDATA[Digital Signal Processing]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[digital signal processing]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2687</guid>

					<description><![CDATA[<p>If you&#8217;ve ever dipped your toes into Digital Signal Processing (DSP), you&#8217;ve probably encountered the mythical beast known as the &#8220;complex plane&#8221; and its equally</p>
The post <a href="https://psyopsprime.com/digital-signal-processing/demystifying-the-imaginary-how-j-and-the-complex-plane-make-dsp-click/">Demystifying the “Imaginary”: How “j” and the Complex Plane Make DSP Click</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<div id="model-response-message-contentr_6b67367cc8f9c967" class="markdown markdown-main-panel enable-updated-hr-color" dir="ltr" aria-live="polite" aria-busy="false">
<figure id="attachment_2688" aria-describedby="caption-attachment-2688" style="width: 420px" class="wp-caption alignleft"><a href="https://psyopsprime.com/photo-by-viktor-ruppert/" rel="attachment wp-att-2688"><img data-recalc-dims="1" decoding="async" data-attachment-id="2688" data-permalink="https://psyopsprime.com/photo-by-viktor-ruppert/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/xlv_mekc2bm.jpg?fit=800%2C1200&amp;ssl=1" data-orig-size="800,1200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by Viktor Ruppert" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@vktr_rpprt?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Viktor Ruppert&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/xlv_mekc2bm.jpg?fit=683%2C1024&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2688" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/xlv_mekc2bm.jpg?resize=420%2C280&#038;ssl=1" alt="black and white spiral staircase" width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/xlv_mekc2bm.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/xlv_mekc2bm.jpg?resize=300%2C200&amp;ssl=1 300w" sizes="(max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2688" class="wp-caption-text">Photo by <a href="https://unsplash.com/@vktr_rpprt?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">Viktor Ruppert</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;" data-path-to-node="0">If you&#8217;ve ever dipped your toes into Digital Signal Processing (DSP), you&#8217;ve probably encountered the mythical beast known as the &#8220;complex plane&#8221; and its equally enigmatic resident, the imaginary number <span class="math-inline" data-math="j" data-index-in-node="203">$j$</span> (or <span class="math-inline" data-math="i" data-index-in-node="209">$i$</span> in math circles). For many, these concepts are where DSP goes from &#8220;a bit tricky&#8221; to &#8220;utterly bewildering.&#8221;</p>
<p style="text-align: justify;" data-path-to-node="2">But what if I told you that, for engineers, <em><span class="math-inline" data-math="j" data-index-in-node="44">j</span></em> isn&#8217;t really &#8220;imaginary&#8221; at all? What if it&#8217;s actually one of the most practical, intuitive tools we have?</p>
<p style="text-align: justify;" data-path-to-node="3">Richard Lyons, in his seminal &#8220;Understanding Digital Signal Processing,&#8221; has a gift for making these intimidating topics not just understandable, but <i data-path-to-node="3" data-index-in-node="150">obvious</i>. Let&#8217;s unpack his wisdom and reveal the real-world power of <em><span class="math-inline" data-math="j" data-index-in-node="218">j</span></em> and the complex plane.</p>
<hr data-path-to-node="4" />
<h3 style="text-align: justify;" data-path-to-node="5">Step 1: Beyond the Number Line – The Complex Plane</h3>
<p style="text-align: justify;" data-path-to-node="6">Forget the simple, one-dimensional number line we learned in grad school. That line is great for showing &#8220;how much,&#8221; but in DSP, we often need to know &#8220;how much&#8221; <i data-path-to-node="6" data-index-in-node="163">and</i> &#8220;where it&#8217;s at&#8221; in a cycle. Think of a spinning wheel: you need to know its speed <i data-path-to-node="6" data-index-in-node="249">and</i> its current position.</p>
<p style="text-align: justify;" data-path-to-node="7">Enter the <b data-path-to-node="7" data-index-in-node="10">Complex Plane</b>.</p>
<p style="text-align: justify;" data-path-to-node="8">Instead of a line, imagine a <b data-path-to-node="8" data-index-in-node="29">two-dimensional grid</b>:</p>
<ul style="text-align: justify;" data-path-to-node="9">
<li>
<p data-path-to-node="9,0,0"><b data-path-to-node="9,0,0" data-index-in-node="0">The Horizontal Axis (Real Axis):</b> This is your familiar number line. We use it to represent the &#8220;in-phase&#8221; part of a signal.</p>
</li>
<li>
<p data-path-to-node="9,1,0"><b data-path-to-node="9,1,0" data-index-in-node="0">The Vertical Axis (Imaginary Axis):</b> This is the new kid on the block. It represents the &#8220;quadrature&#8221; (or 90-degree shifted) part of a signal.</p>
</li>
</ul>
<p style="text-align: justify;" data-path-to-node="10">Now, instead of just a single number, any point on this plane is a <b data-path-to-node="10" data-index-in-node="67">complex number</b>, made up of a real part and an imaginary part. We write it as</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">a + jb</div></div>
<p>, where</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">a</div></div>
<p>is the real part and</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">jb</div></div>
<p>is the imaginary part.</p>
<h3 style="text-align: justify;" data-path-to-node="11">Step 2: <em><span class="math-inline" data-math="j" data-index-in-node="8">j</span></em> – Not Imaginary, But a Rotational Operator!</h3>
<p style="text-align: justify;" data-path-to-node="12">Here&#8217;s where Lyons flips the script. Stop thinking of <em><span class="math-inline" data-math="j" data-index-in-node="54">j</span></em> as &#8220;the square root of -1&#8221; in a purely abstract sense. In DSP, <em><span class="math-inline" data-math="j" data-index-in-node="119">j</span></em> has a concrete, visual job: it&#8217;s a <b data-path-to-node="12" data-index-in-node="156">90-degree counter-clockwise rotation operator </b><sup class="modern-footnotes-footnote ">1</sup><b data-path-to-node="12" data-index-in-node="156">.</b></p>
<p style="text-align: justify;" data-path-to-node="13">Let&#8217;s see it in action:</p>
<ol style="text-align: justify;" start="1" data-path-to-node="14">
<li>
<p data-path-to-node="14,0,0">Start with a real number, say</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">1</div></div>
<p>, on the positive Real Axis.</p>
</li>
<li>
<p data-path-to-node="14,1,0">Multiply</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">1</div></div>
<p>by <em><span class="math-inline" data-math="j" data-index-in-node="14">j</span></em>:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">1 * j = j</div></div>
<p>. You&#8217;ve rotated</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">1</div></div>
<p>by 90 degrees counter-clockwise, and now you&#8217;re at</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">j</div></div>
<p>on the positive Imaginary Axis.</p>
</li>
<li>
<p data-path-to-node="14,2,0">Multiply</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">j</div></div>
<p>by <em><span class="math-inline" data-math="j" data-index-in-node="14">j</span></em> again:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">j * j = j^2</div></div>
<p>. You&#8217;ve rotated another 90 degrees. You&#8217;re now at</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">-1</div></div>
<p>on the negative Real Axis.</p>
</li>
<li>
<p data-path-to-node="14,3,0">Multiply</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">-1</div></div>
<p>by <em><span class="math-inline" data-math="j" data-index-in-node="15">j</span></em>:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">-1 * j = -j</div></div>
<p>. Another 90-degree rotation. You&#8217;re now at</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">-j</div></div>
<p>on the negative Imaginary Axis.</p>
</li>
<li>
<p data-path-to-node="14,4,0">Multiply</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">-j</div></div>
<p>by <span class="math-inline" data-math="j" data-index-in-node="15">$j$</span>:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">-j * j = -j^2 = -(-1) = 1</div></div>
<p>. One more 90-degree rotation brings you back to</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">1</div></div>
<p>on the positive Real Axis.</p>
</li>
</ol>
<p style="text-align: justify;" data-path-to-node="15">See? <em><span class="math-inline" data-math="j" data-index-in-node="5">j</span></em> isn&#8217;t making things disappear into some alternate reality. It&#8217;s simply <b data-path-to-node="15" data-index-in-node="78">turning things</b> on a two-dimensional surface. This is the core insight that unlocks so much of DSP. This is the power of <em>j. </em>And<em> j </em>has brought us a long way.</p>
<h3 style="text-align: justify;" data-path-to-node="16">Step 3: Spinning Signals – The Power of Phasors</h3>
<p style="text-align: justify;" data-path-to-node="17">Now, let&#8217;s bring it back to signals. Many real-world signals, like sound waves or radio waves, are sinusoidal—they oscillate up and down. Instead of describing them with messy sines and cosines, DSP engineers represent them as <b data-path-to-node="17" data-index-in-node="227">phasors</b>: points that spin around the origin of the complex plane. Basically such waves do not oscillate up and down. They propagate from source to the sink in a helical manner.</p>
<p style="text-align: justify;" data-path-to-node="18">The magic comes with <b data-path-to-node="18" data-index-in-node="21">Euler&#8217;s Equation</b>:</p>
<div style="text-align: justify;" data-path-to-node="19">
<div class="math-block" data-math="e^{j\theta} = \cos(\theta) + j\sin(\theta)">$$e^{j\theta} = \cos(\theta) + j\sin(\theta)$$</div>
</div>
<p style="text-align: justify;" data-path-to-node="20">This deceptively simple equation is the bedrock of modern DSP. It tells us that a complex exponential (the left side, which describes something spinning) is made up of a cosine wave (its projection onto the Real axis) and a sine wave (its projection onto the Imaginary axis).</p>
<p style="text-align: justify;" data-path-to-node="21"><b data-path-to-node="21" data-index-in-node="0">Why is this a big deal?</b></p>
<ul style="text-align: justify;" data-path-to-node="22">
<li>
<p data-path-to-node="22,0,0"><b data-path-to-node="22,0,0" data-index-in-node="0">Simplification:</b> Multiplying complex exponentials (which involves just adding their angles) is far easier than wrestling with trigonometric identities. Want to shift a signal&#8217;s phase? Just add an angle to its complex representation.</p>
</li>
<li>
<p data-path-to-node="22,1,0"><b data-path-to-node="22,1,0" data-index-in-node="0">Complete Picture:</b> A single complex number can encapsulate both the <b data-path-to-node="22,1,0" data-index-in-node="67">amplitude</b> (how big the signal is, represented by the length of the phasor) and the <b data-path-to-node="22,1,0" data-index-in-node="150">phase</b> (where it is in its cycle, represented by its angle on the complex plane).</p>
</li>
</ul>
<h3 style="text-align: justify;" data-path-to-node="23">Step 4: The &#8220;Mystery&#8221; of Negative Frequency Solved</h3>
<p style="text-align: justify;" data-path-to-node="24">With the complex plane and spinning phasors in hand, &#8220;negative frequency&#8221; also becomes intuitive.</p>
<p style="text-align: justify;" data-path-to-node="25">Imagine our phasor spinning.</p>
<ul style="text-align: justify;" data-path-to-node="26">
<li>
<p data-path-to-node="26,0,0"><b data-path-to-node="26,0,0" data-index-in-node="0">Positive Frequency:</b> The phasor spins <b data-path-to-node="26,0,0" data-index-in-node="37">counter-clockwise</b>.</p>
</li>
<li>
<p data-path-to-node="26,1,0"><b data-path-to-node="26,1,0" data-index-in-node="0">Negative Frequency:</b> The phasor spins <b data-path-to-node="26,1,0" data-index-in-node="37">clockwise</b>.</p>
</li>
</ul>
<p style="text-align: justify;" data-path-to-node="27">A real-world sine wave, the kind you measure with an oscilloscope, is actually the sum of <i data-path-to-node="27" data-index-in-node="90">two</i> complex phasors: one spinning counter-clockwise (positive frequency) and one spinning clockwise (negative frequency). Their imaginary components cancel out, leaving only the real oscillation we observe.</p>
<div style="text-align: justify;" data-path-to-node="28">
<div class="math-block" data-math="\cos(\omega t) = \frac{e^{j\omega t} + e^{-j\omega t}}{2}">$$\cos(\omega t) = \frac{e^{j\omega t} + e^{-j\omega t}}{2}$$</div>
</div>
<p style="text-align: justify;" data-path-to-node="29">On a spectrum analyzer, when you see a spike at 100 Hz, you&#8217;ll also see a mirrored spike at -100 Hz for a real signal. They are two sides of the same coin, both necessary to describe that single real cosine wave.</p>
<p style="text-align: justify;" data-path-to-node="30"><b data-path-to-node="30" data-index-in-node="0">The Practical Benefit:</b> By converting real signals into purely complex (or &#8220;analytic&#8221;) signals through techniques like Hilbert transforms, we can eliminate one of these mirrored frequencies. This effectively <b data-path-to-node="30" data-index-in-node="207">doubles our usable bandwidth</b> and simplifies many advanced DSP operations, especially in communications systems (like radio and cellular data).</p>
<h3 style="text-align: justify;" data-path-to-node="31">The Takeaway</h3>
<p style="text-align: justify;" data-path-to-node="32">Richard Lyons strips away the fear surrounding &#8220;imaginary&#8221; numbers by showing their practical utility. The complex plane isn&#8217;t an abstract mathematical playground; it&#8217;s a <b data-path-to-node="32" data-index-in-node="171">two-dimensional whiteboard</b> where we can draw and manipulate signals more effectively.</p>
<p style="text-align: justify;" data-path-to-node="33">Understanding <em><span class="math-inline" data-math="j" data-index-in-node="14">j</span></em> as a rotation, and grasping how phasors spin on this plane, unlocks the intuition behind powerful concepts like Euler&#8217;s Equation and negative frequency. These aren&#8217;t just theoretical constructs—they are the foundational tools that allow us to build everything from your smartphone to high-fidelity audio systems.</p>
<p style="text-align: justify;" data-path-to-node="34">So, next time you see <em><span class="math-inline" data-math="j" data-index-in-node="22">j</span></em>, don&#8217;t be intimidated. Just remember: it&#8217;s simply turning things around, making the complex world of signals a whole lot clearer!</p>
</div>The post <a href="https://psyopsprime.com/digital-signal-processing/demystifying-the-imaginary-how-j-and-the-complex-plane-make-dsp-click/">Demystifying the “Imaginary”: How “j” and the Complex Plane Make DSP Click</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.<div>1&nbsp;&nbsp;&nbsp;&nbsp;However, I would like to emphasize that rotation happens due to the virtue of it being the square root of -1.</div>]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/digital-signal-processing/demystifying-the-imaginary-how-j-and-the-complex-plane-make-dsp-click/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2687</post-id>	</item>
		<item>
		<title>Balancing Fairness and Accuracy in AI: A Causal, Multi-Objective Perspective</title>
		<link>https://psyopsprime.com/machine-learning/balancing-fairness-and-accuracy-in-ai-a-causal-multi-objective-perspective/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=balancing-fairness-and-accuracy-in-ai-a-causal-multi-objective-perspective</link>
					<comments>https://psyopsprime.com/machine-learning/balancing-fairness-and-accuracy-in-ai-a-causal-multi-objective-perspective/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Mon, 26 Jan 2026 14:51:22 +0000</pubDate>
				<category><![CDATA[Machine Learning]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[evolutionary algorithms]]></category>
		<category><![CDATA[grammatical evolution]]></category>
		<category><![CDATA[machine learning]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2682</guid>

					<description><![CDATA[<p>Artificial Intelligence systems are no longer confined to research labs. They influence decisions about loans, employment, healthcare, and criminal justice—domains where fairness is not optional.</p>
The post <a href="https://psyopsprime.com/machine-learning/balancing-fairness-and-accuracy-in-ai-a-causal-multi-objective-perspective/">Balancing Fairness and Accuracy in AI: A Causal, Multi-Objective Perspective</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2683" aria-describedby="caption-attachment-2683" style="width: 420px" class="wp-caption alignleft"><a href="https://psyopsprime.com/photo-by-roman-kraft/" rel="attachment wp-att-2683"><img data-recalc-dims="1" loading="lazy" decoding="async" data-attachment-id="2683" data-permalink="https://psyopsprime.com/photo-by-roman-kraft/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/rtdwtrdvyqg.jpg?fit=1773%2C1200&amp;ssl=1" data-orig-size="1773,1200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by Roman Kraft" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@iamromankraft?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Roman Kraft&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/rtdwtrdvyqg.jpg?fit=750%2C508&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2683" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/rtdwtrdvyqg.jpg?resize=420%2C280&#038;ssl=1" alt="wooden tray beside pots" width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/rtdwtrdvyqg.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/rtdwtrdvyqg.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/rtdwtrdvyqg.jpg?zoom=2&amp;resize=420%2C280&amp;ssl=1 840w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2026/01/rtdwtrdvyqg.jpg?zoom=3&amp;resize=420%2C280&amp;ssl=1 1260w" sizes="auto, (max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2683" class="wp-caption-text">Photo by <a href="https://unsplash.com/@iamromankraft?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">Roman Kraft</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;">Artificial Intelligence systems are no longer confined to research labs. They influence decisions about loans, employment, healthcare, and criminal justice—domains where <em>fairness is not optional</em>. Yet, much of modern machine learning still treats fairness as a secondary concern: something to be fixed <em>after</em> a model has already learned its patterns.</p>
<p style="text-align: justify;">One of the most persistent assumptions in this space is that <strong>fairness and accuracy are inherently at odds</strong>. Improve one, and the other must suffer. But is this trade-off inevitable—or is it simply a limitation of how we frame the problem?</p>
<p style="text-align: justify;">In our recent work, <a href="https://ieeexplore.ieee.org/abstract/document/11291472"><em>A Multi-Objective Approach to Balance Fairness and Accuracy</em></a>, we argue for a different perspective: fairness should be treated not as a constraint or post-processing correction, but as a <strong>first-class optimisation objective</strong>, explored alongside accuracy rather than subordinated to it. I would like to congratulate my co-authors about this who are: 1. the doctoral candidate Zahid Irfan, Dr. Roisin Loughran, and Professor Fergal Mc Caffery. Basically this is the work was done by Zahid, who is a colleague as well as a very close friend of mine.</p>
<hr />
<h3 style="text-align: justify;">Why Bias Persists in Machine Learning</h3>
<p style="text-align: justify;">Bias in AI systems often reflects deeper structural issues: biased data collection, historical inequalities, and spurious correlations that models eagerly exploit. When these correlations involve <em>protected attributes</em>—such as sex, age, or race—the resulting systems may achieve impressive accuracy while still producing unfair outcomes.</p>
<p style="text-align: justify;">Traditional bias-mitigation approaches typically fall into three categories:</p>
<ul style="text-align: justify;">
<li><strong>Pre-processing</strong>, where the data is modified before training</li>
<li><strong>In-processing</strong>, where fairness is incorporated into the learning algorithm</li>
<li><strong>Post-processing</strong>, where predictions are adjusted after training</li>
</ul>
<p style="text-align: justify;">While all three have their place, many approaches operate largely as <em>black-box fixes</em>. They may improve a fairness metric, but often at the cost of interpretability and deeper understanding.</p>
<p style="text-align: justify;">This is where <strong>causal modelling</strong> becomes essential.</p>
<hr />
<h3 style="text-align: justify;">Bringing Causality into the Picture</h3>
<p style="text-align: justify;">Correlation alone cannot tell us <em>why</em> a model behaves unfairly. Causal models, on the other hand, explicitly represent <strong>cause–effect relationships</strong> between variables.</p>
<p style="text-align: justify;">We use <strong>Causal Bayesian Networks (CBNs)</strong>—directed acyclic graphs where nodes represent variables and edges encode causal influence. These structures allow us to reason about dependencies, confounders, and interventions, rather than relying solely on statistical association.</p>
<p style="text-align: justify;">However, learning causal structures from data is a notoriously difficult problem. The search space of possible graphs grows exponentially, making exhaustive search infeasible.</p>
<p style="text-align: justify;">To address this, we turned to <strong>Evolutionary Computation</strong>.</p>
<hr />
<h3 style="text-align: justify;">Evolving Causal Graphs with Grammatical Evolution</h3>
<p style="text-align: justify;">Our approach uses <strong>Grammatical Evolution (GE)</strong> to automatically generate and evolve causal graph structures. A context-free grammar constrains the search space to <em>valid causal graphs</em>, while still allowing a rich variety of structures to emerge.</p>
<p style="text-align: justify;">Each individual in the evolutionary population represents a candidate causal graph. From this graph, we build a CBN, train it on data, and evaluate its performance.</p>
<p style="text-align: justify;">Crucially, we do not evaluate performance using a single objective.</p>
<hr />
<h3 style="text-align: justify;">Fairness and Accuracy as Joint Objectives</h3>
<p style="text-align: justify;">Instead of collapsing everything into one score, we adopt a <strong>multi-objective optimisation</strong> framework using <strong>NSGA-II</strong>, a well-established evolutionary algorithm.</p>
<p style="text-align: justify;">We optimise two objectives simultaneously:</p>
<ol style="text-align: justify;">
<li><strong>Accuracy</strong>, measuring predictive performance</li>
<li><strong>Fairness</strong>, measured using <strong>Equal Opportunity Difference (EOD)</strong>, which captures disparities in true positive rates between protected groups</li>
</ol>
<p style="text-align: justify;">This produces not a single “best” model, but a <strong>Pareto front</strong>—a set of non-dominated solutions representing different fairness–accuracy trade-offs.</p>
<p style="text-align: justify;">This is a powerful shift in mindset. Rather than asking <em>“What is the best model?”</em>, we ask:<br />
<strong>“Which trade-off best fits the ethical and operational requirements of this domain?”</strong></p>
<hr />
<h3 style="text-align: justify;">What We Observed</h3>
<p style="text-align: justify;">Using the German Credit dataset as a case study, our experiments showed that:</p>
<ul style="text-align: justify;">
<li>It is possible to achieve <strong>very low fairness disparity</strong> while maintaining <strong>competitive accuracy</strong></li>
<li>Multiple causal graphs can yield similar performance, offering flexibility and interpretability</li>
<li>The evolved graphs are <strong>non-trivial</strong>, capturing meaningful dependencies among features</li>
<li>Practitioners can choose models that slightly sacrifice accuracy for substantial gains in fairness—or vice versa</li>
</ul>
<p style="text-align: justify;">Importantly, the causal graphs themselves provide insight. They allow us to inspect <em>how</em> features influence outcomes, opening the door to causal reasoning, domain validation, and future intervention analysis.</p>
<hr />
<h3 style="text-align: justify;">Why This Matters</h3>
<p style="text-align: justify;">Fair AI is not just about metrics—it’s about <strong>understanding</strong>.</p>
<p style="text-align: justify;">By combining causality with multi-objective evolutionary optimisation, this work demonstrates that:</p>
<ul style="text-align: justify;">
<li>Fairness does not have to be an afterthought</li>
<li>Accuracy does not have to be blindly maximised</li>
<li>Interpretability and performance can coexist</li>
</ul>
<p style="text-align: justify;">Most importantly, it reframes fairness as an <strong>optimisation problem</strong>, not a moral constraint imposed from outside the model.</p>
<hr />
<h3 style="text-align: justify;">Looking Ahead</h3>
<p style="text-align: justify;">Future directions include:</p>
<ul style="text-align: justify;">
<li>Exploring additional fairness metrics to capture different notions of equity</li>
<li>Extending experiments to larger and more diverse datasets</li>
<li>Incorporating causal interventions and counterfactual analysis</li>
<li>Further strengthening the link between ethical requirements and model design</li>
</ul>
<p style="text-align: justify;">As AI systems continue to shape society, approaches that integrate <strong>ethics, causality, and optimisation</strong> will be essential—not optional.</p>
<p style="text-align: justify;">Fairness is not something we bolt onto AI.<br />
It is something we <em>design for</em></p>The post <a href="https://psyopsprime.com/machine-learning/balancing-fairness-and-accuracy-in-ai-a-causal-multi-objective-perspective/">Balancing Fairness and Accuracy in AI: A Causal, Multi-Objective Perspective</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/machine-learning/balancing-fairness-and-accuracy-in-ai-a-causal-multi-objective-perspective/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2682</post-id>	</item>
		<item>
		<title>Banking App Security: Why SharedPreferences is a Liability</title>
		<link>https://psyopsprime.com/science/banking-app-security-why-sharedpreferences-is-a-liability/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=banking-app-security-why-sharedpreferences-is-a-liability</link>
					<comments>https://psyopsprime.com/science/banking-app-security-why-sharedpreferences-is-a-liability/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Mon, 22 Dec 2025 14:05:41 +0000</pubDate>
				<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Cyber Security]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2665</guid>

					<description><![CDATA[<p>In mobile development, SharedPreferences (Android) and UserDefaults (iOS) are the &#8220;go-to&#8221; tools for saving simple settings like a user&#8217;s theme preference or a &#8220;Remember Me&#8221;</p>
The post <a href="https://psyopsprime.com/science/banking-app-security-why-sharedpreferences-is-a-liability/">Banking App Security: Why SharedPreferences is a Liability</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2666" aria-describedby="caption-attachment-2666" style="width: 420px" class="wp-caption alignleft"><a href="https://psyopsprime.com/photo-by-topique-sl/" rel="attachment wp-att-2666"><img data-recalc-dims="1" loading="lazy" decoding="async" data-attachment-id="2666" data-permalink="https://psyopsprime.com/photo-by-topique-sl/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/xvytupkcliu.jpg?fit=1920%2C1078&amp;ssl=1" data-orig-size="1920,1078" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by Topique SL" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@topiquesl?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Topique SL&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/xvytupkcliu.jpg?fit=750%2C421&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2666" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/xvytupkcliu.jpg?resize=420%2C280&#038;ssl=1" alt="a cell phone sitting on top of a computer keyboard" width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/xvytupkcliu.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/xvytupkcliu.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/xvytupkcliu.jpg?zoom=2&amp;resize=420%2C280&amp;ssl=1 840w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/xvytupkcliu.jpg?zoom=3&amp;resize=420%2C280&amp;ssl=1 1260w" sizes="auto, (max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2666" class="wp-caption-text">Photo by <a href="https://unsplash.com/@topiquesl?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">Topique SL</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;" data-pm-slice="0 0 []">In mobile development,</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">SharedPreferences</div></div>
<p>(Android) and</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">UserDefaults</div></div>
<p>(iOS) are the &#8220;go-to&#8221; tools for saving simple settings like a user&#8217;s theme preference or a &#8220;Remember Me&#8221; toggle. However, using these for <strong>session tokens</strong> or <strong>authentication secrets</strong> in a banking application is a critical security flaw.</p>
<p style="text-align: justify;">Even on a non-rooted device, this practice exposes users to significant risks and fails to meet modern financial security standards.</p>
<h2 style="text-align: justify;">The Risk: The &#8220;Backup&#8221; Backdoor</h2>
<p style="text-align: justify;">The primary risk of storing a session token in</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">SharedPreferences</div></div>
<p>on a non-rooted device is <strong>Unauthorized Data Extraction via Backups.</strong></p>
<h3 style="text-align: justify;">How the Attack Works</h3>
<p style="text-align: justify;">By default, Android’s backup system (via</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">adb backup</div></div>
<p>or cloud sync) includes the application&#8217;s private data folder, where</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">SharedPreferences</div></div>
<p>files are stored as plain-text XML.</p>
<ol style="text-align: justify;">
<li><strong>Physical Access:</strong> If an attacker gets physical access to an unlocked device for just a few minutes, they can trigger a backup to an external machine.</li>
<li><strong>The Extraction:</strong> Because
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">SharedPreferences</div></div>
<p>is not encrypted by the OS, the attacker can extract the</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">shared_prefs/*.xml</div></div>
<p>file.</li>
<li><strong>Session Hijacking:</strong> The attacker now has a valid, active session token. They can &#8220;replay&#8221; this token from their own device or a browser to bypass the login screen and gain full access to the victim&#8217;s bank account without ever needing the password or MFA.</li>
</ol>
<h3 style="text-align: justify;">The &#8220;Malware&#8221; Pivot</h3>
<p style="text-align: justify;">While Android isolates apps through &#8220;sandboxing,&#8221; vulnerabilities in the OS or other high-privilege apps can sometimes allow a malicious app to bypass these boundaries. If a token is stored in plain text, any process that manages to escalate privileges can scrape the token instantly.</p>
<h2 style="text-align: justify;">The Modern Standard: Hardware-Backed Security</h2>
<p style="text-align: justify;">To meet modern security standards (like OWASP MASVS), sensitive data must be stored in a location that provides <strong>encryption at rest</strong> and <strong>hardware-level isolation</strong>.</p>
<h3 style="text-align: justify;">The Secure Alternative: Android Keystore &amp; EncryptedSharedPreferences</h3>
<p style="text-align: justify;">The correct approach for a banking application is to use the <strong>Android Keystore System</strong> in conjunction with <strong>EncryptedSharedPreferences</strong>.</p>
<h4 style="text-align: justify;">1. Android Keystore (The Vault)</h4>
<p style="text-align: justify;">The Keystore does not store the token itself; it stores the <strong>cryptographic keys</strong> used to encrypt the token. These keys are stored in a <strong>Trusted Execution Environment (TEE)</strong> or a <strong>Secure Element (SE)</strong>—dedicated hardware on the phone that is physically isolated from the main Android OS. Even if the OS is compromised, the keys cannot be extracted.</p>
<h4 style="text-align: justify;">2. EncryptedSharedPreferences (The Wrapper)</h4>
<p style="text-align: justify;">This is a part of the Jetpack Security library. It acts as a wrapper around the standard SharedPreferences but adds two critical layers:</p>
<ul style="text-align: justify;">
<li><strong>Value Encryption:</strong> Every value (like your session token) is encrypted using keys managed by the Keystore.</li>
<li><strong>Key Encryption:</strong> The keys themselves are protected, ensuring that even if an attacker steals the XML file, they see only encrypted gibberish.</li>
</ul>
<h3 style="text-align: justify;">Why This Works</h3>
<p style="text-align: justify;">If an attacker triggers a backup of an app using</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">EncryptedSharedPreferences</div></div>
<p>, they will successfully steal the XML file, but <strong>they cannot steal the keys</strong> from the hardware-backed Keystore. Without the keys, the stolen session token is mathematically impossible to decrypt, rendering the backup attack useless.</p>
<h2 style="text-align: justify;">Conclusion</h2>
<p style="text-align: justify;">For a banking application, &#8220;it works&#8221; is not enough. You must assume the device might be physically accessible to an attacker or that the software environment might be compromised.</p>
<p style="text-align: justify;">By moving session tokens from standard</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">SharedPreferences</div></div>
<p>to hardware-backed <strong>EncryptedSharedPreferences</strong>, you ensure that the &#8220;keys to the kingdom&#8221; never leave the device’s physical security module.</p>
<p style="text-align: justify;"><strong>In financial software, if the hardware isn&#8217;t protecting the secret, the secret isn&#8217;t protected.</strong></p>The post <a href="https://psyopsprime.com/science/banking-app-security-why-sharedpreferences-is-a-liability/">Banking App Security: Why SharedPreferences is a Liability</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/science/banking-app-security-why-sharedpreferences-is-a-liability/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2665</post-id>	</item>
		<item>
		<title>Integrity Over Secrecy: Why Secure Boot is Vital for Medical IoT</title>
		<link>https://psyopsprime.com/science/integrity-over-secrecy-why-secure-boot-is-vital-for-medical-iot/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=integrity-over-secrecy-why-secure-boot-is-vital-for-medical-iot</link>
					<comments>https://psyopsprime.com/science/integrity-over-secrecy-why-secure-boot-is-vital-for-medical-iot/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Mon, 22 Dec 2025 13:06:59 +0000</pubDate>
				<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Cyber Security]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2662</guid>

					<description><![CDATA[<p>In the world of medical IoT, the stakes aren&#8217;t just about data—they are about human life. Imagine a smart Continuous Glucose Monitor (CGM) that reports</p>
The post <a href="https://psyopsprime.com/science/integrity-over-secrecy-why-secure-boot-is-vital-for-medical-iot/">Integrity Over Secrecy: Why Secure Boot is Vital for Medical IoT</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2663" aria-describedby="caption-attachment-2663" style="width: 420px" class="wp-caption alignright"><a href="https://psyopsprime.com/photo-by-hush-naidoo-jade-photography/" rel="attachment wp-att-2663"><img data-recalc-dims="1" loading="lazy" decoding="async" data-attachment-id="2663" data-permalink="https://psyopsprime.com/photo-by-hush-naidoo-jade-photography/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/yo01z-9hqaw.jpg?fit=1800%2C1200&amp;ssl=1" data-orig-size="1800,1200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by Hush Naidoo Jade Photography" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@hush52?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Hush Naidoo Jade Photography&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/yo01z-9hqaw.jpg?fit=750%2C500&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2663" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/yo01z-9hqaw.jpg?resize=420%2C280&#038;ssl=1" alt="black and gray stethoscope" width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/yo01z-9hqaw.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/yo01z-9hqaw.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/yo01z-9hqaw.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/yo01z-9hqaw.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/yo01z-9hqaw.jpg?resize=1536%2C1024&amp;ssl=1 1536w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/yo01z-9hqaw.jpg?w=1800&amp;ssl=1 1800w" sizes="auto, (max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2663" class="wp-caption-text">Photo by <a href="https://unsplash.com/@hush52?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">Hush Naidoo Jade Photography</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;">In the world of medical IoT, the stakes aren&#8217;t just about data—they are about human life. Imagine a smart Continuous Glucose Monitor (CGM) that reports blood sugar levels to an insulin pump. If that device is compromised, the risk isn&#8217;t just a privacy leak; it’s a lethal dose of medication based on tampered data.</p>
<p style="text-align: justify;">For manufacturers operating under extreme cost and hardware constraints (minimal RAM and processing power), every CPU cycle counts. In these scenarios, security architects must make a difficult choice: where do we spend our limited &#8220;security budget&#8221;?</p>
<p style="text-align: justify;">The answer is clear: <strong>Secure Boot is mandatory</strong>, and it is significantly more critical for these devices than Full-Disk Encryption (FDE).</p>
<h2 style="text-align: justify;">The Core Solution: Secure Boot</h2>
<p style="text-align: justify;"><strong>Secure Boot</strong> is a security standard that ensures a device boots using only software that is trusted by the Original Equipment Manufacturer (OEM).</p>
<h3 style="text-align: justify;">How it Works</h3>
<ol style="text-align: justify;">
<li><strong>The Root of Trust:</strong> The device hardware contains a &#8220;Read-Only&#8221; public key burned into the chip during manufacturing.</li>
<li><strong>Signature Verification:</strong> Every time the device powers on, the bootloader checks the digital signature of the firmware (the operating code).</li>
<li><strong>The &#8220;Kill Switch&#8221;:</strong> If the signature doesn&#8217;t match—meaning the code has been altered by an attacker—the device refuses to boot. It effectively &#8220;bricks&#8221; itself rather than running untrusted code.</li>
</ol>
<h2 style="text-align: justify;">Why Secure Boot Trumps Encryption in Resource-Constrained IoT</h2>
<p style="text-align: justify;">While Full-Disk Encryption (FDE) is standard on laptops, it is often the wrong priority for a low-power medical sensor. Here is why Secure Boot is the superior control for a CGM:</p>
<h3 style="text-align: justify;">1. Integrity is More Critical than Confidentiality</h3>
<p style="text-align: justify;">For a glucose monitor, the primary threat is <strong>unauthorized modification</strong>. An attacker who modifies the firmware can force the device to report &#8220;normal&#8221; sugar levels while the user is actually in a state of hypoglycemic shock.</p>
<ul style="text-align: justify;">
<li><strong>FDE</strong> protects data <em>at rest</em> (if the device is stolen).</li>
<li><strong>Secure Boot</strong> protects the <em>logic of the system</em>. In medical devices, ensuring the device does exactly what it was designed to do (Integrity) is a higher safety priority than ensuring the data on the device can&#8217;t be read (Confidentiality).</li>
</ul>
<h3 style="text-align: justify;">2. The Computational &#8220;Tax&#8221;</h3>
<p style="text-align: justify;">Encryption is &#8220;expensive.&#8221; FDE requires the CPU to constantly encrypt and decrypt data every time the system reads or writes to storage. On a device with minimal RAM and a tiny processor, this overhead can drain the battery in days rather than months and cause latency in life-critical readings.</p>
<p style="text-align: justify;">Secure Boot, by contrast, is a <strong>one-time check</strong>. The &#8220;tax&#8221; is paid only at startup. Once the firmware is verified as authentic, the device runs at full speed without the ongoing burden of real-time decryption.</p>
<h3 style="text-align: justify;">3. Preventing Persistence</h3>
<p style="text-align: justify;">Without Secure Boot, an attacker who finds a way to remotely access the device can install a &#8220;rootkit&#8221;—malicious code that stays on the device even after a reboot. Because the CGM is connected to the internet, it could become part of a botnet or a persistent gateway into the user&#8217;s home network. Secure Boot ensures that any such malicious changes are detected and blocked the moment the device restarts.</p>
<h2 style="text-align: justify;">The Verdict</h2>
<p style="text-align: justify;">For a smart glucose monitor, the greatest risk is a &#8220;silent failure&#8221;—a device that looks like it&#8217;s working but is actually lying to the user. Secure Boot is the only way to guarantee that the firmware running on the device is the same code that was tested, validated, and signed by the manufacturer.</p>
<p style="text-align: justify;">In resource-constrained medical design, we must prioritize <strong>Trust</strong> over <strong>Privacy</strong>. Secure Boot provides that trust without sacrificing the battery life and performance required to keep a patient safe.</p>The post <a href="https://psyopsprime.com/science/integrity-over-secrecy-why-secure-boot-is-vital-for-medical-iot/">Integrity Over Secrecy: Why Secure Boot is Vital for Medical IoT</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/science/integrity-over-secrecy-why-secure-boot-is-vital-for-medical-iot/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2662</post-id>	</item>
		<item>
		<title>The Legacy Liability: Securing Unpatchable ICS in a Modern Network</title>
		<link>https://psyopsprime.com/science/the-legacy-liability-securing-unpatchable-ics-in-a-modern-network/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-legacy-liability-securing-unpatchable-ics-in-a-modern-network</link>
					<comments>https://psyopsprime.com/science/the-legacy-liability-securing-unpatchable-ics-in-a-modern-network/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Fri, 19 Dec 2025 10:53:35 +0000</pubDate>
				<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Cyber Security]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2659</guid>

					<description><![CDATA[<p>In the world of industrial infrastructure, there is a common saying: &#8220;If it ain&#8217;t broke, don&#8217;t fix it.&#8221; This philosophy often leads to a dangerous</p>
The post <a href="https://psyopsprime.com/science/the-legacy-liability-securing-unpatchable-ics-in-a-modern-network/">The Legacy Liability: Securing Unpatchable ICS in a Modern Network</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2660" aria-describedby="caption-attachment-2660" style="width: 420px" class="wp-caption alignright"><a href="https://psyopsprime.com/photo-by-maria-lupan/" rel="attachment wp-att-2660"><img data-recalc-dims="1" loading="lazy" decoding="async" data-attachment-id="2660" data-permalink="https://psyopsprime.com/photo-by-maria-lupan/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/hy97yy3e03a.jpg?fit=1661%2C1200&amp;ssl=1" data-orig-size="1661,1200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by Maria Lupan" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@luandmario?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Maria Lupan&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/hy97yy3e03a.jpg?fit=750%2C542&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2660" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/hy97yy3e03a.jpg?resize=420%2C280&#038;ssl=1" alt="red and black metal tower during sunset" width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/hy97yy3e03a.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/hy97yy3e03a.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/hy97yy3e03a.jpg?zoom=2&amp;resize=420%2C280&amp;ssl=1 840w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/hy97yy3e03a.jpg?zoom=3&amp;resize=420%2C280&amp;ssl=1 1260w" sizes="auto, (max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2660" class="wp-caption-text">Photo by <a href="https://unsplash.com/@luandmario?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">Maria Lupan</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;" data-pm-slice="0 0 []">In the world of industrial infrastructure, there is a common saying: &#8220;If it ain&#8217;t broke, don&#8217;t fix it.&#8221; This philosophy often leads to a dangerous reality: proprietary Industrial Control Systems (ICS) running mission-critical tasks on software that hasn&#8217;t seen a security patch in half a decade.</p>
<p style="text-align: justify;">While these systems might be stable, they are &#8220;cryptographically brittle&#8221; and full of known vulnerabilities. The danger escalates exponentially when organizations attempt to integrate these legacy environments into a modern, internet-connected corporate network.</p>
<h2 style="text-align: justify;">The Two Distinct Risks of &#8220;Merging&#8221; Worlds</h2>
<p style="text-align: justify;">When you connect a five-year-old, unpatched ICS to a modern IT network, you aren&#8217;t just adding a device; you are adding a permanent &#8220;beachhead&#8221; for attackers. There are two primary risks associated with this integration:</p>
<h3 style="text-align: justify;">1. Targeted Exploitation (The Weakest Link)</h3>
<p style="text-align: justify;">Modern operating systems have advanced protections like ASLR, DEP, and automated patching. Legacy ICS software usually does not. An attacker doesn&#8217;t need to find a sophisticated zero-day exploit for your modern Windows 11 machines; they only need to find a five-year-old, public exploit for the ICS. Because the software is proprietary and unpatched, it represents a &#8220;static target.&#8221; Once an attacker identifies the software version, the exploit is often as simple as a single script found on a public repository.</p>
<h3 style="text-align: justify;">2. Lateral Movement (The Pivot Point)</h3>
<p style="text-align: justify;">The most severe risk isn&#8217;t just the compromise of the ICS itself, but what happens next. In a typical corporate network, devices often &#8220;trust&#8221; one another. If an attacker gains a foothold on the vulnerable ICS, they can use it as a launching pad to move <strong>laterally</strong> across the network. From the ICS, they can sniff traffic, scan for vulnerabilities in the modern corporate servers, or attempt to steal administrative credentials. The legacy system becomes a &#8220;cloak&#8221; that allows the attacker to operate from <em>inside</em> your perimeter.</p>
<h2 style="text-align: justify;">The Problem: You Can&#8217;t Patch It</h2>
<p style="text-align: justify;">In a perfect world, we would simply update the software. However, with proprietary ICS, the original vendor may no longer exist, or the update might require a complete hardware overhaul costing millions. When &#8220;fixing&#8221; the vulnerability is impossible, we must change the <strong>environment</strong> around the vulnerability.</p>
<h2 style="text-align: justify;">The Mandatory Solution: Network Segmentation</h2>
<p style="text-align: justify;">Since we cannot eliminate the vulnerability, we must implement a <strong>Mandatory Compensating Control</strong>. The gold standard for legacy ICS is <strong>Network Segmentation via a &#8220;Demilitarized Zone&#8221; (DMZ) or VLAN.</strong></p>
<h3 style="text-align: justify;">How it Works:</h3>
<p style="text-align: justify;">Instead of allowing the ICS to sit on the same flat network as the accounting department and the mail server, it is placed in its own isolated &#8220;sandbox&#8221; (a separate VLAN).</p>
<h3 style="text-align: justify;">The Implementation Details:</h3>
<ul style="text-align: justify;">
<li><strong>Zero-Trust Connectivity:</strong> A firewall sits between the ICS segment and the rest of the corporate network. By default, <strong>all traffic is blocked.</strong> * <strong>The &#8220;Jumpbox&#8221; Pattern:</strong> If an engineer needs to access the ICS, they must first log into a highly secured, multi-factor authenticated &#8220;Jumpbox.&#8221; Only the Jumpbox is permitted to talk to the ICS, and only over a specific, monitored port.</li>
<li><strong>Protocol Filtering:</strong> The firewall should use Deep Packet Inspection (DPI) to ensure that only legitimate industrial protocols (like Modbus or OPC) are flowing, blocking any attempt at standard web traffic or file transfers that could indicate a breach.</li>
</ul>
<h2 style="text-align: justify;">Conclusion</h2>
<p style="text-align: justify;">Legacy ICS is a reality for many industries, from manufacturing to energy. You cannot always patch the software, but you <strong>can</strong> control the network. By treating your legacy systems as &#8220;untrusted&#8221; and isolating them through strict network segmentation, you ensure that a vulnerability in a five-year-old piece of software doesn&#8217;t lead to a total compromise of your modern enterprise.</p>
<p style="text-align: justify;"><strong>In the age of interconnected systems, isolation is often the best form of protection.</strong></p>
<h1 data-pm-slice="0 0 []">Exploit Mitigations: ASLR and DEP</h1>
<p style="text-align: justify;">Address Space Layout Randomization (ASLR) and Data Execution Prevention (DEP) are &#8220;exploit mitigation&#8221; technologies. They do not fix underlying code vulnerabilities (like buffer overflows), but they make it significantly harder for an attacker to successfully turn a bug into a working exploit.</p>
<h2 style="text-align: justify;">1. ASLR (Address Space Layout Randomization)</h2>
<p style="text-align: justify;"><strong>The Concept:</strong> Imagine a thief trying to rob a house who knows exactly where the safe is located in every home in the neighborhood. ASLR is the equivalent of randomly rearranging the floor plan of every house so the thief doesn&#8217;t know where the safe is.</p>
<h3 style="text-align: justify;">How it Works:</h3>
<ul style="text-align: justify;">
<li><strong>Randomization:</strong> Every time an application or the operating system boots, ASLR randomly arranges the address space positions of key data areas. This includes the base of the executable, as well as the positions of libraries (DLLs), the heap, and the stack.</li>
<li><strong>The Defense:</strong> In a classic &#8220;buffer overflow&#8221; attack, an attacker needs to point the CPU to a specific memory address where their malicious code is hidden. If the memory addresses change every time the program runs, the attacker’s hard-coded address will point to empty space or invalid memory, causing the application to crash rather than execute the payload.</li>
</ul>
<h2 style="text-align: justify;">2. DEP (Data Execution Prevention)</h2>
<p style="text-align: justify;"><strong>The Concept:</strong> DEP marks specific areas of memory as &#8220;non-executable.&#8221; It enforces a strict rule: a memory page can either hold data (like a document or a user&#8217;s input) or it can hold instructions (code), but it should rarely do both.</p>
<h3 style="text-align: justify;">How it Works:</h3>
<ul style="text-align: justify;">
<li><strong>The &#8220;NX&#8221; Bit:</strong> DEP leverages hardware support (the &#8220;No-Execute&#8221; bit in modern CPUs). The operating system marks memory regions used for data (the stack and heap) as non-executable.</li>
<li><strong>The Defense:</strong> In many attacks, a hacker tries to &#8220;inject&#8221; code into a data field (like a username box) and then trick the computer into running that code. With DEP enabled, even if the attacker successfully places code in the memory, the CPU will refuse to execute it because that section of memory is flagged for &#8220;Data Only.&#8221;</li>
</ul>
<h2 style="text-align: justify;">How They Work Together</h2>
<p style="text-align: justify;">ASLR and DEP are most effective when used in tandem:</p>
<ol style="text-align: justify;">
<li><strong>DEP</strong> stops the attacker from running code they’ve placed in data regions.</li>
<li><strong>ASLR</strong> stops the attacker from reliably finding existing, &#8220;safe&#8221; code snippets within the system (like system libraries) that they might try to stitch together to bypass DEP (an attack known as Return-Oriented Programming or ROP).</li>
</ol>
<p style="text-align: justify;">In the context of your <strong>Legacy ICS software</strong>, these systems often lack these protections. This means an attacker doesn&#8217;t have to &#8220;guess&#8221; where memory is located, and they can execute code directly from the stack, making the system a &#8220;sitting duck&#8221; compared to a modern Windows or Linux machine.</p>The post <a href="https://psyopsprime.com/science/the-legacy-liability-securing-unpatchable-ics-in-a-modern-network/">The Legacy Liability: Securing Unpatchable ICS in a Modern Network</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/science/the-legacy-liability-securing-unpatchable-ics-in-a-modern-network/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2659</post-id>	</item>
		<item>
		<title>The Software Supply Chain: Why Dependency Scanning is Mandatory</title>
		<link>https://psyopsprime.com/science/the-software-supply-chain-why-dependency-scanning-is-mandatory/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-software-supply-chain-why-dependency-scanning-is-mandatory</link>
					<comments>https://psyopsprime.com/science/the-software-supply-chain-why-dependency-scanning-is-mandatory/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 18 Dec 2025 11:44:26 +0000</pubDate>
				<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Cyber Security]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2656</guid>

					<description><![CDATA[<p>In modern software development, we rarely build from scratch. In fact, studies suggest that up to 90% of a modern application&#8217;s code consists of third-party</p>
The post <a href="https://psyopsprime.com/science/the-software-supply-chain-why-dependency-scanning-is-mandatory/">The Software Supply Chain: Why Dependency Scanning is Mandatory</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2657" aria-describedby="caption-attachment-2657" style="width: 420px" class="wp-caption alignright"><a href="https://psyopsprime.com/photo-by-ana-hitomi-urano/" rel="attachment wp-att-2657"><img data-recalc-dims="1" loading="lazy" decoding="async" data-attachment-id="2657" data-permalink="https://psyopsprime.com/photo-by-ana-hitomi-urano/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/h2fmxm1sn98.jpg?fit=1920%2C1080&amp;ssl=1" data-orig-size="1920,1080" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by ANA HITOMI URANO" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@hiranoph?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;ANA HITOMI URANO&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/h2fmxm1sn98.jpg?fit=750%2C422&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2657" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/h2fmxm1sn98.jpg?resize=420%2C280&#038;ssl=1" alt="low angle photography of high rise building" width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/h2fmxm1sn98.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/h2fmxm1sn98.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/h2fmxm1sn98.jpg?zoom=2&amp;resize=420%2C280&amp;ssl=1 840w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/h2fmxm1sn98.jpg?zoom=3&amp;resize=420%2C280&amp;ssl=1 1260w" sizes="auto, (max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2657" class="wp-caption-text">Photo by <a href="https://unsplash.com/@hiranoph?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">ANA HITOMI URANO</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;" data-pm-slice="0 0 []">In modern software development, we rarely build from scratch. In fact, studies suggest that <strong>up to 90% of a modern application&#8217;s code consists of third-party libraries and open-source dependencies.</strong> While this speed-to-market is incredible, it introduces a massive &#8220;blind spot.&#8221; If your application is a skyscraper, you might have designed the blueprints perfectly, but if the pre-fabricated steel beams you bought from a supplier are cracked, the building is still at risk of collapse.</p>
<p style="text-align: justify;">This is why <strong>Automated Dependency Vulnerability Scanning</strong> (also known as Software Composition Analysis or SCA) is now a mandatory step in any secure CI/CD pipeline.</p>
<h2 style="text-align: justify;">The Specific Risk: The &#8220;Hidden&#8221; Vulnerability</h2>
<p style="text-align: justify;">To understand why dependency scanning is vital, we must look at what traditional security tools—<strong>SAST</strong> (Static Analysis) and <strong>DAST</strong> (Dynamic Analysis)—actually see.</p>
<ul style="text-align: justify;">
<li><strong>SAST (Static Analysis Security Testing):</strong> Analyzes the <em>source code you wrote</em>. It is excellent at finding logic flaws, like a missing authorization check or a hardcoded password in your proprietary code.</li>
<li><strong>DAST (Dynamic Analysis Security Testing):</strong> Tests the <em>running application</em> from the outside. It is great at finding configuration errors or injection flaws that are visible during execution.</li>
</ul>
<p style="text-align: justify;"><strong>The Gap:</strong> Neither SAST nor DAST is designed to deeply inspect the internal components of a pre-compiled, third-party library. If you import a popular logging library that has a known remote code execution (RCE) flaw (like the infamous Log4Shell), SAST won&#8217;t flag it because the &#8220;bug&#8221; isn&#8217;t in your code, and DAST might miss it because the exploit requires a very specific, multi-step interaction that an automated scanner won&#8217;t guess.</p>
<p style="text-align: justify;">This is the <strong>Supply Chain Risk</strong>. You are inheriting the vulnerabilities of every developer whose library you&#8217;ve included in your</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">package.json</div></div>
<p>,</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">pom.xml</div></div>
<p>, or</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">requirements.txt</div></div>
<p>.</p>
<h2 style="text-align: justify;">How Dependency Scanning Works</h2>
<p style="text-align: justify;">Dependency scanning tools work by creating a <strong>Software Bill of Materials (SBOM)</strong>—a comprehensive list of every library and sub-library (transitive dependency) your app uses.</p>
<p style="text-align: justify;">The tool then cross-references this list against massive, real-time databases of known vulnerabilities, such as the <strong>National Vulnerability Database (NVD)</strong> or <strong>GitHub Advisory Database</strong>.</p>
<h3 style="text-align: justify;">The CI/CD Integration: The &#8220;Fail-Build&#8221; Mechanism</h3>
<p style="text-align: justify;">When integrated into a CI/CD pipeline, the scanner acts as a quality gate. If a developer attempts to merge code that includes a library with a <strong>Critical</strong> or <strong>High</strong> CVE (Common Vulnerabilities and Exposures) rating:</p>
<ol style="text-align: justify;">
<li><strong>The Build Fails:</strong> The pipeline is automatically halted.</li>
<li><strong>Instant Feedback:</strong> The developer receives a report identifying exactly which library is vulnerable.</li>
<li><strong>Remediation Guidance:</strong> Most modern tools (like Snyk or Dependabot) will suggest the exact version the library should be upgraded to in order to fix the flaw.</li>
</ol>
<h2 style="text-align: justify;">Why it is Mandatory Today</h2>
<h3 style="text-align: justify;">1. Transitive Dependencies</h3>
<p style="text-align: justify;">You might only include 10 libraries, but those 10 libraries might include 100 others. You are responsible for all 110. Manual tracking is impossible; automation is the only way to map this &#8220;dependency hell.&#8221;</p>
<h3 style="text-align: justify;">2. The Speed of Disclosure</h3>
<p style="text-align: justify;">A library that was perfectly safe on Monday might have a critical vulnerability disclosed on Tuesday. Automated scanning ensures that even if you haven&#8217;t changed your code in months, a new build or a scheduled scan will alert you to the new threat immediately.</p>
<h3 style="text-align: justify;">3. Compliance and Trust</h3>
<p style="text-align: justify;">Regulators and enterprise customers are increasingly demanding an SBOM. They want to know exactly what is inside the software they are buying. Having an automated scanning process is often a prerequisite for SOC2, ISO 27001, or high-value government contracts.</p>
<h2 style="text-align: justify;">Conclusion</h2>
<p style="text-align: justify;">Your proprietary code is only as secure as the foundation it sits upon. By making Dependency Vulnerability Scanning a core step in your CI/CD pipeline, you are protecting your organization from the most pervasive threat in modern tech: the compromised supply chain.</p>
<p style="text-align: justify;"><strong>Don&#8217;t just secure your code; secure your components.</strong></p>The post <a href="https://psyopsprime.com/science/the-software-supply-chain-why-dependency-scanning-is-mandatory/">The Software Supply Chain: Why Dependency Scanning is Mandatory</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/science/the-software-supply-chain-why-dependency-scanning-is-mandatory/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2656</post-id>	</item>
		<item>
		<title>The Architect’s Shield: Why Threat Modeling is the Foundation of Secure Software</title>
		<link>https://psyopsprime.com/science/the-architects-shield-why-threat-modeling-is-the-foundation-of-secure-software/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-architects-shield-why-threat-modeling-is-the-foundation-of-secure-software</link>
					<comments>https://psyopsprime.com/science/the-architects-shield-why-threat-modeling-is-the-foundation-of-secure-software/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 18 Dec 2025 11:21:22 +0000</pubDate>
				<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Cyber Security]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2653</guid>

					<description><![CDATA[<p>In the rush to ship new features, security is often treated as a final &#8220;check-box&#8221; activity—something addressed during a penetration test just days before a</p>
The post <a href="https://psyopsprime.com/science/the-architects-shield-why-threat-modeling-is-the-foundation-of-secure-software/">The Architect’s Shield: Why Threat Modeling is the Foundation of Secure Software</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2654" aria-describedby="caption-attachment-2654" style="width: 420px" class="wp-caption alignleft"><a href="https://psyopsprime.com/photo-by-beng-ragon/" rel="attachment wp-att-2654"><img data-recalc-dims="1" loading="lazy" decoding="async" data-attachment-id="2654" data-permalink="https://psyopsprime.com/photo-by-beng-ragon/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/a2wolw5zsww.jpg?fit=1800%2C1200&amp;ssl=1" data-orig-size="1800,1200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by Beng Ragon" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@myboholifeph?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Beng Ragon&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/a2wolw5zsww.jpg?fit=750%2C500&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2654" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/a2wolw5zsww.jpg?resize=420%2C280&#038;ssl=1" alt="a black and white cat laying in front of a mirror" width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/a2wolw5zsww.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/a2wolw5zsww.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/a2wolw5zsww.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/a2wolw5zsww.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/a2wolw5zsww.jpg?resize=1536%2C1024&amp;ssl=1 1536w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/a2wolw5zsww.jpg?w=1800&amp;ssl=1 1800w" sizes="auto, (max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2654" class="wp-caption-text">Photo by <a href="https://unsplash.com/@myboholifeph?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">Beng Ragon</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;" data-pm-slice="0 0 []">In the rush to ship new features, security is often treated as a final &#8220;check-box&#8221; activity—something addressed during a penetration test just days before a major release. But finding a fundamental design flaw at the 11th hour is a nightmare for developers and a disaster for project timelines.</p>
<p style="text-align: justify;">The solution? <strong>Threat Modeling.</strong> By incorporating threat modeling into the early stages of the Software Development Life Cycle (SDLC), teams can move from being reactive to being &#8220;secure by design.&#8221;</p>
<h2 style="text-align: justify;">What is Threat Modeling?</h2>
<p style="text-align: justify;">At its core, threat modeling is a structured brainstorming session for security. It is the process of identifying, communicating, and understanding threats and mitigations within the context of protecting something of value.</p>
<p style="text-align: justify;">Think of it like an architect reviewing blueprints for a new building. Before the first brick is laid, they ask: <em>“Where are the weak points? Could someone climb this balcony? Is the foundation strong enough for a storm?”</em></p>
<h3 style="text-align: justify;">The Four Questions</h3>
<p style="text-align: justify;">Most threat modeling methodologies revolve around four simple questions originally proposed by Adam Shostack:</p>
<ol style="text-align: justify;">
<li><strong>What are we building?</strong> (Creating Data Flow Diagrams (DFDs) to map the system).</li>
<li><strong>What can go wrong?</strong> (Identifying potential threats).</li>
<li><strong>What are we going to do about it?</strong> (Deciding on mitigations).</li>
<li><strong>Did we do a good job?</strong> (Retrospective analysis).</li>
</ol>
<h2 style="text-align: justify;">Choosing Your Framework: STRIDE vs. PASTA</h2>
<p style="text-align: justify;">There is no one-size-fits-all approach. Two of the most common methodologies offer different &#8220;lenses&#8221; through which to view your application.</p>
<h3 style="text-align: justify;">1. STRIDE: The Developer-Centric Approach</h3>
<p style="text-align: justify;">Developed by Microsoft, <strong>STRIDE</strong> is a mnemonic used to categorize the <em>types</em> of threats an attacker might use. It is highly effective during the design phase to ensure no technical stone is left unturned:</p>
<ul style="text-align: justify;">
<li><strong>S</strong>poofing identity.</li>
<li><strong>T</strong>ampering with data.</li>
<li><strong>R</strong>epudiation.</li>
<li><strong>I</strong>nformation disclosure.</li>
<li><strong>D</strong>enial of service.</li>
<li><strong>E</strong>levation of privilege.</li>
</ul>
<h3 style="text-align: justify;">2. PASTA: The Risk-Centric Approach</h3>
<p style="text-align: justify;">The <strong>Process for Attack Simulation and Threat Analysis (PASTA)</strong> is a seven-step, risk-centric methodology. Unlike STRIDE, which starts with the technology, PASTA starts with the <strong>business objectives</strong>. It is designed to align technical security requirements with business goals.</p>
<p style="text-align: justify;">The seven stages of PASTA are:</p>
<ol style="text-align: justify;">
<li><strong>Define Objectives:</strong> What business value does this app provide? What are the compliance requirements?</li>
<li><strong>Define Technical Scope:</strong> What is the attack surface (cloud, mobile, IoT)?</li>
<li><strong>Application Decomposition:</strong> Mapping the data flows and trust boundaries.</li>
<li><strong>Threat Analysis:</strong> Reviewing global threat intelligence relevant to the application.</li>
<li><strong>Vulnerability &amp; Weakness Analysis:</strong> Identifying existing flaws in the design or code.</li>
<li><strong>Attack Modeling:</strong> Simulating how an attacker would actually exploit the identified weaknesses.</li>
<li><strong>Risk &amp; Impact Analysis:</strong> Deciding which threats matter most based on the potential cost to the business.</li>
</ol>
<h2 style="text-align: justify;">The ROI of &#8220;Shifting Left&#8221;</h2>
<p style="text-align: justify;">Performing threat modeling during the <strong>Requirements</strong> and <strong>Design</strong> phases offers transformative benefits:</p>
<h3 style="text-align: justify;">1. Massive Cost Savings</h3>
<p style="text-align: justify;">It is an industry truism that a bug found in design costs $1 to fix, while the same bug found in production can cost $100 or more. Threat modeling prevents &#8220;architectural flaws&#8221;—the kind of deep-seated security issues that require weeks of refactoring if found too late.</p>
<h3 style="text-align: justify;">2. Informed Design Decisions</h3>
<p style="text-align: justify;">Threat modeling allows developers to choose more secure technologies from the start. If you identify a high risk of credential theft early using PASTA&#8217;s impact analysis, you might decide to use a managed Identity Provider instead of building a custom system.</p>
<h3 style="text-align: justify;">3. Better Developer Education</h3>
<p style="text-align: justify;">Threat modeling isn&#8217;t just for security teams. When developers participate in STRIDE sessions, they start thinking like attackers. This &#8220;security mindset&#8221; leads to fewer vulnerabilities across the entire codebase.</p>
<h3 style="text-align: justify;">4. Clear Documentation for Compliance</h3>
<p style="text-align: justify;">In regulated industries (FinTech, Healthcare), proving you have considered security is mandatory. A threat model provides a clear, auditable trail showing that risks were identified and systematically addressed.</p>
<h2 style="text-align: justify;">Conclusion</h2>
<p style="text-align: justify;">Threat modeling is the ultimate &#8220;Shift Left&#8221; activity. Whether you use the technical rigor of <strong>STRIDE</strong> or the strategic business alignment of <strong>PASTA</strong>, the goal remains the same: ensure that your software isn&#8217;t just functional—it&#8217;s resilient.</p>
<p style="text-align: justify;"><strong>Don&#8217;t wait for the breach to find your weaknesses. Build your shield during the blueprint phase.</strong></p>The post <a href="https://psyopsprime.com/science/the-architects-shield-why-threat-modeling-is-the-foundation-of-secure-software/">The Architect’s Shield: Why Threat Modeling is the Foundation of Secure Software</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/science/the-architects-shield-why-threat-modeling-is-the-foundation-of-secure-software/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2653</post-id>	</item>
		<item>
		<title>The Permanent Breach: The Hidden Danger of Hashing Fingerprints</title>
		<link>https://psyopsprime.com/science/the-permanent-breach-the-hidden-danger-of-hashing-fingerprints/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-permanent-breach-the-hidden-danger-of-hashing-fingerprints</link>
					<comments>https://psyopsprime.com/science/the-permanent-breach-the-hidden-danger-of-hashing-fingerprints/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 18 Dec 2025 10:41:53 +0000</pubDate>
				<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Cyber Security]]></category>
		<guid isPermaLink="false">https://psyopsprime.com/?p=2649</guid>

					<description><![CDATA[<p>Biometric authentication—using your face, fingerprint, or iris—is often touted as the ultimate security upgrade. It’s convenient, &#8220;unforgettable,&#8221; and unique. However, if a system designer treats</p>
The post <a href="https://psyopsprime.com/science/the-permanent-breach-the-hidden-danger-of-hashing-fingerprints/">The Permanent Breach: The Hidden Danger of Hashing Fingerprints</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2650" aria-describedby="caption-attachment-2650" style="width: 420px" class="wp-caption alignleft"><a href="https://psyopsprime.com/photo-by-markus-winkler/" rel="attachment wp-att-2650"><img data-recalc-dims="1" loading="lazy" decoding="async" data-attachment-id="2650" data-permalink="https://psyopsprime.com/photo-by-markus-winkler/" data-orig-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/8lzw2elivk8.jpg?fit=1799%2C1200&amp;ssl=1" data-orig-size="1799,1200" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Photo by Markus Winkler" data-image-description="" data-image-caption="&lt;p&gt;Photo by &lt;a href=&quot;https://unsplash.com/@markuswinkler?utm_source=instant-images&amp;amp;utm_medium=referral&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Markus Winkler&lt;/a&gt; on &lt;a href=&quot;https://unsplash.com&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Unsplash&lt;/a&gt;&lt;/p&gt;
" data-large-file="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/8lzw2elivk8.jpg?fit=750%2C500&amp;ssl=1" class="size-gambit-thumbnail-large wp-image-2650" src="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/8lzw2elivk8.jpg?resize=420%2C280&#038;ssl=1" alt="a group of hand prints on a wall" width="420" height="280" srcset="https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/8lzw2elivk8.jpg?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/8lzw2elivk8.jpg?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/8lzw2elivk8.jpg?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/8lzw2elivk8.jpg?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/8lzw2elivk8.jpg?resize=1536%2C1025&amp;ssl=1 1536w, https://i0.wp.com/psyopsprime.com/wp-content/uploads/2025/12/8lzw2elivk8.jpg?w=1799&amp;ssl=1 1799w" sizes="auto, (max-width: 420px) 100vw, 420px" /></a><figcaption id="caption-attachment-2650" class="wp-caption-text">Photo by <a href="https://unsplash.com/@markuswinkler?utm_source=instant-images&amp;utm_medium=referral" target="_blank" rel="noopener noreferrer">Markus Winkler</a> on <a href="https://unsplash.com" target="_blank" rel="noopener noreferrer">Unsplash</a></figcaption></figure>
<p style="text-align: justify;" data-pm-slice="0 0 []">Biometric authentication—using your face, fingerprint, or iris—is often touted as the ultimate security upgrade. It’s convenient, &#8220;unforgettable,&#8221; and unique. However, if a system designer treats a fingerprint template like a common password, they are creating a ticking time bomb for their users.</p>
<p style="text-align: justify;">A common mistake is applying standard password-security logic to biometrics: taking a fingerprint template and storing a simple hash (like SHA-256) in a database. If that database is breached, the consequences are far more severe than any password leak could ever be.</p>
<h2 style="text-align: justify;">The Fatal Difference: Revocability vs. Permanence</h2>
<p style="text-align: justify;">To understand why this is a disaster, we have to look at how we recover from a breach.</p>
<h3 style="text-align: justify;">The Password Breach (Recoverable)</h3>
<p style="text-align: justify;">If an attacker steals a database of password hashes, the organization triggers a mandatory password reset. Users change their passwords to something new. The old, stolen hashes become instantly worthless. The damage is contained because a password is a <strong>revocable credential</strong>.</p>
<h3 style="text-align: justify;">The Biometric Breach (Irrevocable)</h3>
<p style="text-align: justify;">If an attacker steals a database of fingerprint hashes, the user is in permanent trouble. <strong>You cannot change your fingerprint.</strong> Once a biometric template is compromised, that specific digital representation of the user’s identity is &#8220;burned&#8221; for life. If an attacker can reverse the hash or use it in a &#8220;replay attack,&#8221; the user has lost control over that authentication factor forever. They cannot go to the &#8220;settings&#8221; menu of their life and generate a new finger.</p>
<h2 style="text-align: justify;">The Technical Consequence: Collision and Replay</h2>
<p style="text-align: justify;">While cryptographic hashes are &#8220;one-way,&#8221; they are not &#8220;one-size-fits-all&#8221; for biometrics. Biometric data is noisy; a fingerprint scan is slightly different every time you touch the sensor.</p>
<p style="text-align: justify;">To make a hash work, the system must &#8220;normalize&#8221; the data, which often reduces the complexity of the template. If an attacker gains access to these hashes, they can:</p>
<ol style="text-align: justify;">
<li><strong>Map the Hash Space:</strong> Use the hashes to reconstruct a &#8220;master print&#8221; that might collide with many users.</li>
<li><strong>Credential Stuffing:</strong> Use the stolen biometric hash to attempt logins on other systems that might use the same normalization and hashing algorithm.</li>
</ol>
<h2 style="text-align: justify;">The Secure Alternative: Biometric Template Protection (BTP)</h2>
<p style="text-align: justify;">So, how do we use biometrics without risking a user&#8217;s permanent identity? We must move away from simple hashing and toward <strong>Biometric Template Protection (BTP)</strong>.</p>
<h3 style="text-align: justify;">1. Cancelable Biometrics</h3>
<p style="text-align: justify;">This technique applies a non-invertible, intentional distortion to the fingerprint image <em>before</em> the template is generated.</p>
<ul style="text-align: justify;">
<li><strong>How it works:</strong> Think of it like looking at a fingerprint through a &#8220;funhouse mirror.&#8221; The system stores the distorted version.</li>
<li><strong>Why it&#8217;s better:</strong> If the database is breached, the organization simply changes the &#8220;mirror&#8221; settings (the transformation function). This creates a new, different distorted template, effectively &#8220;resetting&#8221; the user&#8217;s biometric without requiring them to get a new finger.</li>
</ul>
<h3 style="text-align: justify;">2. Fuzzy Vaults and Salting</h3>
<p style="text-align: justify;">Standard hashes require an exact bit-for-bit match. Biometrics require &#8220;fuzzy&#8221; matching. A <strong>Fuzzy Vault</strong> is a cryptographic construct that locks a secret key using biometric data.</p>
<ul style="text-align: justify;">
<li><strong>How it works:</strong> The secret (the &#8220;vault&#8221;) can only be opened if the provided biometric input is &#8220;close enough&#8221; to the original template.</li>
<li><strong>Why it&#8217;s better:</strong> The raw biometric data is never stored. Only the &#8220;vault&#8221; exists, and it is mathematically impossible to extract the original fingerprint from the vault without a near-identical live scan.</li>
</ul>
<h3 style="text-align: justify;">3. Hardware-Backed Isolation (The Gold Standard)</h3>
<p style="text-align: justify;">The best way to protect a biometric template is to ensure the server <strong>never sees it</strong>.</p>
<ul style="text-align: justify;">
<li><strong>The Implementation:</strong> Use the <strong>Secure Element (SE)</strong> or <strong>Trusted Execution Environment (TEE)</strong> on the user&#8217;s device (like Apple&#8217;s Secure Enclave or Android&#8217;s StrongBox).</li>
<li><strong>The Workflow:</strong> The fingerprint is scanned, matched, and verified entirely within a dedicated, isolated chip on the phone. The device then sends a signed, one-time cryptographic token to the server saying, &#8220;I have verified the user.&#8221;</li>
</ul>
<h2 style="text-align: justify;">Final Thought</h2>
<p style="text-align: justify;">If you are designing a system that uses biometrics, remember: <strong>you are handling a piece of a human being&#8217;s identity.</strong> You cannot treat it like a string of text. By implementing Cancelable Biometrics or Hardware-Backed isolation, you ensure that a security breach remains a temporary technical setback rather than a lifelong identity crisis for your users.</p>The post <a href="https://psyopsprime.com/science/the-permanent-breach-the-hidden-danger-of-hashing-fingerprints/">The Permanent Breach: The Hidden Danger of Hashing Fingerprints</a> first appeared on <a href="https://psyopsprime.com">Psyops Prime</a>.]]></content:encoded>
					
					<wfw:commentRss>https://psyopsprime.com/science/the-permanent-breach-the-hidden-danger-of-hashing-fingerprints/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
				<creativeCommons:license>https://creativecommons.org/licenses/by-nc-nd/4.0/</creativeCommons:license>
<post-id xmlns="com-wordpress:feed-additions:1">2649</post-id>	</item>
	</channel>
</rss>
