return 0 if signature != 0