Hợp đồng thực thi bỡnh thƣờng sẽ bao gồm : (m1, RA, m2, RB)
Hợp đồng đƣợc phỏt hành bởi bờn thứ 3: sigT(m1, m2)
Hủy bỏ giao dịch bởi bờn thứ 3: sigT(abort, a1)
T cú thể phỏt hành một hợp đồng thay thế
Dựng bằng chứng cho thấy cả hai bờn đều đó cam kết
T cú thể cấp một mó thụng bỏo hủy bỏ
Bằng chứng chỉ ra rằng T sẽ khụng phỏt hành hợp đồng
T chỉ tham gia khi cú yờu cầu
Quyết định xem cú nờn hủy bỏ hoặc thực thi trờn cơ sở đến trƣớc phục vụ trƣớc
Chỉ tham gia nếu cú yờu cầu từ A hoặc B.
A B
m4 = RB m3 = RA
m2=sigB(m1, hash(RB))
m1=sigA(PKA,PKB,T,text, hash(RA))
Input: PKB, T, text Input: PKA, T, text
Vậy Bờn thứ 3 sẽ giải quyết thế nào nếu cú yờu cầu thực thi hoặc hủy bỏ hợp đồng?
Hỡnh 3.4: Cỏc bước thực hiện khi bờn thứ 3 thực thi hợp đồng
Khi cú yờu cầu thực thi hợp đồng, trƣớc khi A và B gửi tiếp cỏc thụng điệp m3, m4
thỡ họ sẽ gửi m1, m2 đến bờn thứ 3 (T). khi đú bờn thứ 3 sẽ thực hiện ký lờn 2 thụng điệp này và gửi lại cho cả A và B.
T B A r1= m1, m2 r2 Hủy bỏ?
Yes: r2= sigT(abort, a1) No: Thực thi := true
r2= sigT(m1, m2) r2 m1 = sigA(… hash(RA)) m3 = ??? m4 = ??? Net m 2 = sigKB(… hash(RB)) Net
Hỡnh 3.5: Cỏc bước thực hiện khi bờn thứ 3 hủy bỏ hợp đồng
Giả sử, khi A hoặc B nghi ngờ cỏc thụng điệp do bờn kia gửi đờn (do đến chậm, do khụng tin tƣởng) họ cú thể yờu cầu bờn thứ 3 (T) hủy bỏ giao dịch.
Nếu hủy bỏ, giả sử A là bờn yờu cầu thỡ A sẽ gửi đến T: a1 = sigA (abort, m1)
Khi đú, T sẽ ký lờn thụng điệp mà A vừa gửi đến và sẽ gửi lại cho A để A biết rằng, bờn T đó chấp nhận hủy bỏ giao dịch này.
Vậy, giao thức trờn nếu bị tấn cụng thỡ sẽ thế nào?
Giả sử, cú kẻ tấn cụng giả mạo B trờn đƣờng truyền. Thay vỡ gửi cho A số ngẫu nhiờn là RB thỡ hắn lại gửi đến QB.
Khi đú m2=sigB(m1, hash(QB)) chứ khụng phải là ký trờn hash(RB)
khi A gửi m1, m2 đến cho T ký thỡ thực tế hợp đồng sẽ là: (m1, RM, m’2, QB) chứ khụng phải là (m1, RM, m2, RB)
Điều này đƣợc thể hiện ở Hỡnh 3.6 dƣới đõy.
A m 2 = ??? Network T a1= sigA(abort, m1) a2 Thực thi? Yes: a2= sigT(m1, m2) No: Hủy bỏ := true
a2= sigT(abort,a1)
m1 = sigM (… hash(RA))
Hỡnh 3.6: Hỡnh thức tấn cụng
Chỳng ta sẽ giải quyết vấn đề trờn bằng mụ hỡnh dƣới đõy
Hỡnh 3.7: Cỏch thức giải quyết
A B
m4 = RB
m3 = sigA(RA, hash(RB))
m2=sigB(m1, hash(RB))
m1=sigA(PKA,PKB,T,text, hash(RA))
Input: PKB, T, text Input: PKA, T, text
m1, RA, m2, RB
A C
m4 = QB m3 = RA
m2=sigB(m1, hash(QB))
m1=sigA(PKA,PKB,T,text, hash(RA))
T
r1= m1, m2 r2= sigT(m1, m2)
Giao thức ký đảm bảo khụng lộ kết quả hợp đồng [Garay, Jakobsson, MacKenzie]
Hỡnh 3.8: Giao thức ký đảm bảo khụng lộ kết quả hợp đồng
PCS (Private Contract Signature) – Chữ ký hợp đồng riờng, cú tớnh chất:
- Là loại mó húa nguyờn thủy đặc biệt
- B khụng thể lấy thụng điệp từ A để cho C xem - T sẽ chuyển đổi chữ ký, khụng sử dụng riờng
Vai trũ của bờn thứ 3 tin cậy trong giao thức này
- T cú thể chuyển đổi PCS thành chữ ký thụng thƣờng (Thực thi giao thức khi cần thiết)
- T cú thể đƣa ra thụng bỏo hủy bỏo giao dịch (Và phải hứa sẽ khụng thực thi lại giao thức trong tƣơng lai)
- T chỉ tham gia khi cú yờu cầu.
A B
sigB(text) SigA(text)
PCSB(text,A,T)
Quỏ trỡnh hủy bỏ diễn ra nhƣ sau:
Hỡnh 3.9: Qui trỡnh bờn thứ 3 hủy bỏ quỏ trỡnh ký hợp đồng
Quỏ trỡnh thực thi diễn ra nhƣ sau:
Hỡnh 3.10: Qui trỡnh bờn thứ 3 thực thi ký hợp đồng T T B A a1 = sigA(m1,abort) Thực thi?
Yes: a2= sigB(text) No: Hủy bỏ := true
a2= sigT(a1) a2 PCSA(text,B,T) Net ??? T B A
r1 = PCSA(text,B,T), sigB(text)
Hủy bỏ?
Yes: r2= sigT(a1) No: Thực thi := true
r2= sigA(text) Lưu trữ sigB(text)
r2 PCSA(text,B,T)
???
Vậy, giao thức trờn nếu bị tấn cụng sẽ thế nào?
C sẽ giả mạo mỡnh là A và gửi PCSA(text,B,T) cho B nhƣ bỡnh thƣờng, sau đú B sẽ gửi đến T PCSA(text,B,T), sigB(text)để T kớ, tuy nhiờn trong thời gian đú, A sẽ yờu cầu T hủy bỏ giao dịch, khi đú T sẽ đỏp ứng và gửi lệnh hủy bỏ đến cả A và B. Tuy nhiờn T đó cú trong tay sigB(text) và cú thể bị lộ bởi chớnh T.
Hỡnh 3.11: Kẻ giả mạo trong quỏ trỡnh ký hợp đồng
Cỏch giải quyết vấn đề trờn
Hỡnh 3.12: Giải quyết việc giả mạo cỏc bờn tham gia
T B C PCSA(text,B,T) PCSB(text,A,T) PCSA(text,B,T), PCSB(text,A,T) Nếu T chuyển PCS thành chữ ký thụng thƣờng thỡ T cú thể tớnh toỏn và tạo ra đƣợc
sigA(text)và sigB(text)
T B C Rũ rỉ bởi T sigT(abort) sigT(abort) PCSA(text,B,T) PCSB(text,A,T)
sigA(abort) PCSA(text,B,T),
3.2. GIAO THỨC GIAO TIẾP AN TOÀN TRONG THỎA THUẬN HỢP ĐỒNG ĐIỆN TỬ HỢP ĐỒNG ĐIỆN TỬ
Một hợp đồng đƣợc hỡnh thành thụng qua giao tiếp tƣơng tỏc giữa cỏc bờn trong quỏ trỡnh mua bỏn, trong đú cỏc vấn đề nhƣ: cung cấp, chấp nhận và ý định tham gia hợp đồng đƣợc gửi đến bờn kia cựng tham gia ký kết hợp đồng để xem xột. Bởi vỡ ý nghĩa phỏp lý của nú, thụng tin liờn lạc điện tử và bản ghi của nú trở thành mục tiờu chớnh cho những kẻ tấn cụng. Cỏc hỡnh thức hoạt động bất hợp phỏp là cỏc mối đe dọa cú thể ảnh hƣởng tới tớnh hợp phỏp của quỏ trỡnh ký kết hợp đồng điện tử. Xỏc định cỏc mối đe dọa phổ biến nhƣ: giả mạo, nghe trộm, vi phạm về thời gian, chữ ký, thoỏi thỏc, và toàn vẹn (Du et al, 2004).
Cỏc giao thức liờn quan đến cỏc cuộc tấn cụng cũng là mối đe dọa đến quỏ trỡnh giao khoỏn và cú thể dẫn đến một kết quả kinh doanh khụng cụng bằng. Vớ dụ, thoỏi thỏc cú chủ ý của chữ ký số hoặc nhón thời gian cú thể dẫn đến kết quả ký kết hợp đồng sẽ trở thành bằng chứng đƣợc coi là khụng hợp lệ và việc kinh doanh khụng thể thực thi. Vi phạm tớnh toàn vẹn cũng cú thể mất làm hiệu lực của hợp đồng. Vỡ thế việc đảm bảo mụi trƣờng giao tiếp điện tử là vấn đề quan trọng cho cỏc hoạt động kinh doanh trờn mạng. Xem xột ý nghĩa phỏp lý và cỏc mối đe dọa phổ biến hiện tại, chỳng ta cần phải đảm bảo rằng thụng tin liờn lạc đƣợc thực hiện trong khuụn khổ phỏp lý, và bằng chứng của việc ký kết hợp đồng là cỏc bản ghi phải đảm bảo đƣợc tớnh toàn vẹn.
Cỏc bản ghi điện tử này sẽ đƣợc cụng khai kiểm chứng sau một khoảng thời gian để chứng minh rằng nội dung của nú là đầy đủ và khụng bị hƣ hỏng. Nếu khụng cú sự bảo vệ thớch hợp, doanh nghiệp sẽ phải đối mặt với mối đe dọa tiềm tàng và chi phớ phỏp lý nếu một bờn tham gia hợp đồng khụng tuõn thủ theo qui định của phỏp luật. Họ cũng sẽ phải đối mặt với cỏc thiệt hại về tài chớnh do cỏc hành vi truy cập trỏi phộp vào hệ thống mỏy tớnh nhƣ đỏnh cắp tài khoản, phỏ hoại, cỏc hành vi vi phạm bảo mật thụng tin hoặc lạm dụng quyền sử dụng của hệ thống. Vỡ vậy trong phần này sẽ trỡnh bày một giao thức truyền thụng an toàn để bảo đảm thụng tin liờn lạc liờn quan đến quỏ trỡnh ký kết hợp đồng. Giao thức đƣa ra đƣợc xem xột làm thế nào để:
(1) Đảm bảo rằng một giao tiếp hoặc đàm phỏn hợp đồng điện tử đƣợc thực hiện trong khuụn khổ phỏp lý.
(2) Bảo vệ tuần tự quỏ trỡnh tạo ra hợp đồng điện tử bảo đảm tớnh toàn vẹn hiệu quả bằng cỏch sử dụng kỹ thuật hàm băm. Trong đú sẽ tập trung thảo luận về ứng dụng chuỗi băm trong hợp đồng điện tử, về yờu cầu bảo mật cụ thể, về cỏc giao thức đề nghị đƣợc sử dụng trong quỏ trỡnh ký kết hợp đồng, sau đú phõn tớch tớnh bảo mật của giao thức nhằm chống lại cỏc hành vi vi phạm yờu cầu đó đƣợc quy định trong hợp đồng.
3.2.1. Ứng dụng hàm băm
Chuỗi băm đƣợc xõy dựng với hàm băm là hàm một chiều. Tức là khi biết khi cho trƣớc một bản túm lƣợc z thỡ “khú” thể thực hiện về mặt tớnh toỏn để tỡm ra nội dung thụng điệp ban đầu x sao cho h(x) = z.. Trong một định dạng chuỗi băm thụng thƣờng cú thể đƣợc thể hiện nhƣ sau:
L0, L1, L2, ..., Ln
Với Li = h (Li-1), cho i = 1, 2, ..., n h () là hàm băm một chiều,
Ln là cỏc nỳt trong chuỗi băm.
Để sinh ra nỳt hiện tại đũi hỏi đầu vào chớnh là nỳt trƣớc đú. Mỗi nỳt đệ quy phụ thuộc vào nỳt trƣớc của nú. Điều này phụ thuộc cỏc hỡnh thức bảo mật mạnh mẽ để bảo vệ trật tự của cỏc sự kiện đƣợc tạo ra thụng qua quỏ trỡnh tuần tự nhƣ đàm phỏn hợp đồng giao dịch điện tử. Điều khú khăn là làm sao thay đổi một nỳt của chuỗi băm mà khụng ảnh hƣởng đến cỏc nỳt tiếp theo của nú là tƣơng đƣơng với khú khăn trong việc tỡm kiếm thụng điệp đầu vào của hàm băm một chiều. Núi cỏch khỏc, sức mạnh an ninh của chuỗi băm phụ thuộc vào độ an toàn của hàm băm một chiều.
Tuy nhiờn, ngoài tớnh hiệu quả trong việc bảo vệ toàn vẹn nội dung thụng điệp, chuỗi băm khụng đỏng tin cậy trong việc kiểm tra thụng tin đến và cung cấp dịch vụ xỏc nhận tớnh toàn vẹn cho cỏc thụng tin ban đầu. Một số ứng dụng nhƣ nhón thời gian (Haber và Stornetta, 1991), hệ thống thanh toỏn (Anderson et al, 1997;. Rivest, Shamir, 1996), kiểm toỏn hệ thống đăng nhập (Kelsey và Schneier, 1999), và tỏc tử di động (Karjoth, 1998) đó chứng minh rằng một chuỗi băm cú thể đƣợc sử dụng cựng với cỏc thuật toỏn khỏc (vớ dụ: chữ ký số) để cung cấp cỏc dịch vụ an ninh mong muốn cho một tỡnh yờu cầu kinh doanh cụ thể. Mỗi ứng dụng của chuỗi băm cú một quỏ trỡnh định dạng chuỗi khỏc nhau phụ thuộc vào quỏ trỡnh kinh doanh. Chuỗi cỏc thuật toỏn bảo vệ (vớ dụ nhƣ lƣợc đồ chữ ký) cũng đƣợc xõy dựng theo cỏch khỏc nhau để bảo vệ và chống lại cỏc cuộc tấn cụng liờn quan đến quỏ trỡnh kinh doanh. Trong số tất cả cỏc ứng dụng chuỗi băm, chƣơng trỡnh nhón thời gian bởi Haber và Stornetta (Haber và Stornetta, 1991) mụ phỏng cỏc quỏ trỡnh kinh doanh là gần nhất với quỏ trỡnh ký kết hợp đồng điện tử. Họ đó kết hợp chữ ký và kỹ thuật băm để ngăn chặn cỏc dịch vụ thời gian từ đối tƣợng phỏt hành nhón thời gian giả mạo.
Trong kịch bản của họ, một bờn thứ ba đỏng tin cậy cung cấp một dịch vụ nhón thời gian. í tƣởng của cơ bản là để liờn kết một yờu cầu nhón thời gian hiện hành (băm tin nhắn) với một yờu cầu trƣớc sử dụng hàm băm một chiều để tạo thành một nỳt liờn kết. Nỳt này cũng là chữ ký của dịch vụ nhón thời gian và gửi cho mỗi ngƣời yờu cầu. Chƣơng
trỡnh của họ đƣợc thiết kế cho một khỏch hàng ngẫu nhiờn để tạo ra một yờu cầu gửi đến bờn thứ 3 tin cậy cũng là bờn cung cấp dịch vụ nhón thời gian.
Giao thức đƣợc trỡnh bày sẽ tập trung vào mụ phỏng cỏc thủ tục ký kết hợp đồng giống nhƣ trong hợp đồng truyền thống, và trỏnh để lộ giao thức này với cỏc cuộc tấn cụng.
3.2.2. Giao thức đảm bảo an toàn hợp đồng trong đấu thầu điện tử
3.2.2.1. Bảng ký hiệu
Ký hiệu í nghĩa
K−1ID Khúa riờng của ID, vớ dụ: Khúa riờng của B là: K-1B
KID Khúa cụng khai của ID CID Chứng chỉ của ID h Hàm băm một chiều Sigx Chữ ký trờn x Vx Hàm xỏc nhận chữ ký Ex Hàm mó húa bất đối xứng Dx Hàm giải mó
mn Thụng bỏo thứ n trong quỏ trỡnh đàm phỏn hợp đồng TD Tài liệu đấu thầu đƣa ra bởi ngƣời mở thầu
HCID Toàn bộ chuỗi băm của 1 bờn hoặc chuỗi băm do TTP trả lại (roll back) DS Bắt đầu thực thi quỏ trỡnh ký hợp đồng
TM Bắt đầu kết thỳc quỏ trỡnh ký hợp đồng RTM Trả lời về việc kết thỳc quỏ trỡnh ký
mf Hợp đồng cuối cựng cú chữ ký của cả 2 bờn mcf Tin nhắn xỏc nhận đƣợc tạo ra bởi TTP mer Tin nhắn bỏo lỗi đƣợc tạo ra bởi TTP
3.2.2.2. Cài đặt hệ thống
Cỏc bờn tham gia trong hợp đồng điện tử gồm bờn đƣa ra gúi thầu (A), nhúm nhà thầu hoặc nhà thầu (B) và bờn thứ ba tin cậy TTP. Tất cả cỏc bờn cú cặp khúa bớ mật, khúa cụng cộng và giấy chứng nhận cho cỏc khúa cụng cộng của họ. Tất cả cỏc khúa bớ mật là an toàn và khụng bị cụng khai. Tất cả cỏc phƣơng phỏp giao tiếp đƣợc sử dụng trong ký hợp đồng (điện thoại, email, trang web trỡnh ...) đó đƣợc đăng nhập. TD là cỏc tài liệu trong quỏ trỡnh kinh doanh. L0 đƣợc tạo ra bởi bờn tham gia chớnh với TD. Hàm băm SHA-1 hoặc tƣơng đƣơng đƣợc sử dụng.
Cỏc hệ mó húa khụng đối xứng liờn quan đến cỏc hệ thống khúa cụng khai (Diffie và Hellman, 1976) hoặc dựa vào cỏc vấn đề của tớnh toỏn logarit trờn cỏc trƣờng số hữu hạn, tớnh toỏn số nguyờn tố lớn, hoặc đƣờng cong elliptic. Lƣợc đồ chữ ký đƣợc coi nhƣ lƣợc đồ tiờu chuẩn giống nhƣ ElGamal (ElGamal, 1985), DSA hoặc RSA (Rivest et al, 1978) kể từ khi an ninh của họ đó đƣợc thảo luận rộng rói trong quỏ khứ. Nếu một trong hai bờn cặp khoỏ bị thu hồi trong thời gian đàm phỏn hợp đồng (một điều kiện đặc biệt), tất cả cỏc nỳt trong chuỗi băm đều phải ký lại bởi cả hai bờn.
3.2.2.3. Giao thức mó húa cho kờnh truyền an toàn
Giao thức bao gồm bảy giao thức con cho thấy trong Hỡnh 3.13. Giai đoạn ban đầu, Giai đoạn đàm phỏn, và giai đoạn cuối. Vấn đề tranh chấp I, tranh chấp II, Chấm dứt và TTP tham gia là cỏc giao thức con kiểm soỏt lỗi. Mối quan hệ của chỳng cũng đƣợc biểu diễn trong hỡnh 3.13. Cỏc mũi tờn là thể hiện của cỏc kết nối.
Trong quỏ trỡnh đấu thầu điện tử, bờn đƣa ra gúi thầu sẽ bắt đầu giao thức kết nối thụng qua giai đoạn ban đầu. Cỏc bờn sẽ tiến hành liờn lạc bằng cỏch sử dụng giao thức giai đoạn đàm phỏn. Khi hợp đồng cuối cựng đƣợc hỡnh thành, cả hai bờn sẽ thực hiện giao thức giai đoạn cuối để kết thỳc quỏ trỡnh đấu thầu điện tử với bờn thứ ba tin cậy nhƣ một nhõn chứng.
Nếu cú tranh chấp vƣợt qua tớnh toàn vẹn của chuỗi băm, bất cứ bờn nào đều cú thể kết nối đến giao thức con tranh chấp. Nếu cỏc bờn trả lời đồng ý với sự toàn vẹn chuỗi băm từ bờn khởi xƣớng, cỏc bờn sẽ tham gia vào giao thức tranh chấp I. Từ giao thức tranh chấp I, cỏc bờn giao tiếp cú thể quay trở lại giao thức con giai đoạn đàm phỏn hoặc kết nối đến giao thức con TTP tham gia, tựy thuộc vào cõu trả lời của cỏc bờn. Nếu bờn nhận khụng đồng ý với sự toàn vẹn chuỗi băm từ bờn khởi tạo, cỏc bờn sẽ tham gia vào giao thức con tranh chấp II. Từ giao thức con tranh chấp II, cỏc bờn cú thể chớnh thức chấm dứt cỏc giao tiếp với giao thức con kết thỳc hoặc cỏc giao thức con TTP tham gia. Giao thức con chấm dứt cú thể đƣợc kết nối thụng qua cỏc giai đoạn đàm phỏn trực tiếp, để ngăn chặn cỏc thụng tin liờn lạc giữa cỏc bờn với TTP, trƣớc khi đến giai đoạn cuối cựng.
Kiến trỳc mụ đun này đƣợc thiết kế nhƣ vậy để cú thể liờn kết đến cỏc mụ đun bảo mật khỏc phục vụ cho cụng việc trong tƣơng lai.
Giai đoạn đầu
Giai đoạn ban đầu chủ yếu để khởi tạo cỏc hồ sơ lƣu giữ chuỗi băm bằng cỏch tạo ra nỳt gốc. Điều quan trọng đầu tiờn là tạo ra cỏc tài liệu đấu thầu. Tài liệu này bao gồm một mụ tả dự ỏn, đặc điểm đấu thầu, và độ lớn của hệ thống. Bờn khởi tạo A tớnh toỏn nỳt