<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Seed&amp;Key &#8211; 上海同星智能科技有限公司</title>
	<atom:link href="https://www.tosunai.com/tag/seedkey/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.tosunai.com</link>
	<description>Engineer Everything!</description>
	<lastBuildDate>Wed, 05 Feb 2025 07:38:55 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.2</generator>

<image>
	<url>https://www.tosunai.com/wp-content/uploads/2024/09/112x112-100x100.webp</url>
	<title>Seed&amp;Key &#8211; 上海同星智能科技有限公司</title>
	<link>https://www.tosunai.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>一文了解TSMaster中Seed&#038;key的两种处理方法</title>
		<link>https://www.tosunai.com/two-processing-methods-of-seedkey-in-tsmaster/</link>
					<comments>https://www.tosunai.com/two-processing-methods-of-seedkey-in-tsmaster/#respond</comments>
		
		<dc:creator><![CDATA[zhang, yaping]]></dc:creator>
		<pubDate>Tue, 29 Aug 2023 07:10:34 +0000</pubDate>
				<category><![CDATA[软件操作教程]]></category>
		<category><![CDATA[Seed&Key]]></category>
		<category><![CDATA[TSMaster]]></category>
		<category><![CDATA[UDS诊断]]></category>
		<category><![CDATA[诊断]]></category>
		<guid isPermaLink="false">https://www.tosunai.com/?p=4899</guid>

					<description><![CDATA[<p>overview前言 在UDS诊断过程中，会涉及到安全访问的问题，也就是常说的Seed&#038;Key。TS [&#8230;]</p>
<p>&lt;p&gt;The post <a rel="nofollow" href="https://www.tosunai.com/two-processing-methods-of-seedkey-in-tsmaster/">一文了解TSMaster中Seed&amp;key的两种处理方法</a> first appeared on <a rel="nofollow" href="https://www.tosunai.com">上海同星智能科技有限公司</a>.&lt;/p&gt;</p>
]]></description>
			<style id="elementor-post-4899">.elementor-4899 .elementor-element.elementor-element-dac3faa > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-4899 .elementor-element.elementor-element-dac3faa{margin-top:-1px;margin-bottom:-1px;padding:14px 0px 23px 0px;}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-4899 .elementor-element.elementor-element-2290d1c > .elementor-widget-container{background-image:url("https://www.tosunai.com/wp-content/uploads/2023/01/TOSUN-EDA.jpg");margin:0px 0px 0px 0px;padding:25px 25px 25px 25px;}.elementor-4899 .elementor-element.elementor-element-2290d1c{text-align:center;}.elementor-4899 .elementor-element.elementor-element-2290d1c .elementor-heading-title{font-size:20px;font-weight:600;text-transform:uppercase;letter-spacing:12px;color:#FFFFFF;}.elementor-4899 .elementor-element.elementor-element-01a18a7 > .elementor-widget-container{padding:2px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-01a18a7 .elementor-heading-title{font-family:"Verdana", Sans-serif;font-size:16px;font-weight:400;line-height:29px;-webkit-text-stroke-color:#000;stroke:#000;color:var( --e-global-color-262e827 );}.elementor-4899 .elementor-element.elementor-element-508192f{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px -8px;}.elementor-widget-text-editor{color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4899 .elementor-element.elementor-element-e8a7a46{text-align:start;font-size:18px;color:#4E4E4E;}.elementor-4899 .elementor-element.elementor-element-5f15c6a{margin-top:-32px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-95d22d9{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );}.elementor-4899 .elementor-element.elementor-element-49e841d > .elementor-widget-container{margin:-26px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-a8f461c{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-c517c87{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-7021bd6 > .elementor-widget-container{margin:-26px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-0cfe7f4{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-688a80a{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-08fd497 > .elementor-widget-container{margin:-26px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-6b213e9{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-8c9297c{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-80a2bcd{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px -8px;}.elementor-4899 .elementor-element.elementor-element-e01529c{text-align:start;font-size:18px;color:#4E4E4E;}.elementor-4899 .elementor-element.elementor-element-14c7b15{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-bf1b379{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-85c427b{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px -8px;}.elementor-4899 .elementor-element.elementor-element-5fee199{text-align:start;font-size:18px;color:#4E4E4E;}.elementor-4899 .elementor-element.elementor-element-d09f076{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-5ad8655{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-9022307 > .elementor-widget-container{margin:-26px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-761dc4a{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-b7d50fb{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-5bfc58e > .elementor-widget-container{margin:-26px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-12a5e00{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-770fa48{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-25a322a{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px -8px;}.elementor-4899 .elementor-element.elementor-element-d2f3093{text-align:start;font-size:18px;color:#4E4E4E;}.elementor-4899 .elementor-element.elementor-element-e38c2ea{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-613eaa9{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-5878673 > .elementor-widget-container{margin:-26px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-a14bf03{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-5041275{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-c75356d > .elementor-widget-container{margin:-26px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-2f88a37{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-b1f7959{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-4899 .elementor-element.elementor-element-bd738b1 > .elementor-widget-container{margin:-26px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-4885955{margin-top:-3px;margin-bottom:0px;}.elementor-4899 .elementor-element.elementor-element-b4357dc{font-family:"Verdana", Sans-serif;font-size:16px;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-4899 .elementor-element.elementor-element-4030a0d{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-4899 .elementor-element.elementor-element-4030a0d > .elementor-widget-container{margin:0px -11px 0px -11px;}.elementor-4899 .elementor-element.elementor-element-4030a0d .elementor-divider-separator{width:100%;}.elementor-4899 .elementor-element.elementor-element-4030a0d .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-4899 .elementor-element.elementor-element-bd8a175{border-style:dashed;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-decbd46 );margin-top:6px;margin-bottom:41px;}.elementor-4899 .elementor-element.elementor-element-bd8a175, .elementor-4899 .elementor-element.elementor-element-bd8a175 > .elementor-background-overlay{border-radius:1px 1px 1px 1px;}.elementor-4899 .elementor-element.elementor-element-449f6d3{font-family:"Verdana", Sans-serif;font-size:16px;line-height:25px;letter-spacing:0.5px;color:#0772B0;}@media(max-width:1024px){.elementor-4899 .elementor-element.elementor-element-dac3faa{padding:100px 25px 100px 25px;}.elementor-4899 .elementor-element.elementor-element-01a18a7 .elementor-heading-title{font-size:20px;}}@media(max-width:767px){.elementor-4899 .elementor-element.elementor-element-dac3faa{padding:50px 20px 50px 20px;}.elementor-4899 .elementor-element.elementor-element-01a18a7 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-4899 .elementor-element.elementor-element-01a18a7 .elementor-heading-title{font-size:20px;}}</style>							<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="4899" class="elementor elementor-4899" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-dac3faa elementor-section-content-middle elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="dac3faa" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-no">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-185da69" data-id="185da69" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-2290d1c elementor-widget elementor-widget-heading" data-id="2290d1c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h5 class="elementor-heading-title elementor-size-default">overview前言</h5>				</div>
				</div>
				<div class="elementor-element elementor-element-01a18a7 elementor-widget elementor-widget-heading" data-id="01a18a7" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h4 class="elementor-heading-title elementor-size-default">在UDS诊断过程中，会涉及到安全访问的问题，也就是常说的Seed&amp;Key。TSMaster中提供了两种 Seed&amp;Key 的处理方法：第一种是直接加载DLL文件；第二种是直接在TSMaster的编译器中直接添加安全算法。</h4>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-508192f elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="508192f" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8ea585e" data-id="8ea585e" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-e8a7a46 elementor-widget elementor-widget-text-editor" data-id="e8a7a46" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><b>一、加载外部 Seed&amp;Key DLL</b></p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5f15c6a elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5f15c6a" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0770bc6" data-id="0770bc6" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-95d22d9 elementor-widget elementor-widget-text-editor" data-id="95d22d9" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>TSMaster 诊断模块支持通过 dll 载入 Seed&amp;Key 算法，该算法 dll 跟主流工具的计算接口兼容，接口定义如下图所示：</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6dc606e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6dc606e" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-cd5e473" data-id="cd5e473" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-49e841d elementor-widget elementor-widget-image" data-id="49e841d" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img fetchpriority="high" decoding="async" width="1024" height="175" src="https://www.tosunai.com/wp-content/uploads/2023/08/1-1-1024x175.png" class="attachment-large size-large wp-image-4903" alt="TSMaster中Seed&amp;key的两种处理方法" srcset="https://www.tosunai.com/wp-content/uploads/2023/08/1-1-1024x175.png 1024w, https://www.tosunai.com/wp-content/uploads/2023/08/1-1-300x51.png 300w, https://www.tosunai.com/wp-content/uploads/2023/08/1-1-768x132.png 768w, https://www.tosunai.com/wp-content/uploads/2023/08/1-1-18x3.png 18w, https://www.tosunai.com/wp-content/uploads/2023/08/1-1-800x137.png 800w, https://www.tosunai.com/wp-content/uploads/2023/08/1-1.png 1080w" sizes="(max-width: 1024px) 100vw, 1024px" title="一文了解TSMaster中Seed&amp;key的两种处理方法 9">															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-a8f461c elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="a8f461c" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-535f3b0" data-id="535f3b0" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-c517c87 elementor-widget elementor-widget-text-editor" data-id="c517c87" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>在 TSMaster 工具-&gt;系统信息-&gt;python 环境设置中选择打开解析器路径；</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-1125066 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="1125066" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d2f888b" data-id="d2f888b" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-7021bd6 elementor-widget elementor-widget-image" data-id="7021bd6" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="1024" height="488" src="https://www.tosunai.com/wp-content/uploads/2023/08/2-1-1024x488.png" class="attachment-large size-large wp-image-4904" alt="TSMaster中Seed&amp;key的两种处理方法" srcset="https://www.tosunai.com/wp-content/uploads/2023/08/2-1-1024x488.png 1024w, https://www.tosunai.com/wp-content/uploads/2023/08/2-1-300x143.png 300w, https://www.tosunai.com/wp-content/uploads/2023/08/2-1-768x366.png 768w, https://www.tosunai.com/wp-content/uploads/2023/08/2-1-18x9.png 18w, https://www.tosunai.com/wp-content/uploads/2023/08/2-1-800x381.png 800w, https://www.tosunai.com/wp-content/uploads/2023/08/2-1.png 1091w" sizes="(max-width: 1024px) 100vw, 1024px" title="一文了解TSMaster中Seed&amp;key的两种处理方法 10">															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-0cfe7f4 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="0cfe7f4" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-31c85f6" data-id="31c85f6" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-688a80a elementor-widget elementor-widget-text-editor" data-id="688a80a" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>【1】 加载 DLL</p><p>【2】 删除 DLL</p><p>【3】 DLL 校验器，通过此按钮，用户可以判断自己加载的 dll 接口是否正确，算法是否符合设计要求。如下图所示：</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5151a58 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5151a58" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-e59fde9" data-id="e59fde9" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-08fd497 elementor-widget elementor-widget-image" data-id="08fd497" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="438" height="155" src="https://www.tosunai.com/wp-content/uploads/2023/08/3-1.png" class="attachment-large size-large wp-image-4906" alt="TSMaster中Seed&amp;key的两种处理方法" srcset="https://www.tosunai.com/wp-content/uploads/2023/08/3-1.png 438w, https://www.tosunai.com/wp-content/uploads/2023/08/3-1-300x106.png 300w, https://www.tosunai.com/wp-content/uploads/2023/08/3-1-18x6.png 18w" sizes="(max-width: 438px) 100vw, 438px" title="一文了解TSMaster中Seed&amp;key的两种处理方法 11">															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6b213e9 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6b213e9" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-05afeb5" data-id="05afeb5" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8c9297c elementor-widget elementor-widget-text-editor" data-id="8c9297c" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>如上图所示界面，用户选择 Seed 的 Level 过后，输入 Demo Seed 值，点击 GenKey 进行判断。如果该 DLL 接口跟模板定义接口统一，则会输出提示信息：Generate Key Success，然后用户根据 Key 值跟目标值对比，进一步确认DLL 中的算法是否符合设计要求。 </p><p>【4】 打开 TSMaster 安装目录下 Seed&amp;Key 接口工程所在的路径。用户可以拷贝该工程添加自己的 Seed&amp;Key 算法。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-80a2bcd elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="80a2bcd" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-84c630c" data-id="84c630c" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-e01529c elementor-widget elementor-widget-text-editor" data-id="e01529c" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>”<u style="font-weight: bold;">默认SeedKey函数接口</u></p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-14c7b15 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="14c7b15" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-67a02c5" data-id="67a02c5" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-bf1b379 elementor-widget elementor-widget-text-editor" data-id="bf1b379" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>目前，要想被 TSMaster 的诊断模块直接加载，该 DLL 必须实现如下三种函数接口中的一种： </p><p>【1】 接口 1： </p><p>unsigned int GenerateKeyEx( const unsigned char* ipSeedArray, /* Array for the seed [in] */ unsigned int iSeedArraySize, /* Length of the array for the seed [in] */ const unsigned int iSecurityLevel, /* Security level [in] */ const char* ipVariant, /* Name of the active variant [in] */ unsigned char* iopKeyArray, /* Array for the key [in, out] */ unsigned int iMaxKeyArraySize, /* Maximum length of the array for the key [in] */ unsigned int&amp; oActualKeyArraySize); /* Length of the key [out] */ </p><p>【2】 接口 2： </p><p>unsigned int GenerateKeyExOpt( const unsigned char* ipSeedArray, /* Array for the seed [in] */ unsigned int iSeedArraySize, /* Length of the array for the seed [in] */ const unsigned int iSecurityLevel, /* Security level [in] */ const char* ipVariant, /* Name of the active variant [in] */ const char* iPara, /* */ unsigned char* iopKeyArray, /* Array for the key [in, out] */ unsigned int iMaxKeyArraySize, /* Maximum length of the array for the key [in] */ unsigned int&amp; oActualKeyArraySize) /* Length of the key [out] */ </p><p>【3】 接口 3：</p><p>bool ASAP1A_CCP_ComputeKeyFromSeed( const unsigned char* ipSeedArray, /* Array for the seed [in] */ unsigned short iSeedArraySize, /* Length of the array for the seed [in] */ unsigned char* iopKeyArray, /* Array for the key [in, out] */ unsigned short iMaxKeyArraySize, /* Maximum length of the array for the key [in] */ unsigned short* opSizeKey) /* Length of the key [out] */ </p><p>用户的 DLL 只要实现了上述任意一种函数接口，即可直接加载到 TP 层模块中。如果出现加载失败，主要检查如下情况： </p><p>1. 是否用 Release 模式发布，如果是 Debug 模式，常常会有以上失败的情况出现。 </p><p>2. 是否采用 x86 平台发布，目前 TSMaster 为支持 X86 的版本，用来调试的 DLL 也必须为X86 模式。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-85c427b elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="85c427b" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-179a18e" data-id="179a18e" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5fee199 elementor-widget elementor-widget-text-editor" data-id="5fee199" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>”<u style="font-weight: bold;">如何兼容其他函数接口</u></p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-d09f076 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="d09f076" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2184d79" data-id="2184d79" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5ad8655 elementor-widget elementor-widget-text-editor" data-id="5ad8655" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>日常使用中，经常出现用户已经开发好了 dll，如果该 dll的接口不是上述三种中的任何一种，就无法直接加载到 TSMaster 的诊断模块中。对于这种情况，推荐采用如下方案来解决此问题：</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-597c314 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="597c314" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f3240f6" data-id="f3240f6" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9022307 elementor-widget elementor-widget-image" data-id="9022307" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="588" src="https://www.tosunai.com/wp-content/uploads/2023/08/4-1-1024x588.png" class="attachment-large size-large wp-image-4909" alt="TSMaster中Seed&amp;key的两种处理方法" srcset="https://www.tosunai.com/wp-content/uploads/2023/08/4-1-1024x588.png 1024w, https://www.tosunai.com/wp-content/uploads/2023/08/4-1-300x172.png 300w, https://www.tosunai.com/wp-content/uploads/2023/08/4-1-768x441.png 768w, https://www.tosunai.com/wp-content/uploads/2023/08/4-1-18x10.png 18w, https://www.tosunai.com/wp-content/uploads/2023/08/4-1-800x459.png 800w, https://www.tosunai.com/wp-content/uploads/2023/08/4-1.png 1083w" sizes="auto, (max-width: 1024px) 100vw, 1024px" title="一文了解TSMaster中Seed&amp;key的两种处理方法 12">															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-761dc4a elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="761dc4a" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1bd8da8" data-id="1bd8da8" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-b7d50fb elementor-widget elementor-widget-text-editor" data-id="b7d50fb" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>下面以一个实际的实例来讲解如何兼容用户现有的 DLL 文件。 </p><p><b>1. 用户现有的 DLL，名称为 UserSeedKey.dll。该函数内部的 API 函数有： </b></p><p>➢ Seed 等级为 1 的时候，调用函数 void GetKeyFromSeed01(byte* ASeed, byte* AKey)； </p><p>➢ Seed 等级为 3 的时候，调用函数 void GetKeyFromSeed03(byte* ASeed, byte* AKey)； </p><p>➢ Seed 等级为 11 的时候，调用函数 void GetKeyFromSeed11(byte* ASeed, byte* AKey)； </p><p>该 dll 不支持上述默认加载接口，无法直接加载到 TSMaster 中使用。因此，需要把这些 DLL 再包装一层，才能载入到 TSMaster 的诊断模块中。 </p><p>2. <b>选择 TSMaster 安装目录中提供的 GenerateKeyEx 的模板工程，在该工程中调用上述 DLL的函数接口。基本思路是： </b></p><p>➢ 采用 Loadlibrary 动态用户现有的 dll。 </p><p>➢ 根据传入的 Level 参数，采用 GetProcAddress 函数动态获取实际的用于计算 Key 的函数指针。 </p><p>➢ 如果获取函数指针成功，则使用该函数指针传输 Seed 值，并计算对应的 Key 值。 </p><p>详细调用示例函数如下图所示：</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-771fee1 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="771fee1" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-599961c" data-id="599961c" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5bfc58e elementor-widget elementor-widget-image" data-id="5bfc58e" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="846" height="829" src="https://www.tosunai.com/wp-content/uploads/2023/08/5-1.png" class="attachment-large size-large wp-image-4910" alt="TSMaster中Seed&amp;key的两种处理方法" srcset="https://www.tosunai.com/wp-content/uploads/2023/08/5-1.png 846w, https://www.tosunai.com/wp-content/uploads/2023/08/5-1-300x294.png 300w, https://www.tosunai.com/wp-content/uploads/2023/08/5-1-768x753.png 768w, https://www.tosunai.com/wp-content/uploads/2023/08/5-1-12x12.png 12w, https://www.tosunai.com/wp-content/uploads/2023/08/5-1-800x784.png 800w" sizes="auto, (max-width: 846px) 100vw, 846px" title="一文了解TSMaster中Seed&amp;key的两种处理方法 13">															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-12a5e00 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="12a5e00" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-247a232" data-id="247a232" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-770fa48 elementor-widget elementor-widget-text-editor" data-id="770fa48" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>3. 该 GenerateKeyEx 工程开发结束后，TSMaster 直接加载 GenerateKeyEx 所在的 dll。需要注意的是，用户需要把现有的UserSeedKey.dll 拷贝到TSMaster 根目录或者GenerateKeyEx.dll 所在的目录。如果不拷贝过去，GenerateKeyEx.dll 执行的时候会出现找不到对应依赖 dll 的情况，解锁失败。 </p><p><b>总结：  </b></p><p>在 TSMaster 安装目录中，提供了封装 Seed&amp;Key 算法的模板工程。如GenerateKeyEx，GenerateKeyExOpt ASAP1A_CCP_ComputeKeyFromSeed，用户基于此模板工程开发即可得到能够直接加载的 dll 函数。 </p><p>同时，也提供了二次封装的 dll 的工程，比如 GenerateKeyEx_Wrapper_Demo，该工程演示了如何基于已经存在的 SeedKey 算法库进行包装，生成可以直接加载到 TSMaster 诊断模块中的 dll 的过程。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-25a322a elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="25a322a" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-6fbe529" data-id="6fbe529" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-d2f3093 elementor-widget elementor-widget-text-editor" data-id="d2f3093" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><b>二、采用内置的算法编辑器</b></p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-e38c2ea elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="e38c2ea" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1157c00" data-id="1157c00" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-613eaa9 elementor-widget elementor-widget-text-editor" data-id="613eaa9" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>基本步骤如下所示：</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-fe40805 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="fe40805" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3e70b23" data-id="3e70b23" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5878673 elementor-widget elementor-widget-image" data-id="5878673" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="396" src="https://www.tosunai.com/wp-content/uploads/2023/08/6-1-1024x396.png" class="attachment-large size-large wp-image-4913" alt="6 1 TSMaster" srcset="https://www.tosunai.com/wp-content/uploads/2023/08/6-1-1024x396.png 1024w, https://www.tosunai.com/wp-content/uploads/2023/08/6-1-300x116.png 300w, https://www.tosunai.com/wp-content/uploads/2023/08/6-1-768x297.png 768w, https://www.tosunai.com/wp-content/uploads/2023/08/6-1-18x7.png 18w, https://www.tosunai.com/wp-content/uploads/2023/08/6-1-800x309.png 800w, https://www.tosunai.com/wp-content/uploads/2023/08/6-1.png 1141w" sizes="auto, (max-width: 1024px) 100vw, 1024px" title="一文了解TSMaster中Seed&amp;key的两种处理方法 14">															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-a14bf03 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="a14bf03" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-5bec08d" data-id="5bec08d" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5041275 elementor-widget elementor-widget-text-editor" data-id="5041275" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>注意事项：</strong></p><p>【1】 算法函数的接口，TSMaster 目前提供了最常用的接口形式，如果用户有自己特殊的接口形式，无法覆盖住，请联系上海同星把此接口增加到选项中。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-16632da elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="16632da" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-bb538c7" data-id="bb538c7" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-c75356d elementor-widget elementor-widget-image" data-id="c75356d" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="862" height="197" src="https://www.tosunai.com/wp-content/uploads/2023/08/7-1.png" class="attachment-large size-large wp-image-4915" alt="TSMaster中Seed&amp;key的两种处理方法" srcset="https://www.tosunai.com/wp-content/uploads/2023/08/7-1.png 862w, https://www.tosunai.com/wp-content/uploads/2023/08/7-1-300x69.png 300w, https://www.tosunai.com/wp-content/uploads/2023/08/7-1-768x176.png 768w, https://www.tosunai.com/wp-content/uploads/2023/08/7-1-18x4.png 18w, https://www.tosunai.com/wp-content/uploads/2023/08/7-1-800x183.png 800w" sizes="auto, (max-width: 862px) 100vw, 862px" title="一文了解TSMaster中Seed&amp;key的两种处理方法 15">															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-2f88a37 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="2f88a37" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-57260ff" data-id="57260ff" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-b1f7959 elementor-widget elementor-widget-text-editor" data-id="b1f7959" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>【2】 所有的接口函数都定义了返回值 s32。增加此约束，主要是增加函数的严谨性。返回值为 0 表示成功，为其他值则有对应的错误码。用户在编辑代码的时候，最后一行一定不要忘了输入返回值，否则系统执行函数过后，会认为算法执行失败，不予往后面执行。如下所示：</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5cee201 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5cee201" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-6aad83a" data-id="6aad83a" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-bd738b1 elementor-widget elementor-widget-image" data-id="bd738b1" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="715" height="370" src="https://www.tosunai.com/wp-content/uploads/2023/08/8.png" class="attachment-large size-large wp-image-4916" alt="TSMaster中Seed&amp;key的两种处理方法" srcset="https://www.tosunai.com/wp-content/uploads/2023/08/8.png 715w, https://www.tosunai.com/wp-content/uploads/2023/08/8-300x155.png 300w, https://www.tosunai.com/wp-content/uploads/2023/08/8-18x9.png 18w" sizes="auto, (max-width: 715px) 100vw, 715px" title="一文了解TSMaster中Seed&amp;key的两种处理方法 16">															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-4885955 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="4885955" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1ea1859" data-id="1ea1859" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-b4357dc elementor-widget elementor-widget-text-editor" data-id="b4357dc" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>【3】 添加算法过后，点击 OK 退出。TSMaster 内置编译器会自动解释该算法，并准备好在执行诊断的过程中使用。</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6bde389 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6bde389" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d2c593f" data-id="d2c593f" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-4030a0d elementor-widget-divider--view-line elementor-widget elementor-widget-divider" data-id="4030a0d" data-element_type="widget" data-e-type="widget" data-widget_type="divider.default">
				<div class="elementor-widget-container">
							<div class="elementor-divider">
			<span class="elementor-divider-separator">
						</span>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-bd8a175 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="bd8a175" data-element_type="section" data-e-type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-6732b6f" data-id="6732b6f" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-449f6d3 elementor-widget elementor-widget-text-editor" data-id="449f6d3" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>如您需要demo或咨询其他技术问题，可以在官网留言。 </p><p>咨询邮箱：sales@tosunai.cn</p><p>服务热线：021-59560506</p><p>TSMaster软件最新版免费下载地址： http://www.tosun.tech/TOSUNSoftware/TSMaster_Setup_beta.exe</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		<p>&lt;p&gt;The post <a rel="nofollow" href="https://www.tosunai.com/two-processing-methods-of-seedkey-in-tsmaster/">一文了解TSMaster中Seed&amp;key的两种处理方法</a> first appeared on <a rel="nofollow" href="https://www.tosunai.com">上海同星智能科技有限公司</a>.&lt;/p&gt;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.tosunai.com/two-processing-methods-of-seedkey-in-tsmaster/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
