ZKP Mathematical Building Blocks (2)

MIT IAP 2023 Modern Zero Knowledge Cryptography课程笔记

Lecture 3: Mathematical Building Blocks (Yufei Zhao)

  • Fiat Shamir heuristic
    • Turn an interactive proof to a non-interactive proof
    • P can simulate V
      • whenever V picks a random value
      • P can simulate V’s randomness by running a cryptographic hash function on the transcript so that P can’t cheat by choosing “favorable random challenges”
  • Elliptic Curve
    • y 2 = x 3 + A x + B y^2 = x^3 + Ax + B y2=x3+Ax+B

    • All points in a elliptic curve make a group
      在这里插入图片描述

    • g in the generator of the group G
      在这里插入图片描述

    • Difficult problem:

      • Discrete Log Problem on Elliptic Curve
        • Secret random x generated form Zq
        • Share with the public xG
        • It is hard to recover x from xG
      • Diffie-Hellman Key Exchange (Public key cryptography)
        • Alice takes a random a mod q
        • Bob takes a random b mod q
        • Alice says to the public: aG
        • Bob says to the public: bG
        • So, Alice and Bob share a secret: abG
  • Pairing based cryptography
    • Given cyclic groups G 0 , G 1 , G T G_0, G_1, G_T G0,G1,GT all same prime order q
    • a pairing is a nondegenerate bilinear map
      • e : G 0 × G 1 → G T e: G_0 \times G_1 \rightarrow G_T e:G0×G1GT
    • Properties
      • Bilinear
        • e(x+x’, y) = e(x,y) + e(x’,y)
        • e(x,y+y’) = e(x,y) + e(x,y’)
        • e(ax,y) = ae(x,y) + e(x,ay)
      • Nondegenerated
        • With generator g 0 ∈ G 0 g_0 \in G_0 g0G0 and g 1 ∈ G 1 g_1 \in G_1 g1G1
        • g T = e ( g 0 , g 1 ) ∈ G T g_T = e(g_0, g_1) \in G_T gT=e(g0,g1)GT
    • An application BLS signature scheme (Boneh-Lynn-Shacham)
      • Protocol
        • Keygen: s k = s sk = s sk=s, p k = s g pk = sg pk=sg
        • Sign(sk,m): σ = s H ( m ) \sigma = sH(m) σ=sH(m)
        • Verify(pk,m): check e ( p k , H ( m ) ) = e ( g , σ ) e(pk, H(m)) = e(g,\sigma) e(pk,H(m))=e(g,σ)
      • It can be extended to allow signature aggregation
        • The verifier can collect all the signatures and aggregate them into a single short signature.
        • The verifier can just verify the short signature then he knows that everyone signed their messages correctly.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/400556.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[转]在jQuery的each()函数中使用continue和break

jQuery的each函数可调用选择器得到的元素集进行循环调用。这意味着,每次执行传递进来的函数时,函数中的this关键字都指向一个不同的 DOM元素(每次都是一个不同的匹配元素)。而且,在每次执行函数时,都可以给…

JQuery--事件

一、鼠标事件 1、click 与 dbclick 用法一&#xff1a;<div id"test">点击触发<div>$("ele").click(function(){ // 点击元素&#xff0c;触发事件alert(触发指定事件) })$("#test").click(function(){ // this 指向div元素…

【AVR ASF4库函数学习笔记】一、使用Microchip Studio图形化配置工程

目录新建工程配置点灯效果平台&#xff1a;Microchip Studio (原Atmel Studio 7) 欣世纪 DMAVR-L Atmega 128A - AU 新建工程 选择所用的芯片后点击CREATE NEW PROJECT创建工程 配置 设置CPU 根据所用晶振设置频率 点灯示例&#xff1a; D7由PE7控制&#xff0c;低电平点…

Jenkins部署Web项目到远程tomcat

原网址&#xff1a;http://blog.sina.com.cn/s/blog_b5fe6b270102v7xi.html 之前讲到的是如何构建一个项目&#xff0c;并且将代码进行编译、打包&#xff0c;那么打包完成最后的结果就需要发布到应用服务器&#xff0c;将项目部署成功。在之前的项目中我们采用的shell脚本来部…

【Postgresql】use

http://www.jianshu.com/p/0ed65e630fd0 http://www.linuxidc.com/Linux/2013-12/94354.htm tag 是一个Array字段&#xff0c;判断是否包含时&#xff1a; select * from news where tag > {电影}; 转载于:https://www.cnblogs.com/colipso/p/7123488.html

【AVR ASF4库函数学习笔记】二、GPIO

目录枚举类型函数平台&#xff1a;Microchip Studio (原Atmel Studio 7) 欣世纪 DMAVR-L Atmega 128A - AU 头文件为port.h 枚举类型 enum port_pull_mode {PORT_PULL_OFF,PORT_PULL_UP, };enum port_dir {PORT_DIR_IN,PORT_DIR_OUT,PORT_DIR_OFF, };函数 X A\B\C\D\E\F\G…

web前端CSS2学习2017.6.22

