观成科技:证券行业加密业务安全风险监测与防御技术研究

摘要:解决证券⾏业加密流量威胁问题、加密流量中的应⽤⻛险问题,对若⼲证券⾏业的实际流量内容进⾏调研分析, 分析了证券⾏业加密流量⾯临的合规性⻛险和加密协议及证书本⾝存在的⻛险、以及可能存在的外部加密流量威 胁,并提出防御策略和措施。

关键字:证券加密业务、加密应用、加密流量、商用密码安全评估、加密风险、加密威胁、监测防御

一、概述

数据爆发式增长的DT(Data technology)时代,加密技术是数据传输的重要保护手段。随着互联网和企业内部流量场景的加密化趋势快速增长,证券行业也面临着更加迫切的加密需求。证券行业涉及的加密业务种类繁多,因此如何实现有效的安全运维、风险监控和威胁检测成为亟待解决的问题。

据谷歌透明报告统计,94%的⾕歌浏览器流量为加密流量。据观成科技评估,企业内部加密流量占比也达到80%。证券行业性质特殊,涉及国家金融安全、客户个人隐私和财产安全,加密需求相比其他业务场景更突出、更急迫,因此证券行业流量加密化的趋势更加明显和普遍。证券行业业务繁杂,包涵用户鉴权业务、交易结算业务和资产管理业务等,涉及的加密应用众多,这些加密应用产生大量不同加密协议、不同加密算法的加密流量。

从政策和法规层面考察,为保障国家商业机密安全和数据安全,国家制定和颁布了一系列政策法规,包括《网络安全法》、《密码法》等。具体到金融行业,2022年11月25日,中国人民银行正式发布《金融行业信息系统商用密码应用》系列金融行业标准,包括《金融行业信息系统商用密码应用 基本要求》(JR/T 0255—2022)、《金融行业信息系统商用密码应用 测评要求》(JR/T 0256—2022)和《金融行业信息系统商用密码应用 测评过程指南》(JR/T 0257—2022)三项金融行业标准。上述法律、行业标准针对证券行业加密应用的密码使用、加密传输等进行了详细规范,并对网络安全等级保护、商用密码安全评估提出了落实和监管要求。

考虑到⽹络安全的对抗特性,安全⻛险管理与防御技术必将与相应的攻击技术交替攀升。因此除等保、密评等固化要求外,证券⾏业必须考虑⾃⾝业务中存在的其他加密⻛险,避免因此类额外⻛险带来的系统和业务完整性、机密性、 可⽤性、可控性及不可否认性破坏,做到防患于未然。除此之外,伴随证券业务加密化增多的趋势,各种使⽤加密流量进⾏攻击、窃密和远程控制的恶意威胁也逐年递增。根据知名 零信任⼚商Zscaler历年统计,截⾄2022年,超过85%的⽹络攻击⾏为采⽤的是加密⽅式,同⽐2021年增⻓20%。常⻅境 外APT组织攻击绝⼤多数已经转向加密⽅式传递信息,攻防演练场景中常⽤的扫描暴破、漏洞利⽤、远程控制和代理转 发等⼯具也⼤量使⽤各种加密协议进⾏加密。除传统明⽂检测能⼒外,针对加密流量构建加密威胁检测能⼒,也成为证券⾏业亟待解决的问题之⼀。

在本⽂中,我们建议对证券⾏业的加密业务进⾏梳理,明确各类加密协议、加密算法、加密数据格式以及业务特点。在此基础上,评估其合规加密⻛险和其他加密⻛险,并开展⻛险监控与缓解⼯作。同时,针对恶意加密威胁,需要分析恶意 加密流量的特点,并根据证券⾏业业务特点构建对应加密威 胁检测防线,以确保证券业务的安全、稳定运⾏。后续章节将 深⼊探讨上述问题,并提供进⼀步的研究建议。

二、证券行业加密业务调研

为调研掌握证券⾏业现有加密流量概况,观成科技联合 华泰证券、海通证券,以部分业务流量作为分析样本,数据分 析情况如下:

1.整体概况

