检测 StegoPDF 中是不是存在隐藏消息
Posted
技术标签:
【中文标题】检测 StegoPDF 中是不是存在隐藏消息【英文标题】:Detect the presence of hidden messages in a StegoPDF检测 StegoPDF 中是否存在隐藏消息 【发布时间】:2013-11-22 06:42:41 【问题描述】:我已经在 PDF 文档中应用了一种特定的隐写方法。我试图找到这样一个免费的隐写分析工具,可以识别我的 stegoPDF。换句话说,如果我的 stegoPDF 包含隐藏消息,有人可以帮我找到一些能够处理的免费隐写分析软件。
我需要你的帮助和意见。
【问题讨论】:
由于语法的巨大可能性,很容易创建以前没有想到的方法来隐藏 PDF 中的消息。试图为此创建分析工具基本上是徒劳的。 是的,但是不可能从互联网上找到免费的隐写分析工具吗?那么我如何分析我的方法是无法检测到的呢?我如何证明我的 PDF 是否包含隐藏消息? 网上找不到免费的隐写分析工具吗 - 不知道有没有这样的工具。我只是怀疑这些工具的质量(如果它们存在的话)以及它们的输出价值。从本质上讲,如果这样的傻瓜发现了一个计划,那么文件的创建者可能非常愚蠢或不走运。 您好,亲爱的迈克尔,请您帮忙解答我的问题:我正在对 PDF 文档中的文本进行统计研究。很荣幸得到您的意见并回答我的一些问题,以获得最佳答案。 1)段落的两行之间,总是有相同的间隙(距离或空间)吗?这个gap的值是否总是整数? 2) 在同一行中,当文本对齐时,两个单词之间是否总是存在相同的间隙?换句话说,空间是否是恒定的?这个差距是整数吗? 【参考方案1】:回答cmets的问题...
1) 在段落的两行之间,是否总是存在相同的间隙(距离或间距)?这个gap的值总是整数吗?
没有。每个文本块(可以少至一个字符,多至一行)可以从任意位置开始绘制在页面上。即使是定义为前进到下一行的开头并在那里绘制字符串的字符串绘制操作也可以在每个操作之前都有一个更改行高的操作,因此,导致行距离不同。
不,从一行到另一行的前进(就像所有坐标一样)是由浮点值给出的。
因此,您可以逐行隐藏信息。而且由于这里使用了浮点数,因此这些隐藏的信息甚至不需要被感知。
2) 在同一行中,当文本对齐时,两个单词之间是否总是存在相同的间隙?换句话说,空间是否是恒定的?这个gap是整数吗?
在 PDF 中,稍微调整一行中许多字符对之间的距离是很常见的。通常这是为了应用在 PDF 中不会自动完成的字距调整。在这种情况下,单词之间的细微差别不足为奇,即使在文本显得合理的情况下也是如此。
这些间隙也以浮点数(或浮点数乘积之和)的形式给出。
3) 当一个页面包含多个段落时,两个段落之间总是有相同的间隔吗?这个gap的值是整数吗?
由于段落行之间的距离已经可以不同,参见。您的问题 1,段落之间的距离也可能不同,并以浮点数形式给出。
顺便说一句,PDF 不知道段落的概念。两行是属于同一段落还是属于不同段落,对 PDF 页面描述没有影响。
4)对于每个字符(小写或大写),我们可以建立一个关于前一个字符和下一个字符之间的距离的统计信息吗?注意空间。
你这是什么意思?您当然可以获取 PDF(只要它允许提取文本)并创建此类统计信息。
PS:包括来自 cmets 的澄清:
我的意思是大写字符和小写字符之间的间隔总是相同的吗?例如:Ac & Pc ,,,A 和 c 之间的间隙是否与 P 和 c 之间的间隙相同?
首先,您应该知道,PDF 页面描述中关于字符的唯一信息是宽度值。在页面上排列单个文本块的字符时,PDF 在排列下一个字符之前为一个字符保留这个宽度,然后是字符间距宽度。此字符间距值可以通过特殊运算符设置。 (这些值当然要乘以字体大小(仅宽度)、水平缩放因子以及当前变换矩阵和文本矩阵在书写方向上隐含的缩放)。
因此,单个文本块的字符中为一个字符保留的宽度与为下一个字符保留的宽度之间的距离始终是当前字符间距值(在应用缩放之前)。
尽管如此,如果人物画以不同程度填充它们的宽度,则距离可能显示不同。这取决于前面提到的宽度值如何对应于所使用的字体文件。这些字体文件可能嵌入在 PDF 中或取自本地计算机资源。
通常选择宽度值以生成相当和谐的外观,而无需进一步调整距离。不过,当然也可以使这些值需要更正以使外观更漂亮,并在此处隐藏信息。
当文本对齐时,单词之间的间隙是否保持不变(在应用 Kerning 过程之前)?
如果对齐是通过上述字符间距值和单词间距值(类似地额外添加到空格字符宽度)生成的,并且您查看同一块中的单词之间的间隙或使用生成的块中的间隙相同的间距值,单词之间的间距(缩放前)是相同的。
如果以其他方式进行对齐,距离可能会有所不同。
有关如何计算字形位移的详细信息,这是公式(文本和转换矩阵仍有待应用):
(第 9.4.4 节,ISO 32000-1:2008)
【讨论】:
非常感谢!!关于问题4,我的意思是大写字符和小写字符之间的差距总是相同的吗?例如: Ac & Pc ,,,A 和 c 之间的间隙是否与 P 和 c 之间的间隙相同?提前谢谢 当文本对齐时,单词之间的差距是否保持不变(在应用Kerning过程之前)? 答案中包含您的 cmets 的说明。 亲爱的迈克尔,我很抱歉我的问题,但我真诚地相信你的回答,因为你是专家。我很想听听您对我题为“软 PDF 文档”的新问题的看法。如果可能的话,我需要简要的解释和例子。我会非常感谢你的回答。我的问题在这里问:***.com/questions/ask 我已经收到了一些回复,但我会等你,因为我相信你的意见:):)以上是关于检测 StegoPDF 中是不是存在隐藏消息的主要内容,如果未能解决你的问题,请参考以下文章