芯片认证方法、系统、打印机、耗材芯片和耗材盒与流程

文档序号:11083162阅读:425来源:国知局
芯片认证方法、系统、打印机、耗材芯片和耗材盒与制造工艺

本发明涉及打印成像技术领域,尤其涉及一种芯片认证方法、系统、打印机、耗材芯片和耗材盒。



背景技术:

目前,打印机对耗材盒中的耗材芯片进行认证时,耗材芯片一般是从机模式。具体的,耗材芯片只需要接收打印机发送的认证指令,这个认证指令一般用于指示一些特定的算法和特定的数据,然后,耗材芯片就按照这些特定的算法处理这些特定的数据,得到处理结果,并把这个处理结果反馈给打印机,由打印机根据处理结果,确定耗材芯片是否认证成功。

在实现本发明过程中,发明人发现现有技术中至少存在如下问题:

现有技术的芯片认证方法,只要掌握了认证指令中的特定算法和特定数据,耗材芯片就很容易被复制,打印机就无法识别出非法的兼容耗材芯片。



技术实现要素:

有鉴于此,本发明实施例提供了一种芯片认证方法、系统、打印机、耗材芯片和耗材盒,用以解决现有技术中打印机对耗材芯片的认证方法存在安全性漏洞的问题。

第一方面,本发明实施例提供了一种芯片认证方法,执行于打印机上,所述方法包括:

发送认证指令给耗材芯片,所述认证指令包括指定代码,所述指定代码是按照认证耗材芯片的程序编译格式进行编译的;

接收所述耗材芯片返回的运行结果;

根据所述运行结果,确定所述耗材芯片是否为认证耗材芯片。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述认证指令还包括:命令、长度、数据和校验中的至少一个。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,发送认证指令给耗材芯片,包括:

将所述认证指令进行数据处理,所述数据处理包括加密处理和压缩处理中至少一个;

将经过所述数据处理后的所述认证指令发送给所述耗材芯片。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,根据所述运行结果,确定所述耗材芯片是否认证成功,包括:

判断所述运行结果是否正确;

当所述运行结果正确时,确定所述耗材芯片为认证耗材芯片。

第二方面,本发明实施例提供了一种芯片认证方法,执行于所述耗材芯片上,所述方法包括:

接收所述打印机发送的指令;

识别接收到的所述指令是否为认证指令,所述认证指令包括指定代码,所述指定代码是按照认证耗材芯片的程序编译格式进行编译的;

若识别出接收到的所述指令为认证指令,运行所述指定代码,得到运行结果;

将所述运行结果返回给所述打印机,以便于所述打印机根据所述运行结果,确定所述耗材芯片是否为认证耗材芯片。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述认证指令还包括:命令、长度、数据和校验中的至少一个。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,运行所述指定代码,得到运行结果,包括:

将所述指定代码写入指定地址;

获得所述指定代码所指示的待处理数据;

运行存储在所述指定地址的程序,处理所述待处理数据,得到运行结果。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,运行所述指定代码,得到运行结果之前,所述方法还包括:

识别所接收到的所述指令是否经过数据处理;

若接收到的所述指令经过数据处理,识别所述数据处理方式;

根据所述数据处理方式,对所述指令进行反处理。

第三方面,本发明实施例提供了一种芯片认证系统,包括:

打印机,用于发送认证指令给耗材芯片,所述认证指令包括指定代码,所述指定代码是按照认证耗材芯片的程序编译格式进行编译的;

所述耗材芯片,用于接收所述打印机发送的指令;

所述耗材芯片,还用于识别接收到的所述指令是否为认证指令;

所述耗材芯片,还用于若识别出接收到的所述指令为认证指令,运行所述指定代码,得到运行结果;

所述耗材芯片,还用于将所述运行结果返回给所述打印机;

所述打印机,还用于接收所述运行结果;

所述打印机,还用于根据所述运行结果,确定所述耗材芯片是否为认证耗材芯片。

