二进制文件的结构验证

2024-04-23

我正在研究正式指定各种二进制流格式的方法,并使用工具检查流是否符合规范。类似于 XSD+任何 XML 验证工具。或者就像在二进制级别上工作的极其复杂的 grep 表达式(最好不是 - 这真的很难阅读)。

有人知道有用的规范/工具吗?

[理由:我们每天都会收到许多第三方生成的二进制文件,并且很多时候他们使用不良工具来生成无效文件。我们想给他们一个可以用作验证器的工具,并且我们不想为每种格式编写特定的工具。]


如果您认为 Java 的 .class 文件文档是规范的一个很好的示例,请重新考虑查看 Preon。前子是完全捕获它 http://fisheye3.atlassian.com/browse/preon/trunk/preon-samples/preon-sample-bytecode/src/main/java/nl/flotsam/preon/sample/bytecode/ClassFile.java?r=52,并生成类似的文档this http://preon.flotsam.nl/classfile.html.

实际上还有一些其他举措可以捕获二进制编码文件的“语法”。 ASN.1 很有用,但如果您打算捕获(例如)Java 类文件,它不会给您带来很大帮助。 BSDL、Flavor、BFlavor 和其他一些计划也是如此。问题是:有一百万种方法来编码二进制数据,有很多二进制压缩技术,我认为这意味着将会有never是完全捕获它的东西,除非语言本身是可扩展的。

谷歌协议缓冲区基本上也有同样的问题。它定义了类似 Corba 的 CDR 的东西,只要您不需要更高级的东西,它就很好。 Google 协议缓冲区不允许您捕获 Java 的类文件格式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

