• Không có kết quả nào được tìm thấy

Tìm hiểu về chữ ký số và ứng dụng trong thương mại điện tử

Protected

Academic year: 2023

Chia sẻ "Tìm hiểu về chữ ký số và ứng dụng trong thương mại điện tử"

Copied!
75
0
0

Loading.... (view fulltext now)

Văn bản

TÌM HIỂU VỀ CHỮ KÝ SỐ VÀ ỨNG DỤNG TRONG THƯƠNG MẠI ĐIỆN TỬ. Lớp: CT2001C Ngành: Công nghệ thông tin Tên chủ đề: Tìm hiểu về chữ ký số và ứng dụng trong thương mại điện tử. THƯƠNG MẠI ĐIỆN TỬ VÀ VAI TRÒ CỦA CHỮ KÝ SỐ TRONG THƯƠNG MẠI ĐIỆN TỬ.

THƯƠNG MẠI ĐIỆN TỬ VÀ VAI TRÒ CỦA CHỮ KÝ SỐ

  • Giới thiệu về thương mại điện tử
    • Thương mại điện tử là gì?
    • Giao dịch trong thương mại điện tử
  • Giao dịch thanh toán điện tử
    • Giới thiệu chung
    • Yêu cầu đối với các hệ thống thanh toán điện tử
  • Thanh toán điện tử dùng chứng chỉ số và chữ ký số
    • Mô hình thanh toán dùng chứng chỉ số và chữ ký số
    • Hoạt động của mô hình thanh toán dùng chứng chỉ số và chữ ký số
  • Kết luận

Theo nhiều cách, thanh toán trực tuyến là nền tảng của hệ thống thương mại điện tử. Trong các hệ thống thanh toán điện tử trực tuyến, nhiều giải pháp công nghệ cho phép thực hiện điều này. Vận hành mô hình thanh toán sử dụng chứng thư số và chữ ký số.

Hình 4.4: Mô hình tổng quát sử dụng chứng chỉ số
Hình 4.4: Mô hình tổng quát sử dụng chứng chỉ số

CƠ SỞ TOÁN HỌC VÀ CÁC HỆ MÃ HÓA KHÓA CÔNG

  • Giới thiệu về lý thuyết số
    • Các số nguyên tố và các số nguyên tố cùng nhau
    • Lý thuyết về đồng dư
    • Các số nguyên modulo n
    • Hàm Euler, định lý Euler và định lý Fermat
    • Thuật toán Euclide và thuật toán Euclide mở rộng
  • Tổng quan về hệ mã hóa khóa công khai
    • Nguyên lý cơ bản của hệ mật mã khoá công khai
    • Hoạt động của hệ mật mã khóa công khai
    • Khả năng ứng dụng của hệ mật mã khóa công khai
    • Các yêu cầu của hệ mật mã khóa công khai
  • Kỹ thuật mã hóa khóa công khai
    • Mã khóa công khai
    • Nguyên tắc cấu tạo một hệ khóa công khai
  • Tổng kết chương 2

Không giống như mã hóa đối xứng, mã hóa khóa bất đối xứng sử dụng một cặp khóa: khóa chung và khóa riêng. Chỉ chủ sở hữu mới giữ khóa riêng trong khi khóa chung được phổ biến rộng rãi. Trong đó, một khóa gọi là khóa chung cùng với thuật toán mã hóa E được công bố rộng rãi trong một thư mục dùng chung để mọi người sử dụng (như số điện thoại).

Người A sẽ tìm khóa chung keB của B trong thư mục dùng chung, tính C = EkeB(M) và gửi bản mã C cho người nhận B. Vì tất cả các thành viên đều có thể sử dụng khóa chung của thành viên đó nên các thành viên khác có thể mã hóa thông tin gửi cho họ. Mã hóa và giải mã: người gửi A mã hóa tin nhắn M bằng khóa chung của người nhận B keB: C = EkeB(M).

Việc tính toán rất đơn giản đối với người gửi, nếu anh ta biết khóa chung và thông điệp M phải được mã hóa bằng bản mã tương ứng C = EKe(M). Đối với một nhà giải mã, phép tính là không thể tính toán được: nếu anh ta biết khóa công khai ke, anh ta muốn xác định khóa bí mật kd. Nhận xét: Hệ thống mã hóa khóa công khai không nhất thiết phải đảm bảo tính bảo mật tuyệt đối.

Các thuật toán khóa chung dựa vào khóa chung để mã hóa và khóa riêng tương ứng để giải mã. Đây là khóa chung, khóa còn lại được giữ riêng tư (khóa riêng). Cách tiếp cận này cho phép tất cả người tham gia lấy khóa chung.

Hình 2.1:  Sơ đồ hoạt động của hệ mật mã khoá công khai
Hình 2.1: Sơ đồ hoạt động của hệ mật mã khoá công khai

CHỮ KÝ SỐ VÀ HÀM BĂM

Bài toán phân tích số nguyên

Mô tả các quá trình tạo khoá, mã hoá và giải mã

  • Tạo khóa
  • Hàm băm
  • Chữ ký số

Ví dụ: chữ ký số DSA (Thuật toán chữ ký số) sử dụng hàm băm SHA-1 để tạo thông báo cô đọng dài 160 bit. Bản tóm tắt thông báo đầu ra có độ dài cố định (khá nhỏ). Nguyên lý của chữ ký điện tử gần giống như chữ ký thông thường, ví dụ người A muốn gửi tin nhắn cho người B thì A sẽ gửi chữ ký kèm theo tin nhắn của mình cho B.

Người gửi sử dụng hàm băm để chuyển thông điệp x thành thông điệp tóm tắt h có độ dài cố định: h = Hash(x). Người gửi dùng khóa riêng kd của mình để mã hóa chuỗi h: y = Ekd(h), kết quả thu được y chính là chữ ký số của tin nhắn x. Người nhận sử dụng khóa công khai ke của người gửi để giải mã chữ ký số y vừa nhận và khôi phục tin nhắn đã nén: h1 = Dke(y).

Người nhận sử dụng hàm băm giống như người gửi để chuyển tin nhắn x đã nhận thành tin nhắn nhỏ gọn: h2 = Hash(x). Người gửi A mã hóa tin nhắn x bằng khóa chung của người nhận B:. keB là khóa công khai của người nhận B). Nếu kiểm tra ở trên là đúng thì người nhận tiếp tục thực hiện quá trình giải mã C bằng khóa riêng của mình: x = DkdB(C), để khôi phục tin nhắn x.

Giả sử để tạo chữ ký cho tin nhắn (tài liệu) m, người dùng A thực hiện như sau.

Bảng 3: Bảng tóm tắt các bước tạo khoá, mã hoá, giải mã của hệ RSA
Bảng 3: Bảng tóm tắt các bước tạo khoá, mã hoá, giải mã của hệ RSA

Mô tả hệ thống

Nếu quá trình xác minh chữ ký là đúng (VerK(m, S) = true), thì người nhận B chắc chắn rằng tin nhắn m thực sự đến từ người gửi A và nội dung tin nhắn không bị người khác thay đổi hoặc giả mạo khi phát trên Internet. . . Lược đồ chữ ký RSA là lược đồ được sử dụng rộng rãi nhất trong các ứng dụng bảo mật do tính bảo mật và hiệu suất tốt hơn hiện nay. Lược đồ chữ ký điện tử RSA được chọn để tích hợp vào hệ thống bảo vệ an ninh email của dự án.

Cùng với sơ đồ chữ ký RSA, thuật toán băm MD5 cũng được chọn để đáp ứng yêu cầu tạo bản tóm tắt thông báo 128 bit từ thông báo đầu vào có độ dài bất kỳ nhằm mục đích tạo chữ ký của hệ thống. Khách hàng gửi xác nhận đến máy chủ bán hàng của người bán, sau đó khách hàng nhận được sản phẩm đã mua. Quá trình liên lạc giữa các bên tham gia được bảo mật bằng cách sử dụng chữ ký số trên tin nhắn đã gửi.

X ở đây là thông tin đặt hàng của Người dùng bao gồm: thông tin cá nhân, thông tin về sản phẩm đã đặt hàng. Người dùng giải mã khóa bí mật và sử dụng nó để ký vào thông điệp băm Y (tin nhắn cắt ngắn) nhằm tạo chữ ký số trên Y bằng cách tính S = modN1. Nếu Y1 = Y thì Máy chủ chấp nhận chữ ký S trong tin nhắn X của Người dùng là chính xác.

Ngược lại, Y1 ≠ Y, máy chủ không nhận ra S là chữ ký của người dùng trên tin nhắn X vì cho rằng đây là chữ ký giả hoặc tin nhắn đã bị sửa đổi.

Phân tích hệ thống

  • Mô hình hệ thống
  • Các chức năng chính của hệ thống
  • Kiến trúc module của hệ thống
  • Các module của hệ thống
  • Các thông điệp được ký số

Sau khi hoàn tất thanh toán, máy chủ thanh toán sẽ gửi xác nhận làm bằng chứng thanh toán cho người mua. Máy chủ thanh toán chuyển số tiền thanh toán từ tài khoản khách hàng n sang tài khoản nhà cung cấp n. Sau đó Payment Server sẽ gửi xác nhận thanh toán cho khách hàng (Customer).

Tính năng này được khách hàng sử dụng để nhận sản phẩm đã được thanh toán. Người nghe thanh toán liên hệ với máy chủ thanh toán và gửi yêu cầu thanh toán đến máy chủ thanh toán. Để mua hàng, Khách hàng phải gửi yêu cầu thanh toán đến máy chủ thanh toán.

Trao đổi khóa công khai giữa người bán và máy chủ thanh toán để xác minh tính toàn vẹn của biên lai thanh toán do khách hàng gửi. Trong tin nhắn yêu cầu chuyển sản phẩm có nội dung xác nhận thanh toán từ khách hàng đến người bán. Chúng tôi coi việc trao đổi tin nhắn chỉ nhằm mục đích thực hiện quá trình thanh toán.

