CN108733802A - 识别码生成及解析方法、装置、存储介质和电子设备 - Google Patents
识别码生成及解析方法、装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN108733802A CN108733802A CN201810475694.2A CN201810475694A CN108733802A CN 108733802 A CN108733802 A CN 108733802A CN 201810475694 A CN201810475694 A CN 201810475694A CN 108733802 A CN108733802 A CN 108733802A
- Authority
- CN
- China
- Prior art keywords
- digit
- extension
- attribute information
- affiliated partner
- inverse element
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明揭示了一种识别码ID生成方法,包括:响应于接收的ID生成请求,获取关联对象的标识序号及属性信息;根据ID的目标位数,查询预设映射表得到与所述标识序号对应的第一扩展位数;以及获取所述标识序号关于预设素数的逆元,并基于所述逆元与所述属性信息生成所述目标位数内的ID,其中,所述预设素数包括所述第一扩展位数内的最大素数。根据本发明的实施例,基于关联对象的属性信息以及扩展后的标识序号来生成对象ID,在避免采用集中式维护ID池的同时起到了隐藏底层数据的效果,提高了数据处理的效率和安全性。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种ID(Identifier,识别码)生成及解析方法、装置、计算机可读存储介质以及电子设备。
背景技术
随着互联网的快速发展,网络上产生和存储的数据也迎来了爆发式的增长。据IDC(Internet Data Center,互联网数据中心)统计,最近十年间,全球数据已增长40多倍,到2020年预计将增长至35ZB(Zettabyte,十万亿亿字节)。如此庞大的数据量对数据的存储和管理都提出了巨大的挑战。
举例而言,一方面,在对数据库中的每条数据进行读取、写入或删除等访问动作时,通常会使用与之对应的主键(key)来进行操作。因此,数据库会为每条数据分配唯一的ID作为主键,如果ID不唯一则可能因主键冲突导致数据库操作失败。
另一方面,在基于数据库提供各种业务服务时,后台也会为这些业务分配唯一的ID,以区分不同用户的同种业务操作。例如,云业务中可能存在上百种不同的产品,包括CVM(Cloud Virtual Machine,云虚拟机)、CBS(Cloud Block Storage,云盘存储)、API(Application Programming Interface,应用程序编程接口)网关、COS(Cloud ObjectStorage,云对象存储)等等,这些产品又在不同地域、不同时间为不同用户创建业务服务。为了有效管理和定位这些业务,需要为每种产品分配唯一的ID,否则可能因出现乱序导致无法对业务进行有效管理。
为了生成上述唯一ID,相关技术通常采用数据库自增ID或基于唯一ID池全局分配两种方式来进行。然而,数据库自增ID的方式会暴露底层数据,并且生成方式过于简单,不能区分不同类型的对象;而基于唯一ID池进行全局分配的方式需要集中式维护,所有类型的对象都需要调用同一个接口来分配唯一ID,对接口的依赖太重,不利于处理资源和风险的分担。
发明内容
为了解决相关技术中唯一ID生成方式存在的上述问题,本发明提供了一种ID生成和解析方法、装置、计算机可读存储介质以及电子设备。
根据本发明的实施例,提供一种ID生成方法,包括:响应于接收的ID生成请求,获取关联对象的标识序号及属性信息;根据ID的目标位数,查询预设映射表得到与所述标识序号对应的第一扩展位数;以及获取所述标识序号关于预设素数的逆元,并基于所述逆元与所述属性信息生成所述目标位数内的ID,其中,所述预设素数包括所述第一扩展位数内的最大素数。
根据本发明的实施例,提供一种ID解析方法,包括:根据关联对象的目标ID,查询预设映射表获取对应的第一扩展位数及预设素数;根据获取的第一扩展位数,从所述目标ID中分离出所述关联对象的属性信息及逆元结果;以及获取所述逆元结果关于所述预设素数的逆元,得到所述关联对象的标识序号,其中,所述预设素数包括所述第一扩展位数内的最大素数。
根据本发明的实施例,提供一种ID生成装置,包括:接收模块,用于响应于接收的ID生成请求,获取关联对象的标识序号及属性信息;查询模块,用于根据ID的目标位数,查询预设映射表得到与所述标识序号对应的第一扩展位数;以及生成模块,用于获取所述标识序号关于预设素数的逆元,并基于所述逆元与所述属性信息生成所述目标位数内的ID,其中,所述预设素数包括所述第一扩展位数内的最大素数。
根据本发明的实施例,提供一种ID解析装置,包括:查询模块,用于根据关联对象的目标ID,查询预设映射表获取对应的第一扩展位数及预设素数;分离模块,用于根据获取的第一扩展位数,从所述目标ID中分离出所述关联对象的属性信息及逆元结果;以及解析模块,用于获取所述逆元结果关于所述预设素数的逆元,得到所述关联对象的标识序号,其中,所述预设素数包括所述第一扩展位数内的最大素数。
根据本发明的实施例,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的ID生成方法或者ID解析方法。
根据本发明的实施例,提供一种电子设备,包括:处理器;以及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如上所述的ID生成方法或者ID解析方法。
本发明的实施例提供的技术方案可以包括以下有益效果:
根据本发明实施例提供的ID生成方法,基于关联对象的属性信息以及扩展后的标识序号来生成对象ID,在避免采用集中式维护ID池的同时起到了隐藏底层数据的效果,提高了数据处理的效率和安全性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
图1示出了可以应用本发明实施例的ID生成方法或装置的示例性系统架构的示意图。
图2示出了适于用来实现本发明实施例的电子设备的计算机系统的结构示意图。
图3是根据一示例性实施例示出的一种ID生成方法的流程图。
图4是根据另一示例性实施例示出的一种ID生成方法的流程图。
图5是根据再一示例性实施例示出的一种ID生成方法的流程图。
图6是根据一示例性实施例示出的一种ID解析方法的流程图。
图7是根据另一示例性实施例示出的一种ID解析方法的流程图。
图8是根据一示例性实施例示出的一种ID生成装置的框图。
图9是根据一示例性实施例示出的一种ID解析装置的框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
图1示出了可以应用本发明实施例的ID生成方法或装置的示例性系统架构100的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103中的一种或多种,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送数据等。终端设备101、102、103可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式计算机等等。服务器105可以是提供各种服务的服务器。
例如,服务器105为用户提供包括但不限于CVM、CBS、API网关、COS等业务产品在内的云服务,用户可以利用终端设备103(也可以是终端设备101或102)安装相应的应用程序或直接通过网页访问来访问这些服务。服务器105从终端设备103接收访问请求,指向特定的关联对象,这里的关联对象可以包括特定的业务类型(例如CVM、COS等等),也可以包括特定的数据项。为了实现关联对象的管理,达到区分不同类型、不同用户以及其他不同属性(例如地域、时间等)的目的,这里终端设备103在访问请求中可同时携带与关联对象对应的ID生成请求。服务器104响应于接收的ID生成请求,获取关联对象的标识序号及属性信息;接续根据ID的目标位数,通过查询预设映射表得到与所述标识序号对应的第一扩展位数;最后获取所述标识序号关于预设素数的逆元,并基于所述逆元与所述属性信息生成所述目标位数内的ID。这里的预设素数包括所述第一扩展位数内的最大素数。
在一些实施例中,本发明实施例所提供的ID生成方法一般由服务器105执行,相应地,ID生成装置一般设置于服务器105中。在另一些实施例中,某些终端可以具有与服务器相似的功能从而执行本方法。因此,本发明实施例所提供的ID生成方法不限定在服务器端执行。
图2示出了适于用来实现本发明实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图2示出的电子设备的计算机系统200仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图2所示,计算机系统200包括中央处理单元(CPU)201,其可以根据存储在只读存储器(ROM)202中的程序或者从存储部分208加载到随机访问存储器(RAM)203中的程序而执行各种适当的动作和处理。在RAM 203中,还存储有系统操作所需的各种程序和数据。CPU201、ROM 202以及RAM 203通过总线204彼此相连。输入/输出(I/O)接口205也连接至总线204。
以下部件连接至I/O接口205:包括键盘、鼠标等的输入部分206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分207;包括硬盘等的存储部分208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分209。通信部分209经由诸如因特网的网络执行通信处理。驱动器210也根据需要连接至I/O接口205。可拆卸介质211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器210上,以便于从其上读出的计算机程序根据需要被安装入存储部分208。
特别地,根据本发明的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分209从网络上被下载和安装,和/或从可拆卸介质211被安装。在该计算机程序被中央处理单元(CPU)201执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如下述实施例中所述的方法。例如,所述的电子设备可以实现如图3至图6所示的各个步骤。
在详细阐述本发明的实施例的技术方案之前,以下介绍一些相关的技术方案。
自增ID
传统数据库一般通过集成auto_increment(自动增长)的功能来提供自增ID。举例而言,当数据库被访问时指明主键为auto_increment,写入数据会将主键设置为null(空)值,数据库会自动生成递增的ID来作为主键。这种方案实现较为简单,便于部署实现,并且满足全时间唯一的需求。
然而,自增ID的方式存在如下缺点。首先,从自增ID能够推测出数据量或访问量的规模,相当于暴露了底层数据,存在安全隐患。另一方面,自增ID的方式过于简单,不能用来区别不同类型的对象。
UUID(Universally Unique Identifier,通用唯一识别码)
UUID的一种实现方式是提供集中式接口,对于所有业务或数据在产生访问请求时,都需要调用这个接口来产生全局唯一的ID。这种方式能够隐藏底层数据,并且通过维护UUID池来全局分配,能够始终保持ID的全局唯一性。
然而,UUID的方式存在如下问题。首先,不同类型的业务都需要调用同一个接口来产生UUID,依赖太重,一旦接口出现问题,可能影响所有业务的运行。另外,这种方式需要额外配置专用的硬件资源来处理接口调用,不仅不利于系统配置的简化,而且通过集中方式实现重要功能也不利于处理资源和风险的分担。
为解决上述问题,本发明实施例提供一种ID生成方法和装置、计算机可读存储介质以及电子设备。
以下对本发明实施例的技术方案的原理和实现细节进行详细阐述。
图3是根据一示例性实施例示出的一种ID生成方法的流程图。如图3所示,该方法可以由任意计算设备执行,可包括以下步骤310-330。
在步骤310中,响应于接收的ID生成请求,获取关联对象的标识序号及属性信息。
在很多场景中都存在生成唯一ID的需求。
举例而言,在对数据库中的数据进行读取、写入或删除等访问动作时,通常会使用与之对应的主键来进行操作。为了区分不同的数据,数据库可为每条数据分配唯一ID。例如,外部操作在向数据库发起写入请求时,数据库基于该写入请求可生成唯一ID,这样后续针对该数据的访问请求都可基于对应的唯一ID来进行。
又例如,基于云服务可能提供CVM、CBS、API网关、COS各种业务服务,每种业务又在不同地域、不同时间创建为不同用户的服务实例。为了有效管理和定位这些业务,可为每个服务实例都分配唯一的ID并提供给用户,这样后续同一用户可基于唯一ID来迅速定位到自己使用的业务服务。
如上所述,对应于不同场景的唯一ID需求,ID生成请求和关联对象可能存在不同的表现形式。例如,ID生成请求包括上述的数据库写入请求和服务访问请求,相应的,关联对象分别包括上述的数据和服务实例。本领域技术人员能够理解,本发明的范围并不仅限于此。
本步骤中,当前设备在收到ID生成请求时,获取关联对象的标识序号及属性信息。
在一个实施例中,标识序号可以包括预先为关联对象分配的唯一数字序号。例如,可以使用数据库的自增ID作为关联对象的标识序号。
在一个实施例中,属性信息可以包括描述关联对象的时间、地域等属性的信息。例如,可以预先为各个地域分配对应的数字码,从而当前设备在收到ID生成请求时,可基于其来源IP地址或GPS坐标等信息来确定其所属地域,进而获取到相应的数字码作为属性信息。
在步骤320中,根据ID的目标位数,查询预设映射表得到与所述标识序号对应的第一扩展位数。
关联对象的标识序号和属性信息所表达的内容一般比较简单。如上文所述的自增ID,就是基于递增的方式产生;在使用数字码来表示地域信息时,规则也比较简单。本发明的实施例可对标识序号进行相应位数的扩展,从而提高最终生成ID的随机性。
本步骤中可根据关联对象的整体规模来确定ID的目标位数,进而通过查询预设的映射表来得到与标识序号对应的扩展位数。
在一个实施例中,可使用较高的进制方式来表示最终生成的ID,从而实现在较短位数的情况下容纳尽可能多的ID。例如,在采用36进制来表达最终ID,并将目标位数设为8时,能够容纳的ID数可达到368=2,821,109,907,456个。
与最终生成的ID可能暴露给用户不同,本实施例的方法执行可完全在后台进行,所以这里标识序号的扩展位数可以是二进制的位数。以上述示例中368个ID的规模对应,二进制的位数为41(241=2,199,023,255,552),可将其中部分位数,例如32位分配给这里的标识序号作为第一扩展位数,剩余部分则分配给属性信息。
在步骤330中,获取所述标识序号关于预设素数的逆元,并基于所述逆元与所述属性信息生成所述目标位数内的ID。
这里的素数包括所述第一扩展位数内的最大素数。
若三个正整数a、b、x满足以下式(1),则称x为a关于b的逆元:
a·x=1(mod b)…(1)
其中mod表示求余,上式(1)表示a与x的乘积除以b后余数为1。
已知a与b互素时,a关于b的逆元有解;如果不互素,则无解。如果b为素数,则从1到b-1的任意数都与b互素,因此在1到b-1之间的任意数都有且仅有一个关于b的逆元。
本步骤获取标识序号关于预设素数的逆元可以打散标识序号的原有编号规则,从而提高最终生成ID的随机性。在将预设素数b设置为第一扩展位数内的最大素数时,对于1到b-1之间的标识序号都可求得唯一的逆元。以上述第一扩展位数为32为例,其对应的最大整数为232=4,294,967,296,该范围内的最大素数为4,294,967,029。
另外,由于上式(1)左边a和x可互换顺序,因此对于本步骤求得的逆元x,在后续根据识别码还原标识序号的过程中也可求得唯一对应的标识序号a。
在获取标识序号关于预设素数的逆元后,本步骤可继续基于预设规则使用该逆元与上述属性信息来生成最终ID,基于前述步骤的说明可知,最终ID的位数不会超过目标位数。
根据本发明实施例提供的ID生成方法,基于关联对象的属性信息以及扩展后的标识序号来生成对象ID,在避免采用集中式维护ID池的同时起到了隐藏底层数据的效果,提高了数据处理的效率和安全性。
图4是根据另一示例性实施例示出的一种ID生成方法的流程图。如图4所示,该方法可以由任意计算设备执行,可包括以下步骤410-440。
在步骤410中,响应于接收的ID生成请求,获取关联对象的标识序号、属性信息及加密密码。
本步骤中,当前设备在收到ID生成请求时,在步骤310的基础上,除了获取关联对象的标识序号及属性信息之外,还获取关联对象的加密密码。
在一个实施例中,标识序号可以包括预先为关联对象分配的唯一数字序号。例如,可以使用数据库的自增ID作为关联对象的标识序号。
在一个实施例中,属性信息可以包括描述关联对象的时间、地域等属性的信息。例如,可以预先为各个地域分配对应的数字码,从而当前设备在收到ID生成请求时,可基于其来源IP地址或GPS坐标等信息来确定其所属地域,进而获取到相应的数字码作为属性信息。
在一个实施例中,加密密码可以是按预设规则对应于关联对象设置的密码。例如,当前设备实现可存储关联对象与加密密码的映射表,每个关联对象对应一个唯一的加密密码。又例如,可通过映射表来存储关联对象的名称与加密字符串之间的对应关系,这里的加密字符串再通过转换为整型,进而得到数字的加密密码,以便于与标识序号和属性信息的处理结果进行计算。
在步骤420中,根据ID的目标位数,查询预设映射表得到与标识序号对应的第一扩展位数以及与属性信息对应的第二扩展位数。
本步骤中可根据关联对象的整体规模来确定ID的目标位数,在步骤320的基础上,通过查询预设的映射表除了得到与标识序号对应的第一扩展位数之外,还可得到与属性信息对应的第二扩展位数。
在一个实施例中,可使用较高的进制方式来表示最终生成的ID,从而实现在较短位数的情况下容纳尽可能多的ID。例如,在采用36进制来表达最终ID,并将目标位数设为8时,能够容纳的ID数可达到368=2,821,109,907,456个。
这里标识序号的扩展位数可以是二进制的位数。以上述示例中368个ID的规模对应,二进制的位数为41(241=2,199,023,255,552),可将其中部分位数,例如32位分配给这里的标识序号作为第一扩展位数,剩余部分9位则分配给属性信息作为第二扩展位数。
在步骤430中,获取标识序号关于预设素数的逆元,并基于该逆元与属性信息获取扩展随机数。
本步骤获取标识序号关于预设素数的逆元可以打散标识序号的原有编号规则,从而提高最终生成ID的随机性。在将预设素数设置为第一扩展位数内的最大素数时,对于小于该预设素数的标识序号都可求得唯一的逆元。以上述第一扩展位数为32为例,其对应的最大整数为232=4,294,967,296,该范围内的最大素数为4,294,967,029。
在获取标识序号关于预设素数的逆元后,本步骤可继续按照预设规则基于该逆元与属性信息获取扩展随机数。在一个实施例中,可根据步骤420获取的第二扩展位数来扩展属性信息,得到扩展后的属性信息;进而将扩展后的属性信息按特定规则插入逆元中,得到所需的扩展随机数。
例如,在步骤410中,当前设备在收到ID生成请求时,可基于其来源IP地址或GPS坐标等信息来确定其所属地域,进而通过查询预先为各个地域分配对应的数字码,可获取到相应的数字码作为属性信息,例如对应“广州”的数字码为000、对应“上海”的数字码为001等等。这里可基于产品分布地域的规模来确定数字码的位数,分布的地域数量越多,对应数字码的位数越高。
接续,在步骤420中,通过查询预设的映射表可得到与属性信息对应的第二扩展位数,如前文所述的示例中,第二扩展位数例如为9位。因此,在与逆元进行组合之间,还可将属性信息的数字码扩展至第二扩展位数。在一个实施例中,可在与属性信息对应的二进制数字码中填充0,直至达到第二扩展位数。例如,对于“上海”的数字码001,可在其高位填充0得到9位的扩展属性信息000 000 001。
然后,在本步骤中,例如可通过将扩展属性信息按预设间隔插入逆元,从而得到扩展随机数。例如,对于第二扩展位数为9的情况,在将9位扩展随机数插入32位的逆元时,可在32位逆元数中每隔3位插入9位扩展属性信息数中的一位,最终得到41位的扩展随机数。
在步骤440中,基于对扩展随机数与加密密码的预设操作生成目标位数内的ID。
基于步骤430得到的扩展随机数和步骤410获取的加密密码,可基于预设操作得到最终的ID。在一个实施例中,可基于对扩展随机数和加密密码进行异或运算来得到目标位数内的ID。
接续步骤410和430的示例,预设的与关联对象名称对应的加密字符串通过转换为整型,进而得到数字的加密密码,与步骤430得到的扩展随机数进行异或运算,得到全数字码,进而基于预设的较高进制来转换得到最终ID,以便于前端展示。由于在步骤420中第一和第二扩展位数都是根据目标位数查表得到,所以本步骤中最终可得到目标位数的ID。例如,在第一和第二扩展位数分别为32和9的情况下,对应的目标位数是41,转换为36进制时则为8位。
根据本发明实施例提供的ID生成方法,基于关联对象的加密密码以及扩展后的标识序号和属性信息来生成对象ID,在避免采用集中式维护ID池的同时起到了隐藏底层数据的效果,提高了数据处理的效率和安全性;通过多次扩展的打散操作以及结合加密,提高了最终生成ID的随机性,从而进一步增强数据的安全性。
图5是根据再一示例性实施例示出的一种ID生成方法的流程图。如图5所示,该方法可以由任意计算设备执行,可包括以下步骤510-560。
在步骤510中,响应于接收的ID生成请求,获取关联对象的标识序号、缩写、加密密码、地域信息及目标位数。
在接收到对象的ID生成请求时,步骤510可基于请求中携带的对象标识获取其对应的标识序号。在一个实施例中,标识序号可以包括预先为关联对象分配的唯一数字序号。例如,可以使用数据库的自增ID作为关联对象的标识序号。
另外,步骤510还可通过查询映射表得到上述关联对象的缩写、加密密码、地域信息及目标位数。
这里,以名称为rtb、地域属于广州的关联对象为示例,假设通过步骤510获取其标识序号为100,缩写为rtb,加密密码为vpcrtb,地域信息为0,目标位数为8。
在步骤520中,根据目标位数得到第一扩展位数、第二扩展位数及预设素数。
在一个实施例中,可预先存储不同的目标位数与第一扩展位数、第二扩展位数及对应预设素数的映射关系,一个示例如表1所示。
目标位数 | 对应二进制位数 | 预设素数 | 第一扩展位数 | 第二扩展位数 |
8 | 41 | 4294967029 | 32 | 9 |
9 | 46 | 68719476503 | 40 | 6 |
10 | 51 | 1000000005721 | 44 | 7 |
表1
接续前文示例,对于目标位数8,根据查询表1可得到与标识序号对应的第一扩展位数为32,与属性信息对应的第二扩展位数为9,对应的预设素数为4294967029。
在步骤530中,根据标识序号和预设素数信息,求得标识序号关于预设素数的逆元。
本步骤获取标识序号关于预设素数的逆元可以打散标识序号的原有编号规则,从而提高最终生成ID的随机性。在将预设素数设置为第一扩展位数内的最大素数时,对于小于该预设素数的标识序号都可求得唯一的逆元。
接续前文示例,对于标识序号100,求得其关于4294967029的逆元为1331439779。代入上文式(1)可知其满足如下式(2)。
100x 1331439779=1(mod 4294967029)…(2)
在步骤540中,将基于第二扩展位数扩展的地域信息打散至逆元中,得到扩展随机数。
将步骤510获取的地域信息扩展至第二扩展位数,再按预设间隔插入逆元中,可得到扩展随机数。
接续前文示例,对于地域信息0(对应广州),通过高位填充0将地域信息0扩展至9位,平均打散至逆元1331439779对应的二进制数1001111010111000010100010100011中,例如从低位到高位,每隔三位插入一位地域信息(共插入9个0),得到的二进制数为10011110010 0111 0000 0010 0100 0010 0100 0011 0(其中横线表示插入的0),对应十进制数为679913751686,即为扩展随机数。
在步骤550中,对扩展随机数与加密密码的整型数进行异或操作,并将结果转换成相应进制的字符串。
将步骤510获取的加密密码通过预设算法转换成整型,可与步骤540得到的扩展随机数进行异或运算,从而进一步提高不同对象之间ID的随机性。
接续前文示例,对于关联对象rtb的加密密码为vpcrtb,转换为整型数可得到结果为482704782434,与扩展随机数679913751686进行异或,得到的结果整型数为1022964986084,转换为36进制的字符串为d1xyxuxw。
在步骤560中,在字符串中添加关联对象的缩写得到最终的目标ID。
基于步骤550得到的字符串,步骤560在其中添加关联对象的缩写,可得到最终的目标ID。这样,在需要基于字符串解析出关联对象的标识序号时,可通过ID中的缩写查表得到所需的加密密码和地域信息,通过目标ID的位数查表得到对应的第一扩展位数、第二扩展位数及预设素数,从而基于步骤510-550的反向过程得到关联对象的标识序号。
接续前文示例,在得到的字符串d1xyxuxw基础上添加关联对象的缩写rtb,得到最终的目标ID例如为rtb-d1xyxuxw。
根据本发明实施例提供的ID生成方法,基于关联对象的加密密码以及扩展后的标识序号和属性信息来生成对象ID,在避免采用集中式维护ID池的同时起到了隐藏底层数据的效果,提高了数据处理的效率和安全性;通过多次扩展的打散操作以及结合加密,提高了最终生成ID的随机性,从而进一步增强数据的安全性。
图6是根据一示例性实施例示出的一种ID解析方法的流程图。如图6所示,该方法可以由任意计算设备执行,可包括以下步骤610-630。
在步骤610中,根据关联对象的目标ID,查询预设映射表获取对应的第一扩展位数及预设素数。
在一个实施例中,目标ID由关联对象的对象标识和扩展字符串组成,本实施例的目的在于,从扩展字符串反推得到关联对象的标识序号,从而使后台能够定位到对应的关联对象,以便于进行管理。
在一个实施例中,根据目标ID中的扩展字符串位数,可通过查询预设映射表得到与标识序号对应的第一扩展位数。相应的,可得到第一扩展位数内的最大素数作为这里的预设素数。
在步骤620中,根据获取的第一扩展位数,从目标ID中分离出关联对象的属性信息及逆元结果。
在一个实施例中,关联对象的扩展字符串中包括对标识序号进行扩展后的信息以及关联对象的属性信息,两种信息可通过预设规则生成最终的扩展字符串。相应的,根据步骤610中获取的第一扩展位,步骤620可基于该预设规则从扩展字符串中分离出属性信息及标识序号扩展后的信息。
在目标ID的生成过程中,本发明的实施例通过获取标识序号关于预设素数的逆元,来打散标识序号的原有编号规则。相应的,这里步骤620分离得到的标识序号扩展信息,即为获取标识序号关于预设素数的逆元结果。
在步骤630中,获取所述逆元结果关于预设素数的逆元,得到关联对象的标识序号。
根据上文式(1)可知,在将预设素数b设置为第一扩展位数内的最大素数时,对于1到b-1之间的标识序号都可求得唯一的逆元。相应的,在步骤620得到的逆元结果基础上,获取其关于预设素数的逆元,同样可得到唯一的标识序号。
上述实施例中的解析方法,与图3所示的ID生成方法实施例基本对应,其中各个步骤的具体实施方式已经在有关图3的实施例中进行了详细描述,此处将不做详细阐述说明。
根据本发明实施例提供的ID解析方法,基于关联对象的目标ID反推得到相应的标识序号及属性信息,在避免采用集中式维护ID池的同时起到了隐藏底层数据的效果,提高了数据处理的效率和安全性。
图7是根据另一示例性实施例示出的一种ID解析方法的流程图。如图7所示,该方法可以由任意计算设备执行,可包括以下步骤710-740。
在步骤710中,根据关联对象的目标ID,查询预设映射表获取对应的第一扩展位数、第二扩展位数、预设素数及加密密码。
在一个实施例中,目标ID由关联对象的对象标识和扩展字符串组成。
根据目标ID中的扩展字符串位数,可通过查询预设映射表得到与标识序号对应的第一扩展位数和与属性信息对应的第二扩展位数。相应的,还可得到第一扩展位数内的最大素数作为这里的预设素数。
接续,根据目标ID中的对象标识,也可通过查表得到对应的加密密码。
以图5实施例所描述示例中得到的目标ID rtb-d1xyxuxw为例,其中rtb为关联对象的缩写,d1xyxuxw则为基于标识序号和属性信息进行打散后的扩展字符串。基于关联对象的对象标识rtb,可查表得到其加密密码为vpcrtb。接续,由于36进制字符串d1xyxuxw的位数为8,因此通过查询表1可得到与标识序号对应的第一扩展位数为32,与属性信息对应的第二扩展位数为9,对应的预设素数为4294967029。
在步骤720中,对扩展字符串与加密密码的整型数进行异或操作,得到扩展随机数。
在ID生成方法的一个实施例中,目标ID中的扩展字符串是基于扩展随机数与加密密码的整型数异或得到。由于异或操作的特点,将扩展字符串再与加密密码的整型数进行异或,便可得到扩展随机数自身。
接续前文示例,对于扩展字符串d1xyxuxw,其对应整型数为1022964986084。将加密密码vpcrtb转换为整型数可得到结果为482704782434。对两个整型数进行异或,便可得到扩展随机数为679913751686。
在步骤730中,基于获取的第一扩展位数和第二扩展位数,从扩展随机数分离出属性信息及逆元结果。
在ID生成方法的一个实施例中,扩展随机数由关联对象的标识序号及属性信息两个扩展部分组成。基于步骤710查表得到的第一扩展位数和第二扩展位数,步骤730可根据生成ID时的组合规则,从扩展随机数中分离出属性信息及标识序号对预设素数求逆元的结果。
接续前文示例,对于扩展随机数679913751686,对应的二进制数为1001111 00100111 0000 0010 0100 0010 0100 0011 0(其中横线表示插入的0)。由于步骤710中得到的第一扩展位数和第二扩展位数分别为32和9,因此可分离得到标识序号的逆元结果为1001111010111000010100010100011,扩展后的属性信息为000000000。进一步,可得到逆元结果对应的十进制数为1331439779,属性信息为0(通过查表可得到对应于广州)。
在步骤740中,获取所述逆元结果关于预设素数的逆元,得到关联对象的标识序号。
根据上文式(1)可知,在将预设素数b设置为第一扩展位数内的最大素数时,对于1到b-1之间的标识序号都可求得唯一的逆元。相应的,在步骤730得到的逆元结果基础上,获取其关于预设素数的逆元,同样可得到唯一的标识序号。
接续前文示例,对于逆元结果1331439779,获取其关于预设素数4294967029的逆元,可得到标识序号为100。
上述实施例中的解析方法,与图5所示的ID生成方法实施例基本对应,其中各个步骤的具体实施方式已经在有关图5的实施例中进行了详细描述,此处将不做详细阐述说明。
根据本发明实施例提供的ID解析方法,基于关联对象的目标ID反推得到相应的标识序号及属性信息,在避免采用集中式维护ID池的同时起到了隐藏底层数据的效果,提高了数据处理的效率和安全性。
下述为本发明装置实施例,可以用于执行本发明上述ID生成方法或ID解析方法的实施例。对于本发明装置实施例中未披露的细节,请参照本发明ID生成方法或ID解析方法的实施例。
图8是根据一示例性实施例示出的一种ID生成装置的框图。如图8所示,该装置可实施为任意计算设备,并包括接收模块810、查询模块820和生成模块830。
其中,接收模块810用于响应于接收的ID生成请求,获取关联对象的标识序号及属性信息。
在一个实施例中,标识序号可以包括预先为关联对象分配的唯一数字序号。例如,可以使用数据库的自增ID作为关联对象的标识序号。
在一个实施例中,属性信息可以包括描述关联对象的时间、地域等属性的信息。例如,可以预先为各个地域分配对应的数字码,从而当前设备在收到ID生成请求时,可基于其来源IP地址或GPS坐标等信息来确定其所属地域,进而获取到相应的数字码作为属性信息。
查询模块820用于根据ID的目标位数,查询预设映射表得到与所述标识序号对应的第一扩展位数。
在一个实施例中,可使用较高的进制方式来表示最终生成的ID,从而实现在较短位数的情况下容纳尽可能多的ID。例如,在采用36进制来表达最终ID,并将目标位数设为8时,能够容纳的ID数可达到368=2,821,109,907,456个。
与最终生成的ID可能暴露给用户不同,本实施例的方法执行可完全在后台进行,所以这里标识序号的扩展位数可以是二进制的位数。以上述示例中368个ID的规模对应,二进制的位数为41(241=2,199,023,255,552),可将其中部分位数,例如32位分配给这里的标识序号作为第一扩展位数,剩余部分则分配给属性信息。
生成模块830用于获取所述标识序号关于预设素数的逆元,并基于所述逆元与所述属性信息生成所述目标位数内的ID,这里的预设素数包括所述第一扩展位数内的最大素数。
获取标识序号关于预设素数的逆元可以打散标识序号的原有编号规则,从而提高最终生成ID的随机性。在将预设素数b设置为第一扩展位数内的最大素数时,对于1到b-1之间的标识序号都可求得唯一的逆元。以上述第一扩展位数为32为例,其对应的最大整数为232=4,294,967,296,该范围内的最大素数为4,294,967,029。
在一个实施例中,响应于接收的ID生成请求,接收模块810还用于获取所述关联对象的加密密码。相应的,生成模块830用于根据所述逆元与所述属性信息获取扩展随机数,并基于对所述扩展随机数与所述加密密码的预设操作生成所述ID。例如,接收模块810可用于根据所述关联对象的对象名称,通过查表得到与所述对象名称对应的加密字符串,并将所述加密字符串转换为整型,得到所述加密密码。又例如,这里的预设操作可包括,对所述扩展随机数与所述加密密码进行异或操作得到全数字码,生成模块830进而基于预设进制将所述全数字码转换成所述ID。
在一个实施例中,查询模块820还用于查询所述预设映射表得到与所述属性信息对应的第二扩展位数。相应的,生成模块830用于根据所述第二扩展位数扩展所述属性信息,得到扩展属性信息,并将所述扩展属性信息按预设间隔插入所述逆元,得到所述扩展随机数。例如,生成模块830可在与所述属性信息对应的二进制数中填充0,直至达到所述第二扩展位数。
在一个实施例中,生成模块830可在基于所述逆元与所述属性信息生成的所述ID中,添加与所述关联对象对应的对象标识。
根据本发明实施例提供的ID生成装置,基于关联对象的属性信息以及扩展后的标识序号来生成对象ID,在避免采用集中式维护ID池的同时起到了隐藏底层数据的效果,提高了数据处理的效率和安全性。
图9是根据一示例性实施例示出的一种ID解析装置的框图。如图9所示,该装置可实施为任意计算设备,并包括查询模块910、分离模块920和解析模块930。
其中,查询模块910用于根据关联对象的目标ID,查询预设映射表获取对应的第一扩展位数及预设素数,这里的预设素数包括所述第一扩展位数内的最大素数。
在一个实施例中,目标ID由关联对象的对象标识和扩展字符串组成,本实施例的目的在于,从扩展字符串反推得到关联对象的标识序号,从而使后台能够定位到对应的关联对象,以便于进行管理。
在一个实施例中,根据目标ID中的扩展字符串位数,可通过查询预设映射表得到与标识序号对应的第一扩展位数。相应的,可得到第一扩展位数内的最大素数作为这里的预设素数。
分离模块920用于根据获取的第一扩展位数,从所述目标ID中分离出所述关联对象的属性信息及逆元结果。
在一个实施例中,关联对象的扩展字符串中包括对标识序号进行扩展后的信息以及关联对象的属性信息,两种信息可通过预设规则生成最终的扩展字符串。相应的,根据查询模块910获取的第一扩展位,分离模块920可基于该预设规则从扩展字符串中分离出属性信息及标识序号扩展后的信息。
在目标ID的生成过程中,本发明的实施例通过获取标识序号关于预设素数的逆元,来打散标识序号的原有编号规则。相应的,这里步骤分离模块920分离得到的标识序号扩展信息,即为获取标识序号关于预设素数的逆元结果。
解析模块930用于获取所述逆元结果关于所述预设素数的逆元,得到所述关联对象的标识序号。
根据上文式(1)可知,在将预设素数b设置为第一扩展位数内的最大素数时,对于1到b-1之间的标识序号都可求得唯一的逆元。相应的,在分离模块920得到的逆元结果基础上,获取其关于预设素数的逆元,同样可得到唯一的标识序号。
上述实施例中的解析装置,与图8所示的ID生成装置实施例基本对应,其中各个模块的具体实施方式已经在有关图8的实施例中进行了详细描述,此处将不做详细阐述说明。
根据本发明实施例提供的ID解析装置,基于关联对象的目标ID反推得到相应的标识序号及属性信息,在避免采用集中式维护ID池的同时起到了隐藏底层数据的效果,提高了数据处理的效率和安全性。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。作为模块或单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本发明实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (13)
1.一种识别码ID生成方法,其特征在于,所述方法包括:
响应于接收的ID生成请求,获取关联对象的标识序号及属性信息;
根据ID的目标位数,查询预设映射表得到与所述标识序号对应的第一扩展位数;以及
获取所述标识序号关于预设素数的逆元,并基于所述逆元与所述属性信息生成所述目标位数内的ID,
其中,所述预设素数包括所述第一扩展位数内的最大素数。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:响应于所述ID生成请求,获取所述关联对象的加密密码;
所述的基于所述逆元与所述属性信息生成所述目标位数内的ID,包括:
根据所述逆元与所述属性信息获取扩展随机数;以及
基于对所述扩展随机数与所述加密密码的预设操作生成所述ID。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:查询所述预设映射表得到与所述属性信息对应的第二扩展位数;
所述的根据所述逆元与所述属性信息获取扩展随机数,包括:
根据所述第二扩展位数扩展所述属性信息,得到扩展属性信息;以及
将所述扩展属性信息按预设间隔插入所述逆元,得到所述扩展随机数。
4.如权利要求3所述的方法,其特征在于,所述的根据所述第二扩展位数扩展所述属性信息,包括:在与所述属性信息对应的二进制数中填充0,直至达到所述第二扩展位数。
5.如权利要求2所述的方法,其特征在于,所述的获取所述关联对象的加密密码,包括:
根据所述关联对象的对象名称,通过查表得到与所述对象名称对应的加密字符串;以及
将所述加密字符串转换为整型,得到所述加密密码。
6.如权利要求2或5所述的方法,其特征在于,所述的基于对所述扩展随机数与所述加密密码的预设操作生成所述ID,包括:
对所述扩展随机数与所述加密密码进行异或操作得到全数字码;
基于预设进制将所述全数字码转换成所述ID。
7.如权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
在基于所述逆元与所述属性信息生成的所述ID中,添加与所述关联对象对应的对象标识。
8.如权利要求1-5任一项所述的方法,其特征在于,所述标识序号包括为所述关联对象维护的自增序号,所述属性信息包括与所述关联对象所处地域对应的数字标识。
9.一种识别码ID解析方法,其特征在于,所述方法包括:
根据关联对象的目标ID,查询预设映射表获取对应的第一扩展位数及预设素数;
根据获取的第一扩展位数,从所述目标ID中分离出所述关联对象的属性信息及逆元结果;以及
获取所述逆元结果关于所述预设素数的逆元,得到所述关联对象的标识序号,
其中,所述预设素数包括所述第一扩展位数内的最大素数。
10.一种识别码ID生成装置,其特征在于,所述装置包括:
接收模块,用于响应于接收的ID生成请求,获取关联对象的标识序号及属性信息;
查询模块,用于根据ID的目标位数,查询预设映射表得到与所述标识序号对应的第一扩展位数;以及
生成模块,用于获取所述标识序号关于预设素数的逆元,并基于所述逆元与所述属性信息生成所述目标位数内的ID,
其中,所述预设素数包括所述第一扩展位数内的最大素数。
11.一种识别码ID解析装置,其特征在于,所述装置包括:
查询模块,用于根据关联对象的目标ID,查询预设映射表获取对应的第一扩展位数及预设素数;
分离模块,用于根据获取的第一扩展位数,从所述目标ID中分离出所述关联对象的属性信息及逆元结果;以及
解析模块,用于获取所述逆元结果关于所述预设素数的逆元,得到所述关联对象的标识序号,
其中,所述预设素数包括所述第一扩展位数内的最大素数。
12.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1至8中任一项所述的ID生成方法或者根据权利要求9所述的ID解析方法。
13.一种电子设备,其特征在于,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现根据权利要求1至8中任一项所述的ID生成方法或者根据权利要求9所述的ID解析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810475694.2A CN108733802B (zh) | 2018-05-17 | 2018-05-17 | 识别码生成及解析方法、装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810475694.2A CN108733802B (zh) | 2018-05-17 | 2018-05-17 | 识别码生成及解析方法、装置、存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108733802A true CN108733802A (zh) | 2018-11-02 |
CN108733802B CN108733802B (zh) | 2023-03-24 |
Family
ID=63938623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810475694.2A Active CN108733802B (zh) | 2018-05-17 | 2018-05-17 | 识别码生成及解析方法、装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108733802B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111126002A (zh) * | 2019-10-01 | 2020-05-08 | 武汉数元网络技术有限公司 | 一种数据全局唯一性标识id的生成方法及系统 |
WO2021052029A1 (zh) * | 2019-09-17 | 2021-03-25 | 苏宁云计算有限公司 | 数据对象标识生成方法、装置、计算机设备和存储介质 |
CN112800476A (zh) * | 2021-03-25 | 2021-05-14 | 全球能源互联网研究院有限公司 | 一种数据脱敏方法、装置及电子设备 |
CN117473540A (zh) * | 2023-12-28 | 2024-01-30 | 北京天健源达科技股份有限公司 | 文件字符加密方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005012786A (ja) * | 2003-05-22 | 2005-01-13 | Matsushita Electric Ind Co Ltd | 著作権保護システム、べき乗剰余演算装置、演算装置、鍵管理装置、再生装置、記録装置、記録媒体、べき乗剰余演算方法、演算方法、及びプログラム |
US20060291661A1 (en) * | 2005-05-03 | 2006-12-28 | Ramzan Zulfikar A | Cryptographic authentication and/or establishment of shared cryptographic keys, including, but not limited to, password authenticated key exchange (PAKE) |
CN102484586A (zh) * | 2009-08-03 | 2012-05-30 | 日本电信电话株式会社 | 函数密码应用系统及方法 |
CN104919511A (zh) * | 2013-01-18 | 2015-09-16 | 三菱电机株式会社 | 数据解密装置、属性基密码系统、随机数要素去除装置、随机化秘密密钥生成装置、数据解密方法和数据解密程序 |
CN106230832A (zh) * | 2016-08-04 | 2016-12-14 | 北京大学 | 一种设备标识校准的方法 |
CN107528816A (zh) * | 2016-06-22 | 2017-12-29 | 中兴通讯股份有限公司 | 分布式数据库中id的处理方法、管理系统及服务器 |
-
2018
- 2018-05-17 CN CN201810475694.2A patent/CN108733802B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005012786A (ja) * | 2003-05-22 | 2005-01-13 | Matsushita Electric Ind Co Ltd | 著作権保護システム、べき乗剰余演算装置、演算装置、鍵管理装置、再生装置、記録装置、記録媒体、べき乗剰余演算方法、演算方法、及びプログラム |
US20060291661A1 (en) * | 2005-05-03 | 2006-12-28 | Ramzan Zulfikar A | Cryptographic authentication and/or establishment of shared cryptographic keys, including, but not limited to, password authenticated key exchange (PAKE) |
CN102484586A (zh) * | 2009-08-03 | 2012-05-30 | 日本电信电话株式会社 | 函数密码应用系统及方法 |
CN104919511A (zh) * | 2013-01-18 | 2015-09-16 | 三菱电机株式会社 | 数据解密装置、属性基密码系统、随机数要素去除装置、随机化秘密密钥生成装置、数据解密方法和数据解密程序 |
CN107528816A (zh) * | 2016-06-22 | 2017-12-29 | 中兴通讯股份有限公司 | 分布式数据库中id的处理方法、管理系统及服务器 |
CN106230832A (zh) * | 2016-08-04 | 2016-12-14 | 北京大学 | 一种设备标识校准的方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021052029A1 (zh) * | 2019-09-17 | 2021-03-25 | 苏宁云计算有限公司 | 数据对象标识生成方法、装置、计算机设备和存储介质 |
CN111126002A (zh) * | 2019-10-01 | 2020-05-08 | 武汉数元网络技术有限公司 | 一种数据全局唯一性标识id的生成方法及系统 |
CN112800476A (zh) * | 2021-03-25 | 2021-05-14 | 全球能源互联网研究院有限公司 | 一种数据脱敏方法、装置及电子设备 |
CN117473540A (zh) * | 2023-12-28 | 2024-01-30 | 北京天健源达科技股份有限公司 | 文件字符加密方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108733802B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108733802A (zh) | 识别码生成及解析方法、装置、存储介质和电子设备 | |
CN107580083A (zh) | 一种容器ip地址分配的方法和系统 | |
CN109375918A (zh) | 小程序的界面渲染方法、装置、电子设备和存储介质 | |
CN107819569A (zh) | 登录信息的加密方法及终端设备 | |
US9848064B2 (en) | Generation and distribution of named, definable, serialized tokens | |
CN110719345B (zh) | 虚拟机mac地址生成方法、系统、设备及计算机介质 | |
CN105357204A (zh) | 生成终端识别信息的方法及装置 | |
CN109447820A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN110958317A (zh) | 一种数据处理方法以及设备 | |
CN113282941A (zh) | 获取对象标识的方法、装置、电子设备及存储介质 | |
CN113822974A (zh) | 生成虚拟形象的方法、装置、电子设备、介质和程序 | |
CN109495266A (zh) | 基于随机数的数据加密方法及装置 | |
CN108777685A (zh) | 用于处理信息的方法和装置 | |
CN110795741A (zh) | 对数据进行安全性处理的方法和装置 | |
CN110019242A (zh) | 用于数据表的处理方法、装置和系统 | |
CN108399046A (zh) | 文件操作请求处理方法和装置 | |
CN114818000A (zh) | 隐私保护的集合混淆求交方法、系统及相关设备 | |
CN110222064A (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN109784084B (zh) | 数据交易方法、装置和系统 | |
CN108845892A (zh) | 分布式数据库的数据处理方法、装置、设备和计算机存储介质 | |
US20190147158A1 (en) | Secure password input in electronic devices | |
CN107231664B (zh) | 一种用于对用户设备进行流量控制的方法与设备 | |
CN111176830B (zh) | 信息流的分配方法、装置及服务器系统 | |
CN114491451A (zh) | 权限配置和验证的方法、装置、电子设备及存储介质 | |
CN110941497B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |