CN117806886A - 用于芯片通讯的方法及装置、电子设备和存储介质 - Google Patents

用于芯片通讯的方法及装置、电子设备和存储介质 Download PDF

Info

Publication number
CN117806886A
CN117806886A CN202311828384.1A CN202311828384A CN117806886A CN 117806886 A CN117806886 A CN 117806886A CN 202311828384 A CN202311828384 A CN 202311828384A CN 117806886 A CN117806886 A CN 117806886A
Authority
CN
China
Prior art keywords
chip
communication
target chip
dynamic library
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311828384.1A
Other languages
English (en)
Inventor
孙康
许晓骁
王兴川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ziguang Tongxin Microelectronics Co Ltd
Original Assignee
Ziguang Tongxin Microelectronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ziguang Tongxin Microelectronics Co Ltd filed Critical Ziguang Tongxin Microelectronics Co Ltd
Priority to CN202311828384.1A priority Critical patent/CN117806886A/zh
Publication of CN117806886A publication Critical patent/CN117806886A/zh
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本申请涉及安全芯片技术领域,公开一种用于芯片通讯的方法,包括:确定目标芯片所支持的一种或多种通讯协议;根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位;在目标芯片复位成功的情况下,根据目标芯片所支持的通讯协议,调用动态库与目标芯片进行通讯;其中,动态库用于兼容多种通讯协议的复位与通讯。本公开实施例通过对动态库进行修改,使动态库可以兼容多种通讯协议的复位与通讯。从而在不修改测试软件及测试库的情况下,对于不支持7816协议的目标芯片,主机也可以调用动态库使目标芯片复位以及与目标芯片通讯,实现与不支持7816协议的芯片之间的通讯。本申请还公开一种用于芯片通讯的装置、电子设备和存储介质。

Description

