眼镜sca(眼镜测试的sca指什么)

来源:配镜咨询网 时间:2023-10-18 14:10:02 责编:配镜顾问 人气:

验光单怎么看?字母S、C代表什么?1分钟带你看懂报告单

每次带孩子到眼科医院验光后

眼镜sca(眼镜测试的sca指什么)

医生都会把检查结果附在病历本

R、L、VD、PD、S、C、A……

这些看着像密码一样的字符和数字

让小朋友和家长们充满了疑惑

为了帮助大家更好地了解自己和孩子的眼镜度数

今天,教大家一分钟看懂验光单

下图是在武昌艾格眼科医院做完电脑验光后的一张完整的验光单:

01

验光单最上方的信息是做检查的日期时间和姓名信息。

02

“R”表示右眼,“L”表示左眼。

在下方的数据分别为左右眼的数据。

03

屈光数据:S、C、A

“S”是指球镜度数,也就是近视或远视度数(“+”指远视;“-”指近视),比如:-1.25代表近视125度。

“C”是指柱镜度数,也就是散光度,(数值前面的“+”指远视散光;“-”指近视散光)比如:-0.50代表近视散光50度。

“A”是指散光轴向,有散光才有散光轴向,散光轴向数值高低与散光的严重程度没有太大的关系。

为了保证检查结果的准确性,每只眼睛的检测一般会连测3次,最后的结果是取3次检测结果的平均值,就是建议矫正的屈光度数,仅具有参考价值。

04

“VD”是指镜眼距,在视力检查中,VD=12.00,即我们平常戴眼镜时镜片后顶点到眼球角膜前面的距离。

“PD”是指瞳距,代表两眼间瞳孔中心的距离。

现在咱们再来看看这位朋友的验光单,就可以得出结论啦:

可以看出,这是近视+散光的小伙伴一枚吖!

TA右眼近视275度散光100度;左眼近视325度散光50度。

有这个验光单,就可以直接用来配眼镜了吗?

不不不~这个数据只是普通验光结果,普通验光≠医学验光

普通验光一般是依据电脑验光得出屈光度数,操作方法和步骤都相对简单。这种情况下测出的度数并不是特别准确的,它只能对屈光状态作出初步的筛选,不能以结果作为验光的标准。

如果直接按照这个处方配镜,仅仅保证了戴眼镜时能看清物体,但容易出现头晕、视疲劳等情况,散光轴位不准,还易造成斜视、弱视。

医学验光是检查光线入射眼球后的聚集情况,它以正视眼状态为标准,测出受检眼与正视眼间的聚散差异程度,并根据患者的眼部检查、屈光状态、眼位、调节力、视功能、年龄、职业、用眼习惯等多项诊断指标而给出的科学处方,直接关系到所配眼镜的准确性和舒适性。医学验光后配镜能让患者看清物体的同时拥有更舒适的体验。

在专业的眼科医院,普通电脑验光是包含在医学验光流程中的一个检查项目。

更多眼健康科普欢迎关注头条号:

武汉武昌艾格眼科医院

软件成分分析(SCA)安全测试技术

1、什么是SCASCA(SfwCiiAi)软件成分分析,通俗的理解就是通过分析软件包含的一些信息和特征来实现对该软件的识别、管理、追踪的技术。我们知道在当今软件开发中,引入开源软件(注1)到你的项目中,避免重复造轮子是大家都再熟悉不过的了,比如开源库中开源软件按每年21%速度在增长(来源F报告),开源安全威胁成为企业组织无法回避的话题,而应用SCA技术对应用程序进行安全检测,实现安全管理是最行之有效的方法之一。

2、基本原理1.SCA理论上来说是一种通用的分析方法,可以对任何开发语言对象进行分析,Jv、C/C++、G、Ph、JvSi等等,它对关注的对象是从文件层面的文件内容,以及文件与文件之间的关联关系以及彼此组合成目标的过程细节。从SCA分析的目标程序形式上分,既可以是源代码也可以是编译出来的各种类型的二进制文件,分析的数据对象对程序架构,编译方式都是不敏感的,比如:类名称、方法/函数名称、常量字符串等等,不管目标程序运行在x86平台还是ARM平台,不管是wiw程序还是Lix程序,都是一样的,简而言之SCA是一种跨开发语言的应用程序分析技术。

2.SCA分析过程:首先对目标源代码或二进制文件进行解压,并从文件中提取特征,再对特征进行识别和分析,获得各个部分的关系,从而获得应用程序的画像—–组件名称+版本号,进而关联出存在的已知漏洞清单。

3.由于SCA分析过程中不需要把目标程序运行起来,因此具有分析过程对外部依赖少,分析全面,快捷、效率高的优点;

