HTTPS全链路解析:从证书申请到Nginx配置(含国密SM2实战)|网络安全

news2026/3/20 1:20:49
一、引言当“小绿锁”成为法律底线1150字2023年某电商平台因未启用HTTPS用户支付密码在传输中被窃取导致2000账户资金损失。法院判决书明确指出“被告未采取符合国家标准的加密传输措施违反《网络安全法》第二十二条及《个人信息保护法》第五十一条应承担主要责任。”这不是技术疏忽而是法律责任的明确界定。国家互联网信息办公室《网络数据安全管理条例征求意见稿》第十九条强调“重要数据处理者向境外提供数据前应当通过国家网信部门组织的数据出境安全评估...传输过程应采用加密等安全措施。”1.1 为什么HTTPS是开发者不可推卸的责任法律强制《网络安全等级保护基本要求》GB/T 22239-20198.1.3.1“应采用密码技术保证通信过程中数据的保密性。”《个人信息保护法》第五十一条“采取加密、去标识化等安全措施...防止未经授权的访问。”业务刚需Chrome 90将HTTP标记为“不安全”影响用户信任微信小程序、支付宝小程序强制要求HTTPSSEO权重Google/Baidu优先收录HTTPS站点技术演进HTTP/2、HTTP/3仅支持HTTPSPWA渐进式Web应用必须HTTPS1.2 本文核心价值与阅读指南本文以开发者视角拆解HTTPS全链路原理图解TLS 1.3握手流程、证书链验证机制附Wireshark抓包分析证书申请Lets Encrypt免费证书国内加速方案、CFCA国密证书申请全流程Nginx配置标准TLS 1.2/1.3配置 国密SM2双证书配置政务系统必备验证体系SSL Labs A评级配置、本地openssl测试命令避坑指南证书过期预警、混合内容修复、HSTS误配恢复方案法律合规等保2.0对应条款、密码法合规要点阅读建议初级开发者精读第2、3章证书申请基础配置中级开发者重点看第4章国密SM2实战第5章验证测试架构师通读全文用于制定企业HTTPS规范运维工程师收藏第3章Nginx配置模板第6章自查清单重要提示本文所有证书申请、配置测试均在个人域名如dev.example.com完成。任何对非授权域名的操作均属违法行为请严格遵守《网络安全法》第27条。二、HTTPS原理深度解析不止是“小绿锁”1850字2.1 TLS握手全流程图解TLS 1.3简化版关键步骤解析ClientHello客户端发送支持的TLS版本TLS 1.2/1.3、密码套件列表包含Server Name Indication (SNI)指定访问的域名支持虚拟主机ServerHello服务器选择最高兼容版本优先TLS 1.3选定密码套件如TLS_AES_128_GCM_SHA256证书链验证服务器发送服务器证书 → 中间CA证书 → 根CA证书浏览器验证证书是否在有效期内域名是否匹配Subject Alternative Name证书链是否可信根证书在系统信任库中密钥交换TLS 1.3采用ECDHE椭圆曲线迪菲-赫尔曼密钥交换前向保密PFS每次会话生成临时密钥即使私钥泄露历史通信仍安全Finished双方用协商密钥加密验证消息确认握手成功2.2 证书链验证机制附浏览器实操为什么需要中间证书根CA证书如DigiCert Root预置在操作系统/浏览器中数量有限中间CA证书由根CA签发用于签发服务器证书实现责任隔离缺失中间证书 证书链断裂 浏览器警告浏览器验证实操Chrome访问任意HTTPS网站如https://www.baidu.com点击地址栏锁图标 → “证书”查看“证书路径”百度网证书 ├─ 中间CAGlobalSign Organization Validation CA - SHA256 - G2 └─ 根CAGlobalSign Root CA关键检查点证书状态应显示“此证书没有问题”有效期避免“证书已过期”警告主题备用名称SAN包含访问的域名如http://www.baidu.com, *.baidu.com2.3 国密算法与国际算法对比项目国际标准RSA/ECC国密标准SM2/SM9合规要求签名算法RSA 2048/4096, ECDSASM2基于ECC《密码法》第24条政务/金融系统优先采用国密加密算法AES-128/256-GCMSM4分组密码等保2.0三级以上系统需支持国密哈希算法SHA256, SHA384SM3256位《GM/T 0001-2012》强制标准证书格式X.509X.509扩展字段支持SM2CFCA等国内CA已支持浏览器支持全球通用360安全浏览器、红莲花浏览器需用户端支持为什么政务系统必须用国密《密码法》第二十四条“国家对关键信息基础设施的密码应用实行安全性评估...优先使用自主可控的密码技术。”等保2.0GB/T 22239-2019附录F“应采用国家密码管理局核准的密码算法和密码产品。”2.4 常见误区澄清误区1“HTTPS绝对安全”→ HTTPS仅保障传输层加密无法防御XSS、SQL注入等应用层漏洞误区2“免费证书不安全”→ Lets Encrypt证书由ISRG根证书签发全球浏览器信任安全性与付费证书无异误区3“国密证书浏览器不支持”→ 360安全浏览器9.0、红莲花浏览器已内置国密根证书政务内网环境全覆盖法律红线根据《商用密码管理条例》第二十一条使用未经国家密码管理局核准的密码算法或产品将面临行政处罚。国密证书必须通过CFCA等具备资质的CA机构申请。三、证书申请实战三类场景全覆盖2200字3.1 场景一个人/测试环境Lets Encrypt免费证书为什么选Lets Encrypt免费、自动化、90天有效期强制更新保障安全由Linux基金会支持全球信任度高国内加速方案使用acme.sh 阿里云DNS API避免境外验证超时手把手申请CentOS 7 Nginx环境# 1. 安装acme.sh国内镜像加速 curl -sL https://github.com/acmesh-official/acme.sh/wiki/Preferred-Mirror | bash source ~/.bashrc # 2. 申请证书DNS API方式无需停机 # 前提域名DNS解析在阿里云需获取AccessKey export Ali_Keyyour_access_key_id export Ali_Secretyour_access_key_secret # 申请泛域名证书*.example.com acme.sh --issue --dns dns_ali -d example.com -d *.example.com # 3. 安装证书到Nginx目录自动创建符号链接 acme.sh --install-cert -d example.com \ --key-file /etc/nginx/ssl/example.com.key \ --fullchain-file /etc/nginx/ssl/example.com.cer \ --reloadcmd systemctl reload nginx # 4. 验证证书查看有效期 openssl x509 -in /etc/nginx/ssl/example.com.cer -noout -dates # notBeforeMar 19 09:23:45 2026 GMT # notAfterJun 17 09:23:45 2026 GMT # 5. 设置自动续期acme.sh已自动添加cron crontab -l | grep acme.sh # 0 0 * * * /root/.acme.sh/acme.sh --cron --home /root/.acme.sh /dev/null避坑指南问题原因解决方案DNS验证失败阿里云AccessKey无DNS权限为子账号授权AliyunDNSFullAccess证书未自动续期cron服务未启动systemctl enable crond systemctl start crond浏览器提示“证书不信任”未安装中间证书acme.sh默认生成fullchain.cer含中间证书申请泛域名失败DNS解析未生效等待DNS全球生效约10分钟再重试技巧测试环境可用--staging参数申请测试证书避免触发Lets Encrypt速率限制acme.sh --issue --staging --dns dns_ali -d test.example.com3.2 场景二企业生产环境CFCA商业证书为什么选CFCA中国金融认证中心CFCA是国家授权的权威CA支持OV组织验证、EV扩展验证证书提升企业可信度提供国密SM2证书满足等保2.0三级要求申请全流程以OV证书为例生成CSR证书签名请求# 生成私钥2048位RSA openssl genrsa -out example.com.key 2048 # 生成CSR注意Common Name填主域名SAN填所有子域名 openssl req -new -key example.com.key -out example.com.csr -subj /CCN/STBeijing/LBeijing/OYour Company/CNexample.com \ -addext subjectAltName DNS:example.com,DNS:www.example.com,DNS:api.example.com关键填写项Organization (O)公司全称需与营业执照一致Organizational Unit (OU)部门如“技术部”Common Name (CN)主域名example.comSubject Alternative Name (SAN)所有需要保护的子域名提交CSR至CFCA访问CFCA官网https://www.cfca.com.cn选择“SSL证书” → “企业型OV证书”上传CSR文件填写企业信息营业执照、联系人支付认证费用约1000-3000元/年企业身份验证CFCA客服电话核实企业信息约1个工作日验证通过后证书将发送至申请邮箱下载与部署邮箱收到example.com.cer服务器证书 chain.cer中间证书合并证书链cat example.com.cer chain.cer fullchain.cer部署至Nginx见第4章配置国密SM2证书特殊流程生成SM2密钥对# 需OpenSSL 3.0支持国密 openssl genpkey -algorithm SM2 -pkeyopt sm2_id:1234567812345678 -out sm2.key openssl req -new -key sm2.key -out sm2.csr -subj /CCN/OYour Company/CNexample.com向CFCA申请SM2证书选择“国密SSL证书”产品上传SM2 CSR文件验证流程同OV证书获取证书文件sm2.cerSM2服务器证书sm2_chain.cerSM2中间证书rsa.cerRSA备用证书兼容旧浏览器法律红线根据《电子签名法》第十四条可靠的电子签名与手写签名具有同等法律效力。商业证书申请需提供真实企业信息伪造材料将承担法律责任。3.3 场景三政务/金融系统国密SM2双证书配置为什么需要双证书现状国产浏览器360、红莲花支持SM2但Chrome/Firefox暂不支持解决方案服务器同时部署SM2证书 RSA证书根据客户端能力自动切换国家标准《GM/T 0024-2014 SSL VPN技术规范》要求双证书架构双证书申请与部署流程分别申请两类证书SM2证书通过CFCA申请流程见3.2RSA证书通过Lets Encrypt或CFCA申请Nginx国密模块编译# 下载Nginx国密补丁由江南科友提供 wget https://github.com/duoani/ngx_ssl_sm/archive/refs/tags/v1.24.0.tar.gz tar -zxvf v1.24.0.tar.gz # 编译Nginx需OpenSSL 3.0 ./configure --with-http_ssl_module \ --add-module/path/to/ngx_ssl_sm-1.24.0 \ --with-openssl/path/to/openssl-3.0.0 make make install双证书配置关键server { listen 443 ssl; server_name example.com; # RSA证书兼容国际浏览器 ssl_certificate /etc/nginx/ssl/rsa_fullchain.cer; ssl_certificate_key /etc/nginx/ssl/rsa.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256; # SM2证书国密浏览器 ssl_sm_certificate /etc/nginx/ssl/sm2_fullchain.cer; ssl_sm_certificate_key /etc/nginx/ssl/sm2.key; ssl_sm_ciphers ECC-SM2-SM4-CBC-SM3; # HSTS仅对RSA连接生效国密浏览器可能不支持 add_header Strict-Transport-Security max-age63072000; includeSubDomains always; location / { proxy_pass http://backend; } }客户端自动识别原理国密浏览器如360安全浏览器在ClientHello中携带GMSSL扩展Nginx国密模块检测到扩展后自动使用SM2证书握手普通浏览器无此扩展使用RSA证书政务系统部署注意事项必须通过等保测评部署前需由具备资质的测评机构进行密码应用安全性评估证书管理私钥存储于硬件密码机HSM或国密UKey严禁私钥明文存储于服务器日志审计记录证书使用日志签发时间、有效期、操作人满足《网络安全法》第二十一条“留存网络日志不少于六个月”法律红线根据《密码法》第三十一条关键信息基础设施运营者采购网络产品和服务可能影响国家安全的应当通过国家网信部门会同国务院有关部门组织的国家安全审查。国密证书部署需纳入安全审查范围。四、Nginx HTTPS配置详解从基础到国密2100字4.1 标准TLS 1.2/1.3配置生产环境实测server { listen 443 ssl http2; server_name example.com www.example.com; # 证书配置Lets Encrypt路径 ssl_certificate /etc/nginx/ssl/fullchain.cer; # 证书链含中间证书 ssl_certificate_key /etc/nginx/ssl/example.com.key; # 私钥 # 协议与密码套件等保2.0合规 ssl_protocols TLSv1.2 TLSv1.3; # 禁用TLS 1.1及以下 ssl_ciphers TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384; ssl_prefer_server_ciphers on; # 优先使用服务器密码套件 # HSTS强制浏览器使用HTTPS add_header Strict-Transport-Security max-age63072000; includeSubDomains; preload always; # OCSP Stapling提升证书验证速度减少延迟 ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate /etc/nginx/ssl/fullchain.cer; # 用于验证OCSP响应 resolver 223.5.5.5 114.114.114.114 valid300s; # 国内DNS阿里DNS114DNS resolver_timeout 5s; # 会话复用提升性能 ssl_session_cache shared:SSL:10m; # 10MB缓存约4000个会话 ssl_session_timeout 10m; # 会话有效期10分钟 # 安全头防点击劫持、MIME嗅探 add_header X-Frame-Options SAMEORIGIN always; add_header X-Content-Type-Options nosniff always; add_header X-XSS-Protection 1; modeblock always; # 反向代理配置 location / { proxy_pass http://backend_app; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } # 静态资源缓存 location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { expires 1y; add_header Cache-Control public, immutable; } } # HTTP强制跳转HTTPS避免混合内容 server { listen 80; server_name example.com www.example.com; return 301 https://$server_name$request_uri; }4.2 配置项深度解析配置项作用等保2.0对应条款ssl_protocols禁用弱协议SSLv3/TLS1.0/1.18.1.3.1 通信传输ssl_ciphers仅启用强加密套件AES-GCM/ECDHE8.1.3.1 通信传输ssl_staplingOCSP Stapling避免客户端直连CA8.1.3.2 通信完整性HSTS强制浏览器使用HTTPS防SSL Stripping8.1.3.1 通信保密性X-Frame-Options防点击劫持Clickjacking8.1.4.3 应用安全4.3 国密SM2双证书配置政务系统必备# 前提Nginx已编译国密模块见3.3节 server { listen 443 ssl; server_name example.gov.cn; # RSA证书兼容国际浏览器 ssl_certificate /etc/nginx/ssl/rsa_fullchain.cer; ssl_certificate_key /etc/nginx/ssl/rsa.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384; # SM2证书国密浏览器 ssl_sm_certificate /etc/nginx/ssl/sm2_fullchain.cer; ssl_sm_certificate_key /etc/nginx/ssl/sm2.key; ssl_sm_ciphers ECC-SM2-SM4-CBC-SM3:ECC-SM2-SM4-GCM-SM3; # 国密专用头部分政务系统要求 add_header X-GM-SSL enabled always; location / { proxy_pass http://backend_gov; proxy_set_header X-Forwarded-Proto $scheme; } }4.4 常见配置陷阱与修复问题现象根本原因修复方案浏览器提示“您的连接不是私密连接”证书链缺失中间证书合并fullchain.cer服务器证书中间证书SSL Labs评分B级启用弱密码套件如RC4移除ssl_ciphers中的弱算法移动端访问慢未启用OCSP Stapling配置ssl_stapling resolverHSTS误配导致无法访问HTTPmax-age设置过大且includeSubDomains临时用http://example.com/.well-known/hsts-purge清除需提前配置国密浏览器无法访问未部署SM2证书或Nginx未编译国密模块按3.3节重新部署4.5 配置验证三步法本地openssl测试# 检查证书链 openssl s_client -connect example.com:443 -showcerts /dev/null # 验证TLS 1.2支持 openssl s_client -connect example.com:443 -tls1_2 /dev/null # 检查OCSP Stapling openssl s_client -connect example.com:443 -status /dev/null 21 | grep -A 5 OCSP response在线SSL Labs扫描访问 https://www.ssllabs.com/ssltest/输入域名等待扫描完成目标评级A或AB级以下需整改关键检查项Protocol Support仅TLS 1.2/1.3Key ExchangeForward Secrecy (PFS) 支持Certificate证书链完整、无过期浏览器验证ChromeF12 → Security → View certificate检查Connection应显示“TLS 1.3或TLS 1.2Certificate有效期、域名匹配、证书路径完整法律红线根据《网络安全等级保护条例》第十五条三级以上系统必须使用国家密码管理局核准的密码产品。Nginx国密模块需通过商用密码产品认证部署前应查验产品认证证书。五、Spring Boot内嵌Tomcat HTTPS配置1200字5.1 标准配置application.ymlserver: port: 443 ssl: enabled: true protocol: TLSv1.2 ciphers: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 key-store: classpath:keystore.p12 # PKCS12格式密钥库 key-store-password: your_keystore_password # 密钥库密码 key-store-type: PKCS12 key-alias: tomcat # 密钥别名 # 禁用HTTP强制HTTPS http2: enabled: true # 启用HTTP/2需TLS 1.2 # 重定向HTTP到HTTPS需额外配置Connector management: server: port: 8443 ssl: enabled: true5.2 密钥库生成与转换# 1. 从Lets Encrypt证书生成PKCS12密钥库 openssl pkcs12 -export \ -in /etc/nginx/ssl/fullchain.cer \ -inkey /etc/nginx/ssl/example.com.key \ -out keystore.p12 \ -name tomcat \ -CAfile /etc/nginx/ssl/fullchain.cer \ -caname root \ -password pass:your_password # 2. 验证密钥库内容 keytool -list -v -keystore keystore.p12 -storetype PKCS12 -storepass your_password # 3. 可选转换为JKS格式旧版Tomcat要求 keytool -importkeystore \ -srckeystore keystore.p12 \ -srcstoretype PKCS12 \ -destkeystore keystore.jks \ -deststoretype JKS5.3 HTTP自动跳转HTTPSJava ConfigConfiguration public class HttpsRedirectConfig { Bean public ServletWebServerFactory servletContainer() { TomcatServletWebServerFactory tomcat new TomcatServletWebServerFactory() { Override protected void postProcessContext(Context context) { SecurityConstraint securityConstraint new SecurityConstraint(); securityConstraint.setUserConstraint(CONFIDENTIAL); SecurityCollection collection new SecurityCollection(); collection.addPattern(/*); securityConstraint.addCollection(collection); context.addConstraint(securityConstraint); } }; // 添加HTTP Connector80端口 tomcat.addAdditionalTomcatConnectors(redirectConnector()); return tomcat; } private Connector redirectConnector() { Connector connector new Connector(TomcatServletWebServerFactory.DEFAULT_PROTOCOL); connector.setScheme(http); connector.setPort(80); connector.setSecure(false); connector.setRedirectPort(443); // 重定向到HTTPS端口 return connector; } }5.4 国密SM2支持需额外依赖!-- pom.xml 添加国密支持 -- dependency groupIdorg.bouncycastle/groupId artifactIdbcprov-jdk15on/artifactId version1.70/version !-- 支持SM2/SM3/SM4 -- /dependency dependency groupIdorg.bouncycastle/groupId artifactIdbcpkix-jdk15on/artifactId version1.70/version /dependency// SM2密钥库加载示例简化 KeyStore keyStore KeyStore.getInstance(PKCS12); try (InputStream in new FileInputStream(sm2_keystore.p12)) { keyStore.load(in, password.toCharArray()); } // 配置SSLContext使用Bouncy Castle Provider Security.addProvider(new BouncyCastleProvider()); SSLContext sslContext SSLContext.getInstance(TLS, BC); ...注意Spring Boot内嵌Tomcat对国密支持有限政务系统建议使用Nginx反向代理国密模块方案见第4章六、HTTPS配置自查清单打印贴工位650字证书管理证书是否在有效期内设置到期前30天预警证书链是否完整服务器证书中间证书私钥是否加密存储权限设为600是否配置自动续期Lets Encrypt需cron国密系统是否部署SM2RSA双证书协议与加密是否禁用SSLv3/TLS 1.0/1.1密码套件是否仅包含强算法AES-GCM/ECDHE是否启用前向保密PFS是否配置OCSP Stapling国密系统是否启用SM2/SM4/SM3安全头是否配置HSTSStrict-Transport-Security是否设置X-Frame-Options防点击劫持是否设置X-Content-Type-Options防MIME嗅探是否设置Content-Security-Policy防XSS运维监控是否监控证书到期时间PrometheusAlertmanager是否记录SSL握手失败日志是否定期用SSL Labs扫描评级是否测试国密浏览器兼容性360安全浏览器法律合规证书是否通过正规CA申请拒绝自签名用于生产国密系统是否使用核准密码产品是否留存证书管理日志≥6个月是否通过等保测评/密码应用安全性评估法律红线根据《网络安全事件应急预案》证书过期导致服务中断属于网络安全事件需按流程上报。建议设置双重预警到期前60天30天。七、结语安全是持续的过程而非一次性配置350字HTTPS不是“配置一次永久安全”的魔法开关。证书会过期需建立监控预警机制协议会演进TLS 1.4已在路上攻击会升级需持续关注CVE漏洞法规会更新需定期复核合规要求真正的安全源于持续的警惕与行动✅ 每月检查证书有效期✅ 每季度扫描SSL配置评级✅ 每年复核等保合规要求✅ 每次代码发布验证HTTPS配置正如《网络安全法》开篇所言“保障网络安全维护网络空间主权和国家安全...”这不仅是法律要求更是每一位开发者的专业信仰。愿你配置的每一个ssl_certificate都成为用户信任的基石愿你设置的每一个Strict-Transport-Security都化作数字世界的守护盾。 行动指南与互动福利立即行动5分钟1️⃣检查现有项目打开浏览器访问你的测试站 → 点击锁图标 → 查看证书有效期若用Lets Encrypt执行acme.sh --list确认续期任务2️⃣配置监控添加证书到期监控推荐UptimeRobot免费监控设置企业微信/钉钉告警到期前30天3️⃣收藏本文打印《HTTPS配置自查清单》贴工位 代码有温度安全有底线。愿你守护的每一行配置都经得起时间与信任的考验。

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

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

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…