用于芯片通讯的方法及装置、电子设备和存储介质
技术领域
本申请涉及安全芯片技术领域,例如涉及一种用于芯片通讯的方法及装置、电子设备和存储介质。
背景技术
目前,安全芯片,又称安全元件,作为一种以芯片形式提供的移动支付安全单元,为防止外部恶意解析攻击,保护数据安全,在芯片中通常具有加密/解密逻辑电路。随着安全芯片的需求和技术的发展,越来越多的安全芯片已经不仅仅局限于普通的加解密功能,产品形态也有愈加融合的趋势,例如融合了NFC(Near Field Communication,近场通信)功能的NFC_SE(Near Field Communication_Security Element,近场通信安全芯片)、融合了智能卡的SE(Security Element,安全芯片)等。
在传统功能的测试工具及测试库中,很多都只支持与实现7816协议的安全芯片进行指令交互。测试库及工具由第三方提供,安全芯片使用方不具备修改支持其他不同协议的能力,只能通过调用主机的中间winscard.dll动态库的API(Application ProgrammingInterface,应用程序编程接口)实现与安全芯片指令交互。
在实现本公开实施例的过程中,发现相关技术中至少存在如下问题:
安全芯片所实现的协议各种各样,部分安全芯片很有可能不支持7816协议。在不修改测试软件及测试库的情况下,无法对不支持7816协议的芯片进行数据交互和测试。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本申请的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
本公开实施例提供了一种用于芯片通讯的方法及装置、电子设备和存储介质,在不修改测试软件及测试库的情况下,使主机与不支持7816协议的芯片也能进行通讯。
在一些实施例中,所述方法包括:确定目标芯片所支持的一种或多种通讯协议;根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位;在目标芯片复位成功的情况下,根据目标芯片所支持的通讯协议,调用动态库与目标芯片进行通讯;其中,动态库用于兼容多种通讯协议的复位与通讯。
可选地,确定目标芯片所支持的一种或多种通讯协议,包括:在芯片列表中选择需要进行通讯的目标芯片;所述芯片列表包括已连接的芯片和每个芯片所支持的一种或多种通讯协议;从芯片列表中获取目标芯片所支持的一种或多种通讯协议。
可选地,该方法还包括:调用动态库中的搜索列表函数搜索已连接的芯片,获得每个芯片所支持的一种或多种通讯协议;根据搜索到的芯片和每个芯片所支持的一种或多种通讯协议,调用动态库生成芯片列表。
可选地,根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位,包括:生成目标芯片的复位指令;调用动态库中与目标芯片所支持的通讯协议相应的芯片复位库函数,向目标芯片发送复位指令;通过动态库获取目标芯片返回的复位结果。
可选地,根据目标芯片所支持的通讯协议,调用动态库与目标芯片进行通讯,包括:向动态库发送目标芯片的通讯指令;根据目标芯片所支持的通讯协议,调用动态库对通讯指令进行协议封装;采用封装后的通讯指令与目标芯片进行通讯。
可选地,采用封装后的通讯指令与目标芯片进行通讯,包括:调用动态库中与目标芯片所支持的通讯协议相应的协议发送指令,向目标芯片发送封装后的通讯指令;调用动态库获取目标芯片返回的数据。
可选地,调用动态库获取目标芯片返回的数据,包括:调用动态库对目标芯片返回的数据进行协议解析;在协议解析正确的情况下,通过动态库获取解析数据;或,在协议解析错误的情况下,通过动态库获取协议出错情况。
在一些实施例中,所述用于芯片通讯的装置包括处理器和存储有程序指令的存储器,所述处理器被配置为在运行所述程序指令时,执行如上述的用于芯片通讯的方法。
在一些实施例中,所述电子设备包括:电子设备本体;如上述的用于芯片通讯的装置,被安装于所述电子设备本体。
在一些实施例中,所述计算机可读的存储介质存储有程序指令,所述程序指令在运行时,用以使得计算机执行如上述的用于芯片通讯的方法。
本公开实施例提供的用于芯片通讯的方法及装置、电子设备和存储介质,可以实现以下技术效果:
在本公开实施例中,先确定被选中的目标芯片所支持的一种或多种通讯协议,再根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位,使目标芯片初始化。在目标芯片复位成功的情况下,再调用动态库使主机与目标芯片进行通讯。本公开实施例通过对动态库进行修改,使动态库可以兼容多种通讯协议的复位与通讯,因此,即使在不修改测试软件及测试库的情况下,对于不支持7816协议的目标芯片,主机也可以调用动态库使目标芯片复位以及与目标芯片通讯,从而实现与不支持7816协议的芯片之间的通讯。
以上的总体描述和下文中的描述仅是示例性和解释性的,不用于限制本申请。
附图说明
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:
图1是主机与安全芯片交互的系统环境示意图;
图2是本公开实施例提供的一种用于芯片通讯的方法的示意图;
图3是本公开实施例提供的另一种用于芯片通讯的方法的示意图;
图4是本公开实施例提供的另一种用于芯片通讯的方法的示意图;
图5是本公开实施例提供的另一种用于芯片通讯的方法的示意图;
图6是本公开实施例提供的一种用于芯片通讯的装置的示意图。
具体实施方式
为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。
本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
除非另有说明,术语“多个”表示两个或两个以上。
本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
术语“对应”可以指的是一种关联关系或绑定关系,A与B相对应指的是A与B之间是一种关联关系或绑定关系。
结合图1所示,主机10包括处理器11和动态库12,为了实现主机10与安全芯片20的通讯,处理器11需要调用动态库12的API通过7816协议与安全芯片20进行指令交互。但是,在安全芯片20不支持7816协议的情况下,需要通过修改测试软件及测试库才能实现主机10与安全芯片20之间的交互。
为了实现在不修改测试软件及测试库的情况下,使主机与不支持7816协议的安全芯片也能进行通讯,本公开实施例提供了一种用于芯片通讯的方法。通过修改中间动态库的API,可以在不修改测试软件及测试库的情况下,扩充测试软件可支持的协议的类型。
结合图2所示,本公开实施例提供的用于芯片通讯的方法,包括:
S001,处理器确定目标芯片所支持的一种或多种通讯协议。
S002,处理器根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位。
S003,处理器在目标芯片复位成功的情况下,根据目标芯片所支持的通讯协议,调用动态库与目标芯片进行通讯。
在本公开实施例中,经过修改后的动态库兼容多种通讯协议的复位与通讯。处理器在确定被选中的目标芯片所支持的一种或多种通讯协议后,根据目标芯片所支持的通讯协议,可以调用动态库对目标芯片进行复位,使目标芯片初始化。在目标芯片复位成功的情况下,处理器再调用动态库与目标芯片进行通讯。本公开实施例通过对动态库进行修改,使动态库可以兼容多种通讯协议的复位与通讯,因此,即使在不修改测试软件及测试库的情况下,对于不支持7816协议的目标芯片,处理器也可以调用动态库使目标芯片复位以及与目标芯片通讯,从而实现与不支持7816协议的芯片之间的通讯。
可选地,对动态库进行修改包括:编写一个winscard.dll,重写Windows系统的winscard.dll的API;对于需要增加其他通讯协议交互功能的API进行重写,其它API则直接调用Windows系统的winscard.dll的原有API。
在该实施例中,以Winscard动态库为例,通过重写Windows系统的winscard.dll的API,实现了对Winscard动态库的修改。Winscard动态库作为Windows操作系统中用于智能卡读写器通信的一个动态链接库,提供了一组函数和接口,用于与智能卡进行通信、读取卡片信息、发送指令等操作。对Winscard动态库进行相应通讯协议的修改后,可以使支持7816协议的软件无需做出修改即可与支持SPI、I2C等其他通讯协议的安全芯片进行通讯,节约了重新开发、编写测试用例的时间成本。
可选地,对动态库的修改还包括:对动态库的协议相关API进行私有实现,并封装成可供软件调用的DLL(Dynamic Link Library,动态链接库)库。
在该实施例中,通过编写WinscardSimulator.cpp程序,可以实现所有winscard.dll的API,以使动态库支持其他通讯协议的交互功能。此外,通过编写Protocol.cpp程序,从而实现调用其他通讯协议的动态库函数,例如SPI的数据传输函数等。
可选地,将修改该后的动态库拷贝到软件进程所调用的目录,从而实现软件和安全芯片进行连接和传输数据等功能
在该实施例中,只需要将修改后的动态库拷贝到支持7816协议的软件进程所调用的目录,就可以实现该软件与不支持7816协议的芯片之间的通讯,从而节约重新开发和编写测试用例时间成本。
可选地,确定目标芯片所支持的一种或多种通讯协议,包括:在芯片列表中选择需要进行通讯的目标芯片;所述芯片列表包括已连接的芯片和每个芯片所支持的一种或多种通讯协议;从芯片列表中获取目标芯片所支持的一种或多种通讯协议。
在该实施例中,通过调用预先生成的芯片列表,可以直接从芯片列表中获取目标芯片所支持的一种或多种通讯协议。
可选地,该用于芯片通讯的方法还包括:调用动态库中的搜索列表函数搜索已连接的芯片,获得每个芯片所支持的一种或多种通讯协议;根据搜索到的芯片和每个芯片所支持的一种或多种通讯协议,调用动态库生成芯片列表。
结合图3所示,本公开实施例提供另一种用于芯片通讯的方法,包括:
S101,处理器调用动态库中的搜索列表函数搜索已连接的芯片,获得每个芯片所支持的一种或多种通讯协议。
S102,处理器根据搜索到的芯片和每个芯片所支持的一种或多种通讯协议,调用动态库生成芯片列表。
S103,处理器根据芯片列表确定目标芯片所支持的一种或多种通讯协议。
S104,处理器根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位。
S105,处理器在目标芯片复位成功的情况下,根据目标芯片所支持的通讯协议,调用动态库与目标芯片进行通讯。
在该实施例中,处理器可以调用动态库中的扩充后的搜索列表函数SCardListReaders,搜索与主机连接的安全芯片设备。SCardListReaders函数是一个数据库查询函数,在搜索到的与主机连接的芯片的情况下,可以将芯片按照搜索顺序进行排列,并根据芯片所支持的协议类型对芯片进行私有命名,将同一芯片所支持的一种或多种通讯协议区分列出,从而生成芯片列表。而在没有搜索到与主机连接的芯片的情况下,则进行报错,并将报错结果返回给处理器。在生成芯片列表后,动态库再通过搜索列表函数将芯片列表返回给处理器。
可选地,根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位,包括:生成目标芯片的复位指令;调用动态库中与目标芯片所支持的通讯协议相应的芯片复位库函数,向目标芯片发送复位指令;通过动态库获取目标芯片返回的复位结果。
在该实施例中,处理器根据芯片列表选择需要进行通讯的目标芯片,并生成目标芯片的复位指令。根据目标芯片所支持的通讯协议,处理器可以调用动态库中支持相应通讯协议的芯片复位库函数SCardConnect,向目标芯片发送复位指令。SCardConnect函数是一个访问函数,可以在主机和目标芯片之间建立连接。最后处理器再通过动态库获取目标芯片所返回的复位结果。在目标芯片复位成功的情况下,则可以进行后续的通讯等操作。而在目标芯片复位失败的情况下,则结束通讯进程,返回复位失败的结果。
可选地,根据目标芯片所支持的通讯协议,调用动态库与目标芯片进行通讯,包括:向动态库发送目标芯片的通讯指令;根据目标芯片所支持的通讯协议,调用动态库对通讯指令进行协议封装;采用封装后的通讯指令与目标芯片进行通讯。
在该实施例中,处理器将目标芯片的通讯指令发送给动态库,动态库根据目标芯片所支持的协议类型对通讯指令进行协议封装,并使用封装后的通讯指令与目标芯片进行通讯。可以提高主机与目标芯片之间通讯的安全性和实用性。
可选地,采用封装后的通讯指令与目标芯片进行通讯,包括:调用动态库中与目标芯片所支持的通讯协议相应的协议发送指令,向目标芯片发送封装后的通讯指令;调用动态库获取目标芯片返回的数据。
根据目标芯片所支持的通讯协议,处理器可以调用动态库中的相应的协议发送指令SCardTransmit将封装后的通讯指令发送给目标芯片,并请求从目标芯片接收返回的数据。
可选地,调用动态库获取目标芯片返回的数据,包括:调用动态库对目标芯片返回的数据进行协议解析;在协议解析正确的情况下,通过动态库获取解析数据;或,在协议解析错误的情况下,通过动态库获取协议出错情况。
在目标芯片返回数据后,处理器需要调用动态库对返回的数据进行协议解析。在协议解析正确的情况下,动态库将解析数据返回给处理器,由处理器处理解析后的结果。而在协议解析错误的情况下,动态库将协议出错结果返回给处理器,由处理器判断是否进行后续的指令。在该实施例中,动态库只进行协议解析以及数据传输功能。
可选地,在目标芯片的所有通讯指令都被完成的情况下,还包括:调用动态库断开与目标芯片的连接。
结合图4所示,本公开实施例提供另一种用于芯片通讯的方法,包括:
S201,处理器调用动态库中的搜索列表函数搜索已连接的芯片,获得每个芯片所支持的一种或多种通讯协议。
S202,处理器根据搜索到的芯片和每个芯片所支持的一种或多种通讯协议,调用动态库生成芯片列表。
S203,处理器根据芯片列表确定目标芯片所支持的一种或多种通讯协议。
S204,处理器根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位。
S205,处理器在目标芯片复位成功的情况下,根据目标芯片所支持的通讯协议,调用动态库与目标芯片进行通讯。
S206,处理器在目标芯片的所有通讯指令都被完成的情况下,调用动态库断开与目标芯片的连接。
在一些实施例中,主机中的软件和动态库会记录当前已经连接的安全芯片。如果不断开连接,其他软件就无法连接此安全芯片。在目标芯片的所有通讯指令都被完成的情况下,处理器生成断开设备指令,调用动态库中的断开设备函数SCardDisconnect,通过动态库根据目标芯片所支持的协议向目标芯片发送断开设备指令,并清除动态库中的变量。
结合图5所示,本公开实施例提供另一种用于芯片通讯的方法,包括:
S301,处理器向动态库发送芯片搜索指令。
S302,动态库调用搜索列表函数搜索已连接的芯片,生成芯片列表。
S303,动态库将芯片列表发送给处理器。
S304,处理器在芯片列表中选择目标芯片。
S305,处理器向动态库发送目标芯片的复位指令。
S306,动态库根据目标芯片所支持的通讯协议,调用相应的芯片复位库函数,向目标芯片发送复位指令。
S307,目标芯片根据复位指令进行初始化。
S308,目标芯片向动态库发送复位结果。
S309,动态库将复位结果返回给处理器。
S310,在目标芯片复位成功的情况下,向动态库发送目标芯片的通讯指令。
S311,动态库根据目标芯片所支持的通讯协议,对通讯指令进行协议封装。
S312,动态库根据目标芯片所支持的通讯协议,调用相应的协议发送指令向目标芯片发送封装后的通讯指令。
S313,目标芯片根据通讯指令向动态库返回数据。
S314,动态库对返回的数据进行协议解析。
S315,在协议解析正确的情况下,动态库向处理器返回解析数据;或,在协议解析错误的情况下,动态库向处理器返回协议出错情况。
S316,处理器判断是否还有后续的通讯指令,若是,则执行S310;若否,则执行S317。
S318,处理器向动态库发送断开设备指令。
S319,动态库根据目标芯片所支持的通讯协议,调用相应的断开设备函数向目标芯片发送断开设备指令。
本公开实施例提供的方法,通过扩充动态库中的搜索列表函数的数据库,实现对已连接的芯片的搜索,并生成芯片列表。主机可以根据芯片列表选择目标芯片进行通讯。此外,同步修改芯片复位库函数,以兼容支持不同通讯协议的芯片的复位,复位成功后即可根据芯片的所支持的通讯协议进行数据传输和后续其他操作。
结合图6所示,本公开实施例提供一种用于芯片通讯的装置300,包括处理器(processor)400和存储器(memory)401。可选地,该装置还可以包括通信接口(Communication Interface)402和总线403。其中,处理器400、通信接口402、存储器401可以通过总线403完成相互间的通信。通信接口402可以用于信息传输。处理器400可以调用存储器401中的逻辑指令,以执行上述实施例的用于芯片通讯的方法。
此外,上述的存储器401中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器401作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器400通过运行存储在存储器401中的程序指令/模块,从而执行功能应用以及数据处理,即实现上述实施例中用于芯片通讯的方法。
存储器401可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器401可以包括高速随机存取存储器,还可以包括非易失性存储器。
本公开实施例提供了一种电子设备,包括:电子设备本体,以及上述的用于芯片通讯的装置。用于芯片通讯的装置被安装于电子设备本体。这里所表述的安装关系,并不仅限于在电子设备内部放置,还包括了与电子设备的其他元器件的安装连接,包括但不限于物理连接、电性连接或者信号传输连接等。本领域技术人员可以理解的是,用于芯片通讯的装置可以适配于可行的电子设备主体,进而实现其他可行的实施例。
本公开实施例提供了一种计算机可读的存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述用于芯片通讯的方法。
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质。
以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和特征可以被包括在或替换其他实施例的部分和特征。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。所述技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。所述技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
附图中的流程图和框图显示了根据本公开实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

