Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Troubleshooting
  3. [Solved] Soft signing issue

[Solved] Soft signing issue

Scheduled Pinned Locked Moved Troubleshooting
13 Posts 2 Posters 3.5k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • carlierdC Offline
    carlierdC Offline
    carlierd
    wrote on last edited by
    #4

    Ok ! It's clear !

    So I enable MY_SECURE_NODE_WHITELISTING in MyConfig.h.

    I tried to compile the following code from your intial post:

    MyTransportRFM69 transport;
    uint8_t soft_serial[SHA204_SERIAL_SZ] = {bla bla bla};
    MySigningAtsha204Soft signer(true, 0, NULL, soft_serial);
    

    I got the following error:

    In file included from SerialGateway.ino:34:0:
    /Users/carlierd/Arduino/libraries/MySensors/MySigningAtsha204.h:40:3: error: conflicting declaration 'typedef struct whitelist_entry_t whitelist_entry_t'
     } whitelist_entry_t;
       ^
    In file included from SerialGateway.ino:33:0:
    /Users/carlierd/Arduino/libraries/MySensors/MySigningAtsha204Soft.h:44:3: error: 'whitelist_entry_t' has a previous declaration as 'typedef struct whitelist_entry_t whitelist_entry_t'
     } whitelist_entry_t;
       ^
    Erreur lors de la compilation.
    

    I don't want to have a whitelist on the gateway. I think it's correct ?

    Thanks !

    AnticimexA 1 Reply Last reply
    0
    • carlierdC carlierd

      Ok ! It's clear !

      So I enable MY_SECURE_NODE_WHITELISTING in MyConfig.h.

      I tried to compile the following code from your intial post:

      MyTransportRFM69 transport;
      uint8_t soft_serial[SHA204_SERIAL_SZ] = {bla bla bla};
      MySigningAtsha204Soft signer(true, 0, NULL, soft_serial);
      

      I got the following error:

      In file included from SerialGateway.ino:34:0:
      /Users/carlierd/Arduino/libraries/MySensors/MySigningAtsha204.h:40:3: error: conflicting declaration 'typedef struct whitelist_entry_t whitelist_entry_t'
       } whitelist_entry_t;
         ^
      In file included from SerialGateway.ino:33:0:
      /Users/carlierd/Arduino/libraries/MySensors/MySigningAtsha204Soft.h:44:3: error: 'whitelist_entry_t' has a previous declaration as 'typedef struct whitelist_entry_t whitelist_entry_t'
       } whitelist_entry_t;
         ^
      Erreur lors de la compilation.
      

      I don't want to have a whitelist on the gateway. I think it's correct ?

      Thanks !

      AnticimexA Offline
      AnticimexA Offline
      Anticimex
      Contest Winner
      wrote on last edited by
      #5

      @carlierd if you don't want whitelisting I suggest you don't enable MY_SECURE_NODE_WHITELISTING and don't use the arguments for whitelisting. See the github link I posted for details on how the api changes based on the MY_SECURE_NODE_WHITELISTING flag.

      Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

      1 Reply Last reply
      0
      • carlierdC Offline
        carlierdC Offline
        carlierd
        wrote on last edited by
        #6

        It's probably not clear for me.

        I understood that the whitelisting could be enable on node to only accept data from trust gateway (identified by the soft_serial).
        So:

        • I set a soft_serial on the gateway and give a null withelist as I don't want to recompile the gateway for adding soft_serial of a new node.
        • I will set a soft_serial on the node and give a whitelist with the soft_serial of the gateway.

        I misunderstood ?

        AnticimexA 2 Replies Last reply
        0
        • carlierdC carlierd

          It's probably not clear for me.

          I understood that the whitelisting could be enable on node to only accept data from trust gateway (identified by the soft_serial).
          So:

          • I set a soft_serial on the gateway and give a null withelist as I don't want to recompile the gateway for adding soft_serial of a new node.
          • I will set a soft_serial on the node and give a whitelist with the soft_serial of the gateway.

          I misunderstood ?

          AnticimexA Offline
          AnticimexA Offline
          Anticimex
          Contest Winner
          wrote on last edited by
          #7

          @carlierd if you have not compiled your gw with whitelisting and given it a serial number, it will not salt the signature with that data, and signature will therefore not contain the necessary components for you node to identify your gw as a trusted sender, so if you want to use whitelisting, all nodes involved need to support this. I do believe this was stated on my topic on signatures but if it is missing, I will add that.

          Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

          1 Reply Last reply
          0
          • carlierdC carlierd

            It's probably not clear for me.

            I understood that the whitelisting could be enable on node to only accept data from trust gateway (identified by the soft_serial).
            So:

            • I set a soft_serial on the gateway and give a null withelist as I don't want to recompile the gateway for adding soft_serial of a new node.
            • I will set a soft_serial on the node and give a whitelist with the soft_serial of the gateway.

            I misunderstood ?

            AnticimexA Offline
            AnticimexA Offline
            Anticimex
            Contest Winner
            wrote on last edited by
            #8

            @carlierd that said, your understanding is correct. But you have to supply the proper constructor arguments.

            Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

            1 Reply Last reply
            0
            • carlierdC Offline
              carlierdC Offline
              carlierd
              wrote on last edited by
              #9

              I tried to compile the gw with the following code but it failed:

              MyTransportRFM69 transport;
              uint8_t soft_serial[SHA204_SERIAL_SZ] = {bla bla bla};
              MySigningAtsha204Soft signer(true, 0, NULL, soft_serial);
              

              It's not good ? What is wrong ?

              AnticimexA 1 Reply Last reply
              0
              • carlierdC carlierd

                I tried to compile the gw with the following code but it failed:

                MyTransportRFM69 transport;
                uint8_t soft_serial[SHA204_SERIAL_SZ] = {bla bla bla};
                MySigningAtsha204Soft signer(true, 0, NULL, soft_serial);
                

                It's not good ? What is wrong ?

                AnticimexA Offline
                AnticimexA Offline
                Anticimex
                Contest Winner
                wrote on last edited by
                #10

                @carlierd from the errors you listed above, it looks like you include two signing backends. Try only including the soft signing backend header since the backends declare conflicting whitelist structure types. They cannot be used simultaneously in the same sketch.

                Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

                1 Reply Last reply
                0
                • carlierdC Offline
                  carlierdC Offline
                  carlierd
                  wrote on last edited by
                  #11

                  So simple as soon as you give me the answer ;)

                  Thanks a lot !

                  AnticimexA 1 Reply Last reply
                  1
                  • carlierdC carlierd

                    So simple as soon as you give me the answer ;)

                    Thanks a lot !

                    AnticimexA Offline
                    AnticimexA Offline
                    Anticimex
                    Contest Winner
                    wrote on last edited by
                    #12

                    @carlierd no problem. I am on a phone so it is difficult to read the code formatting ok a small screen so I did not see the complete error message until now. Good to hear that it works now! :)

                    Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

                    1 Reply Last reply
                    0
                    • carlierdC Offline
                      carlierdC Offline
                      carlierd
                      wrote on last edited by
                      #13

                      Thanks to take time ! Especially on your phone :)

                      1 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      21

                      Online

                      11.7k

                      Users

                      11.2k

                      Topics

                      113.1k

                      Posts


                      Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • MySensors
                      • OpenHardware.io
                      • Categories
                      • Recent
                      • Tags
                      • Popular