Tải bản đầy đủ (.doc) (15 trang)

PHAN MEM.DOC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (205.3 KB, 15 trang )

Hệ Mật RSA
Chơng IV
Giới thiệu chơng trình phần mềm RSA
I. CHơng trình phần mềm RSA
Khi Ti muốn gửi cho Tj một bức điện M= m1m2 ..... ml, Ti chạy chơng
trinhg RSA và chọn chức năng mã hoá và chọn ngời nhận Tj. Khi này ch-
ơng trình sẽ tự động tạo ra mầm khoá Gm, lấy cặp khoá mật của Ti từ đĩa
mềm, khoá công khai của Tj từ tài nguyên dùng chung và sinh ra sâu giả
ngẫu nhiên mạnh K= k1k2...kl theo công thức ks =byte có giá trị thấp nhất
của GS với s= 1ữl và GS=(Gm,S-1)2 mod ni. Bản mã của bức điện
C=c1c2...cl thu đợc bằng công thức cS =mS +kS mod 256. Bản mã gửi cho
Tj sẽ gồm Gm* xác định bởi công thức Gm*= ((Gm)
ei
mod n
J
) (2.1) và đợc
gửi công khai cùng bản mã C của bức điện P.
Quá trình giải mã:
khi nhận đợc bản mã C và bộ khoá mã G
m
*
ngời nhận Tj cũng chạy ch-
ơng trinhg RSA và chon chức năng giải mã và chon file cần giải mã. Khi
này chơng trình yêu cầu ngời nhận cho biết khoá mật của mình và máy sẽ
xác thực quyền sở hữu của ngời nhận về bức điện cần giải mã số đợc ghi
trong file khoá mật.
Nếu thủ tục trên đợc thông qua, chơng trình sẽ khôi phục lại mầm khoá
của bức điện G
m
bởi công thức :
G


m
= ((G
*
)
dj
mod n
J
). (2.2).
1
ID
CKDT
Hệ Mật RSA
Việc tạo ra sâu khoá K và giải mã nội dung bức điện đợc thực hiện
giống nh quá trình mã hoá.
Chú ý rằng việc xác thực ngời nhận trong chơng trình chỉ mang tính
hình thức thông qua việc so sánh mã số của ngời nhận đợc ghi trong bản
mã, còn việc xác thực thực sự (điều này đã đợc thừa nhận của hệ mật RSA
nói trên) sẽ đợc thể hiện ở nội dung bức điện sau khi giải mã có trùng với P
hay không, nói một cách khác là bản chất việc xác thực ngời nhận sẽ thể
hiện ở việc khôi phục lại đúng bản rõ nếu ngời dịch là đúng chủ quyền (ví
có đúng khoá mật cần thiết) và ngợc lại nếu ngời dịch là giả mạo.
Giải thích về chức năng mã :
2
Sơ đồ chức năng của hệ mật RSA
Hệ mật RSA
Hệ mật RSA
Chức năng Mã DL
Chức năng Mã DL
Chức năng Giải mã
Chức năng Giải mã

Quản lí User
Quản lí User
Kiểm tra ID gửi
Chọn khoá CK
nhận
Mã mầm khoá
Mã file DL
Kiểm tra ID nhận
Tìm người gửi
Giải khoá mật
Giải mã file DL
Thêm User
Cập nhật User
ID
CKDT
Hệ Mật RSA
Chức năng Kiểm tra ID ngời gửi : Đây là một chức năng khá quan trọng
trong hệ mật vì trong hệ mật của chúng ta thì mỗi ngời sử dụng đợc cấp
khoá mật và ID ngời sử dụng. Để có thể sự dụng đợc chơng trình thì ngời
dùng phải đợc nhà cung cấp cấp cho một bộ khoá và ID. Sau đây là sơ đồ
khối mô tả chức năng trên (hình 1):
3
START
filekhoaCK,ID
i=0;
n=filelength(filekhoaCK)
i<n
True
fseek(fCK,92*i,SEEK_SET)
fread(CKDT,46,1,fCK)

ID
CKDT
False
return i
quyen=True
True
Quyen=False
End
False
(Hình 1) Sơ đồ khối kiểm tra ID người sử dụng
Hệ Mật RSA
Chức năng chọn ngời nhận : Khi Ti muốn gửi thông tin cho Tj thì sau
khi anh ta vào chơng trình, chọn file muốn mã sau đó chọn ngời nhận Tj
để Server cung cấp cho Ti khoá công khai của Tj (ngời nhận).
Chức năng mã mầm khoá RSA : Nh chúng ta biết một trong những nhợc
điểm của các hệ mật khoá công khai là chúng mã hoá rất chậm. Để khắc
phục tình trạng này trong chơng trình mã hoá em chỉ mã mầm của khoá K
thành K. và Ti (ngời gửi) sẽ kí lên bản mã P để Tj ngời nhận có thể xác
minh đợc ngời gửi cho mình là ai.
Chức năng mã file DL : Nh trình bày ở trên ta chỉ mã hoá phần mầm
khoá, còn phần dữ liệu chúng ta sẽ cắt ra thành các BUFFER mỗi
BUFFER có độ rộng là 40 byte và dùng khoá K để mã hoá.
Các chức năng giải mã:
Chức năng kiểm tra ID ngời nhận : Chức năng này tơng tự nh chức năng
kiểm tra ID ngời gửi.
Chức năng Tim ngời gửi : Khi Ti gửi một bản mã P cho Tj thì Ti sẽ phải
kí lên bản mã để sau khi Tj nhận file mã P thì tj đợc biết ai là ngời gửi cho
mình. Chức năng này còn có điểm hay na là nó chống hiện tợng ngời gửi
Chức năng giải khoá mật RSA : Đây là một chức năng quan trọng trong
chơng trình vì khi Ti gửi cho Tj bản mã trong đó có K (mầm khoá đã đợc

mã hoá bằng RSA), muốn giải mã bản mã P thì bắt buộc Tj phải biến đổi
K thành K ban đầu.
Chức năng giải mã file DL : Sau khi giải đợc K thành K thì ta dùng
khoá K này để giải mã bản mã do Ti gửi.
Các chức năng quản lí User :
4
Hệ Mật RSA
Thức chất các chức năng này phải đợc đặt trong một Server hoặc một chơng
trình khác và chỉ có những ngời có quyền mới có thể sử dụng đợc các chức
năng này. Vì lợng thời gian ít nên em thêm phầm nnày chỉ mang tính chất
tham khảo, nhng trong chơng trình em cũng làm một số chức năng chính
cho modul nh : Kiểm tra xem ngời nào có quyền mới đợc sử dụng chức năng
này, cập nhật thông tin sau khi thêm ngời sử dụng mới.
Chức năng Thêm User : Nh trình bày trên muốn sử dụng chức năng này
bạn phải có bộ khoá riêng. Chức năng này nhằm đăng ký thêm ngời sử
dụng vào hệ thống.
Chức năng cập nhật User : Sau khi bạn tạo thêm ngời sử dụng thì modul
này có chức năng cập nhật thông tin của ngời sử dụng mới, để các thành
viên khác có thể gửi file hoặc nhận file của ngời sử dụng mới này.
II. Hớng dẫn sử dụng chơng trình phầm mềm RSA
Chơng trình RSA gồm có các chức năng mã file, giải mã file, và tạo
User
khi khởi động chơng trình sẽ xuất hiện trên màn hình nh sau
5
Hệ Mật RSA
Sau đó chơng trình sẽ xuất hiện một câu thông báo có lựa chọn nh sau :
Nếu bạn không cí khoá thì chọn Cancel, nếu bạn có khoá bạn sẽ chon
OK giả sử ngời không có bộ khoá do ngời quản trị cung câp mà bạn vẫn
chọn OK thì chơng trình sẽ gửi tới bạn một câu thông báo nh sau :
Nếu bạn có khoá thì màn sẽ xuất hiện nh sau :

6

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×