I think Pedersen commitments are a gentle starting point for teaching cryptography to anyone! A **commitment** is a sealed envelope with a message m in it such that: 1. no one can tell what m is in it (hiding) 2. no one can open it to a different m (binding) Pedersen below 👇
Commitments are very useful: e.g., randomness beacons. - Each player commits to a random message m_i - All players exchange their commitments C_i - All players open their commitments or they're penalized Final random value = sum of all opened m_i's (Problematic design, I know)
My point? Pedersen commitments have many applications. They are also v. simple: You need: 1. a prime-order group (e.g., elliptic curve) 2. two elements G, H in this group s.t. nobody knows the relation between them i.e., the discrete logarithm \tau of H w.r.t. G 👇
First, it is very easy to explain why the envelope is "binding": i.e., attacker cannot open it in two different ways. => it would allow the attacker to compute \tau, which is supposed to be very hard in (say) elliptic curves 👇
Note that binding holds only under a *computational* assumption. i.e., it is in fact *possible* to open the envelope to two different messages it's just *hard* to: such an algorithm would immediately give an algorithm that solves discrete logarithms faster than currently known.
Second, it is very easy to explain why the envelope is "hiding": i.e., no one can tell what m is inside. => because, really, Pedersen commitments are just polynomial commitments: committing to m using randomness r <=> committing to f(X) = m + Xr as C = f(tau) G 👇
Crucially, C hides f(X), and therefore hides (m, r), because there are a bazillion other polynomials f'(X) = m' + X r' with m' != m such that f'(tau) = f(tau). So, it could be that: - C commits to m as C = f(tau) G - C commits to m' also as C = f'(tau) G = f(tau) G Can't tell!
(FYI: "Bazillion" is a technical term for p, where p is the order of the group.) You can also guess what my next point was going to be... Pedersen commitments are a gateway drug into KZG commitments! () But that's for another time!
6,464
60
本页面内容由第三方提供。除非另有说明,欧易不是所引用文章的作者,也不对此类材料主张任何版权。该内容仅供参考,并不代表欧易观点,不作为任何形式的认可,也不应被视为投资建议或购买或出售数字资产的招揽。在使用生成式人工智能提供摘要或其他信息的情况下,此类人工智能生成的内容可能不准确或不一致。请阅读链接文章,了解更多详情和信息。欧易不对第三方网站上的内容负责。包含稳定币、NFTs 等在内的数字资产涉及较高程度的风险,其价值可能会产生较大波动。请根据自身财务状况,仔细考虑交易或持有数字资产是否适合您。