第四方面,本发明实施例提供了一种打印机,包括:

发送单元,用于发送认证指令给耗材芯片,所述认证指令包括指定代码,所述指定代码是按照认证耗材芯片的程序编译格式进行编译的;

接收单元,用于接收所述耗材芯片将返回的所述运行结果;

确定单元,用于根据所述运行结果,确定所述耗材芯片是否为认证耗材芯片。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述认证指令还包括:命令、长度、数据和校验中的至少一个。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述打印机,还包括:

处理单元,用于将所述认证指令进行数据处理,所述数据处理包括加密处理和压缩处理中至少一个;

所述发送单元,还用于将经过所述数据处理后的所述认证指令发送给所述耗材芯片。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述确定单元,具体用于:

判断所述运行结果是否正确;

当所述运行结果正确时,确定所述耗材芯片为认证耗材芯片。

第五方面,本发明实施例提供了一种耗材芯片,包括:

接收单元,用于接收所述打印机发送的指令;

第一识别单元,用于识别接收到的所述指令是否为认证指令,所述认证指令包括指定代码,所述指定代码是按照认证耗材芯片的程序编译格式进行编译的;

运行单元,用于若识别出接收到的所述指令为认证指令,运行所述指定代码,得到运行结果;

返回单元,用于将所述运行结果返回给所述打印机,以便于所述打印机根据所述运行结果,确定所述耗材芯片是否为认证耗材芯片。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述认证指令还包括:命令、长度、数据和校验中的至少一个。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述运行单元,包括:

写入子单元,用于将所述指定代码写入指定地址;

获取子单元,用于获得所述指定代码所指示的待处理数据;

运行子单元,用于运行存储在所述指定地址的程序,处理所述待处理数据,得到运行结果。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述耗材芯片还包括:

第二识别单元,用于识别所接收到的所述指令是否经过数据处理;

第三识别单元,用于若接收到的所述指令经过数据处理,识别所述数据处理方式;

反处理单元,用于根据所述数据处理方式,对所述指令进行反处理。

第六方面,本发明实施例提供了一种耗材盒,包括:上述的耗材芯片。

上述技术方案中的一个技术方案具有如下有益效果:

本发明实施例中,打印机发送给耗材芯片的认证指令中包含有指定代码,这个指定代码是根据认证耗材芯片的程序编译格式进行编译的,也就是说,只有认证耗材芯片才能正确的识别并运行这个指定代码,并得到正确的运行结果;而非法的兼容耗材芯片是无法识别或无法运行这个指定代码的,即使可以运行这个代码,也不一定能得到正确的运行结果。基于此,本发明实施例中,耗材芯片在接收并识别出认证指令后,运行指定代码并得到运行结果,若运行结果是正确的,就可以确定耗材芯片是认证耗材芯片;或者,若得到的运行结果是错误的,那就可以确定耗材芯片不是认证耗材芯片,从而,打印机可以根据耗材芯片的运行结果实现对耗材芯片的认证,并淘汰掉非法的兼容耗材芯片。因此,本发明实施例提供的技术方案能够解决现有技术中打印机对耗材芯片的认证方法存在安全性漏洞的问题。

【附图说明】

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1是本发明实施例所提供的芯片认证方法的实施例一的流程示意图;

图2是本发明实施例所提供的芯片认证方法的实施例二的流程示意图;

图3是本发明实施例所提供的芯片认证系统的功能方块图;

图4是本发明实施例中打印机与耗材芯片之间的信息交互示意图;

图5是本发明实施例所提供的打印机的功能方块图;

图6是本发明实施例所提供的耗材芯片的功能方块图;

图7是本发明实施例所提供的耗材盒的功能方块图。

【具体实施方式】

为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。

应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。

应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

实施例一

本发明实施例给出一种芯片认证方法,该方法执行于打印机上。

具体的,请参考图1,其为本发明实施例所提供的芯片认证方法的实施例一的流程示意图,如图1所示,该方法包括以下步骤:

S101,发送认证指令给耗材芯片。

需要说明的是,认证指令包括指定代码,并且,指定代码是按照认证耗材芯片的程序编译格式进行编译的。

在一个具体的实现过程中,认证指令还可以包括但不限于:命令、长度、数据和校验中的至少一个。

S102,接收耗材芯片返回的运行结果。

S103,根据运行结果,确定耗材芯片是否为认证耗材芯片。

具体的,若满足触发条件,会触发打印机向耗材盒中的耗材芯片发起认证指令,当确定耗材芯片是认证耗材芯片时,打印机就能够使用耗材盒中的耗材进行成像处理。

本发明实施例对触发打印机对成像盒进行身份验证的触发条件不进行特别限定。在实际应用中,这个触发条件可以根据实际需要进行预设。

例如,可以预设当成像盒安装到打印机中时,触发打印机对成像盒进行身份验证。

或者,又例如,可以预设当打印机的机盖闭合时,触发打印机对成像盒进行身份验证。

或者,又例如,可以预设当打印机开机时,触发打印机对成像盒进行身份验证。

或者,又例如,可以预设当打印机为成像盒供电时,触发打印机对成像盒进行身份验证。

本发明实施例中,打印机发送认证指令中携带有指定代码,此时,发送认证指令给耗材芯片的过程可以包括但不限于以下三种情况:

第一种,当打印机需要发送认证指令给耗材芯片时,每次都临时生成一个按照认证耗材芯片的程序编译格式进行编译的指定代码,然后,将携带有指定代码的认证指令发送给耗材芯片。

此时,需要预先在打印机中预设认证耗材芯片的程序编译格式。

第二种,在打印机中,预先按照认证耗材芯片的程序编译格式编译得到指定代码,并将这个指定代码存储在一个指定存储位置;之后,当打印机需要发送认证指令给耗材芯片时,就调用这个指定存储位置存储的指定代码,将携带有指定代码的认证指令发送给耗材芯片。

第三种,打印机接收第三方认证设备发送的指定代码,这个指定代码是第三方认证设备按照认证耗材芯片的程序编译格式编译得到的;然后,打印机将接收到的指定代码存储在一个指定存储位置;之后,当打印机需要发送认证指令给耗材芯片时,就调用这个指定存储位置存储的指定代码,将携带有指定代码的认证指令发送给耗材芯片。

本发明实施例中,对于第三方认证设备不进行特别限定,以及,当采用这种方法发送认证指令给耗材芯片时,本发明实施例对于第三方设备如何获得这个指定代码的实现方式不进行特别限定。例如,第三方认证设备中可以根据预先存储的认证耗材芯片的程序编译格式生成指定代码;或者,第三方设备也可以接收管理人员按照认证耗材芯片的程序编译格式编译的指定代码。

需要说明的是,本发明实施例对耗材芯片中的程序编译格式不进行特别限定,例如,程序编译格式可以包括但不限于:代码格式、寄存器的使用不能覆盖、堆栈必须平衡等。

举例说明,若耗材芯片中的程序是根据一个指定规则进行编译的二进制代码,则打印机需要发送认证指令给耗材芯片前,必然按照这个指定规则对这段指定代码进行编译,以得到符合耗材芯片中程序编译格式的指定代码。

本发明实施例中,打印机可以直接将携带有指定代码的认证指令发送给耗材芯片;或者,还可以在打印机发送认证指令之前,对认证指令进行数据处理,然后,将经过数据处理后的认证指令发送给耗材芯片。

具体的,本发明实施例中,对认证指令进行数据处理的方式可以包括但不限于:加密处理和压缩处理中至少一个。

本发明实施例中,打印机将携带有指定代码的认证指令发送给耗材芯片,那么,当耗材芯片接收到这个认证指令后,耗材芯片就可以运行这个指定代码,并将得到运行结果返回给打印机。由于指定代码是根据认证耗材芯片的编译格式进行编译的,若耗材芯片为认证耗材芯片,那么,耗材芯片返回给打印机的运行结果必然是正确的;或者,若耗材芯片不是认证耗材芯片,那么,耗材芯片就无法运行这段指定代码或者得到错误的运行结果,因此,打印机接收到的运行结果是错误的。

基于此,打印机根据运行结果,确定耗材芯片是否为认证耗材芯片时,可以先判断接收到的运行结果是否正确,当运行结果正确时,确定耗材芯片为认证耗材芯片;或者,当运行结果不正确时,确定耗材芯片不是认证耗材芯片。这样,打印机就能够根据耗材芯片返回的运行结果,确定耗材芯片是否为认证耗材芯片。

需要说明的是,打印机判断运行结果是否正确可以有多种实现方式,本发明实施例对此不进行特别限定。为了更具体说明本方案,本发明实施例给出以下两种实现方式,这两种实现方式仅用以说明本方案,并不用以限制本申请。

例如,可以在打印机生成指定代码时,同时预设这段指定代码的正确运行结果;如此,当接收到耗材芯片返回的运行结果后,将运行结果与自身存储的正确运行结果进行比较,若运行结果与正确运行结果一致,就确定运行结果为正确,进而,确定耗材芯片为认证耗材芯片。或者,若运行结果与正确运行结果不一致,就确定运行结果不正确,进而,确定耗材芯片不是认证耗材芯片。

或者,又例如,打印机发送给耗材芯片认证指令后,打印机自身运行这段指定代码,得到一个正确运行结果;如此,当接收到耗材芯片返回的运行结果后,将运行结果与自身运行得到的正确运行结果进行比较,若运行结果与正确运行结果一致,就确定运行结果为正确,进而,确定耗材芯片为认证耗材芯片。或者,若运行结果与正确运行结果不一致,就确定运行结果不正确,进而,确定耗材芯片不是认证耗材芯片。

在一个具体的实现过程中,若耗材芯片返回给打印机的运行结果中包含有校验信息,则打印机在检测到校验信息正确后,才会进一步判断运行结果是否正确;或者,若打印机检测到校验信息不正确,可以认为接收到的信息不是运行结果,或者,运行结果不正确。

本发明实施例的技术方案具有以下有益效果:

本发明实施例中,打印机发送给耗材芯片的认证指令中包含有指定代码,这个指定代码是根据认证耗材芯片的程序编译格式进行编译的,也就是说,只有认证耗材芯片才能正确的识别并运行这个指定代码,并得到正确的运行结果;而非法的兼容耗材芯片是无法识别或无法运行这个指定代码的,即使可以运行这个代码,也不一定能得到正确的运行结果。基于此,本发明实施例中,耗材芯片在接收并识别出认证指令后,运行指定代码并得到运行结果,若运行结果是正确的,就可以确定耗材芯片是认证耗材芯片;或者,若得到的运行结果是错误的,那就可以确定耗材芯片不是认证耗材芯片,从而,打印机可以根据耗材芯片的运行结果实现对耗材芯片的认证,并淘汰掉非法的兼容耗材芯片。因此,本发明实施例提供的技术方案能够解决现有技术中打印机对耗材芯片的认证方法存在安全性漏洞的问题。

实施例二

本发明实施例给出一种芯片认证方法,该方法执行于耗材芯片上。

具体的,请参考图2,其为本发明实施例所提供的芯片认证方法的实施例二的流程示意图,如图2所示,该方法包括以下步骤:

S201,接收打印机发送的指令。

S202,识别接收到的指令是否为认证指令。

具体的,认证指令包括指定代码,指定代码是按照认证耗材芯片的程序编译格式进行编译的。

在一个具体的实现过程中,认证指令中还可以包括但不限于:命令、长度、数据和校验中的至少一个。

S203,若识别出接收到的指令为认证指令,运行指定代码,得到运行结果。

S204,将运行结果返回给打印机,以便于打印机根据运行结果,确定耗材芯片是否为认证耗材芯片。