Claims (10)

1.一种用于芯片通讯的方法,其特征在于,包括:
确定目标芯片所支持的一种或多种通讯协议;
根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位;
在目标芯片复位成功的情况下,根据目标芯片所支持的通讯协议,调用动态库与目标芯片进行通讯;
其中,动态库用于兼容多种通讯协议的复位与通讯。
2.根据权利要求1所述的方法,其特征在于,确定目标芯片所支持的一种或多种通讯协议,包括:
在芯片列表中选择需要进行通讯的目标芯片;所述芯片列表包括已连接的芯片和每个芯片所支持的一种或多种通讯协议;
从芯片列表中获取目标芯片所支持的一种或多种通讯协议。
3.根据权利要求2所述的方法,其特征在于,还包括:
调用动态库中的搜索列表函数搜索已连接的芯片,获得每个芯片所支持的一种或多种通讯协议;
根据搜索到的芯片和每个芯片所支持的一种或多种通讯协议,调用动态库生成芯片列表。
4.根据权利要求1所述的方法,其特征在于,根据目标芯片所支持的通讯协议,调用动态库对目标芯片进行复位,包括:
生成目标芯片的复位指令;
调用动态库中与目标芯片所支持的通讯协议相应的芯片复位库函数,向目标芯片发送复位指令;
通过动态库获取目标芯片返回的复位结果。
5.根据权利要求1至4任一项所述的方法,其特征在于,根据目标芯片所支持的通讯协议,调用动态库与目标芯片进行通讯,包括:
向动态库发送目标芯片的通讯指令;
根据目标芯片所支持的通讯协议,调用动态库对通讯指令进行协议封装;
采用封装后的通讯指令与目标芯片进行通讯。
6.根据权利要求5所述的方法,其特征在于,采用封装后的通讯指令与目标芯片进行通讯,包括:
调用动态库中与目标芯片所支持的通讯协议相应的协议发送指令,向目标芯片发送封装后的通讯指令;
调用动态库获取目标芯片返回的数据。
7.根据权利要求6所述的方法,其特征在于,调用动态库获取目标芯片返回的数据,包括:
调用动态库对目标芯片返回的数据进行协议解析;
在协议解析正确的情况下,通过动态库获取解析数据;或,
在协议解析错误的情况下,通过动态库获取协议出错情况。
8.一种用于芯片通讯的装置,包括处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在运行所述程序指令时,执行如权利要求1至7任一项所述的用于芯片通讯的方法。
9.一种电子设备,其特征在于,包括:
电子设备本体;
如权利要求8所述的用于芯片通讯的装置,被安装于所述电子设备本体。
10.一种计算机可读的存储介质,存储有程序指令,其特征在于,所述程序指令在运行时,用以使得计算机执行如权利要求1至7任一项所述的用于芯片通讯的方法。
CN202311828384.1A 2023-12-27 2023-12-27 用于芯片通讯的方法及装置、电子设备和存储介质 Pending CN117806886A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311828384.1A CN117806886A (zh) 2023-12-27 2023-12-27 用于芯片通讯的方法及装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311828384.1A CN117806886A (zh) 2023-12-27 2023-12-27 用于芯片通讯的方法及装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN117806886A true CN117806886A (zh) 2024-04-02