二进制文件的结构验证 的相关文章

  • 验证 TextBox 中的文本更改

    我已经在 WinForm 中的文本框上实现了验证规则 并且效果很好 但是 只有当我跳出该字段时 它才会检查验证 我希望它在框中输入任何内容以及每次内容发生变化时立即进行检查 我还希望它在 WinForm 打开后立即检查验证 我记得最近通过设
  • 在状态更改时从 asp.net 的验证器获取事件到 jquery

    如果我的页面的验证器更改其状态 我希望在 jquery 中触发一个事件 这是我的用例 在地址表单中 验证器全部被隐藏 如果我提交表格 就会显示出来 现在我想触发一个 jQuery 函数 它用红色边框渲染所有行 不是输入字段 而是它们的父行
  • 使用 CoffeeScript 以编程方式检查复选框

    如何以编程方式检查 Coffeescript 中的复选框 我知道在 Javascript 中 我可以使用这个 myElement checked true 我可以在 Coffeescript 中执行类似以下操作吗 myElement che
  • 自定义 jquery 验证和不显眼的 JavaScript

    我正在尝试编写一个自定义验证 如果在提交表单时文本区域中存在 html 则会给出错误 我有以下内容 它不起作用 我不知道为什么 我也不明白不引人注目的部分 有人可以告诉我如何做到这一点 因为我看到其他有它的例子 文本区域有一个类 note
  • 将输入类型数限制为角度 2 中的小数点后 2 位

    我在一个html页面上有很多输入框 我想限制用户输入小数点后两位后的任何数字 目前尝试应用 html 5 input Step 0 00 但不起作用 任何打字稿解决方案也可以 请参阅以下指令的演示Plnkr https plnkr co e
  • ASP.NET WebForms:短路验证

    我有一个正在验证的网格文本框
  • AngularJS 的验证策略

    我正在评估 AngularJS 到目前为止我对它非常感兴趣 但是验证方面缺少一些东西 可用的选项 例如内置机制 http docs angularjs org guide forms和AngularUI 倡议 http angular ui
  • Laravel 验证 - 输入必须是数组中的项目之一

    Laravel 5 中是否有内置验证器来检查值是否在我的白名单值数组中 例如 rules field name gt required in array yes no maybe There s in http laravel com do
  • 如何将png二进制数据放入img标签中并将其显示为图像?

    我正在用这个 ajax type GET url template bump1 purse png datatype image png success function data var reader new FileReader rea
  • 我的 ViewModel 列表中每个项目的数据验证

    要使用正则表达式进行验证 我通常这样做 In my ViewModel RegularExpression MyRegex ErrorMessageResourceName MyErrorMessage public string MyFi
  • 我需要在 header("Location: http://localhost/..."); 之后使用 exit 吗?

    我正在创建一个脚本来验证表单 并且我问自己一个问题 当我使用标头 参见下面的示例 时 我需要立即使用 exit 吗 我的意思是 使用 header 是否也意味着它默认退出 因此我不需要使用命令 exit cancel button clic
  • 奇怪的 0x0D 被添加到我的二进制文件中

    我有这个奇怪的问题 我将 16 个字符写入一个二进制文件 然后写入 3 个整数 但是当我使用某些二进制文件查看器打开文件时 我看到添加了一个额外的字节 等于0x0D 这是我的代码 for i 0 i lt 16 i if i lt strl
  • 两个 primefaces 日历组件验证

    我有一个表格JSF 2我使用双字段来指定日期范围 这样做的目的是不让用户选择第二个日期之前的第一个日期 所以我想在发送表单之前执行验证 使用p calendar成分 我所做的是将验证器绑定到第二个日历输入 以便在内部访问第一个组件并比较日期
  • Angular 自定义异步验证器保持挂起状态

    我有一个自定义验证器 可以验证用户的电子邮件是否唯一 我在 stackoverflow 和 internet 上搜索了相关主题 但没有帮助 当我在表单中提供输入 发送请求 时 请求保持待处理状态并且不会解析 我已经在邮递员中测试了后端 它按
  • typo3 extbase:验证表单

    我创建了一个简单的 订阅新闻通讯 表单
  • 如何在 Windows 窗体上将 CausesValidation 设置为 false 以关闭[Xbox?

    我已经将取消按钮上的 CausesValidation 设置为 false 并且它可以工作 bool IsCancelBtnClicked false private void EmployeeIDtextBox Validating ob
  • 如何使用 hibernate JPA 2 以二进制形式存储 uuid

    我有一个关于通过休眠持久化 JPA2 在数据库中以二进制形式存储字符串uuid的问题 我现在正在使用这段代码 private UUID id Id Type type uuid char GeneratedValue generator s
  • 如何为 HTML 验证提供自定义验证错误消息?

    当我使用默认 HTML 验证时 它会显示默认错误消息 这不是我想向客户显示的 我需要自定义消息并为每个验证提供不同的信息 例如最小 最大 类型和要求 例如 该字段为必填项 值不匹配 参考传统的HTML代码
  • 将二进制文件转换为图像

    我需要找到一种将二进制文件转换为图像的快速方法 二进制文件由 N 个NN 矩阵 我想将 0 与一种颜色关联 将 1 与另一种颜色关联 我需要对超过 1000 个二进制文件执行此操作 如果可能的话 我想避免使用 MatLab 有没有任何工具
  • 为什么 -INT_MIN = INT_MIN 在有符号的二进制补码表示中?

    我仍然没有找到为什么最低的有符号负数没有等效的有符号正数的原因 为简单起见 我的意思是 3 位二进制数 100 是 4 但我们不能有符号格式的正 4 因为我们不能 它溢出了 那么我们如何知道补码 1000 是 4 1000 0000 是 1

随机推荐

  • 如何检测 android RecyclerView 中的 OverScroll?

    我尝试覆盖 onOverScrolled 但它没有被触发 public class MyRecyclerView extends RecyclerView public MyRecyclerView NonNull Context cont
  • 将 ed25519 私钥 ssh 转换为 RSA 私钥

    我正在寻找使用将 ed25519 私钥转换为 rsa 私钥ssh keygen I found 这个有用的指南 https man openbsd org ssh keygen但我无法弄清楚如何指定输入格式为 ed25519 并且导出格式应
  • 用 C++ 发出声音(嘟嘟声)

    如何用c 使硬件发出蜂鸣声 打印特殊字符 ASCII BEL 代码7 cout lt lt a Source https bytes com topic c answers 127539 making computer speaker be
  • 如何在align环境中标记每个方程?

    我想知道如何在对齐环境中标记每个方程 例如 begin align label eq lnnonspbb lambda i mu i 0 mu i xi i 0 lambda i y i w T x i b 1 xi i 0 end ali
  • 我可以 POST 和 GET 到同一个 PHP 页面吗

    例如 我想知道是否可以在同一个 php 页面上进行 GET 和 POST 我想将数据发送到 http www example com my php 所以首先是 GET http www example com my php task dos
  • 使用VBS脚本检查字符串是否包含特定字符

    我的脚本正在做以下几点 检索所有我选择的文件夹文件 按日期对它们进行分类 从最近的到较早的 在窗口中显示它们 这是我的 VBS 脚本 我检索它here http codes sources commentcamarche net sourc
  • tkinter .after() 秒和分

    大家好 我在 tkinter 中制作计时器时遇到问题 但我无法使用time sleep 所以我用 after 我有新问题 我输入了一个条目 我希望条目编号为 60 在设定时间之后 将写入一条文本 内容如下 gt gt time is ove
  • Excel 单元格值作为 SQL 查询 where 语句

    我对 SQL 很陌生 我想使用此查询将数据从 SQL Server 导入到 Excel SELECT Model Factory TargetTime TotalEvalMins FROM AMSView WHERE WeekNumber
  • CoreImage坐标系

    I have CVPixelBufferRef从一个AVAsset 我正在尝试申请CIFilter到它 我用这些行 CVPixelBufferRef pixelBuffer CVPixelBufferRef newPixelBuffer e
  • 有条件地设置对象属性

    是否有一些根据条件设置属性的语法 data userId 7 actionId 36 express myCondition true null does not work I want express要么设置为一个值 要么根本不设置 即
  • ListView.builder 在颤振中按像素底部溢出

    这就是我使用的方式ListView builder它被纳入Column with Expanded小部件 我尝试了一些解决方案 但它们不起作用 这是一个动态列表 return Container child Column crossAxis
  • 从 Visual Studio 运行时,STARTUPINFO.wShowWindow 为 0

    我在调试名为 Notepad2 的开源记事本替代品中的功能时偶然发现了一个问题 更具体地说 是一个名为 Notepad2 的更新版本 Notepad2 mod https github com XhmikosR notepad2 mod 它
  • 无法执行dex:多个dex文件定义Lcom/google/android/gms/ads/AdActivity;

    我正在尝试在我的应用程序中使用谷歌播放服务 我在我的应用程序和 BaseGameUtils 中都引用了 google play services 库 并且我无法执行 dex 多个 dex 文件定义 Lcom google android g
  • CFP 对 /Library/Preferences 的引用

    我在系统偏好设置中使用了 prefpane 带有授权锁 我需要了解我的偏好并写信给 Library Preferences 但是 每当我尝试将首选项同步到kCFPreferencesAnyUser and kCFPreferencesCur
  • Windows().Activate 超出范围错误

    我的宏中有一些代码如下 ChDir File pth Workbooks Open filename File pth open tkt Workbooks Open filename File pth closed tkt ActiveS
  • 从 xml 文件中获取所有 img 标签(jquery)

    我有以下 xml 文件
  • 将属性映射到react-redux中的状态

    我有一个使用的组件state向用户提供数据 例如 div this state variableInState div 该组件可以调度一些方法 例如onClick行动 我目前正在使用react redux an connect映射方法sto
  • 如何自定义 Grails Spring Security Core 2 登录/注销控制器和视图?

    我正在使用新的 Grails Spring Security Core 2 0 插件 并且想知道如何自定义登录视图和 LoginController LogoutController 该插件的早期版本生成了这些文件 但现在看来我必须将它们从
  • 如何根据 1 小时间隔获取时间段

    我想将时间段存储在数组列表中 我有开始时间和结束时间 根据开始时间 它应该创建时间段 例如 如果开始时间是 09 00AM 结束时间是 21 00PM 那么它应该添加到 arraylist 中 如下所示 上午 09 00 10 00 AM
  • 二进制文件的结构验证

    我正在研究正式指定各种二进制流格式的方法 并使用工具检查流是否符合规范 类似于 XSD 任何 XML 验证工具 或者就像在二进制级别上工作的极其复杂的 grep 表达式 最好不是 这真的很难阅读 有人知道有用的规范 工具吗 理由 我们每天都