具体的,由于打印机和耗材芯片之间也存在有其他数据进行交互的可能,因此,耗材芯片在接收到打印机发送的指令之后,需要对这些指令进行识别,以确定新接收到的指令是否为认证指令。本发明实施例对于耗材芯片识别指令的具体实现方式不进行特别限定。

例如,耗材芯片可以判断接收到的指令中是否包含有指定信息,若识别到接收到的指令中包含有指定信息,就确定接收到的指令为认证指令;反之,则确定接收到的指令不是认证指令。

在一个具体的实现过程中,指定信息可以为指定代码。

或者,又例如,耗材芯片可以判断接收到的指令中是否携带有指定标识,若识别到接收到的指令中携带有指定标识,就确定接收到的指令为认证指令;反之,则确定接收到的指令不是认证指令。

在另一个具体的实现过程中,指定标识可以为指定的命令信息。此时,耗材芯片首先对接收到的指令中的命令信息进行识别,若这个命令信息为指定命令信息,就可以确定接收到的指令为认证指令。

可以理解的是,以上两种举例仅用以说明耗材芯片如何识别接收到的指令是否为认证指令,在实际应用中,该识别步骤还可以有其他的实现方式,本发明实施例对此不进行特别限定。

需要说明的是,耗材芯片中的程序编译格式与耗材芯片接收到的认证指令中的指定代码所使用的程序编译格式一致时,耗材芯片才能够正确的运行这段指定代码。

也即,认证耗材芯片中的程序编译格式与耗材芯片接收到的认证指令中的指定代码所使用的程序编译格式一致;但是,非认证的耗材芯片中的程序编译格式与耗材芯片接收到的认证指令中的指定代码所使用的程序编译格式不一定是一致的。

并且,本发明实施例对耗材芯片中的程序编译格式不进行特别限定,例如,程序编译格式可以包括但不限于:代码格式、寄存器的使用不能覆盖、堆栈必须平衡等。

本发明实施例中,考虑到耗材芯片接收到的指令可能经过数据处理,因此,在一个具体的实现过程中,耗材芯片还可以进一步识别接收到的指令是否经过数据处理,若识别出接收到的指令经过数据处理,就进一步识别数据处理方式,然后,按照接收到的指定的数据处理方式,对该指令进行反处理。或者,若识别出接收到的指令未经过数据处理,则不需要对接收到的指令进行反处理。

例如,若接收到的指令经过加密处理,在识别到该加密处理方式后,对接收到的指令进行解密处理。

或者,又例如,若接收到的指令经过压缩处理,在识别到该压缩处理方式后,对接收到的指令进行解压缩处理。

需要说明的是,耗材芯片可以在接收到指令后,就立即对接收到的指令进行是否经过数据处理的识别,之后,再执行S202中识别接收到的指令是否为认证指令的步骤;或者,耗材芯片也可以在执行S202中识别接收到的指令是否为认证指令的步骤之后,是否经过数据处理的识别,之后,再执行S203中的运行步骤。

具体的,耗材芯片确定接收到的指令为认证指令之后,就需要运行这个认证指令中携带的指定代码,该过程可以包括以下步骤:

将指定代码写入指定地址;

获得指定代码所指示的待处理数据;

运行存储在指定地址的程序,处理待处理数据,得到运行结果。

具体的,指定地址可以根据实际需要进行预设,本发明实施例对此不进行特别限定。在一个具体的实现过程中,可以将指定代码写入耗材芯片中的数据缓存区。

本发明实施例中,指定代码中携带有针对待处理数据的指示信息。因此,在运行指定代码的过程中,需要获取这个指定代码所指示的待处理数据。

具体的,此时可以包括但不限于以下两种情况:

第一种,待处理信息存储在耗材芯片的指定存储位置中。此时,指定代码中只需要把待处理信息的指定存储位置指示给耗材芯片即可。如此,耗材芯片在运行这段指定代码时,可以利用写入的指定代码对应的程序,处理这些待处理数据,得到运行结果。

