CN103618602B - Novel skip list certification path generation method based on heap - Google Patents

Novel skip list certification path generation method based on heap Download PDF

Info

Publication number
CN103618602B
CN103618602B CN201310495388.2A CN201310495388A CN103618602B CN 103618602 B CN103618602 B CN 103618602B CN 201310495388 A CN201310495388 A CN 201310495388A CN 103618602 B CN103618602 B CN 103618602B
Authority
CN
China
Prior art keywords
node
label
value
heap
certification
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.)
Expired - Fee Related
Application number
CN201310495388.2A
Other languages
Chinese (zh)
Other versions
CN103618602A (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.)
Beijing Jiaotong University
Original Assignee
Beijing Jiaotong University
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 Beijing Jiaotong University filed Critical Beijing Jiaotong University
Priority to CN201310495388.2A priority Critical patent/CN103618602B/en
Publication of CN103618602A publication Critical patent/CN103618602A/en
Application granted granted Critical
Publication of CN103618602B publication Critical patent/CN103618602B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention relates to a novel skip list certification path generation method based on a heap. The method comprises the following steps: 1) a label value of each node in a certification skip list is calculated; 2) according to calculation of the label value of each node in the certification skip list, a heap is established; 3) based on the second step, from a root node of the heap, searching is carried out at the bottom, from top to bottom and from left to right, i.e. a leaf node with a level = 0, so as to obtain a search path; 4) based on the third step, according to the search path, a certification path node set corresponding a search node is obtained; and the certification path node set is a node set which is composed of brother nodes of each node on the search path; and 5) based on the fourth step, according to the certification path, the node to be searched is certified. The method of the invention can eliminate the unnecessary link in the skip list, and reduce the information redundancy.

Description

The new method that a kind of skip list certification path based on heap produces
Technical field
The present invention relates to information security field, the new method that more particularly to the skip list certification path based on heap produces, should For authentification of message field.
Background technology
Skip list is a kind of data structure that can effectively realize and ordered sequence is made a look up, and average lookup and renewal time is O (1og n), wherein n are the numbers of the word in dictionary.Skip list is made up of multiple chained lists, as shown in figure 1, skip list s is by 5 Chained list { s0,s1,s2,s3,s4Constitute.Each chained list si, 0≤i≤4, in storage two special elementses-∞ and+∞ and dictionary Partial Elements, element is in ascending order.Wherein ,-∞ will be little than the value of any element in this chained list, and+∞ is than in this chained list The value of any element will be all big.In addition, each chained list also has a following characteristic:
Chained list s0In comprise in dictionary all elements, wherein also include special elementses-∞ and+∞.Chained list si,i= 1 ..., h 1, in element be chained list si-1The subset of element, is from chained list si-1Middle random selection produces.Chained list shOnly wrap Containing two special element :-∞ and+∞.Wherein, h represents the height of skip list, and the height of Fig. 1 skip list is 5.
Skip list also can regard the set of the position of two dimension as: horizontal direction is the chained list of (levels) not at the same level, orlop It is level=0;Vertical direction is different towers (towers), wherein comprises the identical element on different stage, in each tower The element of top layer is referred to as plateau.Element position in skip list can be traveled through by following operation:
Right (p): return the right element of upper element p at the same level;
Left (p): return the left element of upper element p at the same level;
Down (p): return the next element of element p on same tower;
Above (p): return a upper element of element p on same tower.
As shown in figure 1, being original skip list.
As shown in Fig. 2 being the certification skip list building on the basis of original skip list.In certification skip list, each node is original Increase a label value label, the structure of each node is simplified as on the basis of skip list node:
Wherein, value represents the value of each node of original skip list, and on same tower, the value of nodes at different levels is the same.label Represent the label value that certification skip list increases newly, for certification, being calculated as follows of label value:
(1) for high order end node n, defining its label value is 0, i.e. label (n) :=0;
(2) the node n being 0 for level, then have two kinds of situations:
If a () its left end node is not a plateau node, its label value is the hash value of nodal value itself, that is, label(n)=h(value(n));
If b () its left end node is a plateau node, its label value be label (n)=h (value (n) | | label(left(n)));
(3) for level be not 0 node, also have two kinds of situations:
If a () its left end node is not a plateau node, its label value is the label value of next node, that is, label(n)=label(down(n));
If b () its left end node is a plateau node, its label value is label (n)=h (label (down (n))||label(left(n)));
How effectively to try to achieve each bottom layer node, i.e. the node of level=0, certification path be non-in certification skip list scheme An often important ring.At present, the calculating of certification path nodal value needs whether the left sibling of decision node is plateau node, Efficiency has much room for improvement.
Content of the invention
It is an object of the invention to proposing a kind of new method, produce the certification of certified node in certification skip list based on heap Path.The present invention, according to the property of heap, obtains the certification path of certified node in certification skip list.
The purpose of the present invention can be reached by following measures:
The new method that a kind of skip list certification path based on heap produces comprises the following steps:
1) calculate the label value of each node in certification skip list;
2) calculating according to node label value each in certification skip list, sets up heap;
3) on the basis of second step, from the beginning of the root node of heap, from top to bottom, from left to right to bottom, i.e. level=0 Leaf node scan for, obtain searching route;
4) the certification path set of node of corresponding search node on the basis of the 3rd step, is obtained according to searching route;Certification Path node collection is the node set being made up of the brotgher of node of node each in searching route;
5) on the basis of the 4th step, according to certification path, node to be searched for is authenticated.
The label value calculating each node in certification skip list in described step 1 concretely comprises the following steps:
101) for high order end node n, defining its label value is 0, i.e. label (n) :=0;
102) the node n being 0 for level, then have two kinds of situations:
If a () its left end node is not a plateau node, its label value is the hash value of nodal value itself, that is, label(n)=h(value(n));
If b () its left end node is a plateau node, its label value be label (n)=h (value (n) | | label(left(n)));
103) for level be not 0 node, also have two kinds of situations:
If a () its left end node is not a plateau node, its label value is the label value of next node, that is, label(n)=label(down(n));
If b () its left end node is a plateau node, its label value is label (n)=h (label (down (n))||label(left(n))).
In described step 2, from the beginning of level0, successively up, step is as follows for the foundation of heap:
201) for high order end node n, each node only one of which child nodes, that is,
rchild(n):=down(n);
202) the node n being 0 for level, then have two kinds of situations:
If a () its left end node is not a plateau node, its only one of which child nodes, i.e. rchild (n) := down(n);
If b () its left end node is a plateau node, it has two child nodes, i.e. lchild () :=left (n),rchild(n):=down(n);
203) for level be not 0 node, also have two kinds of situations:
If a () its left end node is not a plateau node, its only one of which child nodes, i.e. rchild (n) := down(n);
If b () its left end node is a plateau node, it has two child nodes, i.e. lchild () :=left (n),rchild(n):=down(n);
The tree set up according to above-mentioned rule, the characteristic that wherein all nodes have is: the value of each node is that it is left That larger value in right child, also referred to as big root heap.
When leaf node scans in described step 3, according to the characteristic of heap, proceed by lookup from root node et, step Suddenly it is:
301) if the value of the left and right child nodes of present node is all big than the value of node to be searched, past from left child nodes Under walk;
302) if the value of the left child nodes of present node is less than the value of node to be searched, walk downward from right child;
303) if the left child of present node does not exist, i.e. the right child nodes of only one of which, then walk downward from right child, root It is repeated according to this rule, till finding node to be searched.
The present invention has the advantage that compared to existing technology
1. heap is set up according to the calculating process of node label value each in certification skip list, eliminates unnecessary link in skip list, The redundancy of minimizing information.
2. the property according to heap starts to realize the search to certified node from root node.Method simple and clear it is easy to Understand.
Brief description
Fig. 1. it is original skip list schematic diagram.
Fig. 2. it is the calculating schematic diagram based on node label value each in the certification skip list of original skip list.
Fig. 3. it is the corresponding heap schematic diagram that the present invention sets up according to certification skip list.
Fig. 4. it is the searching route schematic diagram of m node in certification skip list of the present invention.
Fig. 5. it is that the mode of present invention heap represents the proof procedure schematic diagram to m node in certification skip list.
Specific embodiment
The new method implementation steps that a kind of skip list certification path based on heap of the present invention produces can be reached by following deployment Arrive:
The present invention will combine accompanying drawing and be described in further detail:
Fig. 2, Fig. 3, Fig. 4, Fig. 5 show the work process of the present invention.
As Fig. 2, shown in Fig. 3, the certification skip list of Fig. 2 is transformed into the heap shown in Fig. 3, i.e. the meter according to node label value Calculate, build heap on the basis of certification skip list.The foundation rule of heap is as follows:
(1) for high order end node n, each node only one of which child nodes, i.e. rchild (n) :=down (n);
(2) the node n being 0 for level, then have two kinds of situations:
If a () its left end node is not a plateau node, its only one of which child nodes, i.e. rchild (n) := down(n);
If b () its left end node is a plateau node, it has two child nodes, i.e. lchild () :=left (n),rchild(n):=down(n);
(3) for level be not 0 node, also have two kinds of situations:
If a () its left end node is not a plateau node, its only one of which child nodes, i.e. rchild (n) := down(n);
If b () its left end node is a plateau node, it has two child nodes, i.e. lchild () :=left (n),rchild(n):=down(n);
More intuitively say, the left sibling in Fig. 2 certification skip list is become left child, lower node becomes right child so that it may obtain To heap as shown in Figure 3.Leaf node rhombus currently to be authenticated in Fig. 3 represents, corresponding searching route thick frame, thick line Represent, the ellipse representation that corresponding certification path set of node is filled with oblique line.
This heap has the special feature that and is: the value of each node is that larger in child around value.According to this characteristic, Therefore, from root node etAccessed path rule to leaf node v1 is: (1) is if the value of left and right child nodes is all than section to be searched The value of point is big, then walk toward left child nodes;(2) if the value of left child nodes is less than the value of node to be searched, the child that turns right walks; (3) if left child does not exist, the child that turns right walks, till finding node to be searched.
As Fig. 3, shown in Fig. 4, in certification skip list to node searching process to be searched for it is: from root node etNode is opened Begin, (1), if the value of the left and right child nodes of present node is all big than the value of node to be searched, walks downward from left child nodes; (2) if the value of the left child nodes of present node is less than the value of node to be searched, walk downward from right child;(3) if working as prosthomere The left child of point does not exist, i.e. the right child nodes of only one of which are then walked downward from right child.It is repeated according to this rule, Till finding node to be searched.Such as, m node to be searched, then its accessed path represents for the thick line in Fig. 3, thick frame Searching route, the thick line square frame in corresponding Fig. 4 and thick-line arrow represent searching route.To m node in certification skip list in Fig. 4 Searching route, m to etPath be: { m, n, o, r, s, t, z0,et}.
As shown in figure 5, to entity authentication process to be authenticated being:
Known h15, the label value label (e of root node ett) and certification path { h35, q, l, z, st, corresponding to leaf Node h15Proof procedure be calculated as follows:
(1) label ' (m)=h (value (h15))
(2) label ' (n)=h (label ' (m) | | value (h35))
(3) label ' (o)=h (label ' (n))
(4) label ' (r)=h (label ' (o) | | label ' (q))
(5) label ' (s)=h (label ' (l) | | label ' (r))
(6) label ' (t)=h (' label (s))
(7) label ' (z0)=h(label’(t)||label’(z))
(8) label ' (et)=h(label’(st)||label’(z0))
The label ' (e that will calculatet) with storage label (et) be compared, if consistent then it represents that to node h15Corresponding Element certification success, otherwise, represent authentification failure.
It should be appreciated that above detailed description technical scheme being carried out by preferred embodiment is schematic And it is nonrestrictive.Those of ordinary skill in the art can be remembered to each embodiment on the basis of reading description of the invention The technical scheme carrying is modified, or carries out equivalent to wherein some technical characteristics;And these modifications or replacement, and Do not make the spirit and scope of the essence disengaging various embodiments of the present invention technical scheme of appropriate technical solution.

