canonical versions of sigencode methods
these enforce low S values, by negating the value (modulo the order) if above order/2