Nghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thốngNghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thốngNghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thốngNghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thốngNghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thốngNghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thốngNghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thốngNghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thốngNghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thốngNghiên cứu đề xuất thuật toán mã hóa văn bản có độ bảo mật cao trên cơ sở mật mã truyền thống
Trang 1: 60 48 01 04
Trang 3Phòng
Trang 4M U 5
1: T NG QUAN V CÁC H M T MÃ 8
1.1 T ng quan v lý thuy t m t mã 8
1.1.1 M t s khái ni n 8
toán h c c a lý thuy t s 10
1.2 M t mã truy n th ng 18
1.2.1 Mã chuy n d ch (shift cipher) 18
1.2.2 Mã thay th (substitution cipher) 20
1.2.3 Mã apphin 21
1.2.4 Mã Vigenere 22
1.2.5 Mã Hill 23
1.2.6 Mã hoán v ( chuy n v - Transposition ) 24
i v i mã Vigenere 26
1.4 M t mã khóa công khai 31
1.4.1 H m t mã công khai RSA 31
1.4.2 H m t mã khoá công khai Rabin 32
1.4.3 H m t mã khoá công khai ElGamal 34
M T S N CÔNG H MÃ TRUY N TH NG 38
ti n hành thám mã 38
2.2 Mã thay th 44
2.2.1 Mã thay th 44
45
2.3 Lu 52
Trang 52.3.1 Khái quát 52
54
XU T THU T TOÁN C I TI N NH M NÂNG CAO AN TOÀN CHO H M T MÃ TRUY N TH NG 59
3.1 M 59
xu t thu t toán 59
an toàn c a h m xu t 63
t ki m th 63
3.4.1 Gi i thi u thu t toán 63
3.4.2 Gi i thi u thu t toán 65
K T LU N 82
TÀI LI U THAM KH O 82
Trang 7Steganography
khai
Trang 91: MÃ 1.1 T ng quan v lý thuy t m t mã.
.
Trang 12
60
Trang 13c1 (a1, a2, a3 (1, 0, m ), (b1, b2, b3 (0, 1, n);
q = [a3/ b3]; và (c1, c2, c3 (a1, a2, a3 ) -q(b1, b2, b3 ); (a1, a2, a (b1, b2, b3); (b1, b2, b3 (c1, c2, c3) và
X.
a 4864 và b 3458, ta
a, b, q, r, x, y, x 1 , x 2 , y 1 , y 2 (sau :
Trang 14a b mod n và b c mod n thì a c mod n
a a1 mod n, b b1mod n thì a + b (a1 + b1) mod n và a b (a1 b1) mod n
d, Không gian Z n và Z n *.
Trang 15Không gian Zn (các s nguyên theo modulo n)
nh Cho a Zn Ngh o c a a theo modulo n là s nguyên
x Znsao cho a x 1(mod n) N u x t n t duy nh t x Zn, và
a c g i là kh ngh ch Ngh o c a a ký hi u là a 1 i v i phép toán nhân )
Trang 161 1
1 1
Các th c mô t thu t toán: Ngôn ng t kh i, mã gi
Thu t toán t t nh (deterministic): V i hai b d li u vào gi ng nhau, thu t toán t t nh s thi hành các mã l nh gi ng nhau và cho k t qu gi ng nhau
Thu t toán ng u nhiên (randomized): V i hai b d li u vào gi ng nhau, thu t toán ng u nhiên có th th c hi n theo nh ng mã l nh khác nhau và cho
k t qu khác nhau
Thu t toán và gi i thu t không có s phân bi t trong thu t ng ti ng Anh
Trang 17t toán (gi i thu t) i
nguyên c n ph i có khi th c hi t gi i thu
Trang 18c*và n0 sao cho f(n c*g(n n n0.
f(n) = 5n3+ 2n2+ 13n + 6 , ta có : f(n) = 5n3+ 2n2+ 13n n3+ 2n3+ 13n3+ 6n3= 26n3
f(n) = O(n3)
f(n) = aknk+ ak 1 nk 1 a1n + a 0 thìf(n) = O(nk)
:
Trang 20uratncaunhinbpuv rhguhonl.
dãy y
x
Trang 211.2.2 Mã thay th (substitution cipher).
Trang 22Z26
Trang 280 2
( 1)( )
( 1)
i i
i i
Trang 29m y theo cách trên thành m = 1, 2, 3
chreevoahmaeratbiaxxwtnxbeeophbsbqmqeqerbwrvxuoakxaosxxweahbwgjmmqmnkgrfvgxwtrzxwiaklxfpskautemndemgtsxmxbtuiadngmgpsrelxnjelxvrvprtulhdnqwtwdtygbphxtfaljhasvbfxngllchrzbwelekmsjiknbhwrignmgjsglxfeyphagnbieqjtmrvlcrremndglxrrimgnsnrwchrqhaeyevtaqebbipeewevkakoewadremxmtbhhchrtkdnvrzchrclqohpwqaiiwxnrmgwoiifkee
ã là 5
m
m m= 5, ta thu
k1, k2, km
x = x1x2 xn và y = y1 y2 yn cùng có
i và yi
a, b, ,z trong x và y trùng nhau là:
MI C (x, y) =
25 ' 0 '
i i i
f f
Trang 30h h l h
Trang 32k1 (0 k1 26),
k 1= 9):
the almond tree was in tentative blossom the days were longer often ending with magnificent evenings of corrugated pink skies the hunting season was over with hounds and guns put away for six months the vineyards were busy again
as the well organized farmers treated their vines and the more lackadaisical neighbors hurried to do the pruning they should have done in november
1.4 M t mã khóa công khai.
1.4.1 H m t mã công khai RSA.
gcd(e, (n)) = d sao cho
e d 1(mod (n)).
k = (k k'' k' = (n, e) và k'' = d
P = C = Z n , n
Trang 33(mod ), (mod );
báo x = 5234673, anh ta dùng khoá
6012707 = 5234673
1.4.2 H m t mã khoá công khai Rabin.
Trang 34mod , mod
Trang 35z2 C mod n mod n
( 1) / 4 ( 1) / 4 ( 1) / 4 ( 1) / 4
Trang 36k k
K'' = a
chính là bài toán tính lô ga rít
Trang 37p = 2579, = 2, a = 765, ta tính = 2765 = 949 mod 2579 Ta có
x
= k = có e K (1299, 853) = (2853, 1299 949853)mod 2579 = (453, 2396)
Trang 38-n h -n -
-nh
Trang 39.
Trang 44t
trên, ngày nay
nên
Trang 45Thí d : Hanoi
b n ng là b ng ch cái La-tinh), là không gian b n ng
m i t n t i duy nh t b sao cho f(a) = b Do
Trang 46khi không có khoá mã trong tay.
2.2.2.1.
Trang 47o n e a
DPAFX
a t iRPDSS
n t a ee
BUSTP e t
UKDXS
o a i e
AKTKDooa
USCLS
e eKDXRQ
o a i n
SCCSFe
t e
Nhìn
Trang 48an o t
DPAFX
t e iRPDSS
a t i n
SCCSF oo
Trang 52c .
QAZXSWEDCRFVT
QAZXSWDECRFVT
GBYHNUJMIKOLPGBYHNUJMIKOLP
Trang 567 Gi i b n mã và c
M = JWUN QOVHM EEHOV VPQJO BYUNO PHECP LLBQU HT./
Ta có:
Trang 603.1 M
thám trên máy tính
Trang 611 ta có khóa k13 l1}
Trang 63C = ONIXE XJNOJ AXHCH AOFCG AIIUO JHVNA RHGOT ME
:ONIXE XJNOJ AXHCH AOFCG AIIUO JHVNA RHGOT ME
Trang 67frmDe.WindowState = FormWindowState.Maximized; frmDe.Show();
Trang 69public static bool SaveKey(Key objKey, string sPath)
sFileName = sPath + "\\" + KEY_FILE;
fs = new FileStream(sFileName, FileMode.OpenOrCreate); BinaryFormatter bf = new BinaryFormatter();
Trang 70sFileName = sPath + "\\" + KEY_FILE;
fs = new FileStream(sFileName, FileMode.OpenOrCreate); BinaryFormatter bf = new BinaryFormatter();
List<int> k = new List<int>(l);
Random rd = new Random();
for (int i = 1; i <= l; i++)
Trang 72if (count < P.Length)
{
//MessageBox.Show("i="+i.ToString() + ";J="+j.ToString()+ PChar[count].ToString());
Trang 73char[] PChar = new char[P.Length];
for (int i = 0; i < n; i++)
{
for (int j = 0; j < l; j++)
{
str += strArr[i, j];
Trang 74-OpentFileDailog, SaveFileDailog, RichTextBox, Lable.
private void btnOpent_Click(object sender, EventArgs e)
Trang 75private void btnK1_Click(object sender, EventArgs e) {
n1 = rtfFile.Text.Length / l1;
Trang 76} else { n1 = rtfFile.Text.Length / l1 + 1;
Trang 77{ n2 = rtfFile.Text.Length / l2;
} else { n2 = rtfFile.Text.Length / l2 + 1;
} lblN2.Text = "n2 = " + n2.ToString();
private void btnEncryption2_Click(object sender, EventArgs e) {
rtfFile.Text = rtfFile1.Text;
rtfFile1.Text = Utlities.encryption(rtfFile.Text, k2, n2);
Trang 79}
}
-OpentFileDailog, SaveFileDailog,RichTextBox, Lable
private void btnOpent_Click(object sender, EventArgs e)
Trang 80private void btnLoadKey_Click(object sender, EventArgs e) {
txtL1.Text = objKey.L1.ToString();
lblK1.Text = "k1: " + Utlities.StringKey(objKey.K1); lblK2.Text = "k2: " + Utlities.StringKey(objKey.K2); lblN1.Text = objKey.N1.ToString();
lblN2.Text = objKey.N2.ToString();
} catch (IOException io)
{
MessageBox.Show(io.Message);
Trang 81FileStream fs = new FileStream(savefile.FileName + ".txt", FileMode.OpenOrCreate);
StreamWriter sw = new StreamWriter(fs, Encoding.Unicode);
Trang 82foreach (string line in rtfFile1.Lines) sw.WriteLine(line);
sw.Close();
//MessageBox.Show(savefile.FileName); }
catch (IOException io)
Trang 83:-
Trang 84-[1.] Nh p môn phân tích thông tin có b o m t Nhà xu t b n Thông tin và Truy n thông - TS H V n Vi t Th - 2010.
[2.] Giáo trình M t mã h c và an toàn thông tin - Nhà xu t b n Thông tin và Truy n thông - TS Thái Thanh Tùng 2011.
[3.] Lý thuy t m t mã & An toàn thông tin Nhà xu t b i h c Qu c Gia Hà N i
[6.] Cryptography and Network Security Principles and Practices, 4 th Edition William Stallings Prentice Hall 2005.