数据采集时间为2023年6⽉12⽇,共采集5000万帧。其中IP帧49999774帧,⾮IP帧226帧,⾮IP帧包含ARP(23帧)、 LLC(130帧)、LLDP(42帧)和SLOW(31帧)等链路协议。IP帧中 约 9 7 . 3 6 % 为 T C P 协 议 ,U D P占 2 .5 7 % ,另 外 有 I CM P、O S P F、V R R P等协议,占⽐极⼩。以数据量统计,TCP协议占⽐为98.82%,UDP占⽐为1.17%。IP帧数、字节数情况表如下所⽰:

表1 IP协议分布情况

值得注意的是,有297帧,共415916字节不明数据,需要进一步研究其数据性质。

2.协议分布调研

  1. TCP协议分布

样本流量中TCP协议承载公开标准协议65个,约占TCP协 议总帧数的52.14%,总数据量的33.55%。占⽐较⾼的15项协议分类为远程登录协议、数据库协议、数据传输协议、设备 管理协议和加密传输协议。头部15个协议仅有两个⾮加密协 议,其他均为加密或部分加密。这也印证了上⽂中关于加密 流量占⽐较⼤的描述。TCP协议占⽐详表如下所⽰:

表2 TCP协议分布情况

以HTTP协议为例,经过统计发现,正常承载⽂字、图像和媒体业务的HTTP协议流量只占HTTP总流量的48%,有2.33%的HTTP载荷⽆法识别格式,可能是HTTP隧道利⽤。剩余约50%的HTTP流量,实际上是作为隧道承载其他

协议,常⻅协议有SSL、POP、HTTP等,其中绝⼤部分是SSL加密流量。

表3 HTTP协议应⽤分布情况

除公开标准协议外,在样本流量的TCP通信中,占据最⼤⽐重的是私有协议流量,约占总数据量的66.45%,总帧数的47.86%。考虑到样本流量中绝⼤多数是TCP流量,这也意味着约三分之⼆的流量是各种业务、应⽤所产⽣的私有协议数据,这些数据是哪些应⽤产⽣的,数据如何加密、是否有加密⻛险和安全⻛险,都有待梳理研究。

  1. UDP协议分布

样本流量中UDP占⽐较少,仅占总数据量的2.57%。UDP流量中公开标准协议有15个,按分类统计头部协议包含通信控制协议、数据库协议、数据传输协议、设备管理协议、域名解析协议和其他功能性协议,其他协议占⽐均不超过UDP协议总数据量的1%。除公开标准协议外,69.70%的UDP流量⽆法识别上层协议,应为各类证券业务所产⽣的私有协议数据,其中部分数据可能加密。UDP协议占⽐详表如下所⽰:

表4 UDP协议分布情况

综合上述针对TCP、UDP两⼤传输层协议的分析可知,样本流量具有如下两个显著特点:

•在公开标准协议中,加密协议数据量占⽐超过70%;

•近三分之⼆的流量为私有协议数据,其中包括私有加密流量。按照50%的私有协议数据被加密估算,业务流量中加密流量占总数据量约60%。

3、TLS协议加密流量调研

  1. 应⽤分析

样本流量中TLS协议数据约为540M字节,共27824次加密会话,涉及Server Name Indicator共61个,其中⼤多数为公开⽹⻚。因此判断样本流量中的TLS协议数据为互联⽹浏览或操作系统、软件升级流量。在TLS协议数据中,我们识别了⼀系列加密资产,如企业邮箱服务、云计算平台、云开发平台和统⼀数平台等,同时也发现了⼀系列与证券⾏业相关的应⽤信息,如各类证券分析应⽤、证券交易应⽤、证券信息平台等。

  1. ⻛险分析

本次调研针对TLS流量⻛险也进⾏了初步评估,评估重点主要放在TLS证书和TLS协议规范⽅⾯,针对⼊联和出联两种情况进⾏评估。

综合⼊联与出联TLS协议两类流量分析,⽬前业务流量中TLS协议数据存在的主要⻛险包括:

•使⽤⾃签名证书:⽆法验证⾝份,可能⾯临中间⼈攻击;