3、业界TOPSCA工具分析根据F最新SCA报告,F通过10个维度(注3)对不同工具进行打分,最后根据综合得分评选出如下业界TOP10SCA工具魔力象限图):

注:图片和数据引用来自F报告

3.1工具概览分析1.TOP10SCA工具中有5款支持软件包(注2)开源软件SCA检查能力(/S/V/Jf/GiL),其他工具只支持源代码SCA检查能力。

2.5款支持软件包SCA检查工具中,对C/C++、Jv、.N语言支持的比较好,但对G、h、JvSi语言支持能力偏弱,比如:支持的组件对象中前面3种语言占大头90%+,相应的检测率也高,而G语言的组件检出率则低很多。

3.SCA已从主要用作对开源软件的检测向应用程序的典型编码问题检测趋势扩展,比如V工具,它能提供了对诸如缓冲器溢出、命令行注入、死锁、重复释放、整形数溢出、UAF、格式化字符串漏洞,SQL注入等典型编码问题的检测能力。

4、影响SCA分析准确性的因素分析1.从SCA原理可以知道影响分析准确性的因素分两个方面:其一是SCA工具支持组件的数量和检测算法,其二是应用程序引用开源软件的方式。

2.因为SCA工具是根据样本组件特征来匹配被测程序中的特征来判断应用程序是否引用该组件的,因此支持组件的数量越多,那么检测率也就越高,支持的组件数量越少,越会导致检测遗漏;另外检测算法和特征设计是否合理也直接影响到分析的准确性和分析效率,不同SCA工具厂商有不同的解决方案,就好比在手机上识别指纹/人脸一样,不同厂商识别的灵敏度和准确度都不一样。

3.应用程序在引用开源软件时,不同的应用程序即使引用同一个组件也存在引用不同的功能,引用功能的多少也各不相同,这样带来的结果就是在应用程序中包含该组件的特征数量也是大小不同的,引用功能多包含的特征一般也多,引用的功能少包含的特征也少。而应用程序包含组件特征的多少直接影响到SCA工具的检测的准确性,组件特征越少SCA工具检测越困难,因此即使两个不同应用都引用了相同组件,可能一个应用可以检测到,另外一个应用则无法检测出该组件。这种场景对SCA工具检测二进制文件尤其明显。

4.由于存在上述SCA分析准确性,在极限情况下如果无法检测出组件,那么也就无法知道应用程序中是否存在该组件的漏洞了。

5、总结:1.不管是源代码文件的SCA检测工具还是二进制文件的SCA检测工具,他们是一种互补的关系,各有各的优缺点,比如二进制文件的SCA检测能发现构建过程中工具链引入的安全问题,而源代码的SCA则不能,SWi事件就很好的说明了这一点。

2.目前SCA工具检测开源软件的已知漏洞是基于组件名称+版本号来关联出已知漏洞的,对部分编译场景(只有部分组件代码被编译到二进制文件中)和h打补丁场景(漏洞已修复),误报率高。

3.SCA工具扫描效率和准确性是一对矛盾体,这是工具厂商需要权衡考虑的地方,而既能提升准确率又不会降低扫描效率的技术永远是SCA工具厂商研究的课题和追求的目标。

注1:T10开源软件编程语言:JvSi(51%)、C++(10%)、Jv(7%)、Ph(7%)、R(%5)、G(4%)、C(4%)、PHP(4%)、TSi(4%)、C(3%)、P(2%)、Sh(1%)注2:软件包是指产品用来安装、运行的发布文件,里面包含了产品编译好的可以运行的二进制文件,比如./.j/.x/./.

网安加·百家讲坛 | SCA平台分析与研究

作者简介:肖文棣,OWASP中国广东分会负责人、网安加社区特聘专家,现任某外企安全架构师,负责应用安全设计、管理和评审等工作。

SCA介绍SCA定义

SCA,英文全称是SfwCiiAi,译作软件成分分析。它是通过检测软件的依赖项,包括直接依赖与间接依赖,从软件许可证、已知安全漏洞以及软件的可维护性等方面来评估软件的安全。

SCA平台比较

根据F2019年Q2的分析报告,WhiS与BkDk属于领导者地位。

F的评价体系如下图:

总共分为3个维度,17个功能点,全面评价一个SCA平台的优劣,我在后面的研究中也参考了部分评价体系,但我发现并不是F描述的就是最准确的,还要自己通过实际测试才能发现自己合适的SCA平台。

F提出的三个维度是现有功能、产品策略和市场占有率,下面进行简单评述:

现有功能的维度包括10个功能点:

1.软件许可证风险管理,这个功能点在于能够识别软件许可证的风险;

2.漏洞识别,这个功能点在于能识别常见的软件漏洞,会参考CVE,NVD等漏洞库,但也有厂商自定义漏洞库;

3.主动漏洞发现和管理,这个功能点在于1D漏洞的主动发现和告警;

4.策略管理,这个功能点在于定义自己的策略,比如没有高危漏洞以及高风险的软件许可,违反策略就会引发告警等动作;

5.SDLC集成,这个功能点在于与SDLC流程的其他工具集成;

6.容器和无服务器扫描,这个功能点在于集成容器镜像扫描功能以及无服务器本书扫描的功能;

7.审计报告,这个功能点在于提供审计报告的类型是否覆盖主流的审计报告要求;

8.风险评估报告,这个功能点在于提供一个项目风险评估的报告,对风险进行量化打分;

9.修复速度报告,这个功能点在于提供一个漏洞修复的进展报告,包括漏洞发现时长,漏洞平均修复时长等;

10.供应商自我分析,这个功能点在于厂商是否提供自己的数据库,有自己的研究团队,而不仅仅使用CVE,NVD等通用漏洞库。

产品策略的维度包括4个功能点:

1.产品策略,这个功能点是产品的销售策略;

2.市场方法,这个功能点是产品的市场销售方法;

3.产品路线图,这个功能点是产品的路线图;

4.产品培训,这个功能点是产品培训,包括语音,视频,在线等等。

市场占有率的维度包括3个功能点:

1.现有安装数,这个功能点就是考虑当前用户数;

2.增长速度,这功能点是考虑用户的增长率;

3.企业盈利能力,这功能点就是考虑产品盈利情况。

从上面的分析可以看到,产品策略维度和市场占有率维度与SCA的技术本身不是强相关的,所以我们看F的报告的时候要明白。我的研究主要集中在现有功能的维度。然后就算现有功能的分析也要参考自己的实际测试结果,不能只是听F等咨询机构的报告。

SCA技术分析SCA的技术原理

根据BkDk公开的报告,SCA工具可检查包管理器、清单文件、源代码、二进制文件、容器镜像等。识别出的开源会被编制成物料清单(BOM),然后与各种数据库进行比较,包括国家漏洞数据库(NVD)和S拥有自己的内部漏洞数据库BkDk知识库,以发现代码相关许可证并分析总体代码质量(版本控制、历史贡献等)。通过将BOM与数据库进行比较,安全团队能够识别关键的安全和法律漏洞,并迅速采取措施加以修复。总的来说就是发现现有组件清单,然后与数据库进行比对。所有开源解决方案和商业解决方案都离不开这两步。

SCA的核心指标

通过研究,我总结出SCA的三个核心指标,分别是组件检出率、组件检出准确率以及语言覆盖率。

1.组件检出率

组件的检出率受到很多因素的影响,其中一个因素是组件的嵌套层级。组件包括直接依赖的组件以及间接依赖的组件,所谓间接依赖的组件就是组件的组件,这里就包括了嵌套层级。很多SCA软件都有依赖层级嵌套数的设置,我看到过的最高层级是10级,但是普通3-5级就足够了。

组件的检出率还有一个重要因素是检出对象,可以包括包管理器、清单文件、二进制文件、代码片段等,其中包管理器是最容易的,代码片段是最难的。

2.组件检出准确率

检出组件是一回事,准确地检出组件是另外一回事。在我的研究过程中发现,有的SCA平台检出了组件,但是组件的版本信息是错误的,这样就导致一系列误报和漏报。一般组件比对技术有包文件的版本号,还有组件本身的MD5指纹信息,如果涉及到代码片段,估计就要考虑全文检测,模糊匹配,甚至要使用到AI技术进行辅助。

3.语言覆盖率

新语言不断出现,现有语言也有新的功能引入,SCA平台能不能以最快的速度适配这些变化就影响了语言覆盖率。在我的研究中发现,不是所有语言都可以被SCA平台覆盖,需要参考SCA平台提供的语言列表,然后进行验证。

根据SCA的核心指标,然后我们会用三个考量指标去考虑SCA平台的能力,分别是软件漏洞、软件许可证以及组件运维风险。

(1)软件漏洞数

这个指标主要考量SCA平台在对于同一组件检出率下,软件漏洞的覆盖度。一般的开源软件可能只覆盖了CVE库或者国家漏洞库,但是商业软件一般都会建立自己的漏洞库,会主动从开源软件的代码变更记录中分析是否存在漏洞,或者会主动审计开源项目的代码。有的SCA平台还会根据自己的研究成果调整CVE漏洞的风险级别,比如将高危的调整为中危的,这就非常考究SCA平台的技术实力了。

(2)软件许可证数

这个指标主要考量SCA平台的软件许可证的覆盖率,市场上的软件许可证过千种,类似BkDk就号称跟踪了2,650多个开源许可证。通过分析组件的许可证使用情况,就可以帮助技术团队判断许可证的法律风险。一般开源SCA,如DChk不支持软件许可证的检测,DTk据说要做这方面的工作,但是还没有看到实际进展。

(3)组件运维风险

这个指标主要考虑SCA平台对于组件的跟踪情况。我最早了解到这个指标是在BkDk平台上,该指标可以预警该组件是否活跃,安全问题是否得到及时修复,技术团队是否还及时对该组件进行维护,如果该组件活跃度低,说明运维风险就高。开发团队就要及时跟进这个运维风险来决定是否可以继续使用该组件,或者寻找其他替代方案。

SCA平台的关键功能和趋势根据我的研究,除了三个考量指标外,SCA平台还需要考虑下面关键功能,这些同时也是未来SCA平台的趋势:

1.超融合

SCA平台与容器镜像漏洞管理、供应链安全、无服务器漏洞扫描等平台进行融合,现在有类似AST的概念,未来会成为趋势。这个指标也是F的考量指标。

2.以其他平台的集成

SCA平台需要与SDLC过程的融合,特别是Nx等中央组件管理库的融合,安全风险管控要左移。还有与CI/CD的集成,要将策略与扫描结果进行配置,然后根据策略和扫描结果进行处置。

3.安全规则策略管理

SCA平台需要支持自定义规则,这些规则应该至少包括三个考量指标,比如定义不允许有高危的软件漏洞,高危的软件许可和高危的软件运维风险,如果出现任何一个,就应该触发规则进行告警或者阻断。

4.漏洞路径展示

SCA平台应该直观准确地展示出漏洞组件的出处,可以使用图表或者路径的方式表示。这个功能和基础,但是实际研究中发现很多平台做得并不好。

5.漏洞修复建议

SCA平台应该针对风险提出有效的修改意见,现在有长期修复建议和短期修复建议,有个很有意思的现象,长期修复建议会要求组件版本回退到没有发现漏洞的版本上,与以前要求的升级到最新版本矛盾,这个趋势值得研究。

6.统一的管理界面

SCA平台需要提供一个统一的管理界面,需要提供一个全局的视图。如果考虑一家公司有上万个代码库,你就会知道这个功能有多么重要。而且需要看到风险的总体态势,风险趋势变化等。

7.主动漏洞预警

SCA平台应该主动定时扫描当前的组件,如果有新的1D漏洞,要及时告警。这个也是F的考量指标。

8.与缺陷管理平台的集成

SCA平台需要与JIRA等漏洞缺陷管理平台直接集成,或者与Bi类似的漏洞集中管理平台对接。

9.开发组件的过滤

SCA平台应该能够过滤掉开发时候使用的组件,而这些组件不会运行在生产环境中,这样可以减少误报。

10.源代码库集成

SCA平台应该能够直接与源代码库集成,比如Gih、GiL、BiBk等。研究发现,这个会成为趋势,现在很多平台做得并不好。

11.项目管理

SCA平台应该有比较好的项目管理功能,支持项目分层级管理,特别对于拥有成千上万的项目的公司来说,这个功能是必须的。

12.用户管理

SCA平台应该与公司的SSO集成,支持人员分组管理,可以与公司的组织架构进行映射,这个功能对于大公司来说也是非常重要的,而且用户权限应该与项目管理结合。

13.角色管理

SCA平台应该角色自定义,这个需要与项目管理、用户管理结合。权限管理应该是基于角色进行管理。

14.附加信息支持

SCA平台应该支持用户自定义字段,这些字段用于项目管理,可以通过T的标签去实现。

15.IDE集成

SCA平台应该与主流的IDE集成,并提供相应的插件。很多SCA平台这块做的并不是很好。

16.CLI集成

SCA平台应该提供CLI,这个方便进行测试和调试。

17.API支持

SCA平台应该提供RESTAPI支持,这个是趋势,对于DvSO来说,这个是必须的,通过调用API,公司很容易做二次开发。

18.SBOM支持

SCA平台应该提供SBOM支持,包括导出SBOM清单和导入SBOM清单。导出SBOM清单很多SCA平台已经支持,但是导入SBOM清单并没有,但是这个是趋势,特别是在合规审计中非常必要。

19.组件库查询服务

SCA平台应该开放组件库查询服务,开发团队和安全团队很容易通过组件版本号就可以查询到该组件的安全风险情况,对于新组件的引入咨询评估非常重要。

总结本文介绍了SCA的原理,以及F对于SCA平台的评价以及评价体系,然后对SCA技术原理进行分析,提炼出SCA的三个核心指标和三个考量指标,然后根据企业实际的情况,提炼出19个重要功能和趋势,希望给SCA平台企业以及希望使用SCA平台的企业,包括希望自研SCA平台的企业带来帮助。

-E-