Encryption via Wireless M-Bus 2010

4 thoughts on “Encryption via Wireless M-Bus 2010

  1. Hi,

    I have two Telit
    ME70-169 short range modules and I want to configure them in Linux so that they
    can send and receive encrypted (AES-128) data.

    I was able to
    configure the modules in Linux for sending and receiving unencrypted data, so I
    know that my hardware is working.

    I also tried to
    configure the module for sending and receiving encrypted data. Unfortunately I
    was unsuccessful.

    So I started working under
    Windows with the ‘SR Manager Tool’ from Telit.

    At first I configured
    one of the modules via the ‘Configuration Wizard’ of the SR Manager to receive
    encrypted data. I proceeded as follows:

    1. I set all modem’s
    parameter to their default values by the ‘ATR’ command

    2. I configured the
    module as ‘Mode N2-meter’ via register 400

    3. I set bit no. 2 of
    register 460 to ‘1’ to activate encryption

    4. I wrote a ‘Manufacturer
    ID’ in the registers 461-462

    5. I wrote an ‘Address’
    in the registers 463-468

    6. I wrote a 16 byte ‘Meter
    Key’ in the registers 470-485

    Are these steps
    enough to configure a ME70-169 module for receiving encrypted data?

    Does the ‘Manufacturer
    ID’ in the registers 461-462 need to match with the ID in the registers

    Same with the ‘Address’,
    does registers 463-468 need to match with the registers 413-418?

    Thinking this
    configuration will work, I wanted to send an encrypted frame from the other
    module, unfortunately unsuccessful.

    Is it possible to
    send encrypted data without a special frame format?

    If yes, how do I do

    If no, I do not know
    how to build a frame in frame format B, could you give me an example of a
    complete frame ready to send to my other module?

    I theoretically do know
    that I need ‘Block 2’ of frame format B and write ‘0x8F’ in the ‘CI-field’ so
    that I can write a ‘1’ (for AES-128 Counter Mode encryption) in the ‘ENC-field’
    of the ‘Session Number’ field of the ‘Extended Link Layer’, but I have no clue
    how to fill the other bytes of such a frame. I also do not know how to
    calculate the CRC and PayloadCRC.

    It is not a problem if
    it is easier for you to explain the process to me under Linux. In the end I
    need to configure the modules under Linux anyway.


    I hope you can help



      1. Hi,


        Thank you for the fast response.

        Your example worked and helped me a lot.

        I am now able to communicate encrypted with the SR Manager Tool under Windows.


        Thanks a lot,