2 from openid
.dh
import DiffieHellman
, strxor
12 ('abc', NUL
* 3, 'abc'),
13 ('x' * 10, NUL
* 10, 'x' * 10),
14 ('\x01', '\x02', '\x03'),
15 ('\xf0', '\x0f', '\xff'),
16 ('\xff', '\x0f', '\xf0'),
19 for aa
, bb
, expected
in cases
:
20 actual
= strxor(aa
, bb
)
21 assert actual
== expected
, (aa
, bb
, expected
, actual
)
27 (''.join(map(chr, xrange(256))),
28 ''.join(map(chr, xrange(128)))),
31 for aa
, bb
in exc_cases
:
33 unexpected
= strxor(aa
, bb
)
37 assert False, 'Expected ValueError, got %r' % (unexpected
,)
40 dh1
= DiffieHellman
.fromDefaults()
41 dh2
= DiffieHellman
.fromDefaults()
42 secret1
= dh1
.getSharedSecret(dh2
.public
)
43 secret2
= dh2
.getSharedSecret(dh1
.public
)
44 assert secret1
== secret2
53 f
= file(os
.path
.join(os
.path
.dirname(__file__
), 'dhpriv'))
54 dh
= DiffieHellman
.fromDefaults()
57 parts
= line
.strip().split(' ')
58 dh
._setPrivate
(long(parts
[0]))
60 assert dh
.public
== long(parts
[1])
69 if __name__
== '__main__':