news 2026/9/8 0:41:33

Windows/macOS/iOS系统架构与安全机制深度对比解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Windows/macOS/iOS系统架构与安全机制深度对比解析

三套系统放一起对比这事,我干过不止一回。Windows、macOS、iOS,听起来是“桌面和移动”的区别,实际上拆开看,处理器生态、内核设计、安全模型完全不是一码事。作为开发者,平时我在Windows上跑后端服务,在macOS上写iOS项目,再用iPhone真机调试,三台设备换着用,最大的感受是:长得越像,内核差异越大。很多人问这仨的系统架构和安全机制到底差多少,我的看法是,这不是“差多少”的问题,而是从设计起点就分道扬镳了。

这篇文章我会从系统架构和安全机制两个维度拆开讲,尽量落到实际使用和开发场景,比如Windows上的Docker和WSL2、macOS的系统数据占用、iOS的开发者模式和签名打包。文章适合正在跨平台开发的朋友、做系统运维的同行,以及单纯想把这三套系统搞明白的读者。

1. 系统架构:三条不同的技术路线

1.1 处理器与指令集:生态的根

先看最底层的东西——处理器指令集。这个决定了操作系统能跑在什么芯片上,也决定了它的兼容策略。

Windows最核心的生态是x86和x86-64(也就是x64),从Intel 8086时代一路继承下来,历史包袱最重。为了兼容三十年来的老软件,Windows必须保留大量传统API和运行机制。后来高通骁龙、微软Surface Pro X这类ARM设备出现,Windows也有ARM版本,但本质上还是靠模拟层(x86仿真)硬啃x86生态,性能和兼容性都打了折扣。举个例子,你在ARM版Windows上跑一个没做ARM适配的exe,系统会启动x86模拟器,虽然能用,但CPU占用高、内存开销大,有时候还会遇到个别驱动或软件直接不认。

macOS走的是另一条路。从最早的PowerPC,到2005年转向Intel,再到2020年换成Apple Silicon(ARM64),苹果完成了三次架构迁移。现在的Mac用的M1、M2、M3系列芯片,跟iPhone的A系列芯片同源,底层都是ARM指令集。苹果通过Rosetta 2翻译层解决老Intel软件兼容问题,实测下来大多数应用能无感运行,个别重度计算场景会有性能折损,但整体体验比Windows ARM要好很多,原因很简单——硬件和系统都是苹果自己做的,调度优化做得更彻底。

iOS从诞生起就是ARM架构,没有任何历史包袱。苹果从A4芯片开始一路自研,到今天A17 Pro、M系列衍生芯片,指令集、微架构、系统完全绑定。这种“封闭”带来的好处是性能释放更激进,每一瓦电都用在刀刃上。坏处就是非苹果设备装不了iOS,生态彻底锁死在自家硬件里。

1.2 内核设计:宏内核、混合内核与XNU

架构的第二层是内核。Windows用的是NT内核,设计上借鉴了微内核思想,但为了性能,把大量驱动、文件系统、网络协议栈都塞进了内核态,所以实际上更接近“混合内核”甚至“宏内核”的形态。NT内核上面有HAL(硬件抽象层),下面是各类驱动模型,WDM、WDF、Minifilter这些一套套的。Windows驱动开发门槛相对高,蓝屏多半是第三方驱动在内核态闯祸,就是因为驱动跟内核跑在同一个特权级。

macOS和iOS共用XNU内核,这是苹果在NeXTSTEP时代继承下来的产物,由Mach微内核、BSD内核和IOKit驱动框架三部分组成。Mach负责最基础的线程、任务、消息传递(IPC),BSD层提供POSIX接口(也就是我们在macOS/iOS上能直接用的那套Unix API),IOKit处理硬件驱动和电源管理。Mac和iPhone虽然共用内核,但两者的配置和裁剪深度完全不同,iOS关闭了许多桌面端开放的内核扩展能力,不允许第三方内核扩展,这也是iOS更稳定的一个重要原因。

XNU的设计有个特点:Mach的消息传递机制是内核的核心通信方式,比传统的系统调用更灵活,但也带来了上下文切换开销。苹果这些年一直在优化XNU的IPC路径,Apple Silicon上台后,很多之前因为硬件限制没法做的优化也逐步落地了。

