CN101576919A - 标识生成方法和装置 - Google Patents
标识生成方法和装置 Download PDFInfo
- Publication number
- CN101576919A CN101576919A CNA2009100872485A CN200910087248A CN101576919A CN 101576919 A CN101576919 A CN 101576919A CN A2009100872485 A CNA2009100872485 A CN A2009100872485A CN 200910087248 A CN200910087248 A CN 200910087248A CN 101576919 A CN101576919 A CN 101576919A
- Authority
- CN
- China
- Prior art keywords
- message digest
- eap
- title
- mark
- name generator
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种标识生成方法,用于根据信息系统中的业务逻辑为数据实体生成唯一标识,包括以下步骤:根据信息系统的业务逻辑,设计用于所述信息系统的名称产生器;使用所述名称产生器为数据实体产生名称;以及使用消息摘要算法从由所述名称产生器产生的所述名称来产生消息摘要,并将所述消息摘要作为所述数据实体的唯一标识。同时,本发明还提出了一种标识生成装置。根据本发明的标识生成方法和装置解决了传统唯一标识生成方式中的业务不可预测性和伪随机性的问题,同时能从业务规则上确保标识的唯一性、长度固定、信息隐蔽等特征。
Description
技术领域
本发明涉及信息系统的标识生成方法,更具体地涉及,业务可预测的唯一标识生成方法。
背景技术
信息系统中需要用一个标识来对数据实体进行区别,这种标识称为唯一标识。唯一标识被广泛应用在数据库主键、对象标识、文件系统等各个领域。对唯一标识的主要要求是:唯一性、可控性、信息隐蔽性。其中唯一性要求两个不同的标识不能重复,可控性要求标识等长且长度不宜过分,信息隐蔽性要求标识不能暴露数据实体的物理意义。
信息系统中常见的唯一标识生成方式,通常是一个没有意义的随机ID,例如数据库产生的流水号,或GUID等。这种随机生成的方式优点在于:
长度固定,容易写入到数据库的主键字段中;
信息隐蔽,使用者无法通过该标识臆测其数据内容。
但这种方式的缺点也很明显:
业务不可预测性-相同的逻辑场景下无法生成相同的标识;
伪随机性-不同的信息来源可能有唯一性冲突。
以界面控件属性保存这一应用场景为例,如果用传统的随机标识,虽然能做到标识长度固定且标识不暴露控件信息,但缺点是同样界面下的同样控件先后产生的标识不一致,即业务不可预测性,而且不同界面的不同控件产生的标识也有冲突的可能性,即伪随机性,尽管这种可能性较小。
如果用控件的名称来做标识,则能依据界面路径的不同,通过命名规则来解决名称的唯一性和业务可预知性,同样界面下同样控件先后产生的名称肯定是完全一致的,而且不同界面的不同控件产生的名称不会冲突。这种做法虽然弥补了传统随机标识的缺陷,但名称的长度却难以控制。
因此,需要一种技术方案来解决传统唯一标识生成方式中的业务不可预测性和伪随机性的问题,同时能从业务规则上确保标识的唯一性、长度固定、信息隐蔽等特征。
发明内容
为了解决上述技术问题,本发明提供了一种标识生成方法,用于根据信息系统中的业务逻辑为数据实体生成唯一标识,包括以下步骤:根据信息系统的业务逻辑,设计用于所述信息系统的名称产生器;使用所述名称产生器为数据实体产生名称;以及使用消息摘要算法从由所述名称产生器产生的所述名称来产生消息摘要,并将所述消息摘要作为所述数据实体的唯一标识。
优选地,名称产生器所产生的名称的长度不限,用于保证不同的数据实体具有不同的名称。
优选地,消息摘要算法所产生的消息摘要具有固定长度。
优选地,消息摘要算法是单向散列算法。
优选地,单向散列算法是MD5/SHA1等通用算法。
根据本发明的另一方面,本发明还提供了一种标识生成装置,用于根据信息系统中的业务逻辑为数据实体生成唯一标识,包括:名称产生器,用于根据信息系统的业务逻辑,为数据实体产生名称;以及消息摘要产生器,连接到所述名称产生器,用于使用消息摘要算法从由所述名称产生器产生的所述名称来产生消息摘要,并将所述消息摘要作为所述数据实体的唯一标识。
优选地,名称产生器所产生的所述名称的长度不限,用于保证不同的数据实体具有不同的名称。
优选地,消息摘要产生器所产生的所述消息摘要具有固定长度。
优选地,消息摘要算法是单向散列算法。
优选地,单向散列算法是MD5/SHA1等通用算法。
附图说明
图1是示出了根据本发明的标识生成方法的流程图;
图2是示出了根据本发明的实施例的标识生成方法的示意图;
图3a和图3b以页面控件产生及控件属性持久化为例,分别示出了传统标识生成方法和根据本发明的标识生成方法的过程;
图4a和图4b以查询元素的其他属性为例,分别示出了传统标识生成方法和根据本发明的标识生成方法的过程;以及
图5是示出了根据本发明的标识生成装置的框图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1是示出了根据本发明的标识生成方法的流程图。如图1所示,在步骤S102中,根据信息系统的业务逻辑,设计用于所述信息系统的名称产生器;在步骤S104中,使用所述名称产生器为数据实体产生名称;以及在步骤S106中,使用消息摘要算法从由所述名称产生器产生的所述名称来产生消息摘要,并将所述消息摘要作为所述数据实体的唯一标识。
其中,名称产生器所产生的名称的长度不限,用于保证不同的数据实体具有不同的名称。消息摘要算法所产生的消息摘要具有固定长度。消息摘要算法是单向散列算法。例如,单向散列算法可以是MD5/SHA1等通用算法。
图2是示出了根据本发明的实施例的标识生成方法的示意图。如图2所示,首先,客户根据自己信息系统的实际情况,给出名称产生器202的具体实现。在此,名称产生器202产生的名称只要能区分不同数据实体,长度不限。
然后,唯一标识生成器调用客户实现的名称产生器202。
接下来,唯一标识生成器调用消息摘要算法204,对名称产生器202产生的名称进行消息摘要。
最后,返回消息摘要作为唯一标识。
在上述的实施例中,客户可以根据需要,自己实现名称产生器,名称的产生长度没有限制,可以根据需要确定名称的长度,为了尽可能不重复,可以选择足够长的名称长度。消息摘要的单向散列算法可以保证不同的名称生成的消息摘要不会重复,相同的名称生成的消息摘要相同。而且无论名称长度有多长,消息摘要单向散列算法产生的摘要长度是固定的。例如,本方案兼容常见的消息摘要单向散列算法,例如MD5/SHA1等。
图3a和图3b以页面控件产生及控件属性持久化为例,分别示出了传统标识生成方法和根据本发明的标识生成方法的过程。如图3a和3b所示,在图3a的传统方案中,如S306a所示,在内存运算中无法根据业务逻辑得知控件组建,必须通过一次数据库查询或者通过控件名称联查。而根据本发明的技术方案,如图3b中S306b所示,可以直接得到控件标识。并且,标识的可预测是单向的,即,业务场景通常是已知名称的前提下需要一个唯一标识。同时,不同的名称需要映射不同的唯一标识,不能有重复。因此,本方案采用了单向散列消息摘要算法,既保证了单向可预见性,也确保了唯一性,同时还不会暴露被标识对象的细节。
图4a和图4b以查询元素的其他属性为例,分别示出了传统标识生成方法和根据本发明的标识生成方法的过程。如图4a和4b所示,在图4a的传统方案中,如S404a所示,以位置、类型、名称作为条件查找该元素,速度很慢,为了提高速度,通常会在这些字段上建立索引。而根据本发明的技术方案,如图4b中S404b所示,可以以位置、类型、名称的组合作为“名称产生器”的具体实现,通过消息摘要算法直接得出元素的主键(唯一标识),查询以主键作为唯一条件,速度很快。
图5是示出了根据本发明的标识生成装置的框图。如图5所示,根据本发明的标识生成装置500包括:名称产生器202,用于根据信息系统的业务逻辑,为数据实体产生名称;以及消息摘要产生器204,连接到名称产生器202,用于使用消息摘要算法从由名称产生器202产生的名称来产生消息摘要,并将消息摘要作为数据实体的唯一标识。
在该装置中,名称产生器202所产生的名称的长度可以不限,用于保证不同的数据实体具有不同的名称。优选地,消息摘要产生器204所产生的消息摘要具有固定长度。
优选地,消息摘要算法是单向散列算法。单向散列算法可以是MD5/SHA1等通用算法。
综上,根据本发明提供的标识生成方法和装置,可以在产生页面控件的同时即知道其唯一标识,查询或存储控件必要的属性会减少一次数据库操作,或者可以避免通过名称去索引主键,从而提高编码和运行效率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种标识生成方法,用于根据信息系统中的业务逻辑为数据实体生成唯一标识,其特征在于,包括以下步骤:
根据信息系统的业务逻辑,设计用于所述信息系统的名称产生器;
使用所述名称产生器为数据实体产生名称;以及
使用消息摘要算法从由所述名称产生器产生的所述名称来产生消息摘要,并将所述消息摘要作为所述数据实体的唯一标识。
2.根据权利要求1所述的标识生成方法,其特征在于,所述名称产生器所产生的所述名称的长度不限,用于保证不同的数据实体具有不同的名称。
3.根据权利要求1或2所述的标识生成方法,其特征在于,所述消息摘要算法所产生的所述消息摘要具有固定长度。
4.根据权利要求3所述的标识生成方法,其特征在于,所述消息摘要算法是单向散列算法。
5.根据权利要求4所述的标识生成方法,其特征在于,所述单向散列算法是MD5/SHA1。
6.一种标识生成装置,用于根据信息系统中的业务逻辑为数据实体生成唯一标识,其特征在于,包括:
名称产生器,用于根据信息系统的业务逻辑,为数据实体产生名称;以及
消息摘要产生器,连接到所述名称产生器,用于使用消息摘要算法从由所述名称产生器产生的所述名称来产生消息摘要,并将所述消息摘要作为所述数据实体的唯一标识。
7.根据权利要求6所述的标识生成装置,其特征在于,所述名称产生器所产生的所述名称的长度不限,用于保证不同的数据实体具有不同的名称。
8.根据权利要求6或7所述的标识生成装置,其特征在于,所述消息摘要产生器所产生的所述消息摘要具有固定长度。
9.根据权利要求8所述的标识生成装置,其特征在于,所述消息摘要算法是单向散列算法。
10.根据权利要求9所述的标识生成装置,其特征在于,所述单向散列算法是MD5/SHA1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100872485A CN101576919B (zh) | 2009-06-19 | 2009-06-19 | 标识生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100872485A CN101576919B (zh) | 2009-06-19 | 2009-06-19 | 标识生成方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101576919A true CN101576919A (zh) | 2009-11-11 |
CN101576919B CN101576919B (zh) | 2011-12-07 |
Family
ID=41271853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100872485A Expired - Fee Related CN101576919B (zh) | 2009-06-19 | 2009-06-19 | 标识生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101576919B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103389898A (zh) * | 2013-07-22 | 2013-11-13 | 深圳市金立通信设备有限公司 | 一种管理移动终端软件的方法及移动终端 |
CN105718816A (zh) * | 2016-01-25 | 2016-06-29 | 四川虹慧云商科技有限公司 | 二维码支撑系统提高数据安全性的方法 |
CN103873226B (zh) * | 2014-04-02 | 2017-03-29 | 成都西山居互动娱乐科技有限公司 | 针对用户密码的随机混淆方法 |
CN108647193A (zh) * | 2018-04-20 | 2018-10-12 | 河南中烟工业有限责任公司 | 一种可应用于分布式系统的唯一标识符生成方法及装置 |
CN109218014A (zh) * | 2017-06-30 | 2019-01-15 | 北京国双科技有限公司 | 视频音频的处理方法、装置及系统 |
CN110493259A (zh) * | 2019-09-12 | 2019-11-22 | 江苏诺安科技有限公司 | 一种保障云端电子数据安全的加解密系统及方法 |
CN111666736A (zh) * | 2020-05-06 | 2020-09-15 | 中国石油天然气集团有限公司 | 一种井唯一身份标识方法及其共享装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1283827A (zh) * | 2000-08-18 | 2001-02-14 | 郝孟一 | 通用电子信息网络认证系统及方法 |
JP3778009B2 (ja) * | 2001-06-13 | 2006-05-24 | ソニー株式会社 | データ転送システム、データ転送装置、データ記録装置、データ管理方法 |
US20040083373A1 (en) * | 2002-10-28 | 2004-04-29 | Perkins Gregory M. | Automatically generated cryptographic functions for renewable tamper resistant security systems |
CN1741042B (zh) * | 2005-09-20 | 2011-12-28 | 北京市门吉利磁电工程研究所 | 基于数字签名的物品防伪保真信息及签名验证装置 |
-
2009
- 2009-06-19 CN CN2009100872485A patent/CN101576919B/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103389898A (zh) * | 2013-07-22 | 2013-11-13 | 深圳市金立通信设备有限公司 | 一种管理移动终端软件的方法及移动终端 |
CN103873226B (zh) * | 2014-04-02 | 2017-03-29 | 成都西山居互动娱乐科技有限公司 | 针对用户密码的随机混淆方法 |
CN105718816A (zh) * | 2016-01-25 | 2016-06-29 | 四川虹慧云商科技有限公司 | 二维码支撑系统提高数据安全性的方法 |
CN105718816B (zh) * | 2016-01-25 | 2019-01-18 | 四川虹慧云商科技有限公司 | 二维码支撑系统提高数据安全性的方法 |
CN109218014A (zh) * | 2017-06-30 | 2019-01-15 | 北京国双科技有限公司 | 视频音频的处理方法、装置及系统 |
CN108647193A (zh) * | 2018-04-20 | 2018-10-12 | 河南中烟工业有限责任公司 | 一种可应用于分布式系统的唯一标识符生成方法及装置 |
CN108647193B (zh) * | 2018-04-20 | 2021-11-19 | 河南中烟工业有限责任公司 | 一种可应用于分布式系统的唯一标识符生成方法及装置 |
CN110493259A (zh) * | 2019-09-12 | 2019-11-22 | 江苏诺安科技有限公司 | 一种保障云端电子数据安全的加解密系统及方法 |
CN111666736A (zh) * | 2020-05-06 | 2020-09-15 | 中国石油天然气集团有限公司 | 一种井唯一身份标识方法及其共享装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101576919B (zh) | 2011-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101576919B (zh) | 标识生成方法和装置 | |
KR102277289B1 (ko) | 블록체인 월드 스테이트 머클 패트리샤 트리 서브트리 구성 | |
CN109740317A (zh) | 一种基于区块链的数字指纹存证方法及装置 | |
KR20210092802A (ko) | 블록체인 네트워크를 통한 데이터의 효율적이고 안전한 처리, 접근 및 전송을 위한 시스템 및 방법 | |
JP4816281B2 (ja) | 文書利用管理システム、文書管理サーバ及びそのプログラム | |
US9189648B2 (en) | Data mapping using trust services | |
WO2017044180A1 (en) | Identifying software components in a software codebase | |
CN101572622B (zh) | 动态扩充资源元数据的实现方法 | |
US8799677B2 (en) | Encrypted search database device, encrypted search data adding/deleting method and adding/deleting program | |
CN108255915B (zh) | 一种文件管理方法、装置及机器可读存储介质 | |
CN109344269A (zh) | 图形数据库写入的方法、电子设备及计算机可读存储介质 | |
CN102427427A (zh) | 在哈希网络中查询解析服务器的方法及索引服务器 | |
CN113094334B (zh) | 基于分布式存储的数字服务方法、装置、设备及储存介质 | |
CN112307318A (zh) | 一种内容发布方法、系统及装置 | |
CN107979595B (zh) | 私有数据保护方法及网关系统 | |
CN110049133B (zh) | 一种dns区文件全量下发的方法和装置 | |
CN109947739A (zh) | 数据源管理方法及装置 | |
CN115129787A (zh) | 一种维护区块链数据的方法、装置、电子设备和存储介质 | |
US20110320927A1 (en) | Methods and Apparatus Utilizing XooML: Cross (X) Tool Markup Language | |
CN109376346B (zh) | 基于标签和视图的多终端电子文档编辑管理方法及系统 | |
CN101826035A (zh) | 一种应用程序间的通讯方法 | |
JP2009245196A (ja) | コンテンツ管理装置及び方法及びプログラム | |
CN111159197A (zh) | 一种数据存储方法、装置、设备及可读存储介质 | |
CN105009543A (zh) | 媒体项目的递送 | |
CN111339566B (zh) | 区块摘要方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee |
Owner name: YONYOU NETWORK TECHNOLOGY CO., LTD. Free format text: FORMER NAME: UFIDA SOFTWARE CO., LTD. |
|
CP01 | Change in the name or title of a patent holder |
Address after: 100094 Haidian District North Road, Beijing, No. 68 Patentee after: Yonyou Network Technology Co., Ltd. Address before: 100094 Haidian District North Road, Beijing, No. 68 Patentee before: UFIDA Software Co., Ltd. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20111207 Termination date: 20180619 |