干货分享 | 在TSMaster中加载基于DotNet平台的Seed&Key

在UDS诊断过程中,会涉及到安全访问的问题,也就是所谓的Seed&Key。TSMaster 诊断模块支持通过.dll文件载入 Seed&Key 算法用于安全访问解锁。在最近发布的TSMaster 2024.03版本中不仅支持了C/C++,Delphi等语言封装的DLL文件,也新增支持了基于DotNet平台如C#,VB.Net等语言编写的DLL,高效兼容不同平台生成的安全访问dll,为工程师带来更便捷的使用体验。

在 TSMaster 安装目录中,提供了C++和C#两种编程语言封装 Seed&Key 算法的Visual Studio模板工程。用户基于此模板工程开发即可得到能够直接加载的 DLL 函数。

++本文关键字:UDS、 Seed&Key算法 DLL模板工程、 C++、C#++

目录

Catalog

  1. C++封装Seed&Key算法

  2. C#封装Seed&Key算法

一、C++封装Seed&Key算法

  1. 打开 TSMaster 安装目录下 Seed&Key 接口工程所在的路径(图1)。用户可以拷贝该工程添加自己的 Seed&Key 算法。

图1

  1. 如果使用C++封装Seed&Key 算法成DLL文件,可以选择Win32DLL->GenerateKeyEx路径下的工程并打开。

图2

  1. 目前,要想被 TSMaster 的诊断模块直接加载,该 DLL 必须实现工程内seedNKeyDiag.cpp文件中四种函数接口中的其中一种:

图3

  1. 使用接口1编写测试代码(图4),选择Release模式,选择X86平台,右键项目生成解决方案。

图4

  1. 生成解决方案后,在当前工程文件夹下的x86->Release目录可以看到刚刚生成的DLL文件。

图5

  1. 加载生成好的DLL文件,使用DLL校验器,判断自己加载的 DLL接口是否正确。

图6

二、C#封装Seed&Key算法

  1. 使用C#封装Seed&Key 算法的步骤与使用C++封装的步骤类似,选择DotNet->GenerateKeyEx路径下的工程并打开。

图7

  1. 打开工程后,可以在uGenerateKeyExNet.cs源文件中看到目前所支持的三种C#接口类型,实现如下三种接口中的其中一个接口即可。

图8

  1. 使用接口1编写测试代码,选择Release,再选择重新生成解决方案。

图9

  1. 生成解决方案后,在当前工程文件夹下的bin>Release目录可以看到刚刚生成的DLL文件。

图10

5.加载生成好的DLL文件,勾选DoNET选项,使用DLL校验器,判断自己加载的 DLL接口是否正确。

图11

相关推荐
沙盘客35 分钟前
AFSIM 官方案例库全景与解读方法论
c++·经验分享·后端
机器人梦想家42 分钟前
具身机器人视觉服务的异步回调与并发控制
数据库·算法·机器人
小妖同学学AI1 小时前
开源向量数据库的王者:Milvus 深度解析,专为 AI 应用打造的云原生搜索引擎!
数据库·开源·milvus
l1258652 小时前
# RAG上线评估指标体系:六大核心指标与压测实战全解析
数据库·人工智能·python·mysql·langchain·milvus
_wxd6662 小时前
STL-stack与queue与priority_queue(容器适配器)
c++
一只鹿鹿鹿2 小时前
数据资产管理解决方案(Word文件)
大数据·数据库·安全·web安全·系统安全
2401_894915532 小时前
Geo 优化源码部署实战:环境配置、参数调优完整指南
运维·服务器·数据库·tcp/ip·安全
FfHUCisI2 小时前
Golang database/sql 标准库基础
数据库·sql·golang
zh路西法2 小时前
【玩转VLA具身智能机械臂】(二):MoveIt2 运动规划——架构、配置与 C++ 上手
c++·机械臂·路径规划·vla·planner·moveit2
zhanghaha13143 小时前
Python进阶教程:13_math 模块 —— 新手完全指南
数据库·python·机器学习