Otterscan:核外部ENS、源码请求及配置生效范围
链小知 · 进阶 · 核验 · 依官方文档整理
检查已有实例配置,区分本地节点读取与外部数据访问,不把自建浏览器当绝对隐私保证。
开始前准备
- 准备已有脱敏实例配置、构建记录和主页截图;不在本文安装节点或浏览器,也不连接RPC。
- 按固定官方文档源码整理,未修改实例配置、下载编译器或读取本人地址。
1. 先确认客户端与已有同步进度
先核已有节点是否实现Otterscan API。官方列Erigon、OP-Erigon和Anvil等支持路径;单纯拥有Ethereum RPC地址不能确认兼容。
官方验证说明以主页搜索框下显示的最新块和时间戳检查节点当前进度;Beacon正确配置时还显示最新finalized slot。记录已有截图的时点与数值,没有截图不能仅据配置宣称已同步或已最终确认。
检查结果:客户端兼容、截图时间、最新块与Beacon状态各有依据或未知。
2. 固定配置实际生效的版本
生产构建中的VITE_CONFIG_JSON需在构建时定义;成品运行后才设置该变量不会改变已经静态编入的节点/链配置。核已有构建记录中的配置来源,而不是只看当前服务器变量。
本文不构建、不写环境文件和不重启实例;配置文件已编辑也不证明该配置进入当前浏览器成品。
检查结果:已有构建版本与生效配置能关联,运行时变量未冒充已生效。
3. 检查ENS CCIP外部读取
ENS正向和反向查找默认支持CCIP reads;反向解析也可在普通浏览时发生。官方明确这会请求任意外部来源并暴露IP。
希望禁止这类外部读取时,官方配置为externalDataSources.ccip.ensLookups=false;某些ENS子域名解析会受影响。这里只检查已有值,不执行修改,也不把关闭这一项等同关闭所有外部请求。
检查结果:ensLookups的已有值、外部请求风险及受影响解析分别记录。
4. 逐个核Sourcify来源和编译器
sourcify.sources中每项有url和backendFormat,第一项是默认来源;RepositoryV1用源文件路径,RepositoryV2用源路径的keccak256。默认Sourcify服务器会接收相关源码读取,自建节点并未自动替换它。
本地合约校验默认可从binaries.soliditylang.org下载Solidity编译器;sourcify.localContractVerification.enabled及contractCompilerBaseURL分别控制功能和下载源。核既有值及来源,缺记录时保留未知;不用仅修改一个URL声称已切断所有外部访问。
检查结果:默认源码来源、Repository格式、编译器启用与下载源均能追溯。
5. 把节点数据、估值和托管边界分开
官方支持配置Chainlink和Uniswap价格来源;DEX估计尤其在低流动性或不能正常交易时可被操纵。价格读数不当可成交额,也不当链上原始数量。
官方另列公共测试网和第三方实例;使用这些实例时应另核运营者、配置和在线状态,不能沿用自建节点的隐私结论。
检查结果:数量、估值、实例运营者和外部数据范围已分开。
怎样确认完成
- 留下输入范围、原材料、核对结果和未知项;没有实例或回执时保持未验证。
常见错误与边界
- 9月评论中完全隐私、无公共实例等结论与当前官方资料不符,不作为方法依据。