话单生成、查询、校验方法、装置及设备、存储介质与流程

文档序号:20061684发布日期:2020-03-06 08:02阅读:321来源:国知局
话单生成、查询、校验方法、装置及设备、存储介质与流程

本公开实施例涉及但不限于话费计费技术,尤其涉及一种话单生成、查询、校验方法、装置及设备、存储介质。



背景技术:

用户对话费支出的客观性和真实性疑虑重重。需要提供一种真实可靠的话费存储方式重新恢复用户对运营商的信任度,建立良好的客户关系。



技术实现要素:

有鉴于此,本公开实施例为解决现有技术中存在的至少一个问题而提供一种话单生成、查询、校验方法、装置及设备、存储介质。

本公开一实施例提供一种话单生成方法,所述方法包括:

获取用户在时间窗口产生的通信记录信息;

采用特定函数对所述通信记录信息进行运算,得到唯一运算值;

获取所述话单的信息块的时间戳;

根据所述信息块的时间戳、所述唯一运算值、所述通信记录信息生成所述信息块。

本公开另一实施例提供一种话单校验方法,所述方法包括:

校验单元或系统接收第一设备发送的信息块;所述信息块包括唯一运算值、第一信息块标识和第二信息块标识;其中,所述第二信息块标识为前一信息块的标识;

校验所述信息块中的第一信息块标识小于第三阈值,且校验所述第一信息块标识通过时,将所述信息块链接到将所述第二信息块标识作为第一信息块标识的信息块之后。

本公开又一实施例提供一种话单查询方法,所述方法包括:

用户向系统发送话单查询请求;

接收系统发送的第一查询结果和加密的校验地址,所述第一查询结果包括所述用户的信息单元集合;

根据所述加密的校验地址获得第二查询结果,所述第二查询结果包括所述用户的信息单元集合对应的运算值p;

采用特定函数对所述用户的信息单元集合进行运算,得到校验运算值;

利用所述校验运算值对所述第二查询结果中的运算值进行校验,得到校验结果;

利用所述校验结果确定所述第一查询结果的真实性。

本公开又一实施例提供一种话单生成装置,所述装置包括:

第一获取单元,用于获取用户在时间窗口产生的通信记录信息;

第一运算单元,用于采用特定函数对所述通信记录信息进行运算,得到唯一运算值;

第二获取单元,用于获取所述话单的信息块的时间戳;

生成单元,用于根据所述信息块的时间戳、所述唯一运算值、所述通信记录信息生成所述信息块。

本公开又一实施例提供一种话单校验装置,所述装置包括:

第一接收单元,用于接收第一设备发送的信息块;所述信息块包括唯一运算值、第一信息块标识和第二信息块标识;其中,所述第二信息块标识为前一信息块的标识;

第一校验单元,用于校验所述信息块中的第一信息块标识是否小于等于第三阈值f,且校验所述唯一运算值;

链接单元,用于校验所述信息块中的第一信息块标识小于第三阈值,且校验所述第一信息块标识通过时,将所述信息块链接到将所述第二信息块标识作为第一信息块标识的信息块之后。

本公开又一实施例提供一种话单查询装置,所述装置包括:

第三发送单元,用于向系统发送话单查询请求;

第三接收单元,用于接收系统发送的第一查询结果和加密的校验地址,所述第一查询结果包括所述用户的信息单元集合;

第四获取单元,用于根据所述加密的校验地址获得第二查询结果,所述第二查询结果包括所述用户的信息单元集合对应的运算值p;

第四运算单元,用于采用特定函数对所述用户的信息单元集合进行运算,得到校验运算值;

第二校验单元,用于利用所述校验运算值对所述第二查询结果中的运算值进行校验,得到校验结果;

确定单元,用于利用所述校验结果确定所述第一查询结果的真实性。

本公开又一实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的话单生成方法中的步骤,或者,所述处理器执行所述程序时实现上述的话单校验方法中的步骤,或者,所述处理器执行所述程序时实现上述的话单查询方法中的步骤。

本公开又一实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的话单生成方法中的步骤,或者,上述的话单校验方法中的步骤,或者,上述的话单查询方法中的步骤。

本公开又一实施例提供一种话单生成、查询、校验方法、装置及设备、存储介质,其中,获取用户在时间窗口产生的通信记录信息;采用特定函数对所述通信记录信息进行运算,得到唯一运算值;获取所述话单的信息块的时间戳;根据所述信息块的时间戳、所述唯一运算值、所述通信记录信息生成所述信息块;如此,利用特定函数对通信记录信息进行运算后得到运算值唯一的特性,保证话单的存储是不可篡改的,提升用户信任度。

附图说明

图1为本公开实施例话单生成方法的实现流程示意图;

图2为本公开实施例待记录信息池的组成结构示意图;

图3为本公开实施例运算值特征树的组成结构示意图;

图4a为本公开实施例话单生成装置的组成结构示意图;

图4b为本公开实施例话单校验装置的组成结构示意图;

图4c为本公开实施例话单查询装置的组成结构示意图;

图5为本公开实施例中计算机设备的一种硬件实体示意图。

具体实施方式

下面结合附图和实施例对本公开的技术方案进一步详细阐述。

本实施例提出一种话单生成方法,该方法应用于第一设备,该方法所实现的功能可以通过第一设备中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该第一设备至少包括处理器和存储介质。

图1为本公开实施例话单生成方法的实现流程示意图,如图1所示,该方法包括:

步骤s101,获取用户在时间窗口产生的通信记录信息;

这里,时间窗口为记录通信记录信息的时间单位或时间单元,如一小时、一天、一星期或一个月。查询时间窗口可以为一个时间窗口的整数倍。

步骤s102,采用特定函数对所述通信记录信息进行运算,得到唯一运算值;

这里,所述特定函数为单向加密函数、散列函数或椭圆函数。

步骤s103,获取所述话单的信息块的时间戳;

这里,可以获取当前的时间作为所述话单的信息块的时间戳,当前的时间可以为生成信息块的时间。在其他实施例中,所述获取所述话单的信息块的时间戳包括:获取当前时间,并将当前时间或当前时间叠加偏差值作为所述话单的信息块的时间戳。

步骤s104,根据所述信息块的时间戳、所述唯一运算值、所述通信记录信息生成所述信息块。

在其他实施例中,所述获取用户在时间窗口产生的通信记录信息,包括:

从待记录信息池中获取一个或多个用户在时间窗口产生的通信记录信息;其中,所述待记录信息池用于存储尚未被记录的通信记录信息。

在其他实施例中,所述采用特定函数对所述通信记录信息进行运算,包括:采用特定函数对所述用户的通信记录进行运算,得到唯一运算值,所述特定函数为单向加密函数、散列函数或椭圆函数。

所述获取用户在时间窗口产生的通信记录信息,包括:采用特定函数对所述用户的手机号码、imsi、身份证号码或姓名进行运算,得到所述用户标识,根据所述用户标识从待记录信息池中获取所述用户在时间窗口产生的通信记录信息,其中,所述待记录信息池用于存储尚未被记录的通信记录信息。

在其他实施例中,所述通信记录信息至少包括以下信息中的至少一种:

业务类型、话音业务、话音呼叫主叫方、话音呼叫被叫方、话音呼叫起始时间、话音呼叫时长、视频通话业务、视频通话主叫方、视频通话被叫方、视频通话起呼时间、视频通话呼叫时长、数据业务、数据服务访问app名称、数据服务访问http地址、发起数据服务时间、使用数据服务时长、使用数据服务流量、短信业务、短信发送方、短信接收方、短信发送时间、彩信业务、彩信发送方、彩信接收方、彩信发送时间、增值业务、增值业务名称、增值业务服务费、增值业务计费时间、代收业务、代收业务名称、代收业务服务费。

在其他实施例中,所述采用特定函数对所述通信记录信息进行运算,得到唯一运算值,包括:

确定所述通信记录信息中信息单元的总数;

进行第一层计算,将所述信息单元进行两两配对,对每个配对进行运算得到第一运算值;

进行第二层计算,将所述第一运算值进行两两配对,对每个配对进行运算得到第二运算值;

以此往复,直至得到唯一运算值;

确定在第n层计算中待计算值数目为单数时,将最后一个待计算值进行复制,并与最后一个计算值配对进行计算。

在其他实施例中,所述采用特定函数对所述通信记录信息进行运算,得到唯一运算值,包括:

步骤s11,确定所述通信记录信息中信息单元的总数n;

步骤s12,如果所述n小于等于预设的第一阈值m,采用特定函数对所述通信记录信息中的n个信息单元进行计算,得到唯一运算值。

在其他实施例中,所述采用特定函数对所述通信记录信息进行运算,得到唯一运算值,包括:

步骤s21,确定所述通信记录信息中信息单元的总数n;

步骤s22,如果所述n大于预设的第一阈值m,将通信记录信息中信息单元进行分组,得到k组信息单元;

步骤s23,采用特定函数对通信记录信息中的k组信息单元进行运算,获得每组信息单元对应的第二运算值;

步骤s24,根据k个所述第二运算值确定所述唯一运算值。

在其他实施例中,所述将通信记录信息中信息单元进行分组,包括:按照通信记录信息中的包含信息单元的类别进行分组,或者,将通信记录信息中的信息单元统一进行分组。

在其他实施例中,所述将通信记录信息中的信息单元统一进行分组,包括:

将通信记录信息中的信息单元按照nmodm随机分为k组,其中,n为通信记录信息中包含的信息单元数,m为每组最多包含的信息单元的数目,第1至(k-1)组均包含m个信息单元,第k组中包含的信息单元数目<=m。

在其他实施例中,所述方法还包括:

步骤s31,如果所述第k组信息单元包含的信息单元数目l小于m,在所述第k组中填充(m-l)个0或填充(m-l)个第l个信息单元,将所述第k组信息单元补足m个信息单元;

步骤s32,采用特定函数对补足后的第k组信息单元进行运算,获得第k组信息单元对应的第二运算值。

在其他实施例中,所述根据k个所述第二运算值确定所述唯一运算值,包括:

步骤s41,如果所述k小于等于预设的第二阈值p,采用特定函数将k个所述第二运算值进行运算,得到所述唯一运算值;

步骤s42,如果所述k大于预设的第二阈值p,将k个第二运算值按照kmodp随机分为q组,其中,第1至第(q-1)组均包含p个第二运算值,如果第q组包含的第二运算值数目l小于等于p;

步骤s43,采用特定函数对q组第二运算值进行运算,得到q个第三运算值;

步骤s44,根据q个所述第三运算值确定所述唯一运算值。

在其他实施例中,所述根据所述信息块的时间戳、所述唯一运算值、所述通信记录信息生成所述信息块,包括:

步骤s51,根据所述信息块的时间戳、第二信息块标识、所述通信记录信息、所述唯一运算值确定第一信息块标识;其中所述第二信息块标识为前一信息块的标识;

步骤s52,根据所述信息块的时间戳、所述唯一运算值、所述通信记录信息、第一信息块标识和所述第二信息块标识生成所述信息块。

在其他实施例中,所述根据所述信息块的时间戳、第二信息块标识、所述通信记录信息、所述唯一运算值确定第一信息块标识,包括:

步骤s61,根据所述时间戳、前一信息块的标识、所述通信记录信息、所述唯一运算值和补充字段进行第四运算,得到第四运算值;

步骤s62,确定第四运算值与从系统获取的第三阈值之间的差值;

步骤s63,根据所述差值确定补充字段;

步骤s64,将所述补充字段、所述时间戳、第二信息块标识、所述通信记录信息、所述唯一运算值确定第一信息块标识。

在其他实施例中,所述方法还包括:改变所述补充字段内容,根据所述时间戳、前一信息块的标识、所述通信记录信息、所述唯一运算值、补充字段进行第四运算,直到得到小于第三阈值的第四运算值。

在其他实施例中,所述方法还包括:第一设备将生成的信息块发送给系统。

本实施例提出一种话单校验方法,该方法应用于校验单元或系统(其中,系统可以理解为终端的服务器),该方法所实现的功能可以通过校验单元或系统中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该校验单元或系统至少包括处理器和存储介质。

该话单校验方法包括:

步骤s111,校验单元或系统接收第一设备发送的信息块;所述信息块包括唯一运算值、第一信息块标识和第二信息块标识;其中,所述第二信息块标识为前一信息块的标识;

步骤s112,校验所述信息块中的第一信息块标识小于第三阈值,且校验所述第一信息块标识通过时,将所述信息块链接到将所述第二信息块标识作为第一信息块标识的信息块之后。

在其他实施例中,所述信息块还包括所述信息块的时间戳、所述通信记录信息和补充字段;对应地,校验所述第一信息块标识,包括:采用特定函数对所述通信记录信息的信息单元、所述唯一运算值、所述第二信息块标识、所述时间戳和所述补充字段进行运算,得到第五运算值;如果所述第五运算值与所述第一信息块标识相同时,则校验通过。

在其他实施例中,所述方法还包括:

步骤s121,系统接收用户发送话单查询请求;所述话单查询请求包括所述用户的身份标识、查询时间窗口和待查询的信息单元条目,其中,查询时间窗口长度包含至少一个为所述时间窗口;待查询的信息单元条目为信息单元的类别标识;

步骤s122,所述系统根据所述用户的身份标识按照查询时间窗口和待查询的信息单元条目获取所述用户的信息单元集合;

步骤s123,将所述用户的信息单元集合作为第一查询结果,利用所述用户的公钥加密第一查询结果的校验地址;

步骤s124,将加密的校验地址和第一查询结果发送给所述用户发送给所述用户。

本实施例提出一种话单查询方法,该话单查询方法,包括:

步骤s131,用户向系统发送话单查询请求;

步骤s132,接收系统发送的第一查询结果和加密的校验地址,所述第一查询结果包括所述用户的信息单元集合;

步骤s133,根据所述加密的校验地址获得第二查询结果,所述第二查询结果包括所述用户的信息单元集合对应的运算值p;

步骤s134,采用特定函数对所述用户的信息单元集合进行运算,得到校验运算值;

步骤s135,利用所述校验运算值对所述第二查询结果中的运算值进行校验,得到校验结果;

步骤s136,利用所述校验结果确定所述第一查询结果的真实性。

在其他实施例中,所述根据所述加密的校验地址获得第二查询结果,包括:利用用户的私钥解密加密的校验地址,得到解密后的校验地址;根据所述解密的校验地址获得第二查询结果。

本公开实施例提供一种话单处理方法,该方法包括:

步骤s301、第一设备获取第一用户标识的用户在时间窗口产生的第一信息;

这里,第一用户标识的用户可以有一个或多个。

所述第一设备为pdn-gw或类似功能的核心网计费单元,或者为话单存储信息块生成设备,或者为部署在边缘计算单元的功能体,或者,为第三方的信息存储单元;

所述第一用户标识为根据所述用户的手机号码或imsi进行第一运算获得的第一运算值,所述第一运算为单向加密函数运算、散列函数运算或椭圆函数运算;

所述时间窗口为第一信息的记录时间窗口,如一小时、一天、一星期或一个月;

所述第一信息包括第一用户标识的用户在时间窗口内的话单相关信息;

所述第一信息是第一设备从待记录信息池中获取的,所述第一设备向其它第一设备广播尚未被记录的第一用户标识的用户的第一信息,其它第一设备将所述尚未被记录的第一用户标识的用户的第一信息存储在待记录信息池中;如图2所示,待记录信息池中包括一个多多个用户的话单相关信息。

步骤s302、第一设备对第一信息中信息单元进行分组运算;

1)第一信息中的信息内容如下,第一信息中的信息单元为下面内容中一种的一条记录;

语音通话记录包括:主叫方、被叫方、通话发起时间、通话时长等信息

视频通话记录包括:主叫方、被叫方、通话发起时间、通话时长等信息

数据服务记录包括:发起数据服务app名称、使用数据服务时间、使用数据服务时长、使用数据服务流量、被访问服务器地址、访问网站地址的一种或多种;

短信记录包括:发送时间、发送方、接收方;

彩信记录包括:发送时间、发送方、接收方;

增值业务包括:增值业务名称、服务费、计费时间;

代收业务包括:代收业务名称、服务费、计费时间;

2)将第一信息中信息单元进行分组并计算,可以按照第一信息中的包含信息单元的类别进行分组,也可以将所有信息单元统一进行分组,具体方法为:

假设第一信息中包含的信息单元数为n,每组包含的信息数为m,则将第一信息中的单元信息按照nmodm随机分为k组,其中,第1~(k-1)组均包含m个信息单元,第k组中包含的信息单元数目<=m(极端情况,直接对n个信息单元进行第二运算获得最终计算值r);

对第一信息中的k组信息单元进行第二运算,获得每组信息单元对应的第二运算值;其中,k组信息单元如果包含的信息单元数目为l,且l小于m,则在k组中填充m-l个0,补足m个信息单元进行第二运算;所述第二运算为单向加密函数运算、散列函数运算或椭圆函数运算;第二运算值是k组信息单元中每组信息单元内容对应的唯一数值,通过校验k可以获知对应的该组信息单元的内容是否被篡改(话单被运营商篡改);

3)第一设备对第二运算值进行分组运算,具体方法为:

将k个第二运算值按照kmodp随机分为q组,其中,1~q-1组均包含p个第二运算值,q组包含的第二运算值数目如果小于p则补0,方法同步骤2;

对q组第二运算值进行第三运算获得q个第三运算值;在其他的实施例中,p可以与m相同,即对k组第二运算值再次按照步骤2)进行分组计算。

4)重复步骤3)直至第一设备获得唯一计算值r,算法采用类似二叉树的方式,如图3所示,通过对任一分支上的运算值进行校验,即可获知该分支对应的信息单元内容是否被篡改。例如,通过校验第二运算值1可以说明单元1和单元2是否被篡改,通过第三运算值1可以说明单元1、单元2、单元3和单元4是否被篡改。

步骤s303、第一设备生成第一信息块;

其中,信息块的内容如下:

第一信息块标识:对第一信息块生成时间戳、第二信息块标识、第一用户标识的用户的第一信息中的各个信息单元计算获得的计算值、填充字段进行第三运算获得的;

第一信息块的时间戳:生成信息块对应的当前时间;

第二信息块标识:所述第二信息块为系统在第一信息块之前已发布信息块的标识

第一用户标识的用户的第一信息中的各个信息单元计算获得的唯一计算值

填充字段:可变长度的数值;

用户的第一信息中的各个信息单元(第一信息块标识不再计算具体第一信息中的信息单元)。

注:由于散列函数等具有不可逆、计算值唯一(输入内容有任何不同都会得到不同的运算结果,具有防篡改特性)的特性,依据第一信息块标识,以及各个信息单元的计算值,其它系统设备或用户可以校验话单信息是否真实,是否被篡改过(如果某个信息单元的内容被篡改,则对应的计算值会发生变化,从而在计算值的特征树上对应的父节点的计算结果都会改变,最终的第一信息块标识也会改变,根据计算值的变化就可以溯源到哪个信息块内容被篡改过)。

步骤s304、第一设备向系统发送所述第一信息块;

步骤s305、第二设备对所述第一信息块进行校验,所述第二设备为系统指配的校验单元,或者,为系统上的分布式校验节点;

在实施的过程中,步骤s305的实现过程包括:

1)校验第一设备是否具有发布第一信息块的权利:第二设备校验所述第一信息块标识是否符合系统设定的阈值f要求,该方法为:

第二设备计算第一信息块的时间戳、第二信息块标识、第一用户标识的用户的第一信息中的各个信息单元计算获得的唯一运算值、填充字段进行运算,获得计算值;

第二设备判断所述计算值与所述第一信息块标识相等时,且当所述第一信息块标识小于或等于阈值f时,确认所述第一信息块标识符合发布要求;

2)校验第一设备是否对第一信息块包含信息进行了篡改:

第二设备对第一信息块内包含的第一用户标识的用户的信息单元进行计算得到的运算值,当所述运算值与第一信息块中包含的第一用户标识的用户的第一信息中的各个信息单元计算获得的计算值相同时,确认第一设备没有对第一信息块中包含信息进行篡改。

3)第二设备将符合上述两项要求的第一信息块存储到系统信息队列中,并链接到包含所述第二信息块标识的信息块之后。

1)校验所述第一信息块标识是否符合系统设定的阈值f要求,具体方法为:当所述第一信息块标识小于或等于所述阈值f时,确认所述第一信息块标识符合要求;

2)校验所述第一信息块标识是否符合运算格式要求,第二设备依据第一信息块内包含的所有第一用户标识的用户的第一信息单元计算得到的运算值r”,或者依据第一信息块内包含的所有第一用户标识的用户的第一信息单元,以及填充字段进行运算得到的运算值l”,或者依据第一信息块内包含的若干标识用户的第一信息单元,以及填充字段进行运算得到的运算值m”,当所述运算值与第一信息块标识相同时,确认符合运算格式要求;

3)第二设备将符合上述两项要求的第一信息块存储到系统信息队列中,并链接到包含所述第二信息块标识的信息块之后。

下面提供一种信息查询和校验方法,该方法包括:

步骤s311、第一用户标识的用户向系统提交第一信息的查询请求,以及包含第一用户标识的用户的身份标识和公钥或数字签名、查询时间窗口、待查询的信息单元条目;当第一用户标识的用户和身份标识与第一设备存储第一用户标识的用户的身份标识不同时,则需要进行身份标识映射。

这里,系统可以认为是第一设备的服务器,也可以认为是用户终端的服务器;

例如,第一设备采用的第一用户标识的用户身份标识为imsi,第一用户标识的用户向系统递交的身份标识为手机号码,则系统需要将手机号码映射为imsi,以便统一身份标识确保查询信息的准确性。

身份标识包括imsi或手机号码,或者,对imsi或手机号码进行第一运算所得运算值,或者,为可通过第一用户标识的用户的私钥访问的地址;

公钥或数字签名为通过对用户私钥进行特定加密运算获得的

查询时间窗口长度包含至少一个为所述时间窗口;

待查询的信息单元条目为所述第一信息中的信息单元的类别标识;

步骤s312、系统对所述查询请求进行校验;

在实施的过程中,系统对所述查询请求进行校验的过程如下:系统对所述包含第一用户标识的用户的身份标识和公钥或数字签名进行匹配认证,当所述公钥或数字签名与所述身份标识匹配,即可解锁所述身份标识或可证明对应私钥可对所述身份标识进行解锁,校验通过。

步骤s313、系统依据第一用户标识的用户的身份标识、查询时间窗口、待查询的信息单元条目中的类别标识对提取对应的信息块;

在实施的过程中,步骤s303的实现过程包括:

步骤1)系统依据第一用户标识的用户的身份标识确定对应的第一信息块集合;

步骤2)系统依据查询时间窗口,以及所述第一信息块集合中包含的信息块的时间戳选择符合查询时间窗口需求的第二信息块集合;

步骤3)系统从第二信息块集合中选择符合所述信息单元类别标识的信息单元,并生成查询结果。

步骤s314、系统向所述第一用户标识的用户发送查询结果,以及利用所述第一用户标识的用户的公钥进行加密的查询结果的校验地址;

步骤s315、第一用户标识的用户获取所述查询结果,进一步的第一用户标识的用户可利用私钥解锁获取所述校验地址,根据校验地址获得查询结果,具体查询结果包含第二信息单元内容,以及第二信息单元对应的运算值p;

步骤s316、第一用户标识的用户对查询结果可进行校验;

在实施的过程中,步骤s313的实现过程包括:

1)第一用户标识的用户获取查询时间窗口内的一个或多个第二信息单元;

2)第一用户标识的用户对步骤1)中所述的第二信息单元进行第二运算获得运算值t(可通过第三方软件或运营商提供服务进行运算服务);

3)第一用户标识的用户将所述运算值t与所述第二信息单元系统提供的运算值p进行比对,若相同则判断所述信息单元内容没有被篡改。

本实施例中,第一设备利用散列运算等方式对第一用户标识的用户的第一窗口内的话单信息单元进行存储;第一设备对信息单元进行模式组合和随机分组网进行运算;第一用户标识的用户利用私钥进行话单信息的查询和校验的方法;

与现有技术相比,本实施例具有以下技术优点:1)利用散列函数的不可逆,运算值唯一的特性,保证话单的存储是不可篡改的,提升用户信任度;2)利用私钥去校验话单的查询授权保证用户信息的私密性。

基于前述的实施例,本公开实施例提供一种话单生成装置,该装置包括所包括的各单元、以及各单元所包括的各模块,可以通过第一设备中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(cpu)、微处理器(mpu)、数字信号处理器(dsp)或现场可编程门阵列(fpga)等。

图4a为本公开实施例话单生成装置的组成结构示意图,如图4a所示,所述装置400包括:

第一获取单元401,用于获取用户在时间窗口产生的通信记录信息;

第一运算单元402,用于采用特定函数对所述通信记录信息进行运算,得到唯一运算值;

第二获取单元403,用于获取所述话单的信息块的时间戳;

在其他实施例中,所述第二获取单元403,用于获取当前时间,并将当前时间或当前时间叠加偏差值作为所述话单的信息块的时间戳。

生成单元404,用于根据所述信息块的时间戳、所述唯一运算值、所述通信记录信息生成所述信息块。

在其他实施例中,所述第一获取单元,用于从待记录信息池中获取一个或多个用户在时间窗口产生的通信记录信息;其中,所述待记录信息池用于存储尚未被记录的通信记录信息。

在其他实施例中,第一运算单元,用于采用特定函数对所述用户的通信记录进行运算,得到唯一运算值,所述特定函数为单向加密函数、散列函数或椭圆函数。

所述第一获取单元,用于采用特定函数对所述用户的手机号码、imsi、身份证号码或姓名进行运算,得到所述用户标识,根据所述用户标识从待记录信息池中获取所述用户在时间窗口产生的通信记录信息,其中,所述待记录信息池用于存储尚未被记录的通信记录信息。

在其他实施例中,所述通信记录信息至少包括以下信息中的至少一种:

业务类型、话音业务、话音呼叫主叫方、话音呼叫被叫方、话音呼叫起始时间、话音呼叫时长、视频通话业务、视频通话主叫方、视频通话被叫方、视频通话起呼时间、视频通话呼叫时长、数据业务、数据服务访问app名称、数据服务访问http地址、发起数据服务时间、使用数据服务时长、使用数据服务流量、短信业务、短信发送方、短信接收方、短信发送时间、彩信业务、彩信发送方、彩信接收方、彩信发送时间、增值业务、增值业务名称、增值业务服务费、增值业务计费时间、代收业务、代收业务名称、代收业务服务费。

在其他实施例中,第一运算单元,用于:

确定所述通信记录信息中信息单元的总数;

进行第一层计算,将所述信息单元进行两两配对,对每个配对进行运算得到第一运算值;

进行第二层计算,将所述第一运算值进行两两配对,对每个配对进行运算得到第二运算值;

以此往复,直至得到唯一运算值;

确定在第n层计算中待计算值数目为单数时,将最后一个待计算值进行复制,并与最后一个计算值配对进行计算。

在其他实施例中,所述第一运算单元,包括:

第一确定模块,用于确定所述通信记录信息中信息单元的总数n;

第一运算模块,用于如果所述n小于等于预设的第一阈值m,采用特定函数对所述通信记录信息中的n个信息单元进行计算,得到唯一运算值。

在其他实施例中,所述第一运算单元,包括:

第一确定模块,用于确定所述通信记录信息中信息单元的总数n;

分组模块,用于如果所述n大于预设的第一阈值m,将通信记录信息中信息单元进行分组,得到k组信息单元;

第二运算模块,用于采用特定函数对通信记录信息中的k组信息单元进行运算,获得每组信息单元对应的第二运算值;

第二确定模块,用于根据k个所述第二运算值确定所述唯一运算值。

在其他实施例中,所述分组模块,用于:

按照通信记录信息中的包含信息单元的类别进行分组,或者,

将通信记录信息中的信息单元统一进行分组。

在其他实施例中,所述分组模块,包括:

将通信记录信息中的信息单元按照nmodm随机分为k组,其中,n为通信记录信息中包含的信息单元数,m为每组最多包含的信息单元的数目,第1至(k-1)组均包含m个信息单元,第k组中包含的信息单元数目<=m。

在其他实施例中,所述第一运算单元,包括:

填充模块,用于如果所述第k组信息单元包含的信息单元数目l小于m,在所述第k组中填充(m-l)个0或填充(m-l)个第l个信息单元,将所述第k组信息单元补足m个信息单元;

第三运算模块,用于采用特定函数对补足后的第k组信息单元进行运算,获得第k组信息单元对应的第二运算值。

在其他实施例中,所述第三运算模块,包括:

第一运算子模块,用于如果所述k小于等于预设的第二阈值p,采用特定函数将k个所述第二运算值进行运算,得到所述唯一运算值;

分组子模块,用于如果所述k大于预设的第二阈值p,将k个第二运算值按照kmodp随机分为q组,其中,第1至第(q-1)组均包含p个第二运算值,如果第q组包含的第二运算值数目l小于等于p;

第二运算子模块,用于采用特定函数对q组第二运算值进行运算,得到q个第三运算值;

第一确定子模块,用于根据q个所述第三运算值确定所述唯一运算值。

在其他实施例中,所述生成单元,包括:

第三确定模块,用于根据所述信息块的时间戳、第二信息块标识、所述通信记录信息、所述唯一运算值确定第一信息块标识;其中所述第二信息块标识为前一信息块的标识;

生成模块,用于根据所述信息块的时间戳、所述唯一运算值、所述通信记录信息、第一信息块标识和所述第二信息块标识生成所述信息块。

在其他实施例中,所述第三确定模块,包括:

运算子模块,用于根据所述时间戳、前一信息块的标识、所述通信记录信息、所述唯一运算值和补充字段进行第四运算,得到第四运算值;

第二确定子模块,用于确定第四运算值与从系统获取的第三阈值之间的差值;

第三确定子模块,用于根据所述差值确定补充字段;

第四确定子模块,用于将所述补充字段、所述时间戳、第二信息块标识、所述通信记录信息、所述唯一运算值确定第一信息块标识。

在其他实施例中,所述装置还包括:发送单元,用于将生成的信息块发送给系统。

基于前述的实施例,本公开实施例提供一种话单校验装置,该装置包括所包括的各单元、以及各单元所包括的各模块,可以通过第二设备或系统中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(cpu)、微处理器(mpu)、数字信号处理器(dsp)或现场可编程门阵列(fpga)等。

图4b为本公开实施例话单校验装置的组成结构示意图,如图4b所示,所述装置410包括:

第一接收单元411,用于接收第一设备发送的信息块;所述信息块包括唯一运算值、第一信息块标识和第二信息块标识;其中,所述第二信息块标识为前一信息块的标识;

第一校验单元412,用于校验所述信息块中的第一信息块标识是否小于等于第三阈值f,且校验所述第一信息块标识;

链接单元413,用于校验所述信息块中的第一信息块标识小于第三阈值,且校验所述唯一运算值通过时,将所述信息块链接到将所述第二信息块标识作为第一信息块标识的信息块之后。

在其他实施例中,所述信息块还包括所述信息块的时间戳、所述通信记录信息和补充字段;校验所述第一信息块标识,包括:采用特定函数对所述通信记录信息的信息单元、所述唯一运算值、所述第二信息块标识、所述时间戳和所述补充字段进行运算,得到第五运算值;如果所述第五运算值与所述第一信息块标识相同时,则校验通过。

在其他实施例中,所述装置还包括:

第二接收单元,用于接收用户发送话单查询请求;所述话单查询请求包括所述用户的身份标识、查询时间窗口和待查询的信息单元条目,其中,查询时间窗口长度包含至少一个为所述时间窗口;待查询的信息单元条目为信息单元的类别标识;

第三获取单元,用于根据所述用户的身份标识按照查询时间窗口和待查询的信息单元条目获取所述用户的信息单元集合;

加密单元,用于将所述用户的信息单元集合作为第一查询结果,利用所述用户的公钥加密第一查询结果的校验地址;

第二发送单元,用于将加密的校验地址和第一查询结果发送给所述用户发送给所述用户。

基于前述的实施例,本公开实施例提供一种话单查询装置,该装置包括所包括的各单元、以及各单元所包括的各模块,可以通过用户端(终端)中的处理器来实现;当然也可通过具体的逻辑电路实现;在实施的过程中,处理器可以为中央处理器(cpu)、微处理器(mpu)、数字信号处理器(dsp)或现场可编程门阵列(fpga)等。

图4c为本公开实施例话单查询装置的组成结构示意图,如图4c所示,所述装置420包括:

第三发送单元421,用于向系统发送话单查询请求;

第三接收单元422,用于接收系统发送的第一查询结果和加密的校验地址,所述第一查询结果包括所述用户的信息单元集合;

第四获取单元423,用于根据所述加密的校验地址获得第二查询结果,所述第二查询结果包括所述用户的信息单元集合对应的运算值p;

第四运算单元424,用于采用特定函数对所述用户的信息单元集合进行运算,得到校验运算值;

第二校验单元425,用于利用所述校验运算值对所述第二查询结果中的运算值进行校验,得到校验结果;

确定单元426,用于利用所述校验结果确定所述第一查询结果的真实性。

在其他实施例中,所述第四获取单元,用于:

利用用户的私钥解密加密的校验地址,得到解密后的校验地址;

根据所述解密的校验地址获得第二查询结果。

以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本公开装置实施例中未披露的技术细节,请参照本公开方法实施例的描述而理解。

需要说明的是,本公开实施例中,如果以软件功能模块的形式实现上述的话单生成方法、或话单校验方法、或话单查询方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备执行本公开各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(readonlymemory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本公开实施例不限制于任何特定的硬件和软件结合。

对应地,本公开实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的话单生成方法、或话单校验方法、或话单查询方法中的步骤。

对应地,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的话单生成方法、或话单校验方法、或话单查询方法中的步骤。

这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本公开存储介质和设备实施例中未披露的技术细节,请参照本公开方法实施例的描述而理解。

需要说明的是,图5为本公开实施例中计算机设备(包括第一设备、第二设备、系统和终端)的一种硬件实体示意图,如图5所示,该计算机设备500的硬件实体包括:处理器501、通信接口502和存储器503,其中

处理器501通常控制计算机设备500的总体操作。

通信接口502可以使计算机设备通过网络与其他设备通信。

存储器503配置为存储由处理器501可执行的指令和应用,还可以缓存待处理器501以及计算机设备500中各模块待处理或已经处理的数据,可以通过闪存(flash)或随机访问存储器(randomaccessmemory,ram)实现。

应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本公开的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本公开的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

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

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

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(readonlymemory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本公开上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备执行本公开各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本公开的实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。

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