•证书链校验失败:⽆法验证⾝份,浏览器告警;

•证书过期:⽆法验证⾝份,浏览器告警;

•证书即将过期:如果不及时更新则证书将会失效;

•证书SAN与客⼾端SNI不匹配:证书颁发或服务器配置 错误;

•客⼾端⽀持弱密码套件:使⽤较⽼SSL库,需要更新;

•服务端选择弱密码套件:数据加密强度弱,可被快速破译;

•客⼾端SNI泄露服务端IP:信息泄露⻛险;

•加密套件与证书不匹配:TLS协议实现或服务器配置错误。

从数据量上看,⼊联流量中,涉及⾃⾝资产的⻛险流量占⽐较⼤,约为47%,外联流量异常较少,约为7%。这种分布差异与企业内部⽹络服务器配置不规范、证书不规范等因素相关。通过⻛险评估,我们也初步识别了内部⽹络中存在的各 类加密⻛险,为下⼀步规避⻛险⼯作打下良好基础。

4.调研小结

本次调研针对两家证券公司部分业务流量进⾏分析,初步厘清了内⽹加密与⾮加密流量协议类型、占⽐情况,并针对TLS协议加密流量应⽤和⻛险情况进⾏了初步分析。经过调研,我们有如下认识:

证券⾏业业务流量加密化趋势明显。在所调研的流量中,存在⼤量标准加密协议数据和私有协议加密数据。梳理清楚其中不明或未知加密流量格式、性质和业务归属,对于实现加密流量安全运维管控⾄关重要。

证券⾏业业务流量中存在⼀定加密⻛险。这些⻛险可能是因为内部应⽤研发实现失误、加密服务配置错误以及加密基础设施更新不及时等因素引起,如不及时排查解决,将会造成数据泄露、被破译等严重后果,需要引起⾜够重视。

三、证券行业加密业务面临的安全风险及应对策略

1.合规加密风险

在证券⾏业中,加密应⽤和加密服务的安全合规性评估⾄关重要。随着密码“⼀法三规⼀条例”(《密码法》、《国务院办公厅关于印发国家政务信息化项⽬建设管理办法的通知》、《贯彻落实⽹络安全等级保护制度和关键信息基础设施安全保护制度的指导意⻅》、《关键信息基础设施安全保护条例(征求意⻅稿)》、《商⽤密码管理条例》)以及国标GB/T39786-2021《信息安全技术信息系统密码应⽤基本要求》的出台,促进了密码产业及技术的发展,商⽤密码技术不断推陈出新,其普及、推⼴与应⽤也随之增⻓。密码使⽤的合规性、正确性、有效性成为了国家及企业关注的重点。《密码法》第⼆⼗七条规定法律、⾏政法规和国家有关规定要求使⽤商⽤密码进⾏保护的关键信息基础设施,其运营者应当使⽤商 ⽤密码进⾏保护,⾃⾏或者委托商⽤密码检测机构开展商⽤ 密码应⽤安全性评估。商⽤密码应⽤安全性评估(密评)是指在采⽤商⽤密码技术、产品和服务集成建设的⽹络和信息系统中,对其密码应⽤的合规性、正确性和有效性进⾏评估。

加密应⽤⽅⾯,商⽤密码评估主要涉及客⼾隐私加密、交易数据加密、财务数据加密等⽅⾯的评估,确保核⼼业务加密合规。加密服务⽅⾯,商⽤密码评估主要涉及以下⼏点:

•通信协议评估:需要规范使⽤符合密码评估要求的安全通信协议,以保证业务通信过程中的安全性。

•加密算法评估:需要选择⾜够强的加密算法对数据进 ⾏加密。如是否按照相关法规和规范使⽤国密算法等。

•访问控制和审安全审计评估:需要建⽴完善的访问控制机制,对员⼯和客⼾的访问进⾏严格控制,并记录访问⽇志和操作记录,以便对安全事件进⾏审计和追溯。商⽤密码评估需要对访问控制和审计机制的可靠性和安全性进⾏评估,确保访问控制和审计的有效性和完整性。