1.3 架构差异落到日常使用:WSL2、APFS与Docker

架构差异不只是跑分和内核线程库的事,它在日常操作中有很具体的表现。举几个大家都踩过的坑:

  • WSL2和Docker:Windows上跑Linux环境,用的WSL2是一个轻量级虚拟机,里面有独立内核,微软自己编译的。Docker Desktop在Windows上默认走WSL2后端,本质上是把容器跑在WSL2的VM里,性能还行,但跨文件系统读写(从Windows盘操作Linux文件)有时慢得离谱。macOS上的Docker则用QEMU或Virtualization.framework跑一个Linux VM,Apple Silicon上虚拟化性能很好,但文件共享也有类似问题。iOS上没有真正意义上的Docker,这类需求根本不存在,这就是架构边界。

  • APFS快照和“系统数据占用过大”:很多Mac用户发现“系统数据”占了几十GB,删不掉。这背后的原因是APFS文件系统支持本地快照(Time Machine本地快照)和写时复制克隆,很多邮件附件的本地缓存、App的容器数据都会被归到“系统数据”里。macOS和iOS都用APFS,但iOS端因为App沙盒机制,存储管理更严格,很少出现这种“空间去哪了”的疑惑。

  • Windows的“设置分裂”:控制面板和应用设置并存,是老Win32架构和现代UWP/WinUI并存的结果。这种双轨制让微软工程师自己都头疼,普通用户更容易迷路。macOS和iOS倒是没有这类问题,苹果是一刀切成新框架就收入,很少留双轨。

2. 安全机制:PC端与移动端的理念分野

2.1 Windows:兼容优先下的纵深防御

Windows的安全模型,核心思路是“兼容优先,防线后置”。系统本身允许老程序以较高权限运行,开发者也能轻易拿到内核级权限(驱动),这带来了非常广的攻击面。

  • 用户账户控制(UAC):把系统分成普通用户和管理员两级。遇到需要管理员权限的操作,会弹窗确认。理念没问题,但很多用户嫌烦直接关掉,导致系统几乎不设防。我的建议是别关,嫌烦可以调成“只在程序尝试更改计算机时提示”,保留就比没有强。

  • Windows Defender:现在系统自带的杀毒软件已经很强了,基于云查杀和行为分析,日常使用基本够用。早些年第三方杀软横行的时代反而催生了大量内核级Rootkit,现在Defender一家独大,这类攻击反而少了。

  • VBS、HVCI和Credential Guard:Win10/11上基于虚拟化的安全机制。VBS利用CPU的虚拟化能力,把内核隔离开。HVCI(内存完整性)限制内核使用受保护内存,防止驱动注入恶意代码。Credential Guard把登录凭证锁在虚拟化隔离区里,就算系统被攻破也拿不到密码哈希。这些机制在Win11上的默认状态是开启的,带来了一定的性能开销(尤其是游戏场景),但安全性提升明显。

  • Secure Boot和TPM 2.0:Win11硬性要求TPM 2.0芯片,配合Secure Boot可以在启动阶段阻止未签名的引导代码。这是PC端向移动端安全模型靠拢的一个信号。

Windows的短板也很明显:历史包袱导致系统里大量进程以高权限运行,而第三方杀软和驱动的内核级接入,本质上是在系统上开了一个个后门,一旦这些软件本身出问题,系统安全也就崩了。更麻烦的是,Windows Updater把安全和功能更新捆绑在一起,很多生产环境不敢随便打补丁,导致漏洞修补跟不上。

2.2 macOS:从“放开”到“锁紧”的信任链

macOS的安全哲学,说穿了是“信任链”。系统判断“这个App能不能运行”不是靠杀毒软件反复检查,而是靠从签名、公证到运行权限的一整套链条。

  • Gatekeeper:你在浏览器里下载的App,会被打上quarantine(隔离)标记。双击运行时,系统会检查它的代码签名和公证状态。没有开发者签名的程序,系统会弹出“无法打开,因为无法验证开发者”的提示。注意,这里的“公证”是苹果的在线服务——开发者把App提交给苹果扫描,苹果发一个凭证,系统运行前校验凭证。这个机制比纯签名要强,因为证书可以被吊销,公证凭证也可以。

  • SIP(系统完整性保护):从OS X El Capitan开始引入。即使是root用户,也没办法修改以下路径:/System、/usr(部分)、/bin、/sbin,以及几个系统进程。以前黑客提权到root就能为所欲为,现在root用户对系统关键目录也只能只读。很多“优化教程”让你关SIP来装插件或改系统字体,我劝你别乱关,关了SIP系统就跟Windows一样暴露在内核攻击面下了。

  • TCC(透明度、同意与控制):这就是你每次打开App弹窗问“是否允许访问相机/麦克风/文件夹”背后的机制。macOS把所有敏感资源都归到TCC统一管理,用intent的维度(摄像头、麦克风、屏幕录制、通讯录、完整磁盘访问等等)分别授权。很多老Mac用户觉得“怎么现在什么都要弹窗”,这不是苹果啰嗦,而是隐私保护的底线。

  • FileVault:全盘加密。开启后硬盘数据是密文,丢了电脑别人也读不出数据。配合Apple Silicon的硬件加密引擎,性能影响很小。

macOS近年的趋势是越来越iOS化:默认App沙盒(Mac App Store要求所有应用必须沙盒化)、Notarization公证强制化、系统组件签名验证更严格。但macOS毕竟保留了Unix的底层自由度,用户仍然可以装非沙盒应用、加载内核扩展(Kext),这也是Mac开发者体验比iPhone好很多的原因。

2.3 iOS:硬件+软件双重强控制

iOS的安全机制,是三者中最极端的。它的出发点不是“方便开发者”,而是“保护用户”。苹果在设计和实现上几乎不留余地。

  • 安全启动链:从BootROM开始,每一级代码(LLB、iBoot、内核)都要验证签名,一级验一级,哪一级验不过都直接白屏或进恢复模式。用户没法自己刷固件,降级也不行,苹果只能验证当前版本。所以iOS设备的“越狱”不是装个软件那么简单,得找BootROM或iBoot的漏洞,越狱工具越来越稀缺也是这个原因。

  • Secure Enclave(安全隔区):这是独立于主处理器的协处理器,专门保存密钥、指纹和面容数据。即使iOS内核被攻破,Secure Enclave里的数据也拿不到,因为它们在物理上隔离,只通过受保护的邮箱机制通信。Face ID和Touch ID的生物信息不存到任何云端,也不给普通App访问,只有Secure Enclave自己能用。

  • 强制代码签名+沙盒:iOS上的每一个可执行文件、动态库、Framework都必须签名,系统在加载时强制校验。App运行时被限制在自己沙盒容器里,不能读其他App的数据,不能随意外写文件,访问照片、通讯录、位置等敏感数据必须先跳系统弹窗获得授权。这种强隔离在信息泄露场景下等于“打断手”,即使某个App被攻破,攻击者也在沙盒里动弹不得。

  • 内核防护:苹果在A系列芯片上引入了PAC(指针认证码)、PPL(页面权限表)等硬件机制。PAC用硬件密钥给函数指针签名,篡改指针直接让程序崩溃。PPL保护页表不被篡改,防止攻击者做“双映射”之类的内核攻击。这些技术配合ARM架构的硬件特性,让iOS的内核攻击面远小于Windows和macOS。

  • App Store审核:这个经常被开发者吐槽,但确实是安全机制的一部分。苹果通过人工+机器扫描的方式,做了一次上线前的安全检查。虽然不完美,但把大量恶意行为挡在了商店之外。企业签名(In-House)和TestFlight分发管道要有足够的资质才能使用,个人开发者想绕过审核侧载App,只能靠开发者模式、Mac Catalyst等方式,且限制越来越多。

2.4 三平台安全机制对照表

我把三者关键安全维度列一个表,直观一点:

维度WindowsmacOSiOS
启动链验证Secure Boot + TPM(Win11强化)硬件信任根→内核(Apple T2/Silicon)BootROM→LLB→iBoot→内核逐级验证
应用下载管控SmartScreen提示,但不强制Gatekeeper+公证,可绕过强制App Store/企业证书/TestFlight
免签/侧载任意exe可运行右键打开+系统设置可绕Gatekeeper官方不支持,需越狱或开发者模式
应用隔离传统Win32无沙盒,UWP有沙盒普通App可选沙盒,MAS强制全应用强制沙盒
隐私授权简化的权限提示,粒度较粗TCC精细授权TCC+全系统敏感资源管控
用户权限管理员权限普及,UAC弹窗管理员+root,早期放开后期收紧无root概念,用户权限极低
全盘加密BitLocker(企业/专业版)FileVault默认开启(数据保护+Secure Enclave)
内核防护VBS/HVCI、Credential GuardSIP、Kext签名的逐步限制PAC、PPL、硬件信任根

看完这个表你会发现,Windows的策略是“我尽量隔离坏人,但给好人最大自由”;macOS是“中间路线,既要自由度也要控制力”;iOS则是“一切为安全让步”。这三套理念没有绝对优劣,但决定了你在不同平台上的开发体验和安全责任。

3. 实操视角:安全机制在日常开发和运维中的真实影响

3.1 在Windows上做开发:Defender、开发者模式与Docker的坑

Windows的安全机制很多时候不是拦黑客,而是拦开发者自己。我在Windows上跑Elasticsearch和JDK 17这类Java服务时,遇到过几次诡异问题:

Elasticsearch启动后没跑几分钟就崩了,日志里找不到明显异常。查了半天才发现,Windows Defender实时保护把ES的data目录当成可疑行为扫描,一边启动一边反复扫文件,把索引写入搞得极其缓慢,最后超时崩溃。解决方案也很简单:在“病毒和威胁防护”里把项目目录、数据目录加到排除项。同样的问题也出现在Maven本地仓库,编译期间Defender不停扫jar包,导致构建速度下降30%到50%。

这就引出一个要点:Windows上的开发者模式别当摆设。开启开发者模式后,系统会放宽对符号链接、SSH远程部署、UWP旁加载的限制,很多Java和Node.js项目的软链接操作才能正常工作。不开启的话,有些工具会悄悄失败。

再说Docker。Windows上装Docker Desktop默认依赖WSL2,但如果你的Windows功能里Hyper-V或者“虚拟机平台”没开全,Docker会反复启动失败。常见的报错是“Docker Desktop requires a newer WSL kernel version”,这种时候需要手动更新WSL内核。还有,装了Docker Desktop后,如果在BIOS里没开虚拟化(SVM/VT-x),Docker和WSL2全部瘫痪,只能回退到Windows容器模式(性能差、兼容性差)。我之前在一台老笔记本上折腾了很久,最后发现是BIOS里虚拟化没开,这属于最容易忽略的低级坑。

和你分享一个实际的建议:Windows上跑开发服务时,别把Defender全盘排除,而是按目录排除。只排除你有读写需求的项目目录、临时文件目录,别为了省事把整个C盘排除了,那样等于砍掉了系统最后一层防线。

3.2 macOS上别乱动SIP:系统数据、重装与权限问题

macOS的安全机制对普通用户来说,最容易被“误导”的就是SIP。网上很多教程让你重启进恢复模式,执行csrutil disable,然后装各种系统插件。说实话,为了一个菜单栏工具关闭SIP,完全不值得。关闭SIP后,系统关键目录变得可写,恶意软件一旦拿到root权限,可以伪装成系统服务持久化,这种攻击在正常macOS上几乎不可能。

我在真实项目里遇到过需要关闭SIP才能调试内核扩展(Kext)的情况,但即便在开发场景,苹果也明确建议用开发者模式替代。现在Apple Silicon上的系统扩展(System Extension)已经不需要关SIP了,走的是用户态进程+系统批准的签名机制。如果你还在为老Kext折腾SIP,该考虑升级开发方案了。

另外,很多Mac用户会问“macOS系统数据占用过大怎么办”。这和SIP无关,但和安全机制有间接关系。Time Machine本地快照、邮件附件缓存、App容器的缓存文件,都算在系统数据里。正确的清理方式是:

  • 关闭并重新开启Time Machine(会触发快照整理)
  • 用“存储管理”里的“优化存储空间”释放缓存
  • tmutil listlocalsnapshots /命令查看本地快照,再决定是否删除

千万别直接进目录把Library里的东西删了,删错了轻则App闪退,重则用户数据丢失。因为这些目录的访问受TCC保护,你用Finder能看到但实际读写受限,强删反而会触发系统文件保护机制。

