Commitment algorithms.