根据相关标准逐条映射,可归纳出密码评估需求对应加密资产的评估点和评估⽅法,部分评估项如下图所⽰:

图1 密码安全评估⽅法

如果商⽤密码评估结果表明存在不符合项,证券公司需要及时采取措施进⾏修复,以保证客⼾和公司的数据安全。此外,商⽤密码评估结果也可以帮助证券公司选择更加安全和可靠的加密技术和服务,有效保障业务正常运转。

2.其他加密风险

如前所述,除等保、密评等固化要求外,证券行业必须考虑自身业务中存在的其他加密风险,避免因此类额外风险带来的系统和业务完整性、机密性、可用性、可控性及不可否认性破坏,做到防患于未然。这类额外加密风险主要来自如下3个方面。

  1. 加密证书安全风险

加密证书是PKI体系最重要的一环,用于保护数据安全和隐私。证书通常由数字证书机构颁发,用于验证证书持有者的身份并授权他们访问受保护的资源。加密证书的安全风险主要包括以下几个方面:

有效性风险:是指服务端或客户端证书有效性异常,包括证书已经过期、尚未生效、即将过期和有效期过长等风险。

信任链风险:是指证书颁发过程中的异常,包括证书链校验失败、证书自签名、叶子证书可颁发等风险。

机密性风险:是指用于身份验证的公钥算法或签名算法存在异常,包括使用RSA、DSA或ECC算法的密钥过短、使用MD5、SHA1等已被证明存在弱点的摘要算法等。在需要使用国密证书的场景下,如果证书未采用国密算法,也将产生异常。此外,各类加密算法参数必须正确,如RSA公钥模数必须是大质数乘积等,否则将产生异常。

完整性风险:是指用于验证的身份信息和证书扩展等信息完整。如证书使用者通用名、国家、州、城市、部门等信息如果为空,则表示证书信息不完整。必要的证书扩展如密钥用法(Key Usage)扩展也不能缺失。

一致性风险:是指证书信息与使用场景存在不一致的异常。如某些协议场景下,要求证书具备数字签名功能,但是在对应的证书密钥用法列表中,并不包含数字签名(Digital Signature)用法,此时将产生异常。

  1. 加密协议安全风险

TLS、SSH、RDP以及网络层的IPSec等加密协议,大致分为密钥协商和加密会话两大阶段。加密协议安全风险主要考察密钥协商阶段客户端与服务端协商行为,针对其中的异常点进行监控,识别加密协议安全风险。以TLS协议举例,主要包括如下几个方面:

机密性风险:主要包括客户端支持或服务端选择无加密套件、无认证套件和已知存在弱点的弱加密、弱摘要套件。在一些安全性要求较高的场合,还可以检测是否使用支持前向加密的加密套件。除加密套件外,TLS随机数在协议运行中发挥关键作用,如果多次会话中客户端或服务端出现随机数重用、主对方随机数相同和主对方短暂私钥重用等情况,也说明协议运行出现异常。在使用国密的场景下,需要对加密套件是否是国密算法进行检查。

一致性风险:主要包括根据协议规范不应该出现的协商交互。如在RSA密钥交换中出现Server Key Exchange消息,或者在ECDHE交换中未出现Server Key Exchange消息,就表明协商过程出现异常,有可能是服务端配置错误或TLS协议遭到篡改。另外,各类TLS扩展的协商中,如客户端提供ALPN扩展,但服务端并未在客户端支持的应用层协议中选取,也表明协商过程出现异常。

可用性风险:主要包括使用已知存在风险的协议版本等。如使用过低的TLS版本,使用未定义的协议版本,或者在协商过程中支持或使用已被证明存在缺陷的压缩等。

  1. 加密通联安全风险

加密通联风险是指加密业务通联行为可能存在的安全风险。加密通联风险与业务强相关,主要包含如下几个方面:

时间风险:时间风险是指与业务相关的加密通联发生的时间异常。如非交易时段产生加密的交易业务通联,证明交易系统存在异常等。

