Với cỏc sơ đồ ký số, chỉ cho phộp ký cỏc thụng điệp (thụng tin) cú kớch thƣớc nhỏ và sau khi ký, bản ký số cú kớch thƣớc gấp đụi bản thụng điệp gốc – vớ dụ với sơ đồ chữ ký chuẩn DSS chỉ ký trờn cỏc thụng điệp cú kớch thƣớc 160 bit, bản ký số sẽ cú kớch thƣớc 320 bit. Trong khi đú trờn thực tế, ta cần phải ký cỏc thụng điệp cú kớch thƣớc lớn hơn nhiều, chẳng hạn vài chục MegaByte. Hơn nữa, dữ liệu truyền qua mạng khụng chỉ là bản thụng điệp gốc, mà cũn bao gồm cả bản ký số (cú dung lƣợng gấp đụi dung lƣợng bản thụng điệp gốc), để đỏp ứng việc xỏc thực sau khi thụng tin đến ngƣời nhận.
Một cỏch đơn giản để giải bài toỏn (với thụng điệp cú kớch thƣớc vài chục MB) này là chặt thụng điệp thành nhiều đoạn 160 bit, sau đú ký lờn cỏc đoạn đú độc lập nhau. Nhƣng, biện phỏp này cú một số vấn đề trong việc tạo ra cỏc chữ ký số:
1/. Với một thụng điệp cú kớch thƣớc a, thỡ sau khi ký kớch thƣớc của chữ ký sẽ là 2a
(trong trƣờng hợp sử dụng DSS).
2/. Với cỏc chữ ký “an toàn” thỡ tốc độ chậm vỡ chỳng dựng nhiều phộp tớnh số học phức tạp nhƣ số mũ modulo.
3/. Vấn đề nghiờm trọng hơn đú là kết quả sau khi ký, nội dung của thụng điệp cú thể bị xỏo trộn cỏc đoạn với nhau, hoặc một số đoạn trong chỳng cú thể bị mất mỏt, trong khi ngƣời nhận cần phải xỏc minh lại thụng điệp. Ta cần phải bảo vệ tớnh toàn vẹn của thụng điệp.
Giải phỏp cho cỏc vấn đề vƣớng mắc đến chữ ký số là dựng hàm băm để trợ giỳp cho việc ký số. Cỏc thuật toỏn băm với đầu vào là cỏc thụng điệp cú dung lƣợng, kớch thƣớc tựy ý (vài KB đến vài chục MB thậm chớ hơn nữa) – cỏc thụng điệp cú thể là dạng văn bản, hỡnh ảnh, õm thanh, file ứng dụng v.v… - và với cỏc thuật toỏn băm: MD2, MD4, MD5, SHA cho cỏc bản băm đầu ra cú kớch thƣớc cố định: 128 bit với dũng MD, 160 bit với SHA.
Nhƣ vậy, thụng điệp kớch thƣớc tựy ý sau khi băm sẽ đƣợc thu gọn thành những bản băm – đƣợc gọi là cỏc văn bản đại diện – cú kớch thƣớc cố định (128 bit hoặc 160 bit). Với mỗi thụng điệp đầu vào chỉ cú thể tớnh ra đƣợc một văn bản đại diện – giỏ trị băm tƣơng ứng– duy nhất. Giỏ trị băm đƣợc coi là đặc thự của thụng điệp, giống nhƣ dấu võn tay của mỗi ngƣời. Hai thụng điệp khỏc nhau chắc chắn cú hai văn bản đại diện khỏc nhau. Khi đó cú văn bản đại diện duy nhất cho bức thụng điệp, ỏp dụng cỏc sơ đồ chữ ký số ký trờn văn bản đại diện đú.
Cơ chế gửi thụng tin sử dụng hàm băm trợ giỳp cho chữ ký số đƣợc mụ tả theo thứ tự cỏc Hỡnh 2.7a,2. 27b,2. 7c.
Thông điệp (bản rõ)
x
(văn bản, âm thanh, hình ảnh…)
Băm thông điệp (sử dụng thuật toán MD hoặc SHA)
h(x)
Bản băm (văn bản đại diện)
z = h(x)
Độ dài tuỳ ý
Độ dài cố định 128 với MD hoặc 160
bit với SHA