Claims (4)

1. a kind of skip list certification path based on heap produces new method it is characterised in that: comprise the following steps:
1) calculate the label value of each node in certification skip list;
2) rule is built according to node label value each in certification skip list and binary tree, set up the binary tree with heap property, that is, greatly Root heap;
3) on the basis of second step, from the beginning of the root node of heap, from top to bottom, from left to right to bottom, i.e. level=0 Leaf node scans for, and obtains searching route;
4) the certification path set of node of corresponding search node on the basis of the 3rd step, is obtained according to searching route;Certification path Set of node is the node set being made up of the brotgher of node of node each in searching route;
5) on the basis of the 4th step, according to certification path, node to be searched for is authenticated.
2. a kind of skip list certification path based on heap according to claim 1 produces new method it is characterised in that: described The label value calculating each node in certification skip list in step 1 concretely comprises the following steps:
101) for high order end node n, defining its label value is 0, i.e. label (n) :=0;
102) the node n being 0 for level, then have two kinds of situations:
If a () its left end node is not a plateau node, its label value is the hash value of nodal value itself, i.e. label (n)=h (value (n));
If b () its left end node is a plateau node, its label value be label (n)=h (value (n) | | label (left(n)));
103) for level be not 0 node, also have two kinds of situations:
If a () its left end node is not a plateau node, its label value is the label value of next node, i.e. label (n)=label (down (n));
If b () its left end node is a plateau node, its label value be label (n)=h (label (down (n)) | | label(left(n))).
3. a kind of skip list certification path based on heap according to claim 1 produces new method it is characterised in that: described In step 2, from the beginning of level 0, successively up, step is as follows for the foundation of heap:
201) for high order end node n, each node only one of which child nodes, that is,
Rchild (n) :=down (n);
202) the node n being 0 for level, then have two kinds of situations:
If a () its left end node is not a plateau node, its only one of which child nodes, i.e. rchild (n) := down(n);
If b () its left end node is a plateau node, it has two child nodes, i.e. lchild () :=left (n), Rchild (n) :=down (n);
203) for level be not 0 node, also have two kinds of situations:
If a () its left end node is not a plateau node, its only one of which child nodes, i.e. rchild (n) := down(n);
If b () its left end node is a plateau node, it has two child nodes, i.e. lchild () :=left (n), Rchild (n) :=down (n);
The tree set up according to above-mentioned rule, the characteristic that wherein all nodes have is: the value of each node is child around That larger value, also referred to as big root heap in son.
4. a kind of skip list certification path based on heap according to claim 1 produces new method it is characterised in that: institute When stating that in step 3, leaf node scans for, according to the characteristic of heap, proceed by lookup from root node et, step is:
301) if the value of the left and right child nodes of present node is all big than the value of node to be searched, from left child nodes down Walk;
302) if the value of the left child nodes of present node is less than the value of node to be searched, walk downward from right child;
303) if the left child of present node does not exist, i.e. the right child nodes of only one of which, then walk downward from right child, according to this Individual rule is repeated, till finding node to be searched.
CN201310495388.2A 2013-10-21 2013-10-21 Novel skip list certification path generation method based on heap Expired - Fee Related CN103618602B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310495388.2A CN103618602B (en) 2013-10-21 2013-10-21 Novel skip list certification path generation method based on heap

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310495388.2A CN103618602B (en) 2013-10-21 2013-10-21 Novel skip list certification path generation method based on heap

Publications (2)

Publication Number Publication Date
CN103618602A CN103618602A (en) 2014-03-05
CN103618602B true CN103618602B (en) 2017-01-25

Family

ID=50169306

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310495388.2A Expired - Fee Related CN103618602B (en) 2013-10-21 2013-10-21 Novel skip list certification path generation method based on heap

Country Status (1)

Country Link
CN (1) CN103618602B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664179A (en) * 1995-06-27 1997-09-02 Mci Corporation Modified skip list database structure and method for access
US5761501A (en) * 1995-10-02 1998-06-02 Digital Equipment Corporation Stacked skip list data structures
CN1270728A (en) * 1997-09-15 2000-10-18 埃弗内特集团股份有限公司 Method and system for fast routing lookups
CN101158980A (en) * 2007-12-04 2008-04-09 威盛电子股份有限公司 Multiple modes search method and system
CN101459672A (en) * 2008-12-26 2009-06-17 东北大学 Webpage content authentication system and method
US8375062B2 (en) * 2007-11-19 2013-02-12 Oracle America, Inc. Simple optimistic skiplist
CN103399902A (en) * 2013-07-23 2013-11-20 东北大学 Generation and search method for reachability chain list of directed graph in parallel environment
US8719307B2 (en) * 2010-04-23 2014-05-06 Red Hat, Inc. Concurrent linked hashed maps

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257711B2 (en) * 2001-11-08 2007-08-14 The Johns Hopkins University Efficient authenticated dictionaries with skip lists and commutative hashing

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664179A (en) * 1995-06-27 1997-09-02 Mci Corporation Modified skip list database structure and method for access
US5761501A (en) * 1995-10-02 1998-06-02 Digital Equipment Corporation Stacked skip list data structures
CN1270728A (en) * 1997-09-15 2000-10-18 埃弗内特集团股份有限公司 Method and system for fast routing lookups
US8375062B2 (en) * 2007-11-19 2013-02-12 Oracle America, Inc. Simple optimistic skiplist
CN101158980A (en) * 2007-12-04 2008-04-09 威盛电子股份有限公司 Multiple modes search method and system
CN101459672A (en) * 2008-12-26 2009-06-17 东北大学 Webpage content authentication system and method
US8719307B2 (en) * 2010-04-23 2014-05-06 Red Hat, Inc. Concurrent linked hashed maps
CN103399902A (en) * 2013-07-23 2013-11-20 东北大学 Generation and search method for reachability chain list of directed graph in parallel environment

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Skiplist-Based Concurrent Priority Queues;Nir Shavit, Itay Lotan;《2000 IEEE》;20001231;全文 *
基于有向哈希树的认证跳表算法;徐剑,陈旭,李福祥,周福才;《计算机科学》;20110930;全文 *
面向P2P 存储的分布式认证跳表;徐剑,周福才,李欣阳,朱志良;《东北大学学报(自然科学版)》;20120131;第33卷;全文 *

Also Published As

Publication number Publication date
CN103618602A (en) 2014-03-05

Similar Documents

Publication Publication Date Title
US20200380366A1 (en) Enhanced generative adversarial network and target sample recognition method
CN102938767B (en) The fuzzy keyword search methodology that efficiently can verify that based on the outer packet system of cloud data
Abraham et al. Routing in networks with low doubling dimension
CN101035023A (en) Network structure topology layout method and network management device
CN113297429B (en) Social network link prediction method based on neural network architecture search
Wang et al. GLASS: GNN with labeling tricks for subgraph representation learning
CN106909630A (en) Filtering sensitive words method and system based on dynamic dictionary
CN110084412A (en) A kind of photovoltaic power generation big data prediction technique based on the study of Feature Conversion multi-tag
US20150355215A1 (en) Approach to assess available wind resource distribution based on interpolation method
CN106549935A (en) A kind of isomery function equivalence body generating means and method
CN103092992B (en) Vector data elder generation based on Key/Value type NoSQL data base sequence quadtree coding and indexing means
CN103905254B (en) A kind of graph of a relation intelligent generation method based on communication equipment Port Connection Information
CN110675417B (en) Raster data fast vectorization method combining run length coding and edge tracking
Zhu et al. Hierarchical transformer for scalable graph learning
CN103618602B (en) Novel skip list certification path generation method based on heap
CN104008205A (en) Content routing inquiry method and system
CN108471382A (en) A kind of complex network clustering algorithm attack method based on node angle value
KR101376444B1 (en) Pattern mining method for searching tree on top-down traversal for considering weight in data stream
CN104750828A (en) Induction and deduction knowledge unconsciousness seal-learning method based on 6w rule
CN109686413A (en) A kind of chemical molecular formula search method based on es inverted index
CN107578136A (en) The overlapping community discovery method extended based on random walk with seed
CN1584932A (en) Optimizing method for image transfigure border side tracking
CN116432125A (en) Code classification method based on hash algorithm
CN104850716B (en) The optimal case system of selection of design Clustering Model is accessed based on distributed photovoltaic
CN106570017A (en) Data caching method and system

Legal Events

Date Code Title Description
PB01 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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170125

Termination date: 20171021

CF01 Termination of patent right due to non-payment of annual fee