[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] manuscripts/Sigs article.rst poss.py
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] manuscripts/Sigs article.rst poss.py |
Date: |
Sun, 18 May 2003 03:52:24 -0400 |
CVSROOT: /cvsroot/gzz
Module name: manuscripts
Changes by: Tuomas J. Lukka <address@hidden> 03/05/18 03:52:24
Modified files:
Sigs : article.rst poss.py
Log message:
bmsig
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/manuscripts/Sigs/article.rst.diff?tr1=1.70&tr2=1.71&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/manuscripts/Sigs/poss.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
Patches:
Index: manuscripts/Sigs/article.rst
diff -u manuscripts/Sigs/article.rst:1.70 manuscripts/Sigs/article.rst:1.71
--- manuscripts/Sigs/article.rst:1.70 Sun May 18 02:57:58 2003
+++ manuscripts/Sigs/article.rst Sun May 18 03:52:24 2003
@@ -238,8 +238,14 @@
\parbox{\sw}{Reyzin one-way\cite{XXX} $(h,b,t,k)$ }
& $1$ & $b$ & $kh$ & $h$ & $h$ & $t$ & $?$ & $?+k$ \\
\parbox{\sw}{Bleichenbacher-Maurer\cite{XXX (ASIACRYPT)}
- (h, }
- & \\
+ (h, n)
+ }
+ & $1$ & $\lfloor\eta n\rfloor$
+ & $3(n+1)h $
+ & $h$
+ & $h$
+ & $9n+2$ & 0 & $9n+2 $
+ \\
\hline
\multicolumn{4}{l}{\hskip 2cm Derived schemes} \\
\hline
@@ -262,6 +268,8 @@
in order to form a signature.
In Reyzin and Reyzin's scheme, $t$ and $k$
must be chosen so that ${t \choose k} \ge 2^b$.
+ For Bleichenbacher-Maurer, XXX
+ `$\eta=\log 51 / \log 2$`.
The derived schemes use
as their basis another one-time signature scheme
$S'$ with the parameter octuplet
Index: manuscripts/Sigs/poss.py
diff -u manuscripts/Sigs/poss.py:1.2 manuscripts/Sigs/poss.py:1.3
--- manuscripts/Sigs/poss.py:1.2 Sun May 18 02:57:58 2003
+++ manuscripts/Sigs/poss.py Sun May 18 03:52:24 2003
@@ -12,6 +12,11 @@
fraction(b*(2L**n-1)+n, n),
fraction(b*(2L**n-1)+n, n))
+def bleichenbacher_maurer(h, n):
+ return (1, log(51)/log(2) * n,
+ 3*(n+1)*h, h, h,
+ 9*n+2, 0, 9*n+2)
+
def merkle_hashtree(n, S):
return (2L**n * S[0], S[1],
S[2] + S[3] + n * S[4],
@@ -42,12 +47,13 @@
def printscheme(S):
S = [unfract(s) for s in S]
+ #print S
print log(S[0]) / log(2), S[1], \
S[2]/8, S[3] / 8 , \
S[4], \
- log(S[5])/log(10), \
- log(S[6])/log(10), \
- log(S[7])/log(10)
+ log(S[5]+1)/log(10), \
+ log(S[6]+1)/log(10), \
+ log(S[7]+1)/log(10)
schemes = []
@@ -66,6 +72,14 @@
s
))
#printscheme(s)
+ s = (key_boosting(t,
+ merkle_hashtree(n,
+ bleichenbacher_maurer(160, 29))))
+ schemes.append( (
+ "KB%(t)sM%(n)sBM(160,29)" % locals(),
+ s
+ ))
+
#print "Lamport:"
s = (key_boosting(t,
merkle_hashtree(n,
@@ -76,25 +90,28 @@
))
#printscheme(s)
-for criteria in (
- (1, 0),
- (1, 10),
- (1, 100),
- (1, 1000)):
- m = None
- mv = 0
- def critf(s):
- return criteria[0] * log2(s[1][2]) + \
- criteria[1] * log10(sum(s[1][5:]))
- for s in schemes:
- if m == None or critf(s)<mv:
- m = s
- mv = critf(s)
- print "For ", criteria, m[0]
- printscheme(m[1])
+ for criteria in (
+ (1, 0),
+ (1, 10),
+ (1, 100),
+ (1, 1000)):
+ m = None
+ mv = 0
+ def critf(s):
+ return criteria[0] * log2(s[1][2]) + \
+ criteria[1] * log10(sum(s[1][5:]))
+ for s in schemes:
+ if m == None or critf(s)<mv:
+ m = s
+ mv = critf(s)
+ print "For ", criteria, m[0]
+ printscheme(m[1])
if 0:
printscheme(lamport(160,160))
for n in range(1, 17):
print "\nn = ",n
printscheme(merkle_winternitz(160,160,n))
+ for n in range(26, 32):
+ print "\nn = ",n
+ printscheme(bleichenbacher_maurer(160,n))
- [Gzz-commits] manuscripts/Sigs article.rst poss.py, Tuomas J. Lukka, 2003/05/18
- [Gzz-commits] manuscripts/Sigs article.rst poss.py,
Tuomas J. Lukka <=
- [Gzz-commits] manuscripts/Sigs article.rst poss.py, Benja Fallenstein, 2003/05/18
- [Gzz-commits] manuscripts/Sigs article.rst poss.py, Benja Fallenstein, 2003/05/18
- [Gzz-commits] manuscripts/Sigs article.rst poss.py, Tuomas J. Lukka, 2003/05/18
- [Gzz-commits] manuscripts/Sigs article.rst poss.py, Tuomas J. Lukka, 2003/05/18
- [Gzz-commits] manuscripts/Sigs article.rst poss.py, Tuomas J. Lukka, 2003/05/19