120 likes | 309 Views
An Efficient Method for Finding Minimum Hash Chain of Multi-Payword Chains in Micropayment. Outline. Introduction Single-Payword Chain Multi-Payword Chain Preliminaries Strategies Example Comparison Conclusions Comments. Introduction. Rivest & Shamir 1997 Netpay 1999. Customer.
E N D
An Efficient Method for Finding Minimum Hash Chain of Multi-Payword Chains in Micropayment
Outline • Introduction • Single-Payword Chain • Multi-Payword Chain • Preliminaries • Strategies • Example • Comparison • Conclusions • Comments
Introduction • Rivest & Shamir 1997 • Netpay 1999 Customer Vendor 1. Pick wn 2. w0=hn(wn); wi=h(wi+1) Payword: {w0,w1,…,wn} S(w0) (i,wi) w’0=hi(wi)S(w’0)?=S(w0) Customer Broker Vendor IDC,n,IPV w0=hn(wn) EPKC({w0,w1,…,wn}) EPKV(S(IDC,w0)) IDC,(i,wi) w’0=hi(wi)S(w’0)?=S(w0) ※ EPK():PK FctS():Signature
Introduction: Multi-Payword Chain • Denomination: $1, $2, $3, $4, $5, $6 • Payword roots: {w10, w20, w30, w40, w50, w60} • wij=w(ij+1); j=n-1,n-2,…,0 & i=1,2,…,6 • Ex. $16 = • s1={w61,w62,w41} Length=3 • s2={w11,w12,w13,w14,w15,w16} Length=6 • Problems (Aim) • How to find the minimal hash chain such that the number of hash operations can be reduced as small as possible. Efficiency • How to let the payment be divided equally among every single chain in multi-payword chains such that every single chain has about equal length after each purchasing. Future Efficiency
Preliminaries (1/2) • :The number of partition of integer n’ into m parts • n’=a1+a2+a3+…+am • h’ ≧a1≧a2≧…≧am≧l’ • : • (b1,b2,…,bm)=(a1-(l’-1),a2-(l’-1),…,am-(l’-1)) • n=b1+b2+b3+…+bm =n’-m×(l’-1) • h=h’-l’+1 • h≧b1≧b2≧…≧bm≧1 • can be reduced to
Preliminaries (2/2) • Property 1: (or ) • Property 2: • Theorem 2.1. The mminof
Strategies • Aggressive mode • Find the smallest parts of partitions (mmin of ). • Keep the length of each payword chain as equal as possible from the partitions of step 1. • Minimal hash operations. • Payword chains with large denomination size will be used up quickly. • Balance mode • Select the partition results from all of the possible partitions (all possible values of m in ). • Keep the length of each payword chain as equal as possible from the possible partitions of step 1. • Obtain the length of multi-payword chains for one payment as small as possible • Spend each payword with the almost equal length. • Take more time
Example (1/2) • Four payword chains: $2, $3, $4, $5 Payment=$16 • Aggressive mode (b1,b2,b3,b4)=(a1+1, a2+1, a3+1, a4+1) • (5,4,4,3) {w11,w32,w41} • (5,5,4,2) {w11,w31,w42}
Example (2/2) • Balance mode • Keeping the length of each payword chain as equal as possible from Table 3.2. • (5,4,3,2,2) {w12,w21,w31,w42}
Conclusions • Propose a new partition problems. • Shows multi-payword chains with different values efficiently for Aggressive mode and Balance mode. • The original single payword chain with h value is a special case of our payword scheme when use the partition .
Comments • Implementation • Aggressive mode: 大面額優先使用 • Balance mode: 每一輪回中, 每種面額都儘可能的挑選 • Balance mode provide future efficiency • Total hash number won’t be changed • Do not define m=0 Ex. or set i begin with 1