Người bán đã đăng ký dịch vụ thanh toán với Máy chủ thanh toán và trao đổi khóa công khai với nhau.

Hình 4.2: Kiến trúc Module tổng thể của hệ  thống
Hình 4.2: Kiến trúc Module tổng thể của hệ thống

Cài đặt hệ thống

  • Một số hàm phương thức được sử dụng
  • Một số giao diện cài đặt

Giải mã tin nhắn được mã hóa trước đó sẽ mang lại tin nhắn được mã hóa băm descrypt_message (tóm tắt 1). Việc sử dụng chữ ký điện tử sẽ được sử dụng trong ủy quyền thanh toán. Mỗi khách hàng tạo tài khoản sẽ được cấp một khóa riêng ngẫu nhiên và khóa này sẽ được lưu trữ trong cơ sở dữ liệu và sẽ được sử dụng khi khách hàng muốn thanh toán một món hàng.

Hóa đơn sẽ là hóa đơn và chữ ký sẽ được tạo từ hóa đơn và khóa riêng của khách hàng. Nếu đúng, hóa đơn sẽ được chấp nhận và sau đó số dư tài khoản của người dùng sẽ bị trừ và đơn hàng sẽ được thông báo thành công. Hệ thống sẽ hiển thị thông báo xử lý giao dịch: nhận hàng và thanh toán hoặc thanh toán trực tuyến.

Khi thực hiện thanh toán trực tuyến, thông tin chủ tài khoản và chủ thẻ sẽ được tự động điền vào thanh nhập liệu. Khi nhấn nút thanh toán, hệ thống sẽ gửi xác nhận yêu cầu thanh toán đến khách hàng, bao gồm: thông tin thẻ, số dư tài chính n, tổng số tiền thanh toán và số tiền còn lại trên thẻ. PaymentServer sau khi kiểm tra tin nhắn hợp lệ sẽ trừ tiền từ tài khoản của khách hàng và gửi tin nhắn xác nhận.

Sau khi kiểm tra tính hợp lệ của tin nhắn nhận được, Máy chủ của nhà cung cấp sẽ ghi lại yêu cầu mua hàng của khách hàng vào cơ sở dữ liệu của mình.

Hình 4.6, 4.7, 4.8, 4.9, 4.10, 4.11, 5.12 trình bày một số giao diện cài đặt của  hệ thống
Hình 4.6, 4.7, 4.8, 4.9, 4.10, 4.11, 5.12 trình bày một số giao diện cài đặt của hệ thống

Kết luận

Hiện nay, Đảng và Chính phủ Việt Nam rất quan tâm và đã làm nhiều việc thiết thực để thiết lập hạ tầng thương mại điện tử như chữ ký điện tử và thanh toán điện tử. Tuy nhiên, thực tế cho thấy các trang này vẫn còn thiếu một bước vô cùng quan trọng trong thương mại điện tử theo đúng nghĩa của nó: Thanh toán điện tử - một ứng dụng yêu cầu hệ thống xác thực điện tử. Và tôi hy vọng rằng thuật toán sẽ được sử dụng rộng rãi hơn cho thanh toán điện tử.

HU, »Nove podpisne sheme, ki temeljijo na diskretnih logaritmih in faktoringu«, Journal of Beijing University of Posts and Telecommunications, vol. 3] Shimin Wei, »Digital Signature Scheme Based on Two Hard Problems«, IJCSNS International Journal of Computer Science and Network Security, VOL.7 No.12, december 2007. Ahmad, »A New Digital Signature Scheme Based on Factoring and Discrete Logarithms ”, Revija za matematiko in statistiko.

5] Qin Yanlin, Wu Xiaoping, “New digital signature scheme based on both ECDLP and IFP”, Computer Science and Information Technology, 2009. 6] Swati Verma1, Birendra Kumar Sharma, “A new digital signature scheme based on two difficult problems”, International Journal of Pure and Applied Sciences and Technology, ISSN Int. 7] Sushila Vishnoi, Vishal Shrivastava, "A new digital signature algorithm based on factorization and the discrete logarithm problem", International Journal of Computer Trends and Technology, Volume 3, Number 4, 2012.

Shcherbacov, “Cryptoschemes based on the difficulty of solving two different difficult problems simultaneously,” Computer Science Journal of Moldova, vol.21, no.

Hình ảnh

Hình 4.4: Mô hình tổng quát sử dụng chứng chỉ số
Hình 4.5: Các tác nhân tham gia trong mô hình thanh toán dùng chữ ký số  Quá trình hoạt động được thực hiện như sau:
Hình 2.1:  Sơ đồ hoạt động của hệ mật mã khoá công khai
Hình 2.2: Sơ đồ minh họa tính mật  của hệ mật mã khóa công khai
+7

Tài liệu tham khảo

Tài liệu liên quan

 Định nghĩa 2.6: Một xâu là một dãy hữu hạn các ký tự hoặc ký hiệu rút ra từ một tập hợp hữu hạn với ít nhất hai phần tử, được gọi là bảng chữ.. Một xâu thường được ký hiệu bằng cách