Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The connect step #12

Open
dnesteryuk opened this issue Aug 9, 2024 · 5 comments
Open

The connect step #12

dnesteryuk opened this issue Aug 9, 2024 · 5 comments

Comments

@dnesteryuk
Copy link

I am trying to understand the XNL/XCMP protocol. Currently, I am stuck in the connect operation which requires some key which you derive from TRBOnet.Server.exe when it isn't set. Is there any other way to get this key to pass the connection?

@pboyd04
Copy link
Owner

pboyd04 commented Sep 12, 2024

The other option is to reverse engineer the constants here:
https://github.com/pboyd04/Moto.Net/blob/master/Moto.Net/Mototrbo/XNL/Encrypter.cs#L64C13-L70C1
And put them in your app.config file. I haven't included them in my attempt to not get sued by Motorola.

@mojtabamazhari
Copy link

I am working with XNL/XCMP protocols and need help obtaining the encryption keys referenced in the Encrypter.cs file (XNLConst1, XNLConst2, etc.). Is there a way to derive or access these keys without using TRBOnet.Server.exe?

Any guidance or documentation would be appreciated.

Best regards,

@pboyd04
Copy link
Owner

pboyd04 commented Sep 30, 2024

The best way to get them is via some sort of side band attack. It is a version of Tiny Encryption Algorithm (TEA) if you want to Google the best attacks. Worst case given input and output (wireshark) of licensed Mototrbo software like RDAC or the referenced TRBONet you can brute force the constants. That would need about a year or so to perform on my current GPU that is a couple of generations out of date. I'm not going to provide those constants unless I get a letter from Motorola legal saying that they aren't proprietary and I won't be sued for releasing them.

@mojtabamazhari
Copy link

Thank you for your response. I understand the constraints regarding the encryption keys. However, I am willing to cover any costs associated with obtaining the necessary keys through official channels. Could you please provide further details on how I can proceed or direct me to the appropriate contact to facilitate this process?

Your assistance is greatly appreciated.

Best regards,

@pboyd04
Copy link
Owner

pboyd04 commented Oct 1, 2024

I'm honestly not 100% certain on how you would get started on paying for this. I would probably start here: https://www.motorolasolutions.com/en_us/about/environmental-social-corporate-governance-esg/our-business/technology-leadership/technology-licensing/licensing-process.html
And hopefully they can help you or direct you where to go.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants