在Web3的架构中,存在一个核心矛盾:区块链网络是完全透明公开的,但现代数字社会又亟需保护个人和机构的数据隐私。零知识证明(ZKP)正是解决这一矛盾的“密码学魔法”。它允许一方向另一方(或全网)证明某个陈述是“真实的”,而无需透露该陈述背后的任何具体信息。简单说,就是实现了“我知道一个秘密,并且我能向你证明我知道它,但你绝不会从我这里知道这个秘密是什么”。
🧙♂️ 魔法原理:三扇门的故事
经典的“阿里巴巴洞穴”比喻可以解释其精髓:
设想一个环形洞穴,只有一句咒语能打开深处的门。佩吉(证明者)对维克多(验证者)声称她知道咒语。维克多站在洞口,佩吉走进去,随机选择从左或右进入深处。维克多随后走进洞口,随机喊“左”或“右”,要求佩吉从指定方向出来。如果佩吉真的知道咒语,她总能从正确的方向出现。重复此实验足够多次,如果佩吉每次都能通过,维克多就能在从未听到咒语的前提下,以极高概率相信佩吉确实知道咒语。这就是“零知识”。
在数学和密码学中,ZKP(如zk-SNARKs)将这个思想转化为复杂的计算问题,使得验证过程可以高效、可靠地完成。
✨ 革命性价值:从“全盘托出”到“最小化披露”
ZKP带来了全新的信任范式:
选择性透明 ✨:你不再需要在“完全公开”和“绝对保密”之间二选一。你可以只证明对你有利的、必须验证的“结论”(如“我的账户余额足够”、“我年满18岁”、“我是这个社区的合法成员”),而隐藏所有其他细节(具体余额、出生日期、你的身份ID)。
隐私成为默认设置 🛡️:在数字交互中,隐私不再是昂贵的附加功能,而是可以内置的基础属性。这为个人数据和商业机密在链上协作提供了可能。
可验证的计算外包 ⚡:ZKP允许一个计算能力较弱的设备,将复杂计算任务外包给第三方,并快速验证其结果的正确性,而无需自己重算。这为区块链的可扩展性(如zk-Rollups)和跨链验证打开了大门。
🚀 应用场景:开启隐私保护新维度
ZKP的应用正从理论走向广阔的实用领域:
身份与凭证验证 🪪:如前所述,你可以向平台证明你拥有某国驾照(有驾驶资格),而无需出示包含住址、身份证号等所有信息的实体驾照副本。这从根本上杜绝了信息过度收集。
知识的证明与交易 💡:研究者可以证明自己已掌握某个问题的解决方案(或拥有某类数据),以确立优先权或进行协作谈判,而无需立即公开全部解决方案,保护了知识产权。
游戏与公平系统 🎲:在链上游戏中,你可以向系统证明你的操作符合规则(如“我这一步是合法的”),或参与一个抽奖并证明自己中奖,而无需公开你的具体策略或随机种子,防止被他人预测和利用。
企业与企业协作 🤝:竞争或合作的公司可以共同验证某些聚合数据(如“两家公司的总市场份额超过50%”),而无需向对方或公众披露各自的精确核心商业数据。
💎 未来展望
零知识证明被誉为Web3乃至整个数字世界的“终极隐私层”。它不仅是技术工具,更代表了一种理念的进化:在一个日益互联和数据驱动的世界里,我们应该且能够在不牺牲隐私的前提下,建立可靠的信任与协作。它让信任不再依赖于“看见一切”,而是基于密码学保证的、最小化的、精确的“证明”。这项技术正从深奥的密码学论文中走出,成为构建一个更尊重个体、更安全的数字未来的关键基石。
维铂叁(Web3)是一家聚焦于区块链与数字资产领域法律前沿的专业研学与能力发展机构。我们专注于为律师、企业法务及司法从业者,提供该领域的系统性知识更新、实务技能研习与合规思维赋能。
在Web3技术浪潮与全球监管格局快速演进的背景下,我们深知法律人面临的挑战与机遇。维铂叁的核心价值在于 “前沿洞察、实务研习、生态链接” ,致力于搭建一个连接学界智慧与实务经验的跨界交流平台。
我们的课程与研学内容,由来自顶尖法学院校的学者,以及在该领域拥有丰富实践经验的专家共同设计研发。内容涵盖技术原理、全球监管动态比较、典型司法案例剖析及创新业务模式观察等多个维度,旨在帮助法律从业者构建系统性的知识框架,提升在该新兴领域的专业研判能力。
维铂叁坚信,专业的价值在于持续学习与深度思考。我们的使命是陪伴法律职业群体,在数字经济的变革中,夯实专业根基,拓展认知边界,以更完备的知识储备应对未来的挑战,共同促进区块链技术在合规框架内的创新与应用。
相关推荐
【隐私计算笔谈】MPC系列专题(六):零知识证明和比特承诺
【隐私计算笔谈】MPC系列专题(六):零知识证明和比特承诺 文章目录【隐私计算笔谈】MPC系列专题(六):零知识证明和比特承诺零知识证明比特承诺 零知识证明 交互式证明系统由两方参与,分别为证明者( Prover )和验证者( Verifier ) 。证明者掌握某一秘密,证明者需要让验证者相信自己掌握该秘密。 交互式证明过程需要多轮,最典型的是每一轮验证者向证明者发送一个询问信息( 挑战,Challenge ),证明者对询问信息进行计算,并回复信息响应( Response )。 验证者根据证明者每一
揭秘Open-AutoGLM的零知识证明应用:如何实现模型透明与数据保密双赢?
揭秘Open-AutoGLM如何通过零知识证明实现模型透明与数据保密双赢,涵盖金融、医疗等敏感场景应用。基于Open-AutoGLM隐私保护机制领先性分析,展现其在保障推理可验证的同时实现数据不可见的关键优势,技术前沿值得收藏。
零知识证明:应用和具体用例
零知识证明(Zero-KnowledgeProofs,ZKPs)是应用密码学中令人兴奋的突破,将在各个行业中解锁新的用例,从Web3到供应链再到物联网。通过在不揭示信息的情况下验证其真实性,ZKPs可以增强数字系统的隐私、安全性和效率。本文将探讨ZKPs的基础知识和正在出现的潜在用例。
零知识证明 Zero Knowledge Proof 以及 Layer2、跨链介绍
定义:20世纪80年代初发明,证明者在不向验证者提供任何有用信息的情况下,使验证者相信某个论断是正确的。 要求:完整性、可靠性、零知识性 分类:交互式证明、非交互式证明 角色:示证者/证明方(prover)、验证者(verifier)eg: 跨链方法:公证人、哈希锁定、侧链、中继链............
LC与RC滤波电路实战对比:从原理到选型指南
本文深入对比了LC与RC滤波电路的核心原理与实战应用。LC滤波利用电感与电容的无损能量搬运,适合高频、大电流电源滤波,效率高但需注意谐振风险;RC滤波通过电阻消耗能量实现滤波,结构简单、成本低,适用于低频信号处理或小电流供电场景。文章提供了从工作原理、性能维度到具体选型的完整指南,帮助工程师根据项目需求(如频率范围、负载电流、效率)做出精准选择。
用 n8n 提取静态网页内容:从 HTTP Request 到 HTML 节点全解析
本文介绍了如何使用n8n的HTTP Request和HTML节点组合提取静态网页内容。首先通过HTTP Request节点获取网页HTML源码,然后使用HTML节点解析并提取所需数据。关键点包括:1)HTTP Request节点设置URL和GET方法;2)HTML节点配置Source Data为JSON并指定data字段;3)重点掌握Extraction Values参数,特别是CSS选择器(使用.和#定位元素)、Key命名、Return Value类型选择等。文章通过实例演示了标题和正文的提取方法,并提供
零知识证明的技术演进
零知识证明(Zero-Knowledge Proof, ZKP)凭借其“无需泄露具体信息即可验证事实”的特性,已在多个领域展现出巨大应用价值。1985年,Shafi Goldwasser、Silvio Micali和Charles Rackoff提出零知识证明概念。它指证明者能在不向验证者提供任何有用信息的情况下,使验证者相信某个论断正确。例如,证明者拥有房间钥匙,不用出示钥匙,只需用钥匙打开门拿出里面物体给验证者看,就可证明有钥匙,且验证者看不到钥匙样子。
单晶塑性abaqus-umat自学
单晶塑性abaqus-umat 摘要1. 简介2. 单晶弹塑性本构模型回顾2.1运动学 本文以翻译黄永刚老师的umat文章为主,这个颜色的为个人的理解。 摘要 包含单晶塑性的abaqus用户材料子程序。本文回顾有限元形式的单晶弹塑性和黏弹塑性,包含小变形理论,以及严格的有限变形和有限旋转理论。单晶的非弹性变形由于晶体滑移,假定遵从Schmid准则。提出多种多样的分切应力与剪切变形的自硬化和潜硬化关系,并且包含在子程序内。 1. 简介 有限元程序ABAQUS已经广泛应用在固体的变形与应力分析。除了自身大量
零知识证明应用开发入门
过去的一年出现了很多零知识证明应用,在这个教程中, 我们将首先学习零知识证明的基本概念、使用circom搭建算术电路、 使用snarkjs实现零知识证明的全过程,并利用这些知识实现 二层扩容方案zk rollup。 1、算术电路:零知识证明核心 零知识程序和其他程序的实现不太一样。首先,你要解决的问题需要 先转化成多项式,再进一步转化成电路。例如,多项式x³ + x +5 可以 表示成如下的电路: 1 2 3 4 sym_1 = x * x // sym_1 = x
国内网络环境下Calico v3.26.4安装避坑指南(附华为云镜像加速脚本)
本文为国内开发者提供Calico v3.26.4的高效部署指南,重点介绍如何通过华为云镜像加速服务解决Kubernetes集群网络插件镜像拉取问题。文章包含详细的镜像加速脚本、部署清单修改方法及深度排错技巧,帮助开发者快速完成Calico网络插件的安装与配置。
Hermes-Agent-完整指南
Hermes Agent 是由 **Nous Research** 开发的一款**自我改进型 AI Agent**,具有内置的学习闭环系统。它的核心理念是"一个与你共同成长的 Agent"。- 能够从经验中创建技能(Skill-Learning Automated),在使用过程中自我改进, 跨会话持久记忆, 深度用户建模
零知识证明在区块链加密货币中的应用分析
零知识证明允许一方在不泄露有效信息的情况下,向另一方证明所拥有的信息的真实性,这在身份认证、区块链和加密货币、安全协议等领域具有广泛的应用前景。本报告旨在探讨零知识证明在区块链加密货币中的应用,通过分析其背景、目的和意义,梳理相关的技术方案和算法设计,评估其安全性和效率,最终为未来的研究和实践提供参考。零知识证明算法的创新推动了匿名货币(如Zcash)和去中心化身份验证系统的发展,增强了用户在数字环境中的隐私保护,开辟了新的应用场景和商业模式。零知识证明的安全性往往基于这些数学基础问题的计算复杂度。
Couldn‘t agree a key exchange algorithm(available:curve25519-sha256,curve25519-sha256@libssh.org解决方案
本文主要介绍了Couldn’t agree a key exchange algorithm(available:curve25519-sha256,curve25519-sha256@libssh.org解决方案,希望能对使用winscp的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案 2.1 方案一 2.2 方案二
什么是零知识证明?
零知识证明(通常缩写为“ZKP”)是一种可以提高数据隐私性的加密协议。它允许一方(称为证明者)向另一方(验证者)保证某个陈述是真实的,而无需透露任何额外信息。例如,证明者可以让验证者相信他们知道一个特定的数字,而无需实际透露它。这可以通过一系列交互或单个信息串来完成,具体取决于所使用的零知识证明的类型。
【OpenClaw从入门到精通】第20篇:OpenClaw实战—从零搭建教育自动化助教系统(作业批改+智能答疑+学情分析)【2026实测】
本文基于OpenClaw开源框架,聚焦教育行业“答疑重复、批改耗时、学情模糊”三大核心痛点,提供从环境部署到功能落地的全流程实操方案。通过整合QQ群交互、代码分析、数据可视化等技能,构建“智能答疑+作业批改+学情分析”的自动化助教系统。系统支持7×24小时群聊答疑、多语言作业自动评审、学情数据周报生成,经实测可使助教工作时间减少60%、作业批改效率提升5-10倍、学情问题识别提前5周。文中包含完整配置步骤、可直接运行的代码示例及避坑指南,兼顾新手入门与进阶实操,帮助教育工作者快速落地自动化工具,从重复劳动中
手把手教你学PCIE--固件与BIOS配置 - BIOS设置对PCIe性能的影响
本文详细分析了BIOS设置对PCIe性能的影响,并提供了优化建议。通过合理调整链路参数、功耗管理策略和高级功能配置,可以显著提升系统的性能和稳定性。本文将进一步分析BIOS设置如何影响PCIe设备的性能,并提供优化建议。BIOS(或UEFI)是系统启动时的第一个控制层,其设置直接决定了PCIe设备的工作状态和性能表现。BIOS中的功耗管理选项(如C-States、P-States)会影响PCIe链路的低功耗模式(L0s/L1)。MSI/MSI-X中断具有更高的性能和更好的可扩展性,应作为首选方案。
区块链零知识证明:Zcash 基础知识普及帖,Zcash 技术分析
ZCash 是 bitcoin 的分支,保留了 bitcoin 原有的模式,基于比特币 0.11.2 版代码修改的。ZCash钱包资金分 2 种:透明资金、私有资金,透明资金类似比特币资金;私有资金加强了 隐私性,涉及到私有资金的交易是保密不可查的,透明资金与透明资金的交易是公开可查的。 ZCash被称为零币,与‘灵’同音,不好听,且有归零的感觉,统一称为 Z币。ZCash主...
文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况
主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。
零知识证明
零知识证明 麻省理工学院研究人员在 20 世纪 80 年代提出的一种加密方案===零知识证明 零知识证明(Zero-Knowledge Proof)或零知识协议是一种基于概率的验证方法,包括两部分:宣称某一命题为真的证明者(prover)和确认该命题确实为真的验证者(verifier)。 顾名思义,零知识证明就是既能充分证明自己是某种权益的合法拥有者,又不把有关的信息泄漏出去,即给外界...
大中型超市收银系统(可直接运行)
光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开
深度学习工具包 DeepLearningToolbox
深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[](https://bitdeli.com/free "Bitdeli Badge")
零知识证明学习笔记:背景与起源
副标题:斯坦福学霸的零知识证明学习笔记(一) 本文作者东泽,来自安比技术社区的小伙伴,目前就读于斯坦福大学,研究方向密码学,本系列文章来源于作者在斯坦福著名的课程《CS 251: Cryptocurrencies and blockchain technologies》上的学习笔记,该课程授课老师是密码学大拿 Dan Boneh。 上个学期在斯坦福跟着Dan Boneh学习了区块链和数字货币相关的...
锂电池充电器电路设计 里面有电路
锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。
零知识证明四——Fiat-Shamir,三分钟零知识证明入门
看了一些密码学的书籍,都是老外的,才发现歪果仁还真是喜欢alice和bob,这二位霸占了密码学的故事的主角。今天我们也邀请二位来参与我们的故事。今天介绍的是比较简单的零知识证明,交互式零知识证明——Fiat-Shamir,不过这就是为了把大家领上道,实际应用是比这个要负责的; Fiat-Shamir 要进行Fiat-Shamir,首先进行准备工作,由可信第三方,随机选...
Spartan: 高性能零知识证明系统
Spartan 是一个高性能的零知识证明系统,它允许证明者向验证者证明一个数学陈述的有效性,而不需要透露任何关于该陈述的具体信息。该系统由微软开发,并以 Rust 语言为主要编程语言实现。Spartan 的核心是一个名为 libspartan 的 Rust 库,它实现了零知识简洁非交互式证明(zkSNARK)。 ## 2. 项目核心功能 - **无需可信设置**:Spartan 是一个透明的 ...
零知识证明学习
零知识证明是一种强大的技术,使得一方能够证明某个声明的真实性而不暴露任何额外信息。它的核心优势是能够在保护隐私的同时验证信息的有效性,在多个领域,尤其是加密货币和隐私保护方面,有着重要的应用潜力。随着技术的进一步发展,零知识证明的应用可能会变得更加广泛和高效。
ZK应用开发新手教程【零知识证明】
过去的一年出现了很多零知识证明应用,在这个教程中,我们将首先学习零知识证明的基本概念、使用circom搭建算术电路、使用snarkjs实现零知识证明的全过程,并利用这些知识实现二层扩容方案zk rollup。 区块链开发教程链接: 以太坊 | 比特币 | EOS | Tendermint | Hyperledger Fabric | Omni/USDT | Ripple 1、算术电路:零知识证明核心 零知识程序和其他程序的实现不太一样。首先,你要解决的问题需要先转化成多项式,再进一步转化成电路。例如,多
多方协作的零知识证明(co - snarks)
co - snarks用于实现多方协作的零知识证明。它基于现有的领域特定语言circom和Noir,通过coCircom和coNoir两个主要工具,让多个互不信任的参与方能够协作计算出一个零知识证明。coCircom允许现有的circom电路无缝升级为coSNARKs,无需修改原始电路,且完全兼容Groth16和Plonk后端,生成的证明可以使用snarkjs验证。co - snarks项目采用Rust语言开发,应用场景广泛,特别是在区块链隐私保护、多方计算协议以及数据共享与协作等需要保护隐私的多方计算环境
Anthropic 开源 FlashProve:用零知识证明验证大模型有没有被掉包,AI 中转站要变天了吗
Anthropic 这次同时开源了代码、技术报告和 Lean 形式化证明,据介绍 Claude 还参与了系统的构建与优化,部分协议文档和代码也由 AI 生成。FlashProve 把"模型有没有被掉包"从凭感觉吵架,推进到了可以拿证明说话的阶段:单张 H100 约 110 tokens/秒生成证明,19 MB 的证明文件在普通 CPU 上十几秒就能验完。它不会立刻终结"是不是偷偷降智"的争论——系统提示词、解码策略、产品设计的变化,依然需要别的手段去核查;
1971



被折叠的 条评论
为什么被折叠?



