Welcome to the Pycom forum Forum
    • \[\[global:header.categories\]\]
    • \[\[global:header.recent\]\]
    • \[\[global:header.tags\]\]
    • \[\[global:header.popular\]\]
    • Login

    Explore Pybytes | Official Documentation | Report a Firmware Bug/Issue | GitHub

    LoRa Mesh security and addressing

    Scheduled Pinned Locked Moved Firmware
    16 Posts 6 Posters 784 Views 7 Watching
    Loading More Posts
    • 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.
    • C Offline
      cuca94
      last edited by

      Hi!

      I built a program around the LoRa Mesh example.
      In the example code only direct neighbors which are in range of the sender are addressed and not the devices which are in the mesh, but only over devices in between.

      So i changed the sending process to multicast

      MULTICAST_MESH_ALL = 'ff03::1'
      

      and except for a few packet losses, it works.

      This brings me to a few general security issues, because everyone with a device running LoRa Mesh on the same settings could sniff my outgoing data!?

      So what is the easiest way to make my system a little more secure.

      Is it possible to address only my known devices inside the mesh (e.g. by MAC Address)? What's the "normal" way to do this.

      Or is it easier to use some kind of encryption...

      Thanks for your help!

      1 Reply Last reply Reply Quote 0
      • C Offline
        cuca94
        last edited by

        @catalin maybe u could help me? ;)

        1 Reply Last reply Reply Quote 0
        • catalinC Offline
          catalin
          last edited by

          @cuca94, hi!
          It's safer to tag me directly @catalin, so I am directly notified.
          In the latest code, not yet released, I've added in the Mesh() constructor the 128bits key, which authenticates and encrypts all mesh traffic. Let's call this basic security.
          Secondly, I've prepared scripts examples for both symmetric and asymmetric encryption inside Pymesh, this is above the basic security and allows private communication channels in the Pymesh.

          To address nodes, in the soon to be released (end of this week) pymesh library, I've added a custom IPv6 address for each node, which resembles LoRa MAC address, so by knowing your devices MAC address, you can try to access them in the mesh (sending an UDP message to the known IPv6 and waiting for ACK).

          Catalin,

          Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
          Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

          1 Reply Last reply Reply Quote 1
          • R Offline
            ricardolima
            last edited by

            @catalin Waiting anxiously for the new release.
            I am also facing that issue

            1 Reply Last reply Reply Quote 0
            • R Offline
              ricardolima
              last edited by

              @catalin Any news on this ? I Really want to make a mesh with devices which does not have direct contact and that feature working will be great :D

              @cuca94 Can you tell us what did you to workaround that ? How did you change the sending process to MULTICAST_MESH_ALL = 'ff03::1' ?

              Thank you

              C 1 Reply Last reply Reply Quote 0
              • R Offline
                rudivd
                last edited by

                @catalin 21 days ago you said that a new release of the mesh code was imminent, where can I find it ?
                Thanks
                Rudi

                catalinC 1 Reply Last reply Reply Quote 0
                • catalinC Offline
                  catalin @rudivd
                  last edited by

                  hi @rudivd @ricardolima,
                  Sorry for the long wait, today we have an internal meeting, to decide on the licensing.

                  Catalin,

                  Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
                  Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

                  R kodarnK 2 Replies Last reply Reply Quote 2
                  • R Offline
                    rudivd @catalin
                    last edited by

                    @catalin Great, what did come out of the meeting ??
                    hope you can release soon, let us know when to expect the code

                    Thanks
                    R

                    1 Reply Last reply Reply Quote 1
                    • kodarnK Offline
                      kodarn @catalin
                      last edited by kodarn

                      @catalin *Bump* :-)

                      1 Reply Last reply Reply Quote 0
                      • catalinC Offline
                        catalin
                        last edited by

                        @rudivd @kodarn
                        It's pretty clear this release is well awaited 😐.
                        Progress is getting done, licensing and procedure is set.
                        Meanwhile, I am performing more tests, also some docs.

                        Catalin,

                        Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
                        Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

                        S R 3 Replies Last reply Reply Quote 2
                        • S Offline
                          sylvainm @catalin
                          last edited by

                          @catalin Good news

                          1 Reply Last reply Reply Quote 0
                          • R Offline
                            rudivd @catalin
                            last edited by

                            @catalin GREAT !

                            1 Reply Last reply Reply Quote 0
                            • C Offline
                              cuca94 @ricardolima
                              last edited by

                              @ricardolima just change neighbor

                              s.sendto(msg + str(pack_num), (neighbor, myport))
                              

                              to

                              s.sendto(msg + str(pack_num), ("ff03::1", myport))
                              
                              1 Reply Last reply Reply Quote 1
                              • R Offline
                                rudivd @catalin
                                last edited by

                                @catalin any idea on the release timeframe ?

                                catalinC 1 Reply Last reply Reply Quote 0
                                • catalinC Offline
                                  catalin @rudivd
                                  last edited by

                                  @rudivd
                                  You're well understood, but honestly, I can't promise anything.
                                  I am adding features, like sleepy-end-devices, setting router-leader weights, and multiple meshes support.

                                  Catalin,

                                  Have you checked out our docs for the answer? (Now with an easy search function) https://docs.pycom.io
                                  Check out our newly revamped device management platform, Pybytes! https://pybytes.pycom.io/

                                  R 1 Reply Last reply Reply Quote 0
                                  • R Offline
                                    rudivd @catalin
                                    last edited by

                                    @catalin Thanks for the heads-up. I really would like to get my hands on the new release just to build my application.

                                    1 Reply Last reply Reply Quote 0

                                    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                    With your input, this post could be even better 💗

                                    Register Login
                                    • 1 / 1
                                    • First post
                                      Last post

                                    Pycom on Twitter

                                    Pycom