协议风险:协议风险是指与业务相关的加密通联出现不应出现的协议。如本应密传的业务出现明文协议,表明加密业务遭到破坏或篡改等。

目标风险:目标风险是指与业务相关的访问者或被访问者出现异常。如不应主动外联境外的加密资产发生境外访问,或本地服务被境外地址访问登录等。

流量风险:流量风险是指正常加密业务数据量出现极大变化。如加密服务下载量激增,如果是外部访问,则表明可能存在信息泄露风险,如果是内部访问,可能是内部安全风险等。

3、加密业务安全风险监测防御策略

加密业务安全风险危害严重,为了防范这类风险,关键是做到未雨绸缪,防患于未然。应从如下4个方面着手进行监测与防御:

尽快厘清自有加密资产、加密业务,包含标准加密协议和私有加密协议数据,做到对自己的加密流量了如指掌,才可能做到全面的风险识别。

根据自身加密资产和加密业务特点进行风险梳理,合规加密风险方面,根据国家相应法律、规定进行排查,其他加密风险方面,从加密证书、加密协议和加密通联三方面进行综合考察。针对业务中的私有加密协议,应对加密数据、加密算法等进行分析,识别其中的风险点。

根据第二步梳理的各类风险点,制定缓解措施并有效执行。

综合利用规则、基线、人工智能等技术,持续监控流量中可能新出现的加密业务安全风险。

四、证券行业加密业务面临的加密威胁及应对策略

1.加密攻击概述

证券行业企业面临的加密攻击威胁在网络攻击的多个阶段都有体现,攻击者在初始信息搜集、初始打点、横向移动、命中靶标等各个阶段,均会使用不同的加密通信手段隐藏攻击行为。

信息搜集阶段,攻击者通过互联网搜索引擎对域名和资产进行调查外,还会通过主动探测来收集开放在互联网上的系统服务和API接口信息,对于企业边界产生入联流量,例如针对HTTPS服务进行探测的加密流量。

初始打点阶段,攻击者可能通过对员工的社工钓鱼,以及对暴露资产的暴力破解、漏洞利用等方式攻陷某一台主机。这一阶段,站在企业视角会面临多种入联加密流量威胁,例如针对资产的SSH、RDP暴力破解和针对HTTPS站点的漏洞利用都会产生加密流量。

横向移动阶段,在建立初始据点后,大多数的情况初始据点权限不够或只是作为内网跳板,此时攻击者会进行横向移动持续获取权限。这个过程产生的加密流量可能包括:首先,横向移动技术本身涉及的信息搜集、渗透突破过程,会涉及SSH、RDP扫描暴破、漏洞利用等加密流量;其次,在横向移动的过程中,攻击者不可避免的要维持一条或多条内外连接通道,这类通道可能通过加密反弹木马、部署Webshell提供,也可以通过加密反弹Shell、加密代理转发等实现。

窃密控制阶段,攻击者拿下目标机器权限并成功窃取数据进行回传,会通过TLS木马回连、代理转发、隐蔽隧道等加密流量进行命令与控制、窃密回传等恶意行为。

2.入联加密攻击及防御策略

在渗透和后渗透阶段可能遇到不同的入联加密攻击:

在渗透过程中,加密流量多来自对暴露在互联网上资产的扫描探测与暴力破解,例如HTTPS扫描、漏洞攻击、SSH和RDP用户口令暴力破解等。

在后渗透阶段,获取shell后,会进行一系列持久化预置的动作,例如上传Webshell、正向代理等后门。

这些问题的本质都是对Web服务等业务主机不合常规的访问,所涉及的加密协议以HTTPS为主。针对入联加密攻击行为,通常有两种防御策略:一种是通过串联解密设备将访问Web服务的入联HTTPS流量解密后,还原载荷中的HTTP流量,再经过WAF、IDS等传统明文检测设备进行规则检测;另一种是不解密,直接经过旁路部署的加密流量检测设备,结合人工智能、指纹、流行为等技术,识别隐藏在加密流量中的恶意攻击行为。

入联加密攻击在渗透阶段和后渗透阶段会有不同形式的体现。

在渗透过程中,加密流量多来自对暴露在互联网上资产的扫描探测与暴力破解,例如HTTPS扫描、漏洞攻击、SSH和RDP用户口令暴力破解等。在渗透阶段获取shell后,会进行一系列持久化预置的动作,例如上传Webshell、正向代理等后门。这些问题的本质都是对Web服务等业务主机不合常规的访问,所涉及的加密协议以HTTPS为主。
    针对HTTPS服务的扫描探测、漏洞攻击、Webshell连接等攻击行为,通常有两种防御策略:一种是通过串联解密设备将访问Web服务的入联HTTPS流量解密后,还原载荷中的HTTP流量,再经过WAF、IDS等传统明文检测设备进行规则检测;另一种是不解密,直接经过旁路部署的加密流量检测设备识别隐藏在加密流量中的恶意流行为。
    在不具备解密条件时,可以通过对每一组IP对加密载荷在一个时间区间内时间与空间分布的特性,结合特定数学模型进行验证,初步判断这些流量在行为特征上是否可能存在漏洞扫描、暴力破解等攻击行为。进一步对目标为Web服务的多条TLS流中存在的多次会话进行切割比对,从流量的时空特征的角度入手来对会话做区分,分出哪些是以传输、响应指令为主的流量,哪些是正常的访问浏览。最后,把认为不正常的这类流量再在现有的知识库中做对比以识别出真正的Webshell、正向代理类流量及其相关信息,如:事先搜集、研究、整理得到的工具静态特征、协议指纹进行二次判断,确定此次是否为攻击与攻击使用工具的具体的家族信息。

3.横向移动加密攻击及防御策略

横向移动阶段,主要为已经进入内网后针对内网资产加密服务的扫描探测,与入联阶段大部分相同,防御策略类似,但是由于内网渗透使用的工具与外网渗透有所不同,并且内网中的网络环境更为复杂,很可能有许多行为与扫描暴破类似的正常业务流量,所以要在防御筛查时更加严格,避免产生大量误报。

4.出联威胁加密攻击及防御策略

出联威胁主要涉及到两大类攻击者常用的命令与控制、窃密回传通道:远控木马加密通信和隐蔽隧道通信。

远控木马会使用HTTPS协议加密外联,将恶意流量混在出网的大量正常HTTPS流量中,从而逃避检测,还会利用代理转发、CDN、域前置等技术进一步隐藏其控制端基础设施。

另一大类是加密隐蔽隧道外联,指的是依托于不以加密通信为设计目的的常见标准协议之上,并自行设计加密方式通信的技术。如:利用DNS、ICMP、HTTP和一些特殊端口的TCP/UDP等会被防火墙放行的内对外流量中建立隐蔽隧道出网。

对出联加密通信木马的防御与检测通常可以借助人工智能技术以及限定域指纹、多流行为模型、加密威胁情报等辅助方法有机结合进行出联加密流量检测和预警。对于TCP、UDP、HTTP这类隐蔽隧道,可以通过针对自行设计的加密隧道流量载荷中,必定存在自定义结构的弱点,来设计一类一法对其做出检测和发现。

五、结论

证券行业的业务性质特殊,加密业务相较其他行业更加复杂和多变,因此证券行业对于加密业务的安全风险和威胁检测需求比其他行业更加迫切。在保护这些关键数据安全传输的过程中,证券行业必须应对加密风险监控和加密威胁检测的挑战。
    为了应对这些挑战,有必要对资产和流量中不同类型的加密业务进行梳理,了解其各自的特点与应用场景。在此基础上,实现对合规加密类和其他加密风险的有效识别与防护。面对可能涉及证券行业加密业务的各类攻击场景,如攻防演练场景、APT对抗场景等,证券行业需建立一个覆盖入联、横向、出联全阶段的加密流量综合检测体系。
    综上所述,我们需要针对证券行业的加密业务进行识别、监控和检测予以充分重视。通过全面梳理加密业务、建立完整的风险监控与威胁检测体系,以防范各类安全风险和安全威胁,有力提高数字化时代下的证券行业网络安全防护能力。

参考

1.Zscaler加密攻击报告(2022年)ThreatLabz State of  Encrypted Attacks 2022 Report https://www.zscaler. com /bl o g s / s e c u ri t y - r e s ea r c h / 2 0 2 2 - e n c r yp ted - attacks-report

2.⾕歌透明度报告 Google Transparency Report  https://transparencyreport.google.com

文章转载自证券信息技术研究发展中心,网络安全专刊(第1期)

作者:北京观成科技有限公司、海通证券股份有限公司、华泰证券股份有限公司

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第三方服务提供商的五大风险

亚马逊如何应对网络安全挑战 关键网络安全统计数据和趋势 移动优先世界中安全和隐私策略 当今数字时代网络安全的重要性 用户无法停止犯安全错误的 3 个原因 首席安全官可能过于依赖 EDR/XDR 防御 随着业务流程变得越来越复杂,公司开始转向第三方来提高其提供关…

观察者模式在金融业务中的应用及其框架实现

引言 观察者模式(Observer Pattern)是一种行为设计模式,它定义了一种一对多的依赖关系,使得多个观察者对象同时监听某一个主题对象。当这个主题对象发生变化时,会通知所有观察者对象,使它们能够自动更新。…

Web后端开发之前后端交互

http协议 http ● 超文本传输协议 (HyperText Transfer Protocol)服务器传输超文本到本地浏览器的传送协议 是互联网上应用最为流行的一种网络协议,用于定义客户端浏览器和服务器之间交换数据的过程。 HTTP是一个基于TCP/IP通信协议来传递数据. HTT…

Transformer详解encoder

目录 1. Input Embedding 2. Positional Encoding 3. Multi-Head Attention 4. Add & Norm 5. Feedforward Add & Norm 6.代码展示 (1)layer_norm (2)encoder_layer1 最近刚好梳理了下transformer,今…

文件系统(操作系统实验)

实验内容 (1)在内存中开辟一个虚拟磁盘空间作为文件存储器, 在其上实现一个简单单用户文件系统。 在退出这个文件系统时,应将改虚拟文件系统保存到磁盘上, 以便下次可以将其恢复到内存的虚拟空间中。 (2&…

MySQL-java连接MySQL数据库+JDBC的使用

目录 1.准备所需要资源 2.导入驱动包 3.连接数据库步骤 首先在MySQL中创建好数据库和表 代码实现连接数据库 1.准备所需要资源 1.mysql和驱动包 我用的是5.7的mysql和5.1.49的驱动包,链接放在网盘里,需要的自取 链接:https://pan.bai…

二轴机器人装箱机:重塑物流效率,精准灵活,引领未来装箱新潮流

在现代化物流领域,高效、精准与灵活性无疑是各大企业追求的核心目标。而在这个日益追求自动化的时代,二轴机器人装箱机凭借其较佳的性能和出色的表现,正逐渐成为装箱作业的得力助手,引领着未来装箱新潮流。 一、高效:重…

【自动化测试】Selenium自动化测试框架 | 相关介绍 | Selenium + Java环境搭建 | 常用API的使用

文章目录 自动化测试一、selenium1.相关介绍1.Selenium IDE2.Webdriverwebdriver的工作原理: 3.selenium Grid 2.Selenium Java环境搭建3.常用API的使用1.定位元素2.操作测试对象3.添加等待4.打印信息5.浏览器的操作6.键盘事件7.鼠标事件8.定位一组元素9.多层框架定…

springcloud-config 客户端启用服务发现client的情况下使用metadata中的username和password

为了让spring admin 能正确获取到 spring config的actuator的信息,在eureka的metadata中添加了metadata.user.user metadata.user.password eureka.instance.metadata-map.user.name${spring.security.user.name} eureka.instance.metadata-map.user.password${spr…

HTTP协议和Nginx

一、HTTP协议和Nginx 1.套接字Socket 套接字Socket是进程间通信IPC的一种实现,允许位于不同主机(或同一主机)上不同进程之间进行通信和数据交换,SocketAPI出现于1983年BSD4.2实现在建立通信连接的每一端,进程间的传输…

【单元测试】Controller、Service、Repository 层的单元测试

Controller、Service、Repository 层的单元测试 1.Controller 层的单元测试1.1 创建一个用于测试的控制器1.2 编写测试 2.Service 层的单元测试2.1 创建一个实体类2.2 创建服务类2.3 编写测试 3.Repository 1.Controller 层的单元测试 下面通过实例演示如何在控制器中使用 Moc…

Uniapp 默认demo安装到手机里启动只能看得到底tab无法看到加载内容解决方案

Uniapp 默认demo安装到手机里以后,启动APP只能看到底tab栏,无法看到每个tab页对应的内容,HBuilder会有一些这样的报错信息: Waiting to navigate to: /pages/tabBar/API/API, do not operate continuously: 解决方案:…

OpenCV 调用自定义训练的 YOLO-V8 Onnx 模型

一、YOLO-V8 转 Onnx 在本专栏的前面几篇文章中,我们使用 ultralytics 公司开源发布的 YOLO-V8 模型,分别 Fine-Tuning 实验了 目标检测、关键点检测、分类 任务,实验后发现效果都非常的不错,但是前面的演示都是基于 ultralytics…

SpringBoot + mkcert ,解决本地及局域网(内网)HTTPS访问

本文主要解决访问SpringBoot开发的Web程序,本地及内网系统,需要HTTPS证书的问题。 我测试的版本是,其他版本不确定是否也正常,测试过没问题的小伙伴,可以在评论区将测试过的版本号留下,方便他人参考: <spring-boot.version>2.3.12.RELEASE</spring-boot.vers…

快速将网页封装成APP:小猪APP分发助您一臂之力

你是否曾经有一个绝妙的网页&#xff0c;但苦于无法将其变成手机APP&#xff1f;其实&#xff0c;你并不孤单。越来越多的企业和开发者希望将自己的网站封装成APP&#xff0c;以便更好地接触到移动端用户。我们就来聊聊如何快速将网页封装成APP&#xff0c;并探讨小猪APP分发在…

「C++系列」C++ 数据类型

文章目录 一、C 数据类型二、C 数据类型占位与范围三、类型转换1. 隐式类型转换&#xff08;Automatic Type Conversion&#xff09;2. 显式类型转换&#xff08;Explicit Type Conversion&#xff09;3. 示例代码 四、数据类型案例1. 整型2. 浮点型3. 字符型4. 布尔型5. 枚举类…

《Programming from the Ground Up》阅读笔记:p1-p18

《Programming from the Ground Up》学习第1天&#xff0c;p1-18总结&#xff0c;总计18页。 一、技术总结 1.fetch-execute cycle p9, The CPU reads in instructions from memory one at a time and executes them. This is known as the fetch-execute cycle。 2.genera…

九浅一深Jemalloc5.3.0 -- ①浅*编译调试

目前市面上有不少分析Jemalloc老版本的博文&#xff0c;但5.3.0却少之又少。而且5.3.0的架构与之前的版本也有较大不同&#xff0c;本着“与时俱进”、“由浅入深”的宗旨&#xff0c;我将逐步分析Jemalloc5.3.0的实现。5.3.0的特性请见Releases jemalloc/jemalloc GitHub 另…

fastapi+vue3前后端分离开发第一个案例整理

开发思路 1、使用fastapi开发第一个后端接口 2、使用fastapi解决cors跨域的问题。cors跨域是浏览器的问题&#xff0c;只要使用浏览器&#xff0c;不同IP或者不同端口之间通信&#xff0c;就会存在这个问题。前后端分离是两个服务&#xff0c;端口不一样&#xff0c;所以必须要…

Java单体架构项目_云霄外卖-特殊点

项目介绍&#xff1a; 定位&#xff1a; 专门为餐饮企业&#xff08;餐厅、饭店&#xff09;定制的一款软件商品 分为&#xff1a; 管理端&#xff1a;外卖商家使用 用户端&#xff08;微信小程序&#xff09;&#xff1a;点餐用户使用。 功能架构&#xff1a; &#xff08…