ZKP16 Hardware Acceleration of ZKP

2023-11-07 10:15

本文主要是介绍ZKP16 Hardware Acceleration of ZKP,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ZKP学习笔记

ZK-Learning MOOC课程笔记

Lecture 16: Hardware Acceleration of ZKP (Guest Lecturer: Kelly Olson)

  • The What and Why of Hardware Acceleration

    • Hardware acceleration is the use of dedicated hardware to accelerate an operation so that it runs faster and/or more efficiently.
    • Hardware acceleration can involve optimizing functions and code to use existing hardware (COTS) or it may involve the development of new hardware designed for a specific task.
      • COTS (commercially available off-the-shelf) hardware includes CPUs, GPUs, and FPGAS
      • Custom hardware is often referred to as an ASIC
    • Examples
      在这里插入图片描述
  • Hardware acceleration for crytpo
    在这里插入图片描述

  • Why HW acceleration for ZKP

    • ZK (and non-ZK) proof generation has high overheads relative to native computation
  • Goals of HW acceleration for ZKP

    • Throughput: increase the number of operations per system
    • Cost: reduce the cost of operation e.g. Bitcoin mining rigs are designed to reduce capital expenses ($/hash) and operational expenses (watts/hash)
    • Latency: reduce the time of an individual operation e.g. 2kBridges may want to reduce the proof generation time for faster finality
  • Key Computational Primitives of ZKP

    • Each proof system, and associated implementation will have slightly different computational requirements.

    • Across a variety of proof systems these are three of the most computationally expensive operations

      • Multiscalar Multiplication (MSM)
        • A ‘dot product’ of elliptic curve points and scalars

        • Easily paralledizable

        • Optimization
          在这里插入图片描述

          • When performing a MSM off of the host device, the scalars and sometimes points must be moved to the accelerator. The available communication bandwidth limits the maximum possible performance of the accelerator.
      • Number Theoretic Transformation (NTT)
        • Common algorithms like Cooley-Tukey reduce complexity from O ( N 2 ) O(N^2) O(N2) to O ( N I o g N ) O(NIogN) O(NIogN)
        • Not Easily paralledizable
        • Furthermore, these elements must be kept in memory to be operated on, imposing high memory requirements
      • Arithmetic Hashes (e.g., Poseidon)
    • SNARK V.S. STARK
      在这里插入图片描述

      • The MSM, NTT and Hashes take 2/3 or more time in the proving system
    • Foundational Primitive: Finite Field Arithmetic (especially ModMul)

  • Hardware Resources Required

    • Determining Computational Cost
      在这里插入图片描述

    • Selecting the Right Hardware

      • Given that these workload are driven predominately by modular multiplication, we should look for platforms can perform a large number of multiplications, quickly and cheaply
      • Estimated HW performance can be evaluated by looking at # of hardware multipliers, size of hardware multipliers, and speed/frequency of each instruction
      • Examples
        在这里插入图片描述
    • Two Key Components to HW Acceleration

      • ‘HW friendly’ Algorithm
      • Efficient Implementation
  • Limits of Acceleration
    在这里插入图片描述

    • Acceleration Pitfalls
      在这里插入图片描述

    • Production Examples: Filecoin
      在这里插入图片描述

  • Current Status of Hardware Acceleration
    在这里插入图片描述

  • Future Directions for Hardware Acceleration
    在这里插入图片描述

这篇关于ZKP16 Hardware Acceleration of ZKP的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/362943

相关文章

加密学中的零知识证明(Zero-Knowledge Proof, ZKP)到底是什么?

加密学中的零知识证明(Zero-Knowledge Proof, ZKP)到底是什么? 引言 在加密学的应用中,零知识证明(Zero-Knowledge Proof, ZKP)无疑是一颗璀璨的明星。它不仅挑战了我们对信息验证的传统认知,更在保护隐私的同时确保了数据的真实性,为数字货币、身份验证、安全通信等多个领域带来了革命性的变革。本文将深入探讨零知识证明的原理、关键技术、应用场景以及未来

How to maintenance Operating System and Hardware Optimization

1.What Limits MySQL's Performance? CPU saturationI/O saturation 2.How to Select CPUs for MySQL? two goals for your server: Low latency(fast response time)High throughput 3.How to balancing Memory

硬件过剩 Hardware redundancy ——互联网主导的过程之一

目前桌面级的顶级CPU是Intel酷睿 5820K 然而一年后呢?三年后呢?五年后呢?十年!!十五年!!         如果您或者您的朋友上网仅仅是为了浏览网页、简单的游戏,您需要四核;六核吗?需要3.6GHz超频吗? 各种硬件的数据都在网上平行对比着,不可能凭空捏造,也不能跨代发展。这就给网上的用户一个错误的暗示,当前追求购买的物品,真实的物品应该是排名靠前的硬件

从硬件角度看操作系统发展轨迹——From a hardware perspective operating system trajectory

操作系统理论是在计算机的应用中诞生并成长的,它的发展与计算机硬件的发展是密不可分的。下表是从硬件角度看操作系统的发展轨迹。   年  代 硬 件 特 点 操作系统特点 背  景 机械计算机时代(17世纪~20世纪初) ① 纯机械结构,低速 ② 只能进行简单的数学运算 纯手工操作 从计算尺到差分机再到分析机发展了数百年 第一代计算机(1946年

android camera: android.hardware.camera2向下和camera service

android.hardware.camera2向下和camera service的通信是通过mCameraService和mRemoteDeviceframeworks/base/core/java/android/hardware/camera2/ /** * A per-process global camera manager instance, to retain a connect

Android camera: android.hardware.camera2 package

frameworks/base/core/java/android/hardware/camera2/CameraManager.java android.hardware.camera2包为每个连接到android device的camera device提供一个接口; android.hardware.camera2用于取代android.hardware.Camera The

VoiceEngine之voice hardware Demo

Target:  利用webrtc  voice engine 获取音频媒体设备信息 点击(此处)折叠或打开 #include "webrtc\voice_engine\include\voe_base.h" #include "webrtc\voice_engine\include\voe_hardware.h" #include "webrtc\voice_engine\in

ubuntu20.04安装UHD(USRP Hardware Driver) v3.15 + GNURadio v3.8.1 (20200818)

ubuntu20.04安装UHD(USRP Hardware Driver) v3.15 + GNURadio v3.8.1 (20200818) 本文主要参考: https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux 1 更新和安装依赖项

Intel处理器7z/XZ遇到 The failure in hardware

最近在使用Intel 12700H混合架构处理器的时候,一旦使用7z或者XZ算法压缩东西就会出现如下的报错: Internal Error: The failure in hardware (RAM or CPU), OS or program 在检查排除了内存、磁盘和OS的问题后,最终确定为Intel CPU的问题,且貌似不止我一个人遇到了相关的问题: 头一次遇到intel CPU 故