<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Is there any way to reject GZP System Address Request?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/122058/is-there-any-way-to-reject-gzp-system-address-request</link><description>I&amp;#39;m using the nRF52840 and Gazell Pairing (GZP) to develop a device network. Because I need bi-directional communication, I am not using GZP&amp;#39;s encryption feature, as it does not support host-to-device communication when encryption is enabled. When encryption</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 18 Jun 2025 11:11:55 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/122058/is-there-any-way-to-reject-gzp-system-address-request" /><item><title>RE: Is there any way to reject GZP System Address Request?</title><link>https://devzone.nordicsemi.com/thread/539690?ContentTypeID=1</link><pubDate>Wed, 18 Jun 2025 11:11:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f42408a7-1689-407f-b560-9d7b30154e93</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi, &lt;br /&gt;Glad that you find a solution. Feel free to reopen this ticket or create a new ticket if you have further question.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is there any way to reject GZP System Address Request?</title><link>https://devzone.nordicsemi.com/thread/539671?ContentTypeID=1</link><pubDate>Wed, 18 Jun 2025 09:04:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8588be14-d5f6-489c-8bc1-5f023fb2720b</guid><dc:creator>kiterai</dc:creator><description>&lt;p&gt;You have helped me a lot. I decided to implement pairing layer on Gazell Link Layer by oneself.&lt;/p&gt;
&lt;p&gt;Thank you!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is there any way to reject GZP System Address Request?</title><link>https://devzone.nordicsemi.com/thread/538975?ContentTypeID=1</link><pubDate>Thu, 12 Jun 2025 09:01:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d494cac-0ca5-4bd7-8020-dfefa93682f8</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Kiterai,&amp;nbsp;&lt;/p&gt;
[quote user="kiterai"]But if I understand correctly, you&amp;#39;re saying that rejecting packets from unpaired devices requires encryption. Is that correct?[/quote]
&lt;p&gt;Correct, without encryption the GZL will accept any host that has correct address and use the correct channel in the correct time.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
[quote user="kiterai"]- Would it be built on top of the Gazell Link Layer, or on top of GZP? Would I need to manage the pipes manually, such as by setting base addresses?[/quote]
&lt;p&gt;You can choose to build it on top of GZP or GZL (note that GZP code is available and you can modify it). But I am afraid the Gazel link layer will just send ACK back on any packet sent to the correct host address and correct pipe.&amp;nbsp;&lt;/p&gt;
[quote user="kiterai"]- Are packets automatically filtered by Gazell, or would the added layer need to inspect packets and forward only the valid ones? Would the host still send ACKs to invalid devices?[/quote]
&lt;p&gt;As I mentioned above GZL link layer will just ack to any packet.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Note that you can not control ACK but you can stil control of the packet is from a valid device or not using your own proprietary encryption/pairing.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;To be able to control the ACK, I think you would need to start your own protocol based on top of ESB (which Gazel based on top). ESB doesn&amp;#39;t have encryption or channel hopping.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Another option you can look at is BLE. Gazel is quite old protocol and it&amp;#39;s made focusing heavily on mouse&amp;amp;keyboard application.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is there any way to reject GZP System Address Request?</title><link>https://devzone.nordicsemi.com/thread/538771?ContentTypeID=1</link><pubDate>Wed, 11 Jun 2025 09:00:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:62c2f37b-9e11-40f8-8282-652eafe2551d</guid><dc:creator>kiterai</dc:creator><description>&lt;p&gt;Thanks for your answer.&lt;br /&gt;&lt;br /&gt;Since I&amp;#39;m using GZP, I believe it assigns pipes automatically. Although I don&amp;#39;t fully understand the internal implementation of GZP, I can ignore packets from devices that haven&amp;#39;t been paired.&lt;br /&gt;&lt;br /&gt;My main requirements are bi-directional communication, support for multiple devices, and the ability to reject packets from unpaired devices. I&amp;#39;m not particularly interested in encryption itself. But if I understand correctly, you&amp;#39;re saying that rejecting packets from unpaired devices requires encryption. Is that correct?&lt;br /&gt;&lt;br /&gt;I&amp;#39;m also not sure how I could implement another encryption layer. If I were to do that, how would it work?&lt;br /&gt;&lt;br /&gt;- Would it be built on top of the Gazell Link Layer, or on top of GZP? Would I need to manage the pipes manually, such as by setting base addresses?&lt;br /&gt;&lt;br /&gt;- Are packets automatically filtered by Gazell, or would the added layer need to inspect packets and forward only the valid ones? Would the host still send ACKs to invalid devices?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is there any way to reject GZP System Address Request?</title><link>https://devzone.nordicsemi.com/thread/538251?ContentTypeID=1</link><pubDate>Thu, 05 Jun 2025 13:54:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:381c5ff3-fee1-425b-b24a-99cd112776e8</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Kiterai,&amp;nbsp;&lt;br /&gt;You are correct that when using encryption it&amp;#39;s not possible to send ACK back as the ACK is used to send the AES counter. See here:&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/32865/gazell-bi-directional-communication-between-paired-devices"&gt;Gazell bi-directional communication between paired devices&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;As far as I remember in the HID application (the main use case for Gazell pairing) we use a unencrypted channel to send data from the host to the device , for example to turn on Caplock.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;How do you assign the unencrypted pipe to the devices ? Can you reject a packet&amp;nbsp;from a pipe that has not been assigned ?&amp;nbsp;&lt;br /&gt;&lt;br /&gt;As far as I know there is no encryption or protection in Gazell link layer to avoid unwanted device to send a message or to know the channel mapping. So it doesn&amp;#39;t mater if you can reject&amp;nbsp;System Address Request, an attacker an always listen to a channel and get the address and the timing of the channel to transmit data.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#39;m thinking of you may need to implement another layer of encryption on the unencrypted pipe. We didn&amp;#39;t have this problem because on the HID application the opposite direction was not very critical (to send CAPLOCK, NUMLOCK to the keyboad).&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>