Wednesday, May 25, 2011

Digital Forensics:(ASCII) คือ

Digital Forensics:(ASCII) คือ

แอสกี้ ASCII: American Standard Code for Information Interchange) เป็นรหัสมาตรฐานของสหรัฐอเมริกาเพื่อการแลกเปลี่ยนสารสนเทศนี้ เป็นรหัสมาตรฐานที่ใช้กับคอมพิวเตอร์รหัสหนึ่ง ที่ใช้เลขฐานสอง รหัสแอสกี, รหัสมาตรฐาน ใช้แทนอักขระด้วย 7 บิต (ถ้ารวม parity check ด้วยจะเป็น 8 บิต)

ประวัติ รหัสแอสกีมีใช้ในระบบคอมพิวเตอร์ และเครื่องมือสื่อสารแบบดิจิทัลต่างๆ พัฒนาขึ้นโดยคณะกรรมการ X3 ซึ่งอยู่ภายใต้การดูแลของสมาคมมาตรฐานอเมริกา (American Standards Association) ภายหลังกลายเป็น สถาบันมาตรฐานแห่งชาติอเมริกา (American National Standard Institute : ANSI) ในปี ค.ศ. 1969 โดยเริ่มต้นใช้ครั้งแรกในปี ค.ศ. 1967 ซึ่งมีอักขระทั้งหมด 128 ตัว (7 บิต) โดยจะมี 33 ตัวที่ไม่แสดงผล (unprintable/control character) ซึ่งใช้สำหรับควบคุมการทำงานของคอมพิวเตอร์บางประการ เช่น การขึ้นย่อหน้าใหม่สำหรับการพิมพ์ (CR & LF - carriage return and line feed) การสิ้นสุดการประมวลผลข้อมูลตัวอักษร (ETX - end of text) เป็นต้น และ อีก 95 ตัวที่แสดงผลได้ (printable character) ดังที่ปรากฏตามผังอักขระ (character map) ด้านล่าง รหัสแอสกีได้รับการปรับปรุงล่าสุดเมื่อ ค.ศ. 1986 ให้มีอักขระทั้งหมด 256 ตัว (8 บิต) และเรียกใหม่ว่าแอสกีแบบขยาย อักขระที่เพิ่มมา 128 ตัวใช้สำหรับแสดงอักขระเพิ่มเติมในภาษาของแต่ละท้องถิ่นที่ใช้ โดยจะมีผังอักขระที่แตกต่างกันไปในแต่ละภาษาซึ่งเรียกว่า โคดเพจ (codepage) โดยอักขระ 128 ตัวแรกส่วนใหญ่จะยังคงเหมือนกันแทบทุกโคดเพจ มีส่วนน้อยที่เปลี่ยนแค่บางอักขระ
 
ASCII TABLE

แอสกี้(ASCII) คือ
ตัวอย่าง รหัสแทนข้อมูลแบบ ASCII

บิตที่
7
6
5
4
3
2
1
0


0
0
1
1
0
1
1
1
แทน 7

0
1
0
0
0
1
1
1
แทน G

0
1
1
0
0
1
1
1
แทน g

0
1
0
0
1
0
1
0
แทน J

0
0
1
0
1
0
1
1
แทน +

จากหลักการของระบบเลขฐานสอง แต่ละบิตสามารแทนค่าได้ 2 แบบ คือ เลข 0 หรือเลข 1 ถ้าเราเขียนเลขฐานสอง เรียงกัน 2 บิต ในการแทนอักขระ เราจะมีรูปแบบในการแทนอักขระได้ 2 หรือ 4 รุปแบบคือ 00 ,01 ,10 ,11 ดังนั้นในการใช้รหัสแอสกีซึ่งมี 8 บิต ในการแทนอักขระแล้ว เราจะมีรูปแบบที่ใช้แทนถึง 28 หรือ 256 รูปแบบ ซึ่งเมื่อใช้แทนตัวอักษรภาษาอังกฤษแล้ว ยังมีเหลืออยู่ สำนักงานมาตรฐานผลิตภัณฑ์อุตสาหกรรม หรือ สมอ.จึงได้กำหนดรหัสภาษาไทยเพิ่มลงไปเพื่อให้ใช้งานร่วมกัน

ตัวอย่าง การแทนข้อมูลในเครื่องคอมพิวเตอร์

A
0100 0001
X
0101 1000
B
0100 0010
Y
0101 1001
C
0100 0011
Z
0101 1010
D
0100 0100
0
0011 0000
E
0100 0101
1
0011 0001
F
0100 0110
2
0011 0010
G
0100 0111
3
0011 0011
H
0100 1000
4
0011 0100
I
0100 1001
5
0011 0101
J
0100 1010
6
0011 0110
K
0100 1011
7
0011 0111
L
0100 1100
8
0011 1000
M
0100 1101
9
0011 1001
N
0100 1110
.
0010 1110
O
0100 1111
(
0010 1000
P
0101 0000
+
0010 1011
Q
0101 0001
$
0010 0100
R
0101 0010
*
0010 1010
S
0101 0011
)
0010 1001
T
0101 0100
-
0010 1101
U
0101 0101
/
0010 1111
V
0101 0110
'
0010 1100
W
0101 0111
=
0010 1101

character set คืออะไร

ก่อนจะไปพูดถึง Character set ขอเล่าถึงที่มาและรูปแบบการเก็บข้อมูลในคอมพิวเตอร์กันซักนิด เราคงทราบกันดีกว่าคอมพิวเตอร์เก็บข้อมูลในรูปแบบดิจิทัลโดยใช้แค่ตัวเลข 0 กับ 1 ตัวเลขหนึ่งตัวเรียกว่า 1 bit ถ้ามีตัวเลขแปดตัว (8 bit) เรียกว่า 1 byte

เนื่องจากว่าการรับส่งข้อมูลในคอมพิวเตอร์โดยแท้จริงแล้วเป็นแค่การรับส่งตัวเลข 0 กับ 1 ดังนั้นถ้าจะส่งข้อมูลที่เป็นตัวอักษร ก็จำเป็นต้องมีการสร้างรหัสขึ้นมาเพื่อใช้อ้างอิงว่าตัวเลขชุดนี้แทนตัวอักษรอะไร ซึ่งถ้าหากจะเปรียบเทียบให้เห็นภาพในสิ่งที่คล้ายๆ กันก็ลองเปรียบเทียบกับรหัสมอร์สที่ใช้การเคาะจังหวะสั้นกับยาวเพื่อใช้ในการส่งข้อความ

ASCII เป็นรหัสที่ทางอเมริกากำหนดขึ้นมาเพื่อใช้ในการแลกเปลี่ยนข้อมูล โดยในรหัส ASCII ประกอบด้วยตัวอักษรภาษาอังกฤษ (แบบ Latin) ตัวเลขอารบิค เครื่องหมายวรรคตอน และสัญลักษณ์ต่างๆ โดยมีตารางแอสกี (ASCII table) หรือชุดอักขระแอสกี (ASCII character set) มาใช้ในการอ้างอิงว่ารหัสนี้แทนตัวอักษรอะไร เช่น ตัว A ในภาษาอังกฤษ ถูกแทนด้วย 65 ในเลขฐานสิบ (Decimal) หรือ 41 ในเลขฐานสิบหก (Hexadecimal) เป็นต้น [1] ตัวอย่างตารางแอสกีเป็นดังรูปที่ 1

เนื่องจากอักขระ (Character) ในภาษาอังกฤษ (ตัวเลข+ตัวอักษร+เครื่องหมาย+อักขระพิเศษอื่นๆ) รวมกันแล้วมีประมาณร้อยกว่าตัว จึงสามารถใช้รหัส ASCII แบบ 7 bit ที่สามารถเก็บข้อมูลได้ 128 รูปแบบ (2^7 = 128) มาใช้ในการเก็บตัวอักษรและอักขระพิเศษทั้งหมดได้ในรหัสตั้งแต่ 0 - 127

ASCII code คืออะไร

ASCII TABLE

