4. Chương 4: THỬ NGHIỆM CHƯƠNG TRÌNH CHỮ KÝ SỐ BỘI TRÊN ĐƯỜNG
4.4.1 Chương trình lược đồ chữ ký số bội ngang hàng
Bước 1: Trên môi trường Matlab chạy chương trình PmultisigGui
Bước 2- Khởi tạo tham số:
Nhập số lượng thành viên vào ô Number of Member. Nhập nội dung văn bản cần mã hóa vào ô Message hoặc mở từ một file đã lưu trữ bằng nút Browse
Hình 4.3. Kh i tạo chương trình chữ ký bội ngang hàng
Bước 3- Tạo khóa bí mật và công khai
Nh n nút P B để tạo khóa công khai, nh n nút PRI để tạo khóa bí mật cho các thành viên. Các giá trị của khóa sẽ được hiển thị trên chương trình ở các ô hiển thị bên cạnh tương ứng (hình 4.4).
Bước 4 - Tạo chữ ký bội
Khi nh n vào nút First Element (E), chương trình sẽ tính toán và hiển thị giá trị đầu ra của hàm băm văn bản đã ký với các tham số ngẫu nhiên. Nếu nh n vào nút
Second Element (S), chương trình sẽ đưa ra thành phần thứ hai của chữ ký bội (là cơ sở cho việc xác thực chữ ký bội sau này). Hình 4.5 minh họa quá trình tạo chữ ký đã được mô tả ở trên.
Hình 4.4. Tạo khóa bí mật và công khai
Hình 4.5. Tạo chữ ký bội ngang hàng
Bước 5 – Xác thực chữ ký
Để xác thực chữ ký ta có thể nhập vào một văn bản như có nội dung như văn bản gốc trong ô Message hoặc mở từ một file đã lưu trữ bằng nút Browse . Nội dung
file sẽ được hiển thị trên ô Content of Sending Message. Khi nh n vào nút First Element (H), chương trình sẽ tính toán và hiển thị giá trị đầu ra của hàm băm văn bản đã ký với các tham số ngẫu nhiên. Nếu nh n vào nút Second Element (Z), chương trình sẽ đưa ra thành phần thứ hai của chữ ký bội. Nếu giá trị H và E là như nhau, ta kết luận văn bản gốc không bị chỉnh sửa và các chữ ký bội là hợp lệ. Quá trình thực hiện cụ thể việc xác thực chữ ký được minh họa trong hình 4.6.
Hình 4.6. Xác thực chữ ký bội ngang hàng