Chính vì vậy, học viên đã chọn đề tài “Ứng dụng mã hóa RSA trong bảo mật, số hóa nguyên bản gốc tranh, ảnh quý về phố cổ Hà Nội” với mục đích xây dựng một chương trình số hóa những tranh
CƠ SỞ LÝ THUYẾT
Các hệ thống, kỹ thuật bảo mật
1.1.Thuật toán mã hóa DES
Khoảng những năm 1970, tiến sĩ Horst Feistel đã đặt nền móng đầu tiên cho chuẩn mã hóa DES với phương pháp mã hóa Feistel Cipher Vào năm
Năm 1976, Cơ quan Bảo mật quốc gia Hoa Kỳ (NSA) đã chính thức công nhận thuật toán DES dựa trên phương pháp Feistel là tiêu chuẩn mã hóa dữ liệu Ban đầu, DES có kích thước khóa là 128 bit, nhưng tại bản công bố tiêu chuẩn FIPS, kích thước này đã được giảm xuống còn 56 bit nhằm tăng tốc độ xử lý và thiết lập các tiêu chuẩn thiết kế cho một chuẩn mã hóa dữ liệu an toàn và hiệu quả.
Nội dung phương pháp mã hóa DES.
Thuật toán DES thực hiện quá trình mã hóa dữ liệu qua 16 vòng lặp, mỗi vòng sử dụng một khóa chu kỳ 48 bit được tạo ra từ khóa ban đầu rộng 56 bit Trong quá trình mã hóa, DES sử dụng 8 bảng hằng số S-box để thao tác, giúp tăng tính bảo mật và độ phức tạp của quá trình mã hóa dữ liệu.
1.1.2 Mô tả thuật toán DES
Phương pháp DES mã hóa khối thông tin x có độ dài 64 bit với khóa k có độ dài 56 bit thành khối y có độ dài 64 bit.
Nền tảng để xây dựng khối của DES là sự kết hợp đơn giản của các kỹ thuật thay thế và hoán vị bản rõ dựa trên khóa, đó là vòng lặp DES sử dụng
16 vòng lặp áp dụng cùng một kiểu kết hợp các kỹ thuật trên khối bản rõ.
Thuật toán này chỉ sử dụng các phép toán số học và logic thông thường trên các số 16 bit, giúp nó dễ dàng thực hiện vào những năm 1970 nhờ công nghệ phần cứng hạn chế của thời điểm đó.
Hình 1.1: Sơ đồ tổng quát mã hóa DES
Quá trình xử lý gồm 16 vòng lặp thực hiện giống nhau, đảm bảo hiệu quả trong mã hóa dữ liệu Trong quá trình này, có hai lần hoán vị quan trọng diễn ra tại đầu IP và cuối IP-1, nhằm mục đích đưa thông tin vào và lấy thông tin ra một cách chính xác Các bước này đảm bảo tính toàn vẹn và bảo mật của dữ liệu trong quá trình mã hóa.
Trong quá trình mã hóa, khối thông tin ban đầu 64 bit của dữ liệu X được chia thành hai khối, mỗi khối 32 bit Hàm f đóng vai trò chính trong việc biến đổi một nửa của khối đang xử lý bằng cách kết hợp với khóa con phù hợp theo từng vòng mã hóa Quá trình này giúp đảm bảo tính bảo mật cao cho dữ liệu khi thực hiện mã hóa theo chu trình.
Trong quá trình xử lý, hàm f được kết hợp với nửa khối còn lại bằng phép toán XOR, đảm bảo tính bảo mật và độ chính xác của thuật toán Hai phần dữ liệu này sau đó được trao đổi để tiếp tục xử lý trong các chu trình kế tiếp, tăng cường hiệu quả của quá trình mã hóa hoặc giải mã dữ liệu Phương pháp này giúp tối ưu hóa hiệu suất và đảm bảo tính toàn vẹn của dữ liệu đầu ra trong hệ thống xử lý.
Quá trình mã hóa và giải mã diễn ra giống nhau nhờ vào việc thực hiện các vòng xử lý liên tục cho đến vòng cuối cùng, khi hai phần không còn bị tráo đổi nữa Điều này đảm bảo tính chính xác và an toàn của quá trình mã hóa dữ liệu, giúp bảo vệ thông tin hiệu quả.
Quá trình mã hóa được thực hiện 16 vòng, mỗi vòng cần một khóa. Như vậy từ khóa ban đầu tạo ra 16 khóa con cho 16 vòng lặp tương ứng.
Sơ đồ quá trình tạo khóa.
Hình 1.2: Sơ đồ tạo khóa
Trong sơ đồ, khóa K ban đầu có độ dài 64 bit, sau đó được giảm xuống còn 56 bit bằng cách loại bỏ 8 bit chẵn lẻ Quá trình loại bỏ này diễn ra khi dữ liệu đi qua bước PC1, giúp tối ưu hóa độ dài của khóa mà vẫn duy trì tính bảo mật.
Như vậy các bit ở vị trí 8, 16, 24, 32, 40, 48, 56, 64 bị loại bỏ 56 bit thu được chia làm hai phần, mỗi phần 28 bit, các phần được xử lý độc lập nhau Các phần này được dịch 1 hay 2 bit là phụ thuộc vào vòng đó Số bit dịch được cho trong bảng sau.
Sau khi dịch bit, 56 bit này được chọn ra và giảm xuống còn 48 bit, nhờ vào quá trình hoán vị nén hay hoán vị lựa chọn, giúp sắp xếp lại các bit theo một thứ tự mới Quá trình này tạo ra một tập hợp các bit cùng kích thước với đầu ra của hoán vị mở rộng, nhằm tối ưu hóa quá trình mã hóa Bảng PC2 định nghĩa rõ ràng cách hoán vị nén diễn ra, trong đó ví dụ, bit tại vị trí 33 của khóa ban đầu sẽ được chuyển đến vị trí 35 của đầu ra, còn một số bit khác như bit ở vị trí 8 của khóa sẽ bị loại bỏ để đảm bảo tính chính xác và hiệu quả của hệ thống.
Bảng PC2( hoán vị nén):
Như vậy sau khi đi qua PC2 còn lại 48 bit, 48 bit này sẽ được sử dụng làm khóa K1 để sử dụng trong vòng mã hóa.
Mỗi phần gồm 28 bit, sau khi dịch bit lần đầu tiên, tiếp tục được dịch bit lần thứ hai Tiếp đó, qua bảng PC2, các bit này được hoán vị nén thành 48 bit giúp tạo ra khóa K2 Quá trình này là bước quan trọng trong quá trình sinh khóa trong thuật toán mã hóa, đảm bảo tính bảo mật và độ phức tạp của hệ thống.
Quá trình cứ tiếp tục như vậy ta thu được 16 khóa Ki (i=1…16).
Mục đích của hoán vị khởi đầu trong DES là đổi chỗ các bit của khối dữ liệu theo bảng IP, giúp làm rối dữ liệu để tăng tính bảo mật Tuy nhiên, quá trình này không ảnh hưởng đến mức độ an toàn của thuật toán DES, đảm bảo tính toàn vẹn của quá trình mã hóa.
Với khối dữ liệu đầu vào 64 bit, một chuỗi bit x0 được tạo thành bằng cách hoán vị các bit của x theo phép hoán vị cố định ban đầu IP Quá trình này giúp đảm bảo tính bảo mật và hiệu quả trong các thuật toán mã hóa dữ liệu Hoán vị IP đóng vai trò cốt lõi trong quá trình chuyển đổi dữ liệu, tạo ra một cấu trúc mới phù hợp cho các bước xử lý tiếp theo Việc xây dựng x0 từ khối dữ liệu ban đầu dựa trên phép hoán vị IP đã được tối ưu hóa nhằm nâng cao độ an toàn của hệ thống mã hóa.
Ta viết x0=IP(x)=L0R0 trong đó L0 gồm 32 bit đầu và R0 gồm 32 bit cuối.
Hình 1.3: Biểu diễn dãy 64 bit x chia thành 2 thành phần L0, R0
Bảng hoán vị khởi đầu IP.
1.1.2.4 Mã hóa chi tiết một vòng
Quá trình xử lý các vòng là giống nhau, ta xét quá trình xử lý của một vòng i với 1=< i =< 16.
Hình 1.4: Sơ đồ chi tiết một vòng
Hàm f có hai tham số là Ri-1 và Ki Được thực hiện theo sơ đồ sau :
Hình 1.5: Sơ đồ hoạt động của hàm f
Ri-1 được mở rộng từ 32 bit thành 48 bit thông qua quá trình hoán vị mở rộng, trong đó các bit được lặp lại để thay đổi thứ tự Để xác định cách các bit nhập 32 bit được phân bổ vào đầu ra 48 bit, người ta chia input thành 8 bộ, mỗi bộ gồm 4 bit, với bit đầu tiên và cuối cùng của mỗi bộ tương ứng với 2 bit của khối dữ liệu đầu ra Quá trình này giúp mở rộng và hoán vị dữ liệu một cách hiệu quả, đảm bảo tính bảo mật và độ phức tạp trong thuật toán mã hóa.
Hướng phát triển
Qua quá trình nghiên cứu em biết được các thuật toán mã hóa này đã tạo nên nhiều ứng dụng to lớn như:
- Chữ ký thư điện tử trong doanh nghiệp, ngân hàng…
- Kiểm tra tính toàn vẹn của phần mền/dữ liệu khi download…
Lĩnh vực mã hóa là lĩnh vực khó đòi hỏi nhiều thời gian và kiến thức sâu rộng Trong tương lai, tôi sẽ nghiên cứu kỹ hơn các thuật toán mã hóa để có thể xây dựng thành công các chương trình ứng dụng số hóa tranh ảnh kích thước lớn Tôi cũng dự định tìm hiểu thêm về các ngôn ngữ lập trình và phần mềm ứng dụng khác nhằm nâng cao kỹ năng và mở rộng phạm vi ứng dụng của các giải pháp bảo mật.
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Khảo sát hiện trạng và tìm hiểu nhu cầu
Khảo sát hiện trạng là bước đầu tiên quan trọng trong quá trình phân tích và thiết kế hệ thống, giúp nắm bắt nghiệp vụ chuyên môn và môi trường làm việc của hệ thống Quá trình này nhằm tìm hiểu các chức năng, nhiệm vụ và phương thức hoạt động của hệ thống, từ đó xác định các phần hợp lý cần kế thừa và các điểm bất hợp lý cần nghiên cứu để khắc phục.
Sau khi xác định rõ các yêu cầu phát triển của hệ thống, bước tiếp theo là lập kế hoạch và bắt đầu dự án xây dựng hệ thống mới Các công việc chính bao gồm phân tích yêu cầu, thiết kế hệ thống, lập kế hoạch triển khai, và xác định các nguồn lực cần thiết để đảm bảo thành công của dự án Việc này giúp đảm bảo tiến trình phát triển diễn ra suôn sẻ, đáp ứng đúng mục tiêu đề ra và tối ưu hóa hiệu quả hoạt động của hệ thống mới.
- Xác định phạm vi và các hạn chế của dự án.
- Xác định mục tiêu và ưu tiên cho dự án.
- Phác họa giải pháp và cân nhắc tính khả thi.
- Lập kế hoạch triển khai dự án.
2.2 Phân tích hệ thống a Phân tích hệ thống về chức năng
Phân tích thống kê chức năng là quá trình xác định các chức năng nghiệp vụ cần thiết của hệ thống sau khi thực hiện khảo sát thực tế Quá trình này giúp hiểu rõ các thành phần của hệ thống, từ đó đảm bảo các chức năng được thiết kế phù hợp nhằm tối ưu hóa hoạt động kinh doanh Việc phân tích chức năng chính xác góp phần nâng cao hiệu quả vận hành và đáp ứng tốt yêu cầu của người dùng, đây là bước quan trọng trong quá trình phát triển hệ thống.
- Diễn tả chức năng từ mức vật lý về mức lôgic, từ mức đại thể về mức chi tiết.
- Xây dựng sơ đồ phân cấp chức năng.
- Xây dựng sơ đồ dòng dữ liệu b Phân tích hệ thống về dữ liệu
Phân tích hệ thống dữ liệu giúp xác định cấu trúc thông tin được tổ chức trong hệ thống, từ đó làm rõ mối quan hệ tự nhiên giữa các thành phần dữ liệu Quá trình này được xem như lập lược đồ khái niệm về dữ liệu, đóng vai trò quan trọng làm nền tảng cho việc thiết kế cơ sở dữ liệu hiệu quả.
Việc phân tích dữ liệu thường thực hiện qua hai giai đoạn:
Đầu tiên, xây dựng lược đồ dữ liệu dựa trên mô hình thực thể-liên kết để tận dụng ưu điểm về khả năng trực quan và dễ ứng dụng của phương pháp này Mô hình này giúp thể hiện rõ các thực thể và mối quan hệ giữa chúng, từ đó cải thiện hiệu quả quản lý dữ liệu và nâng cao khả năng phân tích thông tin Việc lập lược đồ theo mô hình thực thể-liên kết là bước quan trọng để đảm bảo dữ liệu được tổ chức hợp lý, dễ mở rộng và tối ưu hóa cho các hệ thống cơ sở dữ liệu.
Xác định các kiểu thực thể cùng với các kiểu thuộc tính của nó.
Xác định các mối quan hệ giữa các kiểu thực thể
Tiếp theo, hoàn thiện lược đồ dữ liệu theo mô hình quan hệ để tận dụng cơ sở lý luận vững chắc của mô hình này trong quá trình chuẩn hóa lược đồ dữ liệu Việc này giúp đảm bảo tính nhất quán, tối ưu hóa cấu trúc dữ liệu và nâng cao hiệu quả quản lý thông tin Áp dụng mô hình quan hệ còn giúp xây dựng hệ thống dữ liệu dễ mở rộng, dễ bảo trì, đồng thời đáp ứng tốt các yêu cầu của dự án Do đó, việc hoàn thiện lược đồ dữ liệu theo mô hình quan hệ đóng vai trò quan trọng trong việc tối ưu hóa hệ thống quản lý dữ liệu của doanh nghiệp.
Xác định các kiểu thuộc tính của các thực thể.
Chuẩn hóa danh sách các thuộc tính, từ đó xác định các kiểu thực thể đã được chuẩn hóa.
Xác định mối quan hệ.
2.3 Các bước thiết kế hệ thống
Giai đoạn phân tích nghiệp vụ tập trung vào việc xử lý theo quan điểm logic của hệ thống, xác định các yêu cầu nghiệp vụ cần thiết Trong khi đó, giai đoạn thiết kế hệ thống liên quan đến việc xem xét trực tiếp khả năng cài đặt các yêu cầu này bằng công nghệ máy tính Quá trình này đảm bảo tích hợp hiệu quả giữa yêu cầu nghiệp vụ và kỹ thuật cài đặt, giúp xây dựng hệ thống phù hợp và tối ưu hóa hoạt động.
Tùy vào quy mô của hệ thống, các giai đoạn thiết kế có thể khác nhau để phù hợp Các bước thiết kế hệ thống phổ biến bao gồm phân tích yêu cầu, thiết kế kiến trúc hệ thống và triển khai giải pháp Việc lựa chọn tiến trình phù hợp giúp tối ưu hóa hiệu quả và đáp ứng đúng nhu cầu của dự án Hiểu rõ các bước này là chìa khóa để xây dựng hệ thống hiệu quả, đáng tin cậy và dễ bảo trì.
Thiết lập giao diện người/máy đóng vai trò quan trọng trong việc thiết kế màn hình và menu để tạo ra trải nghiệm hội thoại trực quan giữa người dùng và hệ thống máy tính Việc thiết kế các báo cáo hiển thị trên màn hình cần đảm bảo độ chính xác, dễ đọc và dễ hiểu nhằm nâng cao hiệu quả sử dụng Ngoài ra, giao diện phải hỗ trợ in ấn các tài liệu một cách rõ ràng trên giấy, giúp người dùng dễ dàng tiếp cận và xử lý thông tin một cách thuận tiện.
Thiết kế cơ sở dữ liệu vật lý là quá trình tạo ra các định nghĩa dữ liệu cho hệ thống dự kiến, giúp xác định cách lưu trữ và truy xuất dữ liệu hiệu quả Nhà thiết kế tệp hoặc cơ sở dữ liệu cần thiết lập các cấu trúc tệp phù hợp, đảm bảo sẵn sàng cho quá trình cài đặt và vận hành hệ thống dữ liệu một cách tối ưu Việc này đóng vai trò quan trọng trong việc đảm bảo hiệu suất và tính sẵn sàng của hệ thống quản lý dữ liệu trong tổ chức.
- Hoàn thiện thiết kế chương trình.
- Qua khảo sát và phân tích, học viên thấy hệ thống tổng thể bao gồm 2 hệ thống con như sau:
+ Hệ thống quản lý tranh ảnh gốc.
+ Modul giải mã và triển lãm: Modul triển lãm lấy dữ liệu đã mã hóa và giải mã để trình chiếu.
2.4 Hệ thống quản lý tranh ảnh gốc
2.4.1 Thông tin về tác phẩm (tranh, ảnh quý):
- Tình trạng dữ liệu ảnh gốc (chưa mã hóa).
2.4.2 Thông tin về tác giả:
2.4.3 Thông tin về hoạt động triển lãm
2.4.4.Thông tin nhân viên quản trị
2.4.5.Thiết kế thực thể dữ liệu
Dựa trên các thông đã khảo sát ở trên ta xây dựng được các thực thể dữ liệu như sau:
TacGia(MaTG, HotenTG, Ngaysinh, Gioitinh, DiachiTG, DVCT
TacPham(MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru,
NhanVien(MaNV, HotenNV, DiachiNV, DienthoaiNV)
CTTLam(MaTL, TenTL, MaTP, MaTG, NgayTL, Ngaytra, Songaytre,
Thiết kế CSDL gồm các bảng chính sau:
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa
2.4.6 Sơ đồ quan hệ giữa các thực thể
2.4.7 Nhóm các chức năng chính của hệ thống quản lý dữ liệu gốc a Nhóm chức năng quản lý tác phẩm
Xem danh mục các tác phẩm hiện có
Thêm, sửa, xóa thông tin tác phẩm
Cập nhật thông tin tác phầm b Nhóm chức năng quản lý thông tin tác giả :
Xem danh sách tác giả
Thêm, sửa, xóa thông tin tác giả
Cập nhật thông tin tác giả c.Nhóm chức năng quản lý chung
Quản lý danh mục tác phẩm
QL hệ thống trình chếu và
Cập nhật thanh Thêm toán
Quản lý danh mục tác giả
Quản lý danh mục triển lãm d Báo cáo, thống kê
2.4.8 Sơ đồ phân cấp chức năng a Chức năng quản lý tác phẩm :
1 Cập nhật thêm tác phẩm mới Áp dụng các tác phẩm mới.
2 Cập nhật sửa thông tin tác phẩm
3 Cập nhật xóa thông tin tác phẩm Áp dụng cho tác phẩm bị hỏng hoặc lỗi hoặc bị mất
4 Thống kê tìm kiếm, in báo cáo về các đầu mục tác phẩm
Quản lý TPTác phẩm b Chức năng quản lý tác giả : c Chức năng quản lý chương trình triển lãm:
Kho Dữ Tác Giả đóng
2.4.9 Mô hình dòng dữ liệu:
Lập thông tin tác phẩm:
D1:Thông tin tác phẩm cần được lưu trữ (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D2: Thông báo với tác giả là mã hóa dữ liệu thành công hay thất bại.
D3: Ghi thông tin tác phẩm xuống CSDL (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D4: Thông tin các bảng danh mục phục vụ cho việc nhập dữ liệu của tác phẩm Thông tin về các quy định mã hóa tác phẩm.
D5: Các thông tin cần lưu trữ vào CSDL (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
Bước 1: Nhận D1 từ người dùng
Bước 3: Đọc D4 từ bộ nhớ phụ
Bước 4: Kiểm tra loại tác phẩm có thuộc danh sách các loại tác phẩm không Bước 5: Kiểm tra tuổi
Bước 6: Nếu thoả các quy định thì :
Thiết Bị Nhập Lập Dữ Liệu
Tính ngày trả của tác phẩm Lưu D3 xuống CSDL Bước 7: Đóng kết nối CSDL
D1: Thông tin tác phẩm mới cần được lưu trữ (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D2: Thông báo nhập dữ liệ tác phẩm mới hoàn thành hay thất bại.
D3: Ghi thông tin tác phẩm mới xuống CSDL.
D4: Thông tin các bảng danh mục phục vụ cho việc nhập tác phẩm mới. Thông tin về các quy định mã hóa tác phẩm mới.
D5: Các thông tin cần lưu trữ vào CSDL (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
Bước 1: Nhân viên chọn chức năng nhận tác phẩm mới
Nhập thông tin tác phẩm cần nhập
Bước 2 là kiểm tra tính hợp lệ của thông tin tác phẩm dựa trên Quyết định 2 Nếu thông tin đúng và hợp lệ, tiến hành nhập dữ liệu của tác phẩm và lưu vào cơ sở dữ liệu (CSDL) để đảm bảo quản lý chính xác và hiệu quả.
Thiết Bị Nhập Tác Phẩm
Bước 4: Nếu không hợp lệ thì không nhận tác phẩm và thông báo không thành công
D1: Các thông tin cần thiết cho việc tra cứu tác phẩm (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D2: Kết quả của việc tra cứu.
D3: Nếu nhân viên là người quản trị thì sẽ có quyền cập nhật tình trạng tác phẩm.
D4: Kết quả của việc tra cứu.
D5: Kết quả của việc tra cứu (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
Bước 1: Người sử dụng chọn chức năng tra cứu tác phẩm
Bước 2: Nhập các thông tin cần tra cứu
Bước 3: Có thể tra cứu chính xác hoặc gần đúng
Bước 4: Nếu người sử dụng là nhân viên thì có thêm quyền cập nhật tác phẩm Bước 5: Xuất kết quả tra cứu cho người sử dụng xem.
Thiết Bị Nhập Tác Phẩm
Thu hồi tác phẩm sau triển lãm:
D1: Thông tin tác phẩm được thu hồi (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D2: Thông báo với tác giả là việc kết thúc triển lãm hoàn tất, có phát sinh chi phí hay không.
D3: Ghi thông tin tác phẩm trả xuống CSDL.
D4: Thông tin các bảng danh mục phục vụ cho việc thu hồi tác phẩm Thông tin về các quy định thu hồi tác phẩm.
D5: Các thông tin cần lưu trữ vào CSDL (MaTL, TenTL, MaTP, MaTG, NgayTL, Ngaytra, Songaytre, PhiTL, Diadiem)
Bước 1: Nhân viên chọn chức năng nhận trả tác phẩm
Bước 2: Kiểm tra tác phẩm được mượn có quá hạn hay không
Bước 3: Nếu quá hạn, tính tiền phạt, thông báo cho tác giả
Bước 4: Ghi nhận việc trả tác phẩm, lưu xuống CSDL
Thiết Bị Nhập Nhận Tác
D1: Thông tin đăng nhập vào hệ thống (MaNV, HotenNV, DiachiNV, DienthoaiNV)
D2: Thông báo thành công hay thất bại.
D4: Thông tin dữ liệu phục vụ cho việc đăng nhập vào hệ thống.
D5: Các thông tin đăng nhâp vào hệ thống (MaNV, HotenNV, DiachiNV, DienthoaiNV).
Bước 1: Nhân viên chọn chức năng đăng nhập hệ thống
Bước 2: Nhập các thông tin đăng nhập
Bước 3: Mở kết nối CSDL
Bước 4: Kiểm tra thông tin đăng nhập
Bước 5: Nếu đăng nhập thành công, cho vào hệ thống
Bước 6: Nếu đăng nhập thất bại, thông báo đăng nhập thất bại
Bước 7: Đóng kết nối CSDL.
Thiết Bị Nhập Đăng Nhập
D1: Thông tin tác phẩm để gia hạn triển lãm (MaTL, TenTL, MaTP, MaTG), và các thông tin khác (NgayTL, Ngaytra Songaytre, PhiTL, Diadiem).
D2: Thông báo với tác giả là gia hạn thành công hay thất bại.
D3: Ghi thông tin gia hạn triển lãm xuống CSDL.
D4: Thông tin các bàng danh mục phục vụ cho việc gia hạn triển lãm.
D5: Thông tin cần lưu trữ vào CSDL (MaTL, TenTL, MaTP, MaTG,
NgayTL, Ngaytra, Songaytre, PhiTL, Diadiem).
Bước 1: Người sử dụng chọn chức năng gia hạn triển lãm
Bước 2: Nhập các thông tin gia hạn triển lãm
Bước 3: Mở kết nối CSDL
Bước 4: Kiểm tra việc gia hạn triển lãm
Bước 5: Nếu gia hạn thành công, thông báo, cập nhật lại CSDL
Bước 6: Nếu gia hạn không thành công, thông báo.
Bước 7: Đóng kết nối CSDL.
Thiết Bị Nhập Gia Hạn
2.5 Modul giải mã và triển lãm:
2.5.1 Thông tin về tác phẩm (tranh, ảnh quý):
- Dữ liệu ảnh đã mã hóa
2.5.2 Thông tin về tác giả:
2.5.3 Thông tin về hoạt động triển lãm
2.5.4 Thông tin nhân viên quản trị
2.5.5 Thiết kế thực thể dữ liệu
Dựa trên các thông đã khảo sát ở trên ta xây dựng được các thực thể dữ liệu như sau:
TacPham(MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien,
NhanVien(MaNV,MaTL, HotenNV, DiachiNV, DienthoaiNV)
CTTLam(MaTL, MaTG, TenTL, MaTP, NgayTL, Soluong, Dulieumahoa )
Lập từ điển dữ liệu
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
2.5.6 Sơ đồ quan hệ giữa các thực thể
2.5.7.Nhóm các chức năng chính của modul giải mã và triển lãm a Nhóm chức năng quản lý tác phẩm
Xem danh mục các tác phẩm hiện có
Thêm, sửa, xóa thông tin tác phẩm
Cập nhật thông tin tác phầm b.Nhóm chức năng quản lý thông tin tác giả :
Xem danh sách tác giả
Thêm, sửa, xóa thông tin tác giả
Cập nhật thông tin tác giả
QL hệ thống trình chếu và
QL Triển Lãm Tình trạng TP
Thống kê c.Nhóm chức năng modul triển lãm
Lấy dữ liệu tác phẩm đã mã hóa
Trình chiếu d.Báo cáo, thống kê
2.5.8.Sơ đồ phân cấp chức năng quản lý modul giải mã và triển lãm
2.6 Thiết kế giao diện cài đặt kiểm thử
Giao diện form đăng nhập
Các bước thiết kế hệ thống
Giai đoạn phân tích nghiệp vụ tập trung vào việc xử lý các yêu cầu dựa trên quan điểm logic của hệ thống Sau đó, giai đoạn thiết kế hệ thống bao gồm việc đánh giá khả năng cài đặt các yêu cầu nghiệp vụ này bằng công nghệ máy tính Quá trình này giúp đảm bảo rằng các yêu cầu nghiệp vụ có thể được triển khai một cách hiệu quả và phù hợp với hệ thống công nghệ thông tin.
Tùy thuộc vào quy mô của hệ thống, các giai đoạn thiết kế có thể được áp dụng linh hoạt để phù hợp Quá trình thiết kế hệ thống bao gồm các bước cơ bản nhằm đảm bảo tính khả thi và hiệu quả của dự án Các tiến trình đơn giản nhất trong thiết kế hệ thống giúp tối ưu hóa quy trình phát triển, giảm thiểu rủi ro và nâng cao chất lượng sản phẩm cuối cùng Việc lựa chọn các giai đoạn phù hợp sẽ giúp triển khai dự án dễ dàng hơn, đáp ứng đúng yêu cầu và tiêu chuẩn đề ra.
Thiết lập giao diện người/máy đóng vai trò quan trọng trong việc thiết kế màn hình và menu để cuộc đối thoại giữa người và máy trở nên trực quan, dễ sử dụng Giao diện cần hiển thị các báo cáo một cách chính xác trên màn hình và in ra giấy rõ ràng, dễ đọc, giúp người dùng dễ dàng tiếp cận và hiểu thông tin một cách nhanh chóng và hiệu quả.
Thiết kế cơ sở dữ liệu vật lý là bước quan trọng trong quá trình phát triển hệ thống, trong đó nhà thiết kế tệp hoặc cơ sở dữ liệu xác định các định nghĩa dữ liệu cần thiết và thiết lập các cấu trúc tệp sẵn sàng cho việc cài đặt Quá trình này đảm bảo hệ thống hoạt động hiệu quả và tối ưu hóa hiệu suất truy cập dữ liệu Việc thiết kế vật lý giúp tạo ra nền tảng vững chắc cho việc quản lý dữ liệu trong hệ thống thông qua các cấu trúc tệp được tối ưu hóa phù hợp với yêu cầu kỹ thuật và kinh doanh.
- Hoàn thiện thiết kế chương trình.
- Qua khảo sát và phân tích, học viên thấy hệ thống tổng thể bao gồm 2 hệ thống con như sau:
+ Hệ thống quản lý tranh ảnh gốc.
+ Modul giải mã và triển lãm: Modul triển lãm lấy dữ liệu đã mã hóa và giải mã để trình chiếu.
Hệ thống quản lý tranh ảnh gốc
2.4.1 Thông tin về tác phẩm (tranh, ảnh quý):
- Tình trạng dữ liệu ảnh gốc (chưa mã hóa).
2.4.2 Thông tin về tác giả:
2.4.3 Thông tin về hoạt động triển lãm
2.4.4.Thông tin nhân viên quản trị
2.4.5.Thiết kế thực thể dữ liệu
Dựa trên các thông đã khảo sát ở trên ta xây dựng được các thực thể dữ liệu như sau:
TacGia(MaTG, HotenTG, Ngaysinh, Gioitinh, DiachiTG, DVCT
TacPham(MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru,
NhanVien(MaNV, HotenNV, DiachiNV, DienthoaiNV)
CTTLam(MaTL, TenTL, MaTP, MaTG, NgayTL, Ngaytra, Songaytre,
Thiết kế CSDL gồm các bảng chính sau:
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa
2.4.6 Sơ đồ quan hệ giữa các thực thể
2.4.7 Nhóm các chức năng chính của hệ thống quản lý dữ liệu gốc a Nhóm chức năng quản lý tác phẩm
Xem danh mục các tác phẩm hiện có
Thêm, sửa, xóa thông tin tác phẩm
Cập nhật thông tin tác phầm b Nhóm chức năng quản lý thông tin tác giả :
Xem danh sách tác giả
Thêm, sửa, xóa thông tin tác giả
Cập nhật thông tin tác giả c.Nhóm chức năng quản lý chung
Quản lý danh mục tác phẩm
QL hệ thống trình chếu và
Cập nhật thanh Thêm toán
Quản lý danh mục tác giả
Quản lý danh mục triển lãm d Báo cáo, thống kê
2.4.8 Sơ đồ phân cấp chức năng a Chức năng quản lý tác phẩm :
1 Cập nhật thêm tác phẩm mới Áp dụng các tác phẩm mới.
2 Cập nhật sửa thông tin tác phẩm
3 Cập nhật xóa thông tin tác phẩm Áp dụng cho tác phẩm bị hỏng hoặc lỗi hoặc bị mất
4 Thống kê tìm kiếm, in báo cáo về các đầu mục tác phẩm
Quản lý TPTác phẩm b Chức năng quản lý tác giả : c Chức năng quản lý chương trình triển lãm:
Kho Dữ Tác Giả đóng
2.4.9 Mô hình dòng dữ liệu:
Lập thông tin tác phẩm:
D1:Thông tin tác phẩm cần được lưu trữ (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D2: Thông báo với tác giả là mã hóa dữ liệu thành công hay thất bại.
D3: Ghi thông tin tác phẩm xuống CSDL (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D4: Thông tin các bảng danh mục phục vụ cho việc nhập dữ liệu của tác phẩm Thông tin về các quy định mã hóa tác phẩm.
D5: Các thông tin cần lưu trữ vào CSDL (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
Bước 1: Nhận D1 từ người dùng
Bước 3: Đọc D4 từ bộ nhớ phụ
Bước 4: Kiểm tra loại tác phẩm có thuộc danh sách các loại tác phẩm không Bước 5: Kiểm tra tuổi
Bước 6: Nếu thoả các quy định thì :
Thiết Bị Nhập Lập Dữ Liệu
Tính ngày trả của tác phẩm Lưu D3 xuống CSDL Bước 7: Đóng kết nối CSDL
D1: Thông tin tác phẩm mới cần được lưu trữ (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D2: Thông báo nhập dữ liệ tác phẩm mới hoàn thành hay thất bại.
D3: Ghi thông tin tác phẩm mới xuống CSDL.
D4: Thông tin các bảng danh mục phục vụ cho việc nhập tác phẩm mới. Thông tin về các quy định mã hóa tác phẩm mới.
D5: Các thông tin cần lưu trữ vào CSDL (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
Bước 1: Nhân viên chọn chức năng nhận tác phẩm mới
Nhập thông tin tác phẩm cần nhập
Bước 2: Kiểm tra tính hợp lệ của các thông tin tác phẩm theo Quyết định 2 để đảm bảo đúng quy định Bước 3: Nếu thông tin hợp lệ, tiến hành nhập dữ liệu của tác phẩm và lưu vào cơ sở dữ liệu để quản lý hiệu quả.
Thiết Bị Nhập Tác Phẩm
Bước 4: Nếu không hợp lệ thì không nhận tác phẩm và thông báo không thành công
D1: Các thông tin cần thiết cho việc tra cứu tác phẩm (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D2: Kết quả của việc tra cứu.
D3: Nếu nhân viên là người quản trị thì sẽ có quyền cập nhật tình trạng tác phẩm.
D4: Kết quả của việc tra cứu.
D5: Kết quả của việc tra cứu (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
Bước 1: Người sử dụng chọn chức năng tra cứu tác phẩm
Bước 2: Nhập các thông tin cần tra cứu
Bước 3: Có thể tra cứu chính xác hoặc gần đúng
Bước 4: Nếu người sử dụng là nhân viên thì có thêm quyền cập nhật tác phẩm Bước 5: Xuất kết quả tra cứu cho người sử dụng xem.
Thiết Bị Nhập Tác Phẩm
Thu hồi tác phẩm sau triển lãm:
D1: Thông tin tác phẩm được thu hồi (MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien, Soluong, Tinhtranganhgoc).
D2: Thông báo với tác giả là việc kết thúc triển lãm hoàn tất, có phát sinh chi phí hay không.
D3: Ghi thông tin tác phẩm trả xuống CSDL.
D4: Thông tin các bảng danh mục phục vụ cho việc thu hồi tác phẩm Thông tin về các quy định thu hồi tác phẩm.
D5: Các thông tin cần lưu trữ vào CSDL (MaTL, TenTL, MaTP, MaTG, NgayTL, Ngaytra, Songaytre, PhiTL, Diadiem)
Bước 1: Nhân viên chọn chức năng nhận trả tác phẩm
Bước 2: Kiểm tra tác phẩm được mượn có quá hạn hay không
Bước 3: Nếu quá hạn, tính tiền phạt, thông báo cho tác giả
Bước 4: Ghi nhận việc trả tác phẩm, lưu xuống CSDL
Thiết Bị Nhập Nhận Tác
D1: Thông tin đăng nhập vào hệ thống (MaNV, HotenNV, DiachiNV, DienthoaiNV)
D2: Thông báo thành công hay thất bại.
D4: Thông tin dữ liệu phục vụ cho việc đăng nhập vào hệ thống.
D5: Các thông tin đăng nhâp vào hệ thống (MaNV, HotenNV, DiachiNV, DienthoaiNV).
Bước 1: Nhân viên chọn chức năng đăng nhập hệ thống
Bước 2: Nhập các thông tin đăng nhập
Bước 3: Mở kết nối CSDL
Bước 4: Kiểm tra thông tin đăng nhập
Bước 5: Nếu đăng nhập thành công, cho vào hệ thống
Bước 6: Nếu đăng nhập thất bại, thông báo đăng nhập thất bại
Bước 7: Đóng kết nối CSDL.
Thiết Bị Nhập Đăng Nhập
D1: Thông tin tác phẩm để gia hạn triển lãm (MaTL, TenTL, MaTP, MaTG), và các thông tin khác (NgayTL, Ngaytra Songaytre, PhiTL, Diadiem).
D2: Thông báo với tác giả là gia hạn thành công hay thất bại.
D3: Ghi thông tin gia hạn triển lãm xuống CSDL.
D4: Thông tin các bàng danh mục phục vụ cho việc gia hạn triển lãm.
D5: Thông tin cần lưu trữ vào CSDL (MaTL, TenTL, MaTP, MaTG,
NgayTL, Ngaytra, Songaytre, PhiTL, Diadiem).
Bước 1: Người sử dụng chọn chức năng gia hạn triển lãm
Bước 2: Nhập các thông tin gia hạn triển lãm
Bước 3: Mở kết nối CSDL
Bước 4: Kiểm tra việc gia hạn triển lãm
Bước 5: Nếu gia hạn thành công, thông báo, cập nhật lại CSDL
Bước 6: Nếu gia hạn không thành công, thông báo.
Bước 7: Đóng kết nối CSDL.
Thiết Bị Nhập Gia Hạn
Modul giải mã và triển lãm
2.5.1 Thông tin về tác phẩm (tranh, ảnh quý):
- Dữ liệu ảnh đã mã hóa
2.5.2 Thông tin về tác giả:
2.5.3 Thông tin về hoạt động triển lãm
2.5.4 Thông tin nhân viên quản trị
2.5.5 Thiết kế thực thể dữ liệu
Dựa trên các thông đã khảo sát ở trên ta xây dựng được các thực thể dữ liệu như sau:
TacPham(MaTP, TenTP, MaTG, HotenTG, NamST, Ngayluutru, Giatien,
NhanVien(MaNV,MaTL, HotenNV, DiachiNV, DienthoaiNV)
CTTLam(MaTL, MaTG, TenTL, MaTP, NgayTL, Soluong, Dulieumahoa )
Lập từ điển dữ liệu
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
STT Tên thuộc tính Kiểu dữ liệu Rằng buộc Null/Not
Null Khóa chính Khóa phụ
2.5.6 Sơ đồ quan hệ giữa các thực thể
2.5.7.Nhóm các chức năng chính của modul giải mã và triển lãm a Nhóm chức năng quản lý tác phẩm
Xem danh mục các tác phẩm hiện có
Thêm, sửa, xóa thông tin tác phẩm
Cập nhật thông tin tác phầm b.Nhóm chức năng quản lý thông tin tác giả :
Xem danh sách tác giả
Thêm, sửa, xóa thông tin tác giả
Cập nhật thông tin tác giả
QL hệ thống trình chếu và
QL Triển Lãm Tình trạng TP
Thống kê c.Nhóm chức năng modul triển lãm
Lấy dữ liệu tác phẩm đã mã hóa
Trình chiếu d.Báo cáo, thống kê
2.5.8.Sơ đồ phân cấp chức năng quản lý modul giải mã và triển lãm
Thiết kế giao diện cài đặt kiểm thử
Giao diện form đăng nhập