Dec Hex Oct Char Description
0 0 000 null
1 1 001 start of heading
2 2 002 start of text
3 3 003 end of text
4 4 004 end of transmission
5 5 005 enquiry
6 6 006 acknowledge
7 7 007 bell
8 8 010 backspace
9 9 011 horizontal tab
10 A 012 new line
11 B 013 vertical tab
12 C 014 new page
13 D 015 carriage return
14 E 016 shift out
15 F 017 shift in
16 10 020 data link escape
17 11 021 device control 1
18 12 022 device control 2
19 13 023 device control 3
20 14 024 device control 4
21 15 025 negative acknowledge
22 16 026 synchronous idle
23 17 027 end of trans. block
24 18 030 cancel
25 19 031 end of medium
26 1A 032 substitute
27 1B 033 escape
28 1C 034 file separator
29 1D 035 group separator
30 1E 036 record separator
31 1F 037 unit separator
32 20 040 space
33 21 041 !
34 22 042 "
35 23 043 #
36 24 044 $
37 25 045 %
38 26 046 &
39 27 047 '
40 28 050 (
41 29 051 )
42 2A 052 *
43 2B 053 +
44 2C 054 ,
45 2D 055 -
46 2E 056 .
47 2F 057 /
48 30 060 0
49 31 061 1
50 32 062 2
51 33 063 3
52 34 064 4
53 35 065 5
54 36 066 6
55 37 067 7
56 38 070 8
57 39 071 9
58 3A 072 :
59 3B 073 ;
60 3C 074 <
61 3D 075 =
62 3E 076 >
63 3F 077 ?





64 40 100 @
65 41 101 A
66 42 102 B
67 43 103 C
68 44 104 D
69 45 105 E
70 46 106 F
71 47 107 G
72 48 110 H
73 49 111 I
74 4A 112 J
75 4B 113 K
76 4C 114 L
77 4D 115 M
78 4E 116 N
79 4F 117 O
80 50 120 P
81 51 121 Q
82 52 122 R
83 53 123 S
84 54 124 T
85 55 125 U
86 56 126 V
87 57 127 W
88 58 130 X
89 59 131 Y
90 5A 132 Z
91 5B 133 [
92 5C 134 \
93 5D 135 ]
94 5E 136 ^
95 5F 137 _
96 60 140 `
97 61 141 a
98 62 142 b
99 63 143 c
100 64 144 d
101 65 145 e
102 66 146 f
103 67 147 g
104 68 150 h
105 69 151 i
106 6A 152 j
107 6B 153 k
108 6C 154 l
109 6D 155 m
110 6E 156 n
111 6F 157 o
112 70 160 p
113 71 161 q
114 72 162 r
115 73 163 s
116 74 164 t
117 75 165 u
118 76 166 v
119 77 167 w
120 78 170 x
121 79 171 y
122 7A 172 z
123 7B 173 {
124 7C 174 |
125 7D 175 }
126 7E 176 ~
127 7F 177 DEL


 

ASCII Encoding:

แปลงค่าจาก

 68 105 103 105 116 97 108 32 70 111 114 101 110 115 105 99 115 32 69 120 97 109 105 110 101 114

ให้กลายเป็น String =?

onlinestringtools

 

สรุป

  • รูปแบบของ ASCII จะเก็บข้อมูลโดยใช้ 8 Bits (1 Bytes) ต่อ 1 Character

  • รูปแบบของ Unicode จะเก็บข้อมูลโดยใช้ 16 Bits (2 Bytes) ต่อ 1 Character


  • ที่มา:
    thaicert
    devlist
    bcom56146 


    * หากมีข้อมูลข้อผิดพลาดประการใด ขออภัยมา ณ ที่นี้ด้วย  รบกวนแจ้ง Admin เพื่อแก้ไขต่อไป
    ขอบคุณครับ

    #WindowsForensic #ComputerForensics #dfir #forensics #digitalforensics  #computerforensic #investigation #cybercrime #fraud  

    No comments:

    Post a Comment

    Digital Forensics:CDIC2024

    Digital Forensics:CDIC2024    งานสัมมนาประจำปีด้านความมั่นคงปลอดภัยไซเบอร์  27-28 พฤศจิกายน 2567 ณ Grand Hall ไบเทค บางนา วันนี้แอดแวะมางาน ...