通过一天的交流学习大概弄清了KZG10与Pairing的勾迹关系,对PCS也有了更进一步认识,这里记录一下它们之间的逻辑关系。Thanks感谢@KurtPan博和@miles的热心交流讨论,让我重新认识了“椭圆曲线group上的标量乘法”与“椭圆曲线group上的元素乘法
本节介绍如何让椭圆曲线点的坐标离散化。
本节主要说椭圆曲线的背景及基本性质。
本节将介绍如何使用离散域上椭圆曲线进行加密和解密过程。若果觉得阅读理解本文有困难,可以先参考之前的一些铺垫的历史文章。以后所说的椭圆曲线默认都是指离散域上模素数的椭圆曲线。
本节继续介绍离散域上椭圆曲线进行签名和验证过程,并加以实例说明。
本文主要介绍了VRF基于ECC公钥体制的证明验证过程, 基于前一文的基础,本篇顺理成章地说明了验证的内在逻辑,别的地方很难有这样的内在分析!
本文简要概述了爱德华曲线方程和有限域K上点运算,在参数d不是k平方的情况下,是完备的,即没有异常点以及相同点操作也是一致的(对比之前的椭圆曲线点加法规则(有无穷远点,相同点操作异与不同点),这样的性质可以增强对侧信道攻击(side channel attack)的抵御能力,同时点乘的效率也更高!
本文介绍了爱德华曲线运算的几何意义,引入了扭曲爱德华曲线。
本文介绍了蒙哥马利曲线和应用实例Curve25519,Curve25519得到广泛使用,其自身的长处简单说明,没有展开
Ed25519使用了扭曲爱德华曲线,签名过程和之前介绍过的Schnorr,secp256k1, sm2都不一样,最大的区别在于没有使用随机数,这样产生的签名结果是确定性的,即每次对同一消息签名结果相同。
本节扩展了一般椭圆曲线上密码协商的原理,原理更简单易于理解,接着讨论了大素数判定的方法,这是在密码学实现中普遍使用的方法,给出了简单的论证,并不详细
本文将介绍一种新的椭圆曲线实例-- Baby Jubjub Elliptic Curve。
以太坊是一个公共的区块链网络,可以通过各种不同类型的账户访问。与比特币类似,底层密码学用的是SECP256K1椭圆曲线。但这是什么意思呢?什么是账户?什么是密钥?什么是地址?为什么要校验checksum ?
有限域上的椭圆曲线是零知识证明的基础。零知识的实现是基于离散对数问题。从计算的角度来看,F_p是个有限域,在之基础上建立的椭圆曲线点的运算都是在这个域范围内。有限域上的椭圆曲线上有很多循环子群F_r,具有加法同态的特性。离散对数问题指的是,在循环子群上已知两点,却很难知道两点的标量。
开始鼓捣之前,我希望我知道的。 近年来,椭圆曲线BLS12-381逐渐火了起来。许多协议都将其应用到了数字签名和零知识证明中:Zcash、Ethereum 2.0、Skale、Algorand、Dfinity、Chia 等等。 不幸的是,现有的关于 BLS12-381 的资料里充满着晦涩的咒语,比如