Capturing the iccMAX calculatorElement: A Case Study on Format Design

Vijay H. Kothari, Prashant Anantharaman, Sean W. Smith, B. Hitaj, Prashanth Mundkur, N. Shankar, Letitia W. Li, Iavor S. Diatchki, William Harris
{"title":"Capturing the iccMAX calculatorElement: A Case Study on Format Design","authors":"Vijay H. Kothari, Prashant Anantharaman, Sean W. Smith, B. Hitaj, Prashanth Mundkur, N. Shankar, Letitia W. Li, Iavor S. Diatchki, William Harris","doi":"10.1109/spw54247.2022.9833859","DOIUrl":null,"url":null,"abstract":"ICC profiles are widely used to provide faithful digital color reproduction across a variety of devices, such as monitors, printers, and cameras. In this paper, we document our efforts on reviewing and identifying security issues with the calculatorElement description from the recent iccMAX specification (ICC.2:2019), which expands upon the ICC v4 specification (ICC.1:2010). The iccMAX calculatorElement, which captures a calculator function through a stack-based computational approach, was designed with security in mind. We analyzed the iccMAX calculatorElement using a variety of approaches that utilized: the proof assistant PVS, the theorem-proving language ACL2, the data description language DaeDaLus, and tools tied to the data description language Parsley. Bringing the tools of formal data description, theorem proving, and static analysis to a non-trivial real-world specification has shed light on both the tools and the specification. This exercise has led us to discover numerous bugs within the specification, to identify specification improvements, to identify flaws with a demo implementation, and to recognize ways that we can improve our own tools. Additionally, this particular case study has broader implications for those who work with specification, data description languages, and parsers. In this paper, we document our work on this exercise and relay our key findings.","PeriodicalId":334852,"journal":{"name":"2022 IEEE Security and Privacy Workshops (SPW)","volume":"47 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 IEEE Security and Privacy Workshops (SPW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/spw54247.2022.9833859","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

ICC profiles are widely used to provide faithful digital color reproduction across a variety of devices, such as monitors, printers, and cameras. In this paper, we document our efforts on reviewing and identifying security issues with the calculatorElement description from the recent iccMAX specification (ICC.2:2019), which expands upon the ICC v4 specification (ICC.1:2010). The iccMAX calculatorElement, which captures a calculator function through a stack-based computational approach, was designed with security in mind. We analyzed the iccMAX calculatorElement using a variety of approaches that utilized: the proof assistant PVS, the theorem-proving language ACL2, the data description language DaeDaLus, and tools tied to the data description language Parsley. Bringing the tools of formal data description, theorem proving, and static analysis to a non-trivial real-world specification has shed light on both the tools and the specification. This exercise has led us to discover numerous bugs within the specification, to identify specification improvements, to identify flaws with a demo implementation, and to recognize ways that we can improve our own tools. Additionally, this particular case study has broader implications for those who work with specification, data description languages, and parsers. In this paper, we document our work on this exercise and relay our key findings.
捕获iccMAX计算元素:格式设计的案例研究
ICC配置文件被广泛用于在各种设备(如监视器、打印机和相机)上提供忠实的数字色彩再现。在本文中,我们记录了我们在最近的iccMAX规范(ICC.2:2019)中使用calculatelement描述审查和识别安全问题的努力,该规范扩展了ICC v4规范(ICC.1:2010)。iccMAX calculatelement通过基于堆栈的计算方法捕获计算器功能,在设计时考虑了安全性。我们使用多种方法分析iccMAX calculatorElement,这些方法包括:证明助手PVS、定理证明语言ACL2、数据描述语言DaeDaLus以及与数据描述语言Parsley相关的工具。将正式的数据描述、定理证明和静态分析工具引入到一个重要的现实世界规范中,可以让人们更清楚地了解这些工具和规范。这个练习使我们发现了规范中的许多错误,确定了规范的改进,确定了演示实现的缺陷,并认识到我们可以改进我们自己的工具的方法。此外,这个特殊的案例研究对于使用规范、数据描述语言和解析器的人员具有更广泛的含义。在本文中,我们记录了我们在这项工作中的工作,并传达了我们的主要发现。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信