# Ripple Inter Server Protocol built on a penalty system Ripple Inter Server Protocol single-user server. The penalty system is the logical conclusion of Ryan Fugger's idea from 2006 of a "late-receipt penalty rate". Ryan's idea solved the "stuck decision" issue when finishing the payment, but it required a new decision (the penalty rate) that could itself get stuck. To solve that "stuck decision" problem, another penalty is needed, one that enforces that the buyer will cancel the payment unless everyone agrees to start it. And, to avoid the buyer and seller both issuing cancel and "finish" at the same time, another decision is needed (the buyer revokes their right to cancel) and this desision can also get stuck and thus a penalty is needed to enforce its propagation. And to avoid one last "stuck decision" attack vector where the attacker is both the buyer and seller, the buyer also has to pay fees on top of the payment (these are only paid out if the payment gets stuck and they are paid out in proportion to how long the payment gets stuck. As long as the buyer is not the reason the payment got stuck the buyer also benefits as the attacker is paying for the payment).