-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex2.html
More file actions
428 lines (378 loc) · 19.6 KB
/
index2.html
File metadata and controls
428 lines (378 loc) · 19.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="HandheldFriendly" content="True" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="robots" content="index, follow" />
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,400;0,700;1,400&family=Source+Sans+Pro:ital,wght@0,300;0,400;0,700;1,400&display=swap" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="/theme/stylesheet/style.min.css">
<link id="pygments-light-theme" rel="stylesheet" type="text/css"
href="/theme/pygments/github.min.css">
<script src="/theme/tipuesearch/jquery.min.js"></script>
<script src="/theme/tipuesearch/tipuesearch.min.js"></script>
<script src="/theme/tipuesearch/tipuesearch.min.js"></script>
<script src="/theme/tipuesearch/tipuesearch_set.min.js"></script>
<script src="/tipuesearch_content.js"></script>
<link rel="stylesheet" href="/theme/tipuesearch/tipuesearch.min.css" />
<link rel="stylesheet" type="text/css" href="/theme/font-awesome/css/fontawesome.css">
<link rel="stylesheet" type="text/css" href="/theme/font-awesome/css/brands.css">
<link rel="stylesheet" type="text/css" href="/theme/font-awesome/css/solid.css">
<link href="/feeds/all.atom.xml" type="application/atom+xml" rel="alternate" title="R08UST's Blog Atom">
<link rel="shortcut icon" href="/images/profile/Favicon.ico" type="image/x-icon">
<link rel="icon" href="/images/profile/Favicon.ico" type="image/x-icon">
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-8EL1GE1H84"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-8EL1GE1H84');
</script>
<!-- End of Global site tag (gtag.js) - Google Analytics -->
<!-- Chrome, Firefox OS and Opera -->
<meta name="theme-color" content="#333">
<!-- Windows Phone -->
<meta name="msapplication-navbutton-color" content="#333">
<!-- iOS Safari -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<!-- Microsoft EDGE -->
<meta name="msapplication-TileColor" content="#333">
<meta name="author" content="R08UST" />
<meta name="description" content="" />
<meta property="og:site_name" content="R08UST's Blog"/>
<meta property="og:type" content="blog"/>
<meta property="og:title" content="R08UST's Blog"/>
<meta property="og:description" content=""/>
<meta property="og:locale" content="en_US"/>
<meta property="og:url" content=""/>
<meta property="og:image" content="/images/profile/profile.jpg">
<title>R08UST's Blog</title>
</head>
<body class="light-theme">
<aside>
<div>
<a href="">
<img src="/images/profile/profile.jpg" alt="" title="">
</a>
<h1>
<a href=""></a>
</h1>
<p>Security & AI Developer</p>
<form class="navbar-search" action="/search.html" role="search">
<input type="text" name="q" id="tipue_search_input" placeholder="Search...">
</form>
<ul class="social">
<li>
<a class="sc-linkedin" href="https://www.linkedin.com/in/%E5%AE%B6%E7%90%AA-%E8%92%8B-171328175/" target="_blank">
<i class="fab fa-linkedin"></i>
</a>
</li>
<li>
<a class="sc-github" href="https://github.com/r08ust" target="_blank">
<i class="fab fa-github"></i>
</a>
</li>
</ul>
</div>
</aside>
<main>
<nav>
<a href="">Home</a>
<a href="/index.html">MainPage</a>
<a href="/archives.html">Archives</a>
<a href="/categories.html">Categories</a>
<a href="/tags.html">Tags</a>
<a href="/feeds/all.atom.xml">Atom</a>
</nav>
<article>
<header>
<h2><a href="/forensics_2_2.html#forensics_2_2">数字图像取证 - 基于相机属性的取证 2</a></h2>
<p>
Posted on Sat 15 August 2020 in <a href="/category/digital-image-forensics.html">Digital Image Forensics</a>
• Tagged with
<a href="/tag/book.html">Book</a>, <a href="/tag/forensics.html">Forensics</a>, <a href="/tag/security.html">Security</a>, <a href="/tag/computervision.html">ComputerVision</a>
• 1 min read
</p>
</header>
<div>
<h2>CA</h2>
<p>理想状态下光线透过滤镜聚焦到传感器上,传感器将光子转储为颜色信息并保存。然而实际上不存在一种滤镜能够完美的将所有波长的光聚焦于传感器上,从而导致导致高光区域与低光区域出现带有颜色的边缘。这一现象被称为CA或色差或紫边(摄影)。由于相机以及镜头的不同,篡改图像的过程中,就会出现色差问题不一致的问题,那么利用这一特性就可以校验图像是否被篡改。首先介绍一下为何会出现色差现象
有折射定律: 1. 折射光线位于入射面内. 2. <span class="math">\(n\sin I = n' \sin I'\)</span>
注: <span class="math">\(I\)</span>表示入射角, <span class="math">\(I'\)</span> 表示折射角,n表示折射率. 以及短波(蓝色)折射率高,长波(红色)折射率低.
根据折射定律由于不同的波长在同一种介质中的折射率不同就会出现如下的情况
<img alt="ref_wave" src="https://pic2.zhimg.com/80/v2-3523ecf46e9a1445f775aae4229851b1_720w.jpg"/></p>
<h2>建模CA向量</h2>
<p>根据折射定律<span class="math">\(nsin(\theta) = n_r\sin(\theta_r)\)</span> 以及 <span class="math">\(nsin(\theta) = n_b\sin(\theta_b)\)</span>得出<span class="math">\(n_r …</span></p>
<br>
<a class="btn"
href="/forensics_2_2.html#forensics_2_2">
Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="/forensics_2_1.html#forensics_2_1">数字图像取证 - 基于相机属性的取证 1</a></h2>
<p>
Posted on Fri 03 July 2020 in <a href="/category/digital-image-forensics.html">Digital Image Forensics</a>
• Tagged with
<a href="/tag/book.html">Book</a>, <a href="/tag/forensics.html">Forensics</a>, <a href="/tag/security.html">Security</a>, <a href="/tag/computervision.html">ComputerVision</a>
• 1 min read
</p>
</header>
<div>
<h2>CFA</h2>
<p>在数字图像中,CFA是位于图像传感器之前的一组用于过滤色彩,收集色彩信息的镜片。由于数码相机传感器仅测量光线的明亮程度无法对色彩做出处理,通过CFA为每一个像素赋予其色彩。
下图是Bayer Array CFA也是最常见的CFA, 使用该CFA导致了实际只有1/3的色彩信息能被cmos保存下来,另外的2/3只能利用插值算法进行填充得来的。那么不同的相机之间由于不同的cmos以及插值算法就会有不同的特征存在。
<img alt="Bayer array" src="https://upload.wikimedia.org/wikipedia/commons/thumb/3/37/Bayer_pattern_on_sensor.svg/220px-Bayer_pattern_on_sensor.svg.png"/></p>
<p>对于一张Raw图像其每个像素点的RGB构造方式为
</p>
<div class="math">$$
\begin{aligned}
\tilde{R}(x, y) &= S(x, y) &if S(x, y) = r_{x, y} \\
&= 0 &otherwise\\
\tilde{G}(x, y) &= S(x, y) &if S(x, y) = g_{x, y} \\
&= 0 &otherwise\\
\tilde …</div>
<br>
<a class="btn"
href="/forensics_2_1.html#forensics_2_1">
Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="/forensics_1_3.html#forensics_1_3">数字图像取证 - 基于文件格式的取证 3</a></h2>
<p>
Posted on Mon 15 June 2020 in <a href="/category/digital-image-forensics.html">Digital Image Forensics</a>
• Tagged with
<a href="/tag/book.html">Book</a>, <a href="/tag/forensics.html">Forensics</a>, <a href="/tag/security.html">Security</a>, <a href="/tag/computervision.html">ComputerVision</a>
• 1 min read
</p>
</header>
<div>
<h1>JPEG Ghost</h1>
<p>上一节中Double JPEG方法可以检测图像是否被二次压缩过。本节内容将定位出具体被二次压缩过的区域。这一技术被称为JPEG Ghost。</p>
<p>前面介绍过一组RAW data存储为JPEG文件格式首先需要进行傅里叶变换随后便进行量化操作。那么假设有一组经由傅里叶变换后的值<span class="math">\(c_1\)</span>按照<span class="math">\(q_1\)</span>进行量化。随后进行还原并按照<span class="math">\(c_2\)</span>进行量化得到<span class="math">\(q_2\)</span>。如果<span class="math">\(q_1=0\)</span>(也就是不进行二次量化操作)或<span class="math">\(q_1=q_2\)</span>时<span class="math">\(c_1\)</span>与<span class="math">\(c_2\)</span>之间的损失一定是最小的。同时<span class="math">\(c_1\)</span>与<span class="math">\(c_2\)</span>之间的损失也会随着<span class="math">\(q_1\)</span>或<span class="math">\(q_2\)</span>的增大而增大。根据这样一个特点未经过二次压缩的图像应是一组基本单调上升但在某一点突然下降至0的数据。而经过二次量化的图像则是会出现2个或以上的下降点。如下图
<img alt="未经过二次量化的图像" src="/images/DigitalForensics/jpeg_ghost_safe.jpg"/>
<img alt="经过二次量化的图像" src="/images/DigitalForensics/jpeg_ghost_tampered.jpg"/>
故本例子中第二次量化的等级为23。</p>
<h2>Localization</h2>
<p>上面提及了JPEG Ghost的概念以及部分表现,这里对这一方法进行详细描述。首先定义JPEG Ghost中的损失
</p>
<div class="math">$$
d …</div>
<br>
<a class="btn"
href="/forensics_1_3.html#forensics_1_3">
Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="/forensics_1_2.html#forensics_1_2">数字图像取证 - 基于文件格式的取证 2</a></h2>
<p>
Posted on Fri 01 May 2020 in <a href="/category/digital-image-forensics.html">Digital Image Forensics</a>
• Tagged with
<a href="/tag/book.html">Book</a>, <a href="/tag/forensics.html">Forensics</a>, <a href="/tag/security.html">Security</a>, <a href="/tag/computervision.html">ComputerVision</a>
• 1 min read
</p>
</header>
<div>
<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt">
</div><div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h2 id="二次量化(double-quantization,-double-JPEG)">二次量化(double quantization, double JPEG)<a class="anchor-link" href="#二次量化(double-quantization,-double-JPEG)">¶</a></h2><p>前面提到, JEPG是将位图(bit map)进行转制后利用量化操作$q_a(u) = \lfloor{\frac{u}{a}}\rfloor$, 而这一操作明显是一种有损操作. 那么当对任意图像进行修改之时, 还原回得位图必定不完全等于原始得位图, 随后得又一次压缩更会带来一定得损失以及一种特征. 这种特征可以令安全人员检测出该JPEG文件是否进行过二次编辑.</p>
<p>二次量化是指对JEPG文件进行还原时, 量化还原$q^{-1}_a(u) = \lfloor\frac{u}{a}\rfloor\times a$ 后再一次对图像进行量化, 故该行为可以被写为$q_{ab}(u) =\lfloor \lfloor{\frac{u}{a}}\rfloor\frac{a}{b}\rfloor$</p>
<p>下面用一组[0, 127]的正态分布数据来进行模拟实验。</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<br>
<a class="btn"
href="/forensics_1_2.html#forensics_1_2">
Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="/forensics_1_1.html#forensics_1_1">数字图像取证 - 基于文件格式的取证 1</a></h2>
<p>
Posted on Fri 10 April 2020 in <a href="/category/digital-image-forensics.html">Digital Image Forensics</a>
• Tagged with
<a href="/tag/book.html">Book</a>, <a href="/tag/forensics.html">Forensics</a>, <a href="/tag/security.html">Security</a>, <a href="/tag/computervision.html">ComputerVision</a>
• 1 min read
</p>
</header>
<div>
<hr/>
<h2>基于文件格式的取证</h2>
<p>文件格式(或文件类型)是指电脑为了存储信息而使用的对信息的特殊编码方式,是用于识别内部储存的资料。(摘自百度百科)。 那么计算机为了处理这样特定的编码一定存在一些特定的标识符来对该数据进行解释。利于在JPEG文件格式中,为了使JPEG数据能正常的还原成为位图数据(bitmap), 文件的头中一定存在着某些数据保存了压缩的参数(量化表,傅立叶变换系数等等)。</p>
<h2>色彩空间</h2>
<p>色彩空间(英语:Color space)是对色彩的组织方式。借助色彩空间和针对物理设备的测试,可以得到色彩的固定模拟和数字表示。色彩空间可以只通过任意挑选一些颜色来定义,比如像彩通系统就只是把一组特定的颜色作为样本,然后给每个颜色定义名字和代码;也可以是基于严谨的数学定义。</p>
<p>同时颜色可以从以下属性取衡量:
1. 亮度(Brightness,value):指的是感官上区域的明暗。
2. 色相(Hue): 指的是色彩的外相,是在不同波长的光照射下,人眼所感觉不同的颜色,如红色、黄色、蓝色等。
3. 色度(Colorfulness):指色彩的纯度,也叫彩度,即颜色的鲜艳程度。从广义上说,黑色、白色以及灰色是“色度 …</p>
<br>
<a class="btn"
href="/forensics_1_1.html#forensics_1_1">
Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="/forensics_0.html#forensics_0">数字图像取证 - 前言</a></h2>
<p>
Posted on Sat 07 March 2020 in <a href="/category/digital-image-forensics.html">Digital Image Forensics</a>
• Tagged with
<a href="/tag/book.html">Book</a>, <a href="/tag/forensics.html">Forensics</a>, <a href="/tag/security.html">Security</a>, <a href="/tag/computervision.html">ComputerVision</a>
• 1 min read
</p>
</header>
<div>
<h2>前言</h2>
<p>这个系列是对之前的一部分工作的结果的升华。虽然标题名为 Digital Forensics 的笔记, 但实际上该系列实际是对该书的翻译工作(包括个人理解的添加, 部分不重要言语的删除, 以及其他辅助资料的补充)。 Digital Forenscis Dartmouth大学的<a href="https://farid.berkeley.edu/">farid</a>教授出版(现以在UCB任职)。全书共10章, 从文件格式到光学系统,基本覆盖了比较经典的数字取证的方法。 </p>
<h2>图像篡改的历史</h2>
<p>图像篡改并非现代技术(Photoshop等电子化工具),实际上仅仅在涅普斯创造相机的十年之后,图像篡改技术便出现了。 下面实际上就是一张实例,由于观念的不同斯大林将其政委从其合照中抹去。
<img alt="commissar" src="/images/DigitalForensics/commissary.jpg"/></p>
<p>左侧是被修改的图像,右侧是原始图像。</p>
<p>在Photoshop软件出现之前, 人们实际上也是利用Photoshop对胶片图像进行冲洗,调整抑或是篡改,当然这里的photoshop学名叫做暗房。而前面的Photoshop学名应该叫做电子暗房。 如果想要在胶片图像上完成对一个事物则至少需要3个步骤(不包括正常洗胶片的操作)</p>
<ol>
<li>底片剪拼:用黑卡纸裁成相应形状,在相纸相应部位作遮挡;之后再遮住其他部分,单独将需要补晒的内容进行第二次晒印曝光。对应在Photoshop中则是将目标图像复制改图像的图层之上。</li>
<li>多次曝光:实际上这就是调整对比度的操作。 </li>
<li>调整边缘:调虚焦距,或者适当抖动遮盖纸。 对应至Photoshop这则是羽化边缘的操作。</li>
</ol>
<p>所以无论是老照片抑或是新的照片,都存在篡改的情况,后面我们将要介绍各种数字取证的方法 …</p>
<br>
<a class="btn"
href="/forensics_0.html#forensics_0">
Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="/chainer-1-5.html#chainer-1-5">Chainer教程 1.5 利用预训练模型以及修改预训练模型</a></h2>
<p>
Posted on Tue 23 October 2018 in <a href="/category/machinelearning.html">MachineLearning</a>
• Tagged with
<a href="/tag/machinelearning.html">MachineLearning</a>
• 2 min read
</p>
</header>
<div>
<p>使用预训练模型检测cifar10</p>
<br>
<a class="btn"
href="/chainer-1-5.html#chainer-1-5">
Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="/chainer-1-4.html#chainer-1-4">Chainer教程 1.4 简单的CNN模型</a></h2>
<p>
Posted on Fri 20 July 2018 in <a href="/category/machinelearning.html">MachineLearning</a>
• Tagged with
<a href="/tag/machinelearning.html">MachineLearning</a>
• 1 min read
</p>
</header>
<div>
<p>编写简单的CNN检测Cifar10</p>
<br>
<a class="btn"
href="/chainer-1-4.html#chainer-1-4">
Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="/chainer-1-3.html#chainer-1-3">Chainer教程 1.2 & 1.3 chainer</a></h2>
<p>
Posted on Sun 03 June 2018 in <a href="/category/machinelearning.html">MachineLearning</a>
• Tagged with
<a href="/tag/machinelearning.html">MachineLearning</a>
• 2 min read
</p>
</header>
<div>
<p>安装chainer以及编写简单模型</p>
<br>
<a class="btn"
href="/chainer-1-3.html#chainer-1-3">
Continue reading
</a>
</div>
<hr />
</article>
<article>
<header>
<h2><a href="/chainer-1-1.html#chainer-1-1">Chainer教程 1.1 机器学习简介</a></h2>
<p>
Posted on Fri 01 June 2018 in <a href="/category/machinelearning.html">MachineLearning</a>
• Tagged with
<a href="/tag/machinelearning.html">MachineLearning</a>
• 1 min read
</p>
</header>
<div>
<p>简介机器学习.</p>
<br>
<a class="btn"
href="/chainer-1-1.html#chainer-1-1">
Continue reading
</a>
</div>
</article>
<div class="pagination">
<a class="btn float-left" href="/index3.html">
<i class="fa fa-angle-left"></i> Older Posts
</a>
<a class="btn float-right" href="/index.html">
Newer Posts <i class="fa fa-angle-right"></i>
</a>
</div>
<footer>
<p>© 2021 </p>
<p>
Built with <a href="http://getpelican.com" target="_blank">Pelican</a> using <a href="http://bit.ly/flex-pelican" target="_blank">Flex</a> theme
</p> </footer>
</main>
<script type="application/ld+json">
{
"@context" : "http://schema.org",
"@type" : "Blog",
"name": " R08UST's Blog ",
"url" : "",
"image": "/images/profile/profile.jpg",
"description": ""
}
</script>
<script>
$(document).ready(function() {
$('#tipue_search_input').tipuesearch();
});
</script>
</body>
</html>