十六 定位(position)position:static/fixed/relative/absolute/inhret1 static:正常文档&#xff0c;默认值&#xff0c;忽略top/bottom/left/right/z-index2 fixed:固定定位&#xff0c;脱离了文档流&#xff0c;以浏览器为坐标始&#xff08;浏览器的左上角位置&#xff09;终…

奔跑的小车……

转载于:https://www.cnblogs.com/hebaichuanyeah/archive/2013/06/07/3124244.html

【机器视觉学习笔记】OpenCV C++的安装、配置及多版本共存 (VS2015)

目录下载&#xff08;可选 —— 二选一&#xff09;添加环境变量新建项目和配置配置包含目录配置库目录添加库&#xff08;可选 —— 二选一&#xff09;添加dll文件的路径测试平台&#xff1a;Windows 10 20H2 Visual Studio 2015 OpenCV 2.4.13.6 本文参考自最新opencv-c安…

Java环境搭建若干问题

2019独角兽企业重金招聘Python工程师标准>>> 0.总体说明 本次搭建环境&#xff0c;为了偷懒&#xff0c;使用的是&#xff0c;阿里云镜像。 自带了Nginx、Tomcat、JDK等。 比较坑爹的是&#xff0c;虽然镜像带了很多安装好的软件&#xff0c;但是也有各种问题&#…

JAVASCRIPT 等比例缩放图片 限定最大宽度和最大高度

在Web上显示图片&#xff0c;通常都会有图片显示比例问题&#xff0c;如果不给<img />限制width和height&#xff0c;那么如果图片大了就会将整个页面挤乱&#xff0c;图片小了又会使图片失真。 1、预先定义好图片显示的标准宽度和高度。 2、如果图片的大小超过了…

【第一组】典型场景:学生选课时查看选课推荐,教师推荐

背景&#xff1a;&#xff08;1&#xff09; 典型用户&#xff1a;大三计算机系准备选课的张同学 &#xff08;2&#xff09; 用户需求&#xff0f;迫切解决的问题&#xff1a;想知道选哪个课程容易过&#xff0c;最终成绩较高&#xff0c;以及老师是否幽默风趣 &#xff0…

【机器视觉学习笔记】python安装OpenCV并设置自动补全及代码提示

目录安装测试设置自动补全及代码提示平台&#xff1a;Windows 10 20H2 Python 3.8.12 (default, Oct 12 2021, 03:01:40) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32 OpenCV 4.5.4.58 安装 本节内容引自使用pip安装Opencv —— xwc2 在要安装的环境内使用如下…

Android背景色渐变效果(shape,gradient) (转)

Android设置背景色可以通过在res/drawable里定义一个xml,如下&#xff1a; [代码]xml代码&#xff1a; <?xml version"1.0" encoding"utf-8"?> <shape xmlns:android"http://schemas.android.com/apk/res/android"> <gradie…

拖拽

列&#xff1a; 图片的拖拽html: (function(){var dorboxdocument.getElementById(dorbox);var dorbox1document.getElementById(dorbox1);var imgboxdocument.getElementById(imgbox);$(img).mousedown(function(){var id $(this).attr("id");var myimgdocument.ge…

IOS开发(104)之程序执行状态更改

1 前言 上节我们介绍了程序执行的状态&#xff0c;从例子中我们可以发现处理这些状态更改的时候有明确的策略可以遵循&#xff0c;这次我们就来介绍一下。 2 详述 2.1 活动-》不活动 使用applicationWillResignActive:/UIApplicationWillResignActiveNotification来“暂停”应用…

C语言字符串数字提取函数,支持负数、浮点数、科学记数法

目录效果普通数字小数科学记数法源码平台&#xff1a; STC89C52 Keil uVision V5.29.0.0 PK51 Prof.Developers Kit Version:9.60.0.0 效果 这里以51单片机为例&#xff0c;对串口接收的字符串中的第三个数进行解码&#xff1a; 普通数字 小数 科学记数法 源码 /* * Str2N…

分享代码参数说明

微博&#xff0c;qq好友&#xff0c;qq空间分享代码参数说明&#xff1a; // 分享到新浪 ralateUid是微博账号id $(#sina).click(function(){window.open(http://service.weibo.com/share/share.php?url shareUrl &typeicon&ralateUid5547347718&languagez…

eclipse编译hadoop插件

2019独角兽企业重金招聘Python工程师标准>>> 准备 eclipse ant1.8.0 hadoop1.2.1 src 步骤 1. 修改/home/hadoop/hadoop-1.2.1/src/contrib/build-contrib.xml 修改hadop.root值为实际的hadoop根目录 <property name"hadoop.root" location"…

【51单片机快速入门指南】1:基础知识和工程创建

目录简介命名规则51单片机的数据类型总表扩展数据类型stdint.h存储器类型关键字烧录工具工程的创建创建项目添加C文件配置工程存储模式配置输出配置代码优化配置编译烧录普中51-单核-A2 STC89C52 Keil uVision V5.29.0.0 PK51 Prof.Developers Kit Version:9.60.0.0 简介 51…