Skip to main content
Home
for DLMS smart meters
Open source solutions for DLMS smart metering

Main navigation

  • Home
  • Products
  • About us
  • Open Source
  • Community
  • Forum
  • Downloads
User account menu
  • Log in

Breadcrumb

  1. Home
  2. Invalid Authentication Key. Issue With Deciphering

Invalid Authentication key. Issue with deciphering

By carlituus , 21 February, 2025
Forums
DLMSDirector

I am trying to connect and read/write data from a meter using DLMS over UDP. I cannot use Gurux DLMS Director because the meter has a dynamic IP address, so I am reusing the UDP connection to my server to send the requests to the meter. However, I am facing issues, and I haven’t been able to read anything so far.

To debug, I am using the Gurux Translator within Director to check the decryption, but it fails. These are the parameters I set:

Security: Encryption only (No authentication)
Keys: Properly set for encryption
Frame Counter: Managed correctly
System Title: Extracted correctly from the message
However, I still get an "Invalid authentication tag" error, even though I am not using authentication. If I remove the authentication key, even I am not setting Authentication, it fails as well

I am now running out of ideas and unsure what else I can try. Could someone please guide me on how to proceed and unblock this situation?

I appreciate any help or suggestions!

This is the UDP message I get form the meter:

# To convert message to Xml:
# Paste or type DLMS hex-string example from GXDLMSDirector log into the text area and then press the "Translate" button.
# Example:
00 01 00 01 00 01 00 F2 DB 08 B4 4C 79 23 01 03 00 07 81 E6 30 00 00 00 D6 03 A0 2D 10 B5 B9 A7 12 C7 DD 78 DB 84 C3 91 22 86 2C C5 E3 4D DB 77 EF 83 3B 59 4B 04 9A 9F 29 14 65 6C 70 7D 4D 81 6F 41 46 95 0B F9 1E 69 D1 44 55 FA AA 54 8F 9B 1A 2D 4D 96 BC 2F 91 EC 48 A5 35 FF FB DA 63 43 A8 7F B6 B5 8A 4E 1C F2 9E 31 04 A3 D0 B1 A4 17 81 57 FE DF 00 67 02 DE 3C 11 29 4D 90 19 50 05 10 48 A7 C4 33 AE 33 D2 D0 98 E2 82 0A 98 0A BC 13 31 B8 9E 0D 43 EC EA 6F 5E BD 64 5A D3 A4 FB 20 2C 82 6B E7 9D E6 A3 B1 45 70 72 5C 8A 20 89 1C EF 1A 78 A4 F4 41 85 FF 5D 2D A2 7A 2C D8 81 05 47 E5 D8 EF FF 64 3C FF 73 4D 33 A0 3B CE F7 0F 3F 0B 00 6A EB 86 91 CA EB 18 C4 58 10 DC F3 B3 EB CF BB 99 F4 23 3C BA 73 E4 50 3E 9F F6 05 38 77 00 F1 A7 C9 5F F7 46 10

This is the ciphering settings
- Security Suite: suite0
- Security: Encryption
- System Title: ASCII format as “SACSACSA”
- Pre-established System Title: B4 4C 79 23 01 03 00 07
- Block Cipher Key: 83 1A 17 11 6C 24 9E 49 44 52 ED DA AD 33 E0 A1
- Invocation counter: 0

The block cipher key and pre-established system title are correct since we are deciphering with library System.Security.Cryptography but I want to do it with Gurux libraries, the whole process

Thanks in advance.

carlituus

1 year 3 months ago

This is the result I get…

This is the result I get when I try to decipher the message within Translator tool:

BlockCipher key: 83 1A 17 11 6C 24 9E 49 44 52 ED DA AD 33 E0 A1
1: 00 01 00 01 00 01 00 F2 DB 08 B4 4C 79 23 01 03 00 07 81 E6 30 00 00 00 D6 03 A0 2D 10 B5 B9 A7 12 C7 DD 78 DB 84 C3 91 22 86 2C C5 E3 4D DB 77 EF 83 3B 59 4B 04 9A 9F 29 14 65 6C 70 7D 4D 81 6F 41 46 95 0B F9 1E 69 D1 44 55 FA AA 54 8F 9B 1A 2D 4D 96 BC 2F 91 EC 48 A5 35 FF FB DA 63 43 A8 7F B6 B5 8A 4E 1C F2 9E 31 04 A3 D0 B1 A4 17 81 57 FE DF 00 67 02 DE 3C 11 29 4D 90 19 50 05 10 48 A7 C4 33 AE 33 D2 D0 98 E2 82 0A 98 0A BC 13 31 B8 9E 0D 43 EC EA 6F 5E BD 64 5A D3 A4 FB 20 2C 82 6B E7 9D E6 A3 B1 45 70 72 5C 8A 20 89 1C EF 1A 78 A4 F4 41 85 FF 5D 2D A2 7A 2C D8 81 05 47 E5 D8 EF FF 64 3C FF 73 4D 33 A0 3B CE F7 0F 3F 0B 00 6A EB 86 91 CA EB 18 C4 58 10 DC F3 B3 EB CF BB 99 F4 23 3C BA 73 E4 50 3E 9F F6 05 38 77 00 F1 A7 C9 5F F7 46 10
offset

carlituus

1 year 3 months ago

Okay, I think I was able to…

Okay, I think I was able to decipher. I just set the Authentication key the same as the Block cipher key. I didn't know it would accepted but I think it worked. Can you please confirm?
Thanks so much in advance!

Profile picture for user Kurumi

Kurumi

1 year 3 months ago

Hi, That depends on the…

Hi,

That depends on the meter. Some meters use the same key for block cipher and authentication. Most of the meters have different key for the block cipher and authentication. The correct keys should be on the meter documentation.

BR,
Mikko

  • Create new account
  • Reset your password

Hire Us!

Latest Releases

  • Tue, 06/09/2026 - 11:16
    gurux.dlms.java 4.0.95
  • Tue, 06/09/2026 - 10:03
    Gurux.DLMS.Python 1.0.199
  • Mon, 06/08/2026 - 13:39
    gurux.dlms.cpp 9.0.2606.0801
  • Mon, 06/01/2026 - 10:15
    gurux.dlms.cpp 9.0.2606.0101
  • Thu, 05/28/2026 - 16:06
    gurux.dlms.java 4.0.94

New forum topics

  • Error reading L&G Meter
  • Pass a TCP Client to GXNet
  • Australian EDMI Mk10D (Essential Energy area)
  • Strange mix of data notificiation vs get response
  • DLMS Connection
More
RSS feed
Privacy FAQ GXDN Issues Contact
Follow Gurux on Twitter Follow Gurux on Linkedin