我还遇到过一次macOS重装失败,提示“准备安装时发生错误,请尝试重新运行此程序”。排查后确认是之前为了测试改过系统时间,导致安装包证书校验不通过。macOS的安装器本身也带签名验证逻辑,系统时间不对、网络不通(无法连接公证服务器)、磁盘空间不足,都会导致这类报错。处理方式是恢复正确时间、清出足够磁盘空间,再重新运行安装器。如果你用的镜像本身是第三方修改版,还会遇到“无法验证此App”的提示,这就不是系统问题,而是镜像签名不对。

3.3 iOS开发者模式、证书签名与自动化限制

iOS端的安全机制,开发者的体会最深。第一次在Xcode上连接真机调试,系统会提示“在iPhone上开启开发者模式”。iOS 16以后,这个是强制要求,而且默认是关闭的。开启路径是“设置”->“隐私与安全性”->“开发者模式”,需要输入锁屏密码,然后重启设备。这个机制的目的很简单:防止普通用户无意中安装开发包,同时给开发者一个明确的“我要进入开发模式”的确认。

真正让开发者头疼的是签名机制。iOS应用安装到真机,必须有三个要素:证书(Certificate)、描述文件(Provisioning Profile,也叫描述文件)、Bundle ID。Xcode自动管理签名时,它会用你的Apple ID向苹果申请开发证书,然后生成一个包含你设备UDID的调试描述文件。到了发布阶段,还要用发布证书打包Ad Hoc或App Store版本。每一步都有可能踩坑:

  • 证书过期:开发者账号续费后,证书有效期到了,需要重新生成。Xcode会提示“Unable to create a provisioning profile because your team has no devices registered”。
  • 设备未注册:Ad Hoc描述文件只包含你注册过的特定设备UDID。真机调试提示“This device is not registered”时,要去开发者后台添加设备,再刷新描述文件。
  • 企业证书被吊销:很多企业内部用In-House证书分发App,一旦证书被苹果吊销(通常是滥用导致),所有装了此证书签名的App全部闪退打不开。这个教训我见过不只一次,强烈建议企业开发者评估别的分发方案,别完全依赖单一企业证书。

iOS的自动化也受安全机制限制。比如iOS 16之后的自动化快捷指令,如果涉及修改系统设置或访问敏感数据,首次运行必定弹窗确认,还没法后台悄悄执行。而App之间通过URL Scheme跳转,访问权限也要靠TCC弹窗逐项确认。很多“自动化”场景到落地就会碰到这套限制,不是系统不愿意,而是它在替你守安全底线。

还有一点值得提:很多跨平台开发团队在iOS上遇到的“无法安装”“安装后打不开”问题,绝大多数不是代码bug,而是签名配置有问题。建议在打包前检查三件事:签名证书是否有效、描述文件是否包含目标设备、Bundle ID是否和后台配置一致。三件套齐了,大部分安装问题能迎刃而解。

4. 常见问题与排查技巧实录

这个板块我整理一下我这些年见过的高频问题,按平台归类,简单列个速查表:

平台现象常见原因推荐排查/解决思路
WindowsDefender误杀项目文件导致构建失败实时防护扫描项目目录在Defender排除项中加入项目目录,别全盘排除
WindowsDocker Desktop启动失败WSL2内核过旧、虚拟化未开启更新WSL内核;BIOS中开启VT-x/SVM
Windows安装软件提示“此应用无法在你的电脑上运行”架构不匹配(x86软件装到ARM版Windows)下载对应x64/ARM64版本
macOS“无法打开xxx,因为无法验证开发者”Gatekeeper拦截未公证应用右键打开;系统设置-隐私与安全性中允许;或请开发者完成公证
macOS系统数据占用持续增大Time Machine本地快照、App缓存用存储管理清理,或tmutil删除本地快照
macOS重装提示“准备安装时发生错误”系统时间不对、网络无法连接公证服务器校准时间、联网重试、留足磁盘空间
iOS真机调试提示未开启开发者模式iOS 16+需要手动开启设置-隐私与安全性-开发者模式,重启
iOSXcode提示设备未注册描述文件不含当前设备UDID开发者后台添加设备UDID,刷新描述文件
iOSApp安装后闪退企业证书被吊销或描述文件过期检查证书有效状态;评估备选分发方案
跨平台不同系统上字体/路径行为不一致路径分隔符、大小写敏感差异统一用系统API拼接路径,避免硬编码