Family

ID=90422902

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311828384.1A Pending CN117806886A (zh) 2023-12-27 2023-12-27 用于芯片通讯的方法及装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN117806886A (zh)

Similar Documents

Publication Publication Date Title
US6516357B1 (en) System for accessing virtual smart cards for smart card application and data carrier
EP1179208A2 (en) Storage media
CN105446713A (zh) 安全存储方法及设备
CN105427098B (zh) 一种不同应用之间信息共享的实现方法及装置
CN102422256A (zh) 用于访问具有附加模块的便携式存储数据载体的方法和便携式存储数据载体
US8328104B2 (en) Storage device management systems and methods
CN116016749A (zh) 电子系统
CN111741161A (zh) 电子系统
CN111160508B (zh) 一种双芯片安全sim卡
CN103092648A (zh) 一种镜像升级方法、系统及用户设备和个人计算机
CN117806886A (zh) 用于芯片通讯的方法及装置、电子设备和存储介质
CN111738713A (zh) 电子系统
CN115688120A (zh) 安全芯片固件导入方法、安全芯片及计算机可读存储介质
CN113392062B (zh) 数据存储方法、装置、电子设备和计算机可读存储介质
CN101227682A (zh) 一种保护终端中数据安全的方法及装置
CN105574425B (zh) 访问存储数据的方法及装置
CN101425120A (zh) 读卡器及其执行方法
CN114726407B (zh) 用于获取异常信息的方法、装置、控制器及存储介质
CN104850811A (zh) 一种基于stk菜单对软件进行授权的方法及系统
CN106502686B (zh) 规格适配方法及装置
CN115604366B (zh) 用于数据传输的方法、装置、近场通信芯片及存储介质
CN112114835B (zh) 智能卡生产方法、装置、电子设备及存储介质
CN113055250B (zh) 一种联网通信方法、装置、终端设备及存储介质
CN111475430B (zh) Java卡芯片通信设备及通信方法
CN110837664B (zh) 多芯片封装模块、其控制方法及安全芯片

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination