Client Puzzle Protocol (CPP) is a computer algorithm for use in Internet communication, whose goal is to make abuse of server resources infeasible. It is an implementation of a proof-of-work system (POW).
The idea of the CPP is to require all clients connecting to a server to correctly solve a mathematical puzzle before establishing a connection, if the server is under attack. After solving the puzzle, the client would return the solution to the server, which the server would quickly verify, or reject and drop the connection. The puzzle is made simple and easily solvable but requires at least a minimal amount of computation on the client side.
CPPの考えは、サーバーが攻撃を受けている場合、接続を確立する前に、数学的パズルを正しく解くためのサーバーに全てのクライアントが接続することを要求するというものだ。パズルを解決した後、
クライアントはサーバーソリューションに戻り、サーバーはそのことをすばやく確認するか、または接続を拒否、中断する。パズルはシンプルで簡単に解けるように出来ているが、クライアント側には最低限の計算が必要になる。
サーバーが攻撃に晒されている場合、サーバーに接続する全てのクライアントに、接続を確立する前に、数学的パズルに正解することを要求するのがCPPのアイディアである。パズルを解いた後、クライアントはサーバーに解答を送り、サーバーはすぐに認証するか、接続を切断する。パズルは単純かつ簡単に解けるものであるが、少なくともクライアント側に最低限のコンピュータ計算を要求するものである。
CPPの考え方では、サーバーが攻撃をうけている場合、サーバーに接続しているすべてのクライアントに、接続を確立する前に正しく数学的なパズルを解くよう求めます。パズルを解いた後、クライアントがサーバーにその解答を返し、それをサーバーは速やかに確認するか、または拒絶して接続を中断します。パズルは単純になっていて容易に解けるものですが、クライアント側で少なくとも最小量の計算を行うことが必要です。
CPPの考え方は、サーバーが攻撃を受けている際、サーバーに接続しようとしている全てのクライアントは、接続を確立する前に数学的なパズルを正確に解くことを要求されることです。クライアントは、パズルを解いた後に回答をサーバー送り返し、サーバーはそれをすぐに確認するか、あるいは回答の受領を拒否し、接続を解除します。パズルは単純で簡単に解くことができますが、クライアント側では最低限の計算が必要となります。
Legitimate users would experience just a negligible computational cost, but abuse would be deterred: those clients that try to simultaneously establish a large numbers of connections would be unable to do so because of the computational cost (time delay). This method holds promise in fighting some types of spam as well as other attacks like Denial of Service.
Until 2009, Finney's system was the only RPOW system to have been implemented; it never saw economically significant use. In 2009, the Bitcoin network went online. Bitcoin is a proof-of-work cryptocurrency that, like Finney's RPOW, is also based on the Hashcash POW.
2009年以前は、Finneyのシステムが唯一の実行されたPROWシステムであったが、経済的見地からは有効なものではなかった。2009年、Bitcoinネットワークがオンラインに登場した。BitcoinはPOWの暗号通貨であり、FinneyのPROW同様、Hashcash POWに基づいている。
2009年以前はFinneyのシステムだけがRPOWシステムを実行していました。このシステムでは顕著な費用効果を見ることがありませんでした。2009年にBitcoinネットワークがオンラインになりました。BitcoinはFinneyのRPOWのようなPOWの暗号化された通貨でHashcash POWに基づいています。
But in Bitcoin double-spend protection is provided by a decentralized P2P protocol for tracking transfers of coins, rather than the hardware trusted computing function used by RPOW. Bitcoin has better trustworthiness because it is protected by computation; RPOW is protected by the private keys stored in the TPM hardware and manufacturers holding TPM private keys. Hackers who steal a TPM manufacturer key, or anyone capable of obtaining the key by examining the TPM chip itself, could subvert that assurance. Bitcoins are "mined" using the Hashcash proof-of-work function by individual nodes and verified by the decentralized P2P Bitcoin network.
Bitcoinは信憑性がある。なぜなら、計算によって保護されているからだ。RPOWはTPMハードウェア私有鍵と製造業者が保持するTPMによって保護されている。製造業者のTPMキーを盗んだハッカー、またはTPMクリップ自身を調べることにより有効なキーを獲得したのものは保証を失う。Bitcoinは独立したノードによるHashcash proof-of-work 関数を使い、分散化された P2P Bitcoin ネットワークによって確かめられた"鉱山"である。