Package: hashcash Version: 1.21-1 According to the documentation, the hashcash binary supports the '-b bits' switch and argument for calculating a hashcash token of the size specified. The default size is 20 bits. The '-b' switch argument supports an exact size, say '-b 40' for minting a 40 bit token, or incrementing/decrementing the size from default, such as '-b +10' to create an additional 10 bits from default (20). This should create a token of 30 bits in size. Same holds for decrementing.
Consider the following example: $ hashcash -m foo -Z 2 hashcash token: 1:20:110321:foo::oMOAOyoyMfeKOPg7:5z7t As per the 2nd column of the token, the default of 20 bits was used. Let's increase to 30 bits: $ hashcash -m foo -b 30 -Z 2 hashcash token: 1:20:110321:foo::DPuJxVpBd5hjE+WX:7CR2 The 2nd colomn shows that only 20 bits were calculated, versus the 30 that I requested. This can be verified with SHA1 showing that the first 20 bits are zero, not the first 30: $ echo -n 1:20:110321:foo::DPuJxVpBd5hjE+WX:7CR2 | sha1sum 00000239da10b8f4cf3aadd15d62b2d0c261dc82 - The same bug exists for incrementing and decrementing the bit size. The 2nd column should convey the bit size that I requested with '-b bits' and verifying with SHA1 should show the firt few bits as zero, as specified. Compare with a 44 bit token found at http://hashcash.org/stamps/: $ echo -n 1:44:070217:foo::xSi0bPjoswUh6h1Y:TMNI7 | sha1sum 000000000005ae959bd508c19ba300b1088410aa - This is a Debian GNU/Linux unstable operating system running with: 2.6.37-1-686 #1 SMP Tue Feb 15 18:21:50 UTC 2011 i686 GNU/Linux With C library version: Version: 2.11.2-11 -- . o . o . o . . o o . . . o . . . o . o o o . o . o o . . o o o o . o . . o o o o . o o o
signature.asc
Description: Digital signature