排查问题的思路有一点经验之谈:系统行为和版本强相关,别太相信旧文章。比如Windows的Defender策略、macOS的隐私权限弹窗、iOS的开发者模式,几乎每年都在变。遇到问题时,先去官方文档确认当前版本的行为,再动手改配置,能省很多无用功。

5. 一点个人体会

我自己在三个平台上都踩过“配置不当触发系统保护机制”的坑,现在养成了一个习惯:遇到安全弹窗先想“它为什么要拦我”,而不是直接找关闭它的方法。Windows可以关UAC,macOS可以关SIP,iOS不行(不越狱基本没这选项),但这不是iOS“不好用”,而是它的设计目标决定了它不能让用户轻易动摇安全根基。

从架构上来讲,Windows为了兼容三十年软件生态,付出了安全复杂度和系统臃肿的代价;macOS在Unix自由度和苹果管控之间找到了平衡;iOS则把“可控性”推到了极致。这三者没有完美,只有适合不适合。

最后分享一个小建议:如果你是开发新手,想学系统底层和安全性,Windows是最容易上手且资料最多的平台;如果你在做的项目依赖Unix生态,macOS会让你效率翻倍;如果你做移动端,iOS的安全机制值得你花时间彻底吃透——因为只有理解了它的限制,你才知道为什么有些功能实现起来“反直觉”,也才能在架构设计时提前绕开坑。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/8 0:38:06

Python作业1保姆级攻略:从环境搭建到第一个程序完整指南

很多刚接触编程的朋友,第一次看到“python作业1”这种标题时,第一反应往往是懵的:这作业到底要我干嘛?是写一个程序,还是交一篇报告?是随便打印一行字就行,还是要做个完整的小项目?我…

作者头像 李华
网站建设 2026/9/8 0:38:01

基于等效储能聚合模型的空调集群微电网经济调度

先说一个结论:在微电网经济调度里,把空调集群“当成储能”来用,不是比喻,而是可以严格建模的工程方法。你可以把一整栋写字楼的空调看成一块挂在微电网母线上的隐形电池——它有容量(房间的蓄冷量)、有功率…

作者头像 李华
网站建设 2026/9/8 0:36:28

现在性价比高的AI论文网站有哪些品牌?深度用户实话实说

每到期末、毕业答辩、课题申报阶段,很多学子都会深陷论文难题:选题毫无头绪、搭建大纲逻辑混乱、正文撰写耗时长、参考文献格式出错、查重重复率偏高、AIGC检测告警、本校论文排版标准复杂。依靠纯人工从零开始撰写、一遍遍修改格式和降重,常…

作者头像 李华
网站建设 2026/9/8 0:36:07

SpringBoot+Vue校园活动管理系统毕设实战全解析

1. 从毕设选题到技术选型:为什么是SpringBoot Vue B/S 每年毕业季,计算机专业的同学都在纠结同一个问题:毕设做什么题目才既不容易翻车,又能让答辩老师觉得有工作量?我见过太多人一开始选了个听起来高大上的方向&…

作者头像 李华
网站建设 2026/9/8 0:33:29

std::map用正向迭代器反向遍历的三种写法与性能分析

1. 先搞清楚&#xff1a;std::map 的迭代器到底是个什么脾气1.1 map 是红黑树&#xff0c;迭代器是双向的std::map 在绝大多数标准库实现里&#xff0c;底层是一棵红黑树&#xff0c;树节点里存着std::pair<const Key, T>。你从外部看&#xff0c;它就是一个有序的键值对…

作者头像 李华
网站建设 2026/9/8 0:29:53

零知识证明:从洞穴故事到工程实践,一次讲透原理与应用

作为在密码学和安全领域折腾多年的从业者&#xff0c;零知识证明&#xff08;Zero-Knowledge Proof&#xff09;一直是我觉得最“反直觉”又最实用的技术之一。它的核心思想一句话就能讲清楚&#xff1a;在不透露任何秘密信息的情况下&#xff0c;向验证者证明你确实知道这个秘…

作者头像 李华