[发明专利]高效地检测用户证书有效
申请号: | 201580067200.1 | 申请日: | 2015-12-17 |
公开(公告)号: | CN107251015B | 公开(公告)日: | 2020-10-27 |
发明(设计)人: | V.马蒂 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/2455 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 高效 检测 用户 证书 | ||
用于检测用户证书的系统包括数据分块器、数据块存储、逐字节检查器、位计数器和证书检查器。数据分块器用于确定数据块。数据块存储用于存储数据块。逐字节检查器用于检查数据块中的每个字节包括适当值。位计数器用于:确定大于或等于阈值字节值的连续字节数;以及在连续字节数大于或等于阈值字节数的情况下,确定与连续字节数相对应的证书地址范围。证书检查器用于确定数据块存储中存储的与证书地址范围相对应的数据是否包括证书。
背景技术
在线软件存储库托管软件开发者的代码。在线软件存储库协助项目共享、协作、版本控制等。软件开发者可以将其代码上传到软件存储库进行共享。代码可以存储在公共存储库、半公共存储库、私有存储库等中。一些软件包括用户证书(例如,用于针对服务对用户进行认证的证书)。用户证书通常采用十六进制数串的形式。不同服务的证书具有不同的区别特性(例如,长度、数字模式、已知数字等)。包括用户证书的代码应当仅被存储而不被公开共享。
附图说明
在下面的详细描述和附图中公开了本发明的各种实施例。
图1是示出网络系统的实施例的框图。
图2是示出服务器系统的实施例的框图。
图3是示出证书确定器的实施例的框图。
图4A是示出数据流的实施例的图示。
图4B是示出美国信息交换标准码(例如,ASCII)表的实施例的图示。
图5是示出用于检测证书的过程的实施例的流程图。
图6是示出用于数据分块器的过程的实施例的流程图。
图7是示出逐字节阈值化器的实施例的流程图。
图8是示出用于确定潜在证书符号的序列是否包括证书的过程的实施例的流程图。
图9A是示出数据流的实施例的图示。
图9B包括示出用于确定在最近N个数据块中是否存在大于或等于最小证书长度的潜在证书符号的序列的过程的实施例的流程图。
具体实施方式
本发明可以以多种方式实现,包括被实现为过程;装置;系统;组合物;体现在计算机可读存储介质上的计算机程序产品;和/或处理器(诸如被配置成执行在耦合到处理器的存储器上存储的和/或由耦合到处理器的存储器提供的指令的处理器)。在本说明书中,这些实现方式或本发明可采取的任何其它形式可以被称为技术。一般而言,所公开的过程的步骤的顺序可以在本发明的范围内更改。除非另有说明,否则诸如处理器或存储器之类被描述为被配置成执行任务的组件可以被实现为在给定时间处被临时地配置成执行所述任务的通用组件或者被制造为执行所述任务的特定组件。如本文所使用的,术语“处理器”指代被配置成处理诸如计算机程序指令之类的数据的一个或多个设备、电路和/或处理核心。
下面提供了本发明的一个或多个实施例的详细描述以及示出本发明的原理的附图。本发明是结合这些实施例来描述的,但是本发明不限于任何实施例。本发明的范围仅由权利要求限制,并且本发明涵盖许多替代、修改和等同物。为了提供对本发明的透彻理解,在下面的描述中阐述了许多具体细节。这些细节被提供用于示例的目的,并且可以根据权利要求在没有这些具体细节中的一些或全部的情况下实现本发明。出于清楚的目的,没有详细描述与本发明相关的技术领域中已知的技术材料,以使得本发明不会被不必要地模糊。
用于检测用户证书的系统包括用于接收数据的输入接口;用于确定数据块的数据分块器;用于存储数据块并响应于数据地址范围提供数据的数据块存储;用于检查数据块的每个字节包括适当值的逐字节检查器;位计数器,用于确定高于阈值的连续位数,并且在连续位数高于阈值位数的情况下确定与连续位数相对应的证书地址范围并将证书地址范围提供给数据块存储;以及证书检查器,用于从数据块存储接收与证书地址范围相对应的数据,并确定所述数据是否包括证书。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580067200.1/2.html,转载请声明来源钻瓜专利网。