returns the spamsum distance between ssA and ssB
    if they use a different block size, assume maximum distance
    otherwise returns the LevDistance

def SpamsumDistance(ssA, ssB):
    '''
    returns the spamsum distance between ssA and ssB
    if they use a different block size, assume maximum distance
    otherwise returns the LevDistance
    '''
    mA = re.match('^(\d+)[:](.*)$', ssA)
    mB = re.match('^(\d+)[:](.*)$', ssB)

    if mA == None or mB == None:
      raise "do not appear to be spamsum signatures"

    if mA.group(1) != mB.group(1):
      return max([len(mA.group(2)), len(mB.group(2))])
    else:
      return LevDistance(mA.group(2), mB.group(2))