第二种,待处理信息携带在认证指令中。此时,耗材芯片中并未存储有待处理信息。如此,耗材芯片在运行这段指定代码时,提取出认证指令中的待处理数据,进而,利用写入的指定代码对应的程序对待处理数据进行处理,得到运行结果。

为了更具体的说明本方案,本发明实施例给出耗材芯片在一种具体的应用场景下执行该芯片认证方法的实现过程。

具体的,若打印机发送给耗材芯片的指令包括以下内容:

那么,耗材芯片在接收到这个指令后,先对指令中的校验信息进行识别,判断校验信息是否正确。

若检测到校验信息是正确的,就根据该指令中包含的命令信息,判断接收到的指令是否为认证指令。或者,如检测到校验信息不正确,则不再执行后续步骤,结束流程。

若根据接收到的指令中的命令信息,确定该指令为认证指令,则进一步判断该认证指令是否经过数据处理。若根据接收到的指令中的命令信息,确定该指令不是认证指令,则不再执行本方案的后续流程。

若判断出该认证指令经过了数据处理,则识别数据处理方式,并执行反处理,得到经过反处理后的认证指令;或者,若该认证指令未经过数据处理,则跳过该步骤,直接执行下一步骤。

将认证指令中携带的指定代码(代码A)存储到位于耗材芯片的数据缓存区中的指定地址,例如,存储于数据缓存区中的0x200800开始的地址中。

然后,耗材芯片获取到数据B和数据C为待处理数据,分别将数据B存放数据缓存区中的0x2001C0开始的地址中,将数据C存放数据缓存区中的0x2001D0开始的地址中。

之后,耗材芯片执行存储于0x200800的这一段代码A。假设代码A指示的含义是将数据B与数据C使用算法D进行数据处理,得到数据G。那么,耗材芯片根据代码A所指示的程序进行上述处理,得到的运行结果就是数据G。

如此,若耗材芯片不是认证耗材芯片,耗材芯片就没有能力执行代码A,也就不会获取到代码A所指示的程序算法,也就无法得到正确的运行结果是数据G,那么,耗材芯片返回给打印机的运行结果也就不可能是正确的。

本发明实施例中,耗材芯片在返回运行结果给打印机时,可以直接把得到的运行结果返回给打印机,或者,也可以对运行结果进行指定处理后,再把经过指定处理后的运行结果返回给打印机,本发明实施例对此不进行特别限定。

仍以上述实现方式为例进行举例说明。

在一个具体的实现过程中,耗材芯片返回给打印机的数据可以包括:

90 6C DF 7B 7B 25 04D9 0A E8 0B 29 57FC 87 2F //数据G

D4 95 //校验

或者,在另一个具体的实现过程中,耗材芯片返回给打印机的数据可以包括:

90 6C DF 7B 7B //数据K

D4 95 //校验

其中,数据K为经过压缩处理后的数据G。

需要说明的是,本发明实施例提供的芯片认证方法执行于耗材芯片中,耗材芯片可以位于耗材盒中。在具体的实现过程中,耗材盒可以为墨盒。

本发明实施例的技术方案具有以下有益效果:

本发明实施例中,打印机发送给耗材芯片的认证指令中包含有指定代码,这个指定代码是根据认证耗材芯片的程序编译格式进行编译的,也就是说,只有认证耗材芯片才能正确的识别并运行这个指定代码,并得到正确的运行结果;而非法的兼容耗材芯片是无法识别或无法运行这个指定代码的,即使可以运行这个代码,也不一定能得到正确的运行结果。基于此,本发明实施例中,耗材芯片在接收并识别出认证指令后,运行指定代码并得到运行结果,若运行结果是正确的,就可以确定耗材芯片是认证耗材芯片;或者,若得到的运行结果是错误的,那就可以确定耗材芯片不是认证耗材芯片,从而,打印机可以根据耗材芯片的运行结果实现对耗材芯片的认证,并淘汰掉非法的兼容耗材芯片。因此,本发明实施例提供的技术方案能够解决现有技术中打印机对耗材芯片的认证方法存在安全性漏洞的问题。

实施例三

基于上述实施例一所提供的芯片认证方法和上述实施例二所提供的芯片认证方法,本发明实施例给出一种芯片认证系统。

具体的,请参考图3,其为本发明实施例所提供的芯片认证系统的功能方块图,如图3所示,该系统包括:

打印机31,用于发送认证指令给耗材芯片32,认证指令包括指定代码,指定代码是按照认证耗材芯片32的程序编译格式进行编译的;

耗材芯片32,用于接收打印机31发送的指令;

耗材芯片32,还用于识别接收到的指令是否为认证指令;

耗材芯片32,还用于若识别出接收到的指令为认证指令,运行指定代码,得到运行结果;

耗材芯片32,还用于将运行结果返回给打印机31;

打印机31,还用于接收运行结果;

打印机31,还用于根据运行结果,确定耗材芯片32是否为认证耗材芯片32。

基于此,本发明实施例给出打印机与耗材芯片之间的信息交互示意图。

请参考图4,其为本发明实施例中打印机与耗材芯片之间的信息交互示意图,如图4所示,打印机与耗材芯片之间的信息交互包括:

401,打印机发送认证指令给耗材芯片。

其中,认证指令包括指定代码,指定代码是按照认证耗材芯片32的程序编译格式进行编译的。

402,耗材芯片接收打印机发送的指令。

403,耗材芯片识别接收到的指令是否为认证指令。

404,若识别出接收到的指令为认证指令,耗材芯片运行指定代码,得到运行结果。

405,耗材芯片将运行结果返回给打印机。

406,打印机接收运行结果。

407,打印机根据运行结果,确定耗材芯片是否为认证耗材芯片。

本实施例未详细描述的部分,可参考对图1和图2的相关说明。

本发明实施例的技术方案具有以下有益效果:

本发明实施例中,打印机发送给耗材芯片的认证指令中包含有指定代码,这个指定代码是根据认证耗材芯片的程序编译格式进行编译的,也就是说,只有认证耗材芯片才能正确的识别并运行这个指定代码,并得到正确的运行结果;而非法的兼容耗材芯片是无法识别或无法运行这个指定代码的,即使可以运行这个代码,也不一定能得到正确的运行结果。基于此,本发明实施例中,耗材芯片在接收并识别出认证指令后,运行指定代码并得到运行结果,若运行结果是正确的,就可以确定耗材芯片是认证耗材芯片;或者,若得到的运行结果是错误的,那就可以确定耗材芯片不是认证耗材芯片,从而,打印机可以根据耗材芯片的运行结果实现对耗材芯片的认证,并淘汰掉非法的兼容耗材芯片。因此,本发明实施例提供的技术方案能够解决现有技术中打印机对耗材芯片的认证方法存在安全性漏洞的问题。

实施例四

基于上述实施例一所提供的芯片认证方法,本发明实施例进一步给出实现上述方法实施例中各步骤及方法的装置实施例。

请参考图5,其为本发明实施例所提供的打印机的功能方块图。如图5所示,该打印机包括:

发送单元51,用于发送认证指令给耗材芯片,认证指令包括指定代码,指定代码是按照认证耗材芯片的程序编译格式进行编译的;

接收单元52,用于接收耗材芯片将返回的运行结果;

确定单元53,用于根据运行结果,确定耗材芯片是否为认证耗材芯片。

在一个具体的实现过程中,认证指令还包括:命令、长度、数据和校验中的至少一个。

具体的,该打印机,还包括:

处理单元54,用于将认证指令进行数据处理,数据处理包括加密处理和压缩处理中至少一个;

发送单元51,还用于将经过数据处理后的认证指令发送给耗材芯片。

具体的,本发明实施例中,确定单元53,具体用于:

判断运行结果是否正确;

当运行结果正确时,确定耗材芯片为认证耗材芯片。

由于本实施例中的各单元能够执行图1所示的方法,本实施例未详细描述的部分,可参考对图1的相关说明。

本发明实施例的技术方案具有以下有益效果:

本发明实施例中,打印机发送给耗材芯片的认证指令中包含有指定代码,这个指定代码是根据认证耗材芯片的程序编译格式进行编译的,也就是说,只有认证耗材芯片才能正确的识别并运行这个指定代码,并得到正确的运行结果;而非法的兼容耗材芯片是无法识别或无法运行这个指定代码的,即使可以运行这个代码,也不一定能得到正确的运行结果。基于此,本发明实施例中,耗材芯片在接收并识别出认证指令后,运行指定代码并得到运行结果,若运行结果是正确的,就可以确定耗材芯片是认证耗材芯片;或者,若得到的运行结果是错误的,那就可以确定耗材芯片不是认证耗材芯片,从而,打印机可以根据耗材芯片的运行结果实现对耗材芯片的认证,并淘汰掉非法的兼容耗材芯片。因此,本发明实施例提供的技术方案能够解决现有技术中打印机对耗材芯片的认证方法存在安全性漏洞的问题。

实施例五

基于上述实施例二所提供的芯片认证方法,本发明实施例进一步给出实现上述方法实施例中各步骤及方法的装置实施例。

请参考图6,其为本发明实施例所提供的耗材芯片的功能方块图。如图6所示,该耗材芯片包括:

接收单元61,用于接收打印机发送的指令;

第一识别单元62,用于识别接收到的指令是否为认证指令,认证指令包括指定代码,指定代码是按照认证耗材芯片的程序编译格式进行编译的;

运行单元63,用于若识别出接收到的指令为认证指令,运行指定代码,得到运行结果;

返回单元64,用于将运行结果返回给打印机,以便于打印机根据运行结果,确定耗材芯片是否为认证耗材芯片。

在一个具体的实现过程中,认证指令还包括:命令、长度、数据和校验中的至少一个。

本发明实施例中,运行单元63,包括:

写入子单元631,用于将指定代码写入指定地址;

获取子单元632,用于获得指定代码所指示的待处理数据;

运行子单元633,用于运行存储在指定地址的程序,处理待处理数据,得到运行结果。

在另一个具体的实现过程中,耗材芯片还包括:

第二识别单元65,用于识别所接收到的指令是否经过数据处理;

第三识别单元66,用于若接收到的指令经过数据处理,识别数据处理方式;

反处理单元67,用于根据数据处理方式,对指令进行反处理。

请参考图7,其为本发明实施例所提供的耗材盒的功能方块图。如图7所示,该包括:如图6所示的耗材芯片。

由于本实施例中的各单元能够执行图2所示的方法,本实施例未详细描述的部分,可参考对图2的相关说明。

本发明实施例的技术方案具有以下有益效果:

本发明实施例中,打印机发送给耗材芯片的认证指令中包含有指定代码,这个指定代码是根据认证耗材芯片的程序编译格式进行编译的,也就是说,只有认证耗材芯片才能正确的识别并运行这个指定代码,并得到正确的运行结果;而非法的兼容耗材芯片是无法识别或无法运行这个指定代码的,即使可以运行这个代码,也不一定能得到正确的运行结果。基于此,本发明实施例中,耗材芯片在接收并识别出认证指令后,运行指定代码并得到运行结果,若运行结果是正确的,就可以确定耗材芯片是认证耗材芯片;或者,若得到的运行结果是错误的,那就可以确定耗材芯片不是认证耗材芯片,从而,打印机可以根据耗材芯片的运行结果实现对耗材芯片的认证,并淘汰掉非法的兼容耗材芯片。因此,本发明实施例提供的技术方案能够解决现有技术中打印机对耗材芯片的认证方法存